-
Notifications
You must be signed in to change notification settings - Fork 0
Comparing changes
Open a pull request
base repository: febus982/sdk-python
base: main
head repository: cloudevents/sdk-python
compare: main
- 9 commits
- 30 files changed
- 6 contributors
Commits on May 26, 2024
-
Update CI and tooling (cloudevents#236)
* Update pre-commit hooks Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * Add Python 3.12 Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * Drop python 3.7 and add 3.12 to TOX Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * Migrate to latest action versions. Drop v3.7 from CI and add 3.12 Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * Migrate to Python 3.8 Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * Fix changelog message. Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> --------- Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for eedc61e - Browse repository at this point
Copy the full SHA eedc61eView commit details -
* Fixes examples when using Pydantic V2 Signed-off-by: Fabio Batista <fabio@atelie.dev.br> * When type checking, uses the latest (V2) version of Pydantic Signed-off-by: Fabio Batista <fabio@atelie.dev.br> --------- Signed-off-by: Fabio Batista <fabio@atelie.dev.br> Co-authored-by: Yurii Serhiichuk <xSAVIKx@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 11520e3 - Browse repository at this point
Copy the full SHA 11520e3View commit details -
Modified content-type to abide by attribute naming conventions for cl…
…oudevents (cloudevents#232) * fix: changed content-type to a valid attribute Signed-off-by: vivjd <vivjdeng@hotmail.com> * fix: changed headers back to content-type Signed-off-by: Vivian <118199397+vivjd@users.noreply.github.com> Signed-off-by: vivjd <vivjdeng@hotmail.com> * modified kafka test cases to match datacontenttype Signed-off-by: vivjd <vivjdeng@hotmail.com> * fix: updated kafka/conversion.py and test cases to check for valid attributes Signed-off-by: vivjd <vivjdeng@hotmail.com> --------- Signed-off-by: vivjd <vivjdeng@hotmail.com> Signed-off-by: Vivian <118199397+vivjd@users.noreply.github.com> Co-authored-by: Yurii Serhiichuk <xSAVIKx@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 16441d7 - Browse repository at this point
Copy the full SHA 16441d7View commit details
Commits on Jun 20, 2024
-
Release/v1.11.0 (cloudevents#237)
* Add missing changelog items Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * Bump version Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> --------- Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for c6c7e8c - Browse repository at this point
Copy the full SHA c6c7e8cView commit details
Commits on Oct 30, 2024
-
fix kafka unmarshaller args typing and defaults (cloudevents#240)
* fix kafka unmarshaller args typing and defaults Signed-off-by: Christoph Hösler <christoph.hoesler@inovex.de> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Signed-off-by: Christoph Hösler <christoph.hoesler@inovex.de> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for efca352 - Browse repository at this point
Copy the full SHA efca352View commit details -
chore: release 1.11.1 (cloudevents#241)
Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 96cfaa6 - Browse repository at this point
Copy the full SHA 96cfaa6View commit details
Commits on Nov 9, 2024
-
chpre: disable attestations while we're not using trusted publishing (c…
…loudevents#243) Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for c5645d8 - Browse repository at this point
Copy the full SHA c5645d8View commit details
Commits on May 23, 2025
-
Improve public API type annotations & fix unit test type errors (clou…
…devents#248) * chore: improve typing of functions returning AnyCloudEvent kafka.conversion.from_binary() and from_structured() return AnyCloudEvent type var according to their event_type argument, but when event_type is None, type checkers cannot infer the return type. We now use an overload to declare that the return type is http.CloudEvent when event_type is None. Previously users had to explicitly annotate this type when calling without event_type. This happens quite a lot in this repo's test_kafka_conversions.py — this fixes quite a few type errors like: > error: Need type annotation for "result" [var-annotated] Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * chore: type v1.Event chainable Set*() methods The v1.Event self-returning Set*() methods like SetData() were returning BaseEvent, which doesn't declare the same Set* methods. As a result, chaining more than one Set* method would make the return type unknown. This was causing type errors in test_event_pipeline.py. The Set*() methods now return the Self type. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * chore: fix type errors in tests mypy was failing with lots of type errors in test modules. I've not annotated all fixtures, mostly fixed existing type errors. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * chore: allow non-dict headers types in from_http() from_http() conversion function was requiring its headers argument to be a typing.Dict, which makes it incompatible with headers types of http libraries, which support features like multiple values per key. typing.Mapping and even _typeshed.SupportsItems do not cover these types. For example, samples/http-image-cloudevents/image_sample_server.py was failing to type check where it calls `from_http(request.headers, ...)`. To support these kind of headers types in from_http(), we now define our own SupportsDuplicateItems protocol, which is broader than _typeshed.SupportsItems. I've only applied this to from_http(), as typing.Mapping is OK for most other methods that accept dict-like objects, and using this more lenient interface everywhere would impose restrictions on our implementation, even though it might be more flexible for users. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * build: run mypy via tox Tox now runs mypy on cloudevents itself, and the samples. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * build(ci): run mypy in CI alongside linting Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * chore: fix minor mypy type complaint in samples Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * feat: use Mapping, not Dict for input arguments Mapping imposes less restrictions on callers, because it's read-only and allows non-dict types to be passed without copying them as dict(), or passing dict-like values and ignoring the resulting type error. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * chore: fix tests on py3.8 Tests were failing because the sanic dependency dropped support for py3.8 in its current release. sanic is now pinned to the last compatible version for py3.8 only. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * feat: support new model_validate_json() kwargs Pydantic added by_alias and by_name keyword arguments to BaseModel.model_validate_json in 2.11.1: pydantic/pydantic@acb0f10 This caused mypy to report that that the Pydantic v2 CloudEvent did not override model_validate_json() correctly. Our override now accepts these newly-added arguments. They have no effect, as the implementation does not use Pydantic to validate the JSON, but we also don't use field aliases, so the only effect they could have in the superclass would be to raise an error if they're both False. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * chore: accept Mapping as well as SupportsDuplicateItems Although our types.SupportsDuplicateItems type is wider than Dict and Mapping, it's not a familar type to users, so explicitly accepting Mapping in the from_http() functions should make it more clear to users that a dict-like object is required for the headers argument. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> * chore: constrain deps to maintain py 3.8 support Python 3.8 is unsupported and dependencies (such as pydantic) are now shipping releases that fail to type check with mypy running in 3.8 compatibility mode. We run mypy in py 3.8 compatibility mode, so the mypy tox environments must only use deps that support 3.8. And unit tests run by py 3.8 must only use deps that support 3.8. To constrain the deps for 3.8 support, we use two constraint files, one for general environments that only constrains the dependencies that python 3.8 interpreters use, and another for mypy that constraints the dependencies that all interpreters use. Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk> --------- Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk>
Configuration menu - View commit details
-
Copy full SHA for 37ae369 - Browse repository at this point
Copy the full SHA 37ae369View commit details
Commits on Jun 2, 2025
-
Drop EOL Python 3.8 support (cloudevents#249)
* chore: add missing changelog items Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * chore: drop Python 3.8 support Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * chore: add a changelog item on Python 3.8 removal Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * chore: remove mypy-constrains reference as we don't need it anymore Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * chore: Update pre-commit check versions. Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * chore: fix isort pre-commit Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * chore: Use Python 3.12 as base version Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> --------- Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for a38933d - Browse repository at this point
Copy the full SHA a38933dView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff main...main