Commit Graph

62 Commits

Author SHA1 Message Date
Yurii Serhiichuk 1cdd2542ba
ci: cleanup CI config and update setup (#169)
* ci: Run tests on multiple OS. Use latest action versions.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* ci: use fixed `pupi-publish` action version and update others.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* docs: update changelog

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* Upgrade python setup action to the latest v4

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>
2022-07-11 22:38:34 +03:00
Yurii Serhiichuk a61b84b1be
chore: drop `docs` and related files (#168)
* chore: drop `docs` and related files

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* docs: update changelog

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>
2022-07-11 20:05:45 +03:00
Lucas Bickel 2896d04c79
fix: merge strings on same line into single string (#153)
* fix: merge strings on same line into single string

Signed-off-by: Lucas Bickel <hairmare@rabe.ch>

* chore: blacken example

Signed-off-by: Lucas <lucas.bickel@adfinis.com>
2022-07-10 16:04:23 +03:00
dependabot[bot] ae3099de60
chore: bump sanic from 20.12.3 to 20.12.6 in /requirements (#155)
Bumps [sanic](https://github.com/sanic-org/sanic) from 20.12.3 to 20.12.6.
- [Release notes](https://github.com/sanic-org/sanic/releases)
- [Changelog](https://github.com/sanic-org/sanic/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/sanic-org/sanic/compare/v20.12.3...v20.12.6)

---
updated-dependencies:
- dependency-name: sanic
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Grant Timmerman <744973+grant@users.noreply.github.com>
Co-authored-by: Yurii Serhiichuk <xSAVIKx@users.noreply.github.com>
2022-07-10 13:46:52 +03:00
Yurii Serhiichuk 885d365dd2
Feat/dev env cleanup (#167)
* build: Update pre-commit config versions and setup.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* build: Migrate isort config to `pyproject`

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* style: Use recommended black-compatible flake8 options

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* build: Add standard pre-commit hooks.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* docs: Add a note about this PR to the changelog.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* docs: Cleanup docs, fix links. Add lins to respective tooling.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* build: add dev-only dependencies.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* style: reformat using new style/format configs

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* build: add pre-commit to dev dependencies

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* style: run pre-commit hooks on all the files

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* docs: Add dev status to the classifier.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* docs: add missing links and dates for releases and PRs.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* docs: Add latest PR to the changelog

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* ci: Add new maintainers

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>
2022-07-10 12:53:37 +03:00
Alexander Tkachev 8483e8e310
feat: event attribute get operation support (#165)
* feat: get operation support

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* docs: event get operation

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* test: extract dummy attributes into a fixture

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* test: extract common dummy data into consts

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* test: event get operation

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* docs: return value

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* test: remove assertion

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* test: move dummy data into fixtures

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* style: black formatting

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* style: black formatting

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* docs: fix bad grammar

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* test: style fix line too long

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>

* style: fix line too long

Signed-off-by: Alexander Tkachev <sasha64sasha@gmail.com>
2022-07-10 12:44:52 +03:00
Yurii Serhiichuk aee384bf43
Release v1.3.0 (#166)
* Bump version

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* Add v1.3.0 changelog.

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>

* Fix MD language highlight

Signed-off-by: Yurii Serhiichuk <savik.ne@gmail.com>
2022-07-09 09:24:28 -07:00
Dustin Ingram 900e315d36
Improve redistribute-ability (#151)
* Move functions needed to build project into setup.py

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Only execute setup() in __main__

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

Co-authored-by: Yurii Serhiichuk <xSAVIKx@users.noreply.github.com>
2022-07-09 12:25:50 +03:00
Doug Davis 1a0d48eb0f
rename (#160)
Signed-off-by: Doug Davis <dug@microsoft.com>
2022-04-27 12:48:44 -04:00
Doug Davis 6c182e0b1c
add .clomonitor.yaml (#159)
Signed-off-by: Doug Davis <dug@microsoft.com>
2022-04-27 10:15:15 -04:00
Doug Davis d3b8892da7
Add some CLO stuff (#158)
Signed-off-by: Doug Davis <dug@microsoft.com>
2022-04-26 14:38:38 -04:00
Dustin Ingram 2e5b96be7e
Support Python 3.10 (#150)
* ci: test python3.10

Signed-off-by: Grant Timmerman <timmerman+devrel@google.com>

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Remove hard pins in requirements

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Add sanic_testing dependency

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Constrain sanic/sanic-testing for 3.6

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

Co-authored-by: Grant Timmerman <timmerman+devrel@google.com>
2022-04-08 19:22:12 -04:00
Grant Timmerman 6f27322146
ci: use valid sanic instance name (#157)
* ci: use valid sanic instance name

Signed-off-by: Grant Timmerman <744973+grant@users.noreply.github.com>

* ci: use simple sanic name

Signed-off-by: Grant Timmerman <744973+grant@users.noreply.github.com>
2022-04-08 19:19:50 -04:00
jiashuChen 43659228ae
fix: link to flask server sample file in README.md (#154)
Signed-off-by: Jiashu Chen <cjs20080808@hotmail.com>

Co-authored-by: Grant Timmerman <744973+grant@users.noreply.github.com>
2022-04-07 18:09:22 -07:00
Grant Timmerman da47910770
Add correct type annotations for tuple return types (#149)
* style: fix some tuple type style lint issues

Signed-off-by: Grant Timmerman <timmerman+devrel@google.com>

* ci: remove other files

Signed-off-by: Grant Timmerman <timmerman+devrel@google.com>
2022-04-07 17:22:49 -07:00
Graham Campbell 705e8b4100
Added support for Python 3.9 (#144)
Signed-off-by: Graham Campbell <hello@gjcampbell.co.uk>
2021-09-02 17:58:52 -05:00
Xin Yang a5fc827513
ignore datacontenttype when using to_binary() (#138)
* ignore datacontenttype when using to_binary()

Signed-off-by: XinYang <xinydev@gmail.com>

* fix tests

Signed-off-by: XinYang <xinydev@gmail.com>

* fix tests. sanic>20.12 does not support py3.6 any more

Signed-off-by: XinYang <xinydev@gmail.com>
2021-06-01 08:53:47 -05:00
Grant Timmerman b83bfc58eb
docs: add cloudevents module requirement in samples (#129)
Signed-off-by: Grant Timmerman <timmerman+devrel@google.com>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
2020-10-23 02:05:28 -05:00
Grant Timmerman c61c3c2ce6
docs: add quick section on installing (#127)
Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
2020-10-23 02:03:45 -05:00
Dustin Ingram 8773319279
Fix formatting (#131)
* Fix formatting for latest black

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Add flake8 for linting

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Fix flake8 lint errors

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>
2020-10-20 11:31:02 -05:00
Curtis Mason 390f5944c0
v1.2.0-stable (#122)
* from_http bug None and non dict data bug fixes (#119)

* resolving from_http bugs

Signed-off-by: Curtis Mason <cumason@google.com>

* resolved from_http bugs

Signed-off-by: Curtis Mason <cumason@google.com>

* nit fix

Signed-off-by: Curtis Mason <cumason@google.com>

* Exceptions general class (#120)

* More edgecase testing

Signed-off-by: Curtis Mason <cumason@google.com>

* Tested empty object edge cases

Signed-off-by: Curtis Mason <cumason@google.com>

* test-coverage

Signed-off-by: Curtis Mason <cumason@google.com>

* Changelog update (#121)

Signed-off-by: Curtis Mason <cumason@google.com>
2020-08-19 14:41:22 -07:00
Curtis Mason 14c76188d1
V1.1.0 dev (#114)
* 100% test-coverage rule added to tox (#109)

* version bump

Signed-off-by: Curtis Mason <cumason@google.com>

* adding tests for marshaller

Signed-off-by: Curtis Mason <cumason@google.com>

* marshaller 100% test-coverage

Signed-off-by: Curtis Mason <cumason@bu.edu>

* bricked some tests

Signed-off-by: Curtis Mason <cumason@bu.edu>

* additional error handling

Signed-off-by: Curtis Mason <cumason@bu.edu>

* 100% test-coverage

Signed-off-by: Curtis Mason <cumason@bu.edu>

* handles empty data and capitalized headers

Signed-off-by: Curtis Mason <cumason@bu.edu>

* 1.1.0 version bump

Signed-off-by: Curtis Mason <cumason@bu.edu>

* Removed _http suffix from http_methods (#108)

* Removed _http suffix from http_methods

to_binary_http renamed to_binary, and to_structured_http renamed
to_structured. These functions are inside of cloudevents.http thus the
_http part should be implicitly understood.

Signed-off-by: Curtis Mason <cumason@google.com>

* version bump

Signed-off-by: Curtis Mason <cumason@google.com>

* deprecated instead of removal

Signed-off-by: Curtis Mason <cumason@bu.edu>

* Update setup.py

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@bu.edu>

* 1.1.0 version bump

Signed-off-by: Curtis Mason <cumason@bu.edu>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>

* swapped args for from_http (#110)

Signed-off-by: Curtis Mason <cumason@bu.edu>

* exception names shortened (#111)

* exception names shortened

Signed-off-by: Curtis Mason <cumason@google.com>

* to_structured documentation

Signed-off-by: Curtis Mason <cumason@google.com>

* adjusted readme and changelog (#113)

* adjusted readme and changelog

Signed-off-by: Curtis Mason <cumason@google.com>

* readme adjustment

Signed-off-by: Curtis Mason <cumason@google.com>

* structured content mode

Signed-off-by: Curtis Mason <cumason@google.com>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
2020-08-18 10:49:02 -04:00
Curtis Mason d95b1303a9
cloudevents version 1.0.1 release (#102)
* docs: rename receiving cloudevents (#91)

Signed-off-by: Grant Timmerman <timmerman+devrel@google.com>

* add coc ref (#90)

Signed-off-by: Doug Davis <dug@us.ibm.com>

Co-authored-by: Curtis Mason <31265687+cumason123@users.noreply.github.com>

* CloudEvents equality override (#98)

* added tests to cloudevent eq

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* modified changelog

Signed-off-by: Curtis Mason <cumason@google.com>

* version bump

Signed-off-by: Curtis Mason <cumason@google.com>

* cloudevent fields type checking adjustments (#97)

* added exceptions and more indepth can_read

Signed-off-by: Curtis Mason <cumason@google.com>

* moved is_binary, is_structured into http module

Signed-off-by: Curtis Mason <cumason@google.com>

* changelog and version bump

Signed-off-by: Curtis Mason <cumason@google.com>

* removed unused import and spacing

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* reverted auto format change

Signed-off-by: Curtis Mason <cumason@google.com>

* reverted changelog and auto format changes

Signed-off-by: Curtis Mason <cumason@google.com>

* changelog 1.0.1 update (#101)

Signed-off-by: Curtis Mason <cumason@google.com>

Co-authored-by: Grant Timmerman <timmerman@google.com>
Co-authored-by: Doug Davis <dug@us.ibm.com>
2020-08-13 15:31:48 -07:00
Curtis Mason 390134c2b9
Release v1.0.0 (#89)
* Created CloudEvent class (#36)

CloudEvents is a more pythonic interface for using cloud events.
It is powered by internal marshallers and cloud event base classes.
It performs basic validation on fields, and cloud event type checking.

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Implemented python properties in base.py (#41)

* Added SetCloudEventVersion

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* began adding python properties

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* added pythonic properties to base class

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* began testing for getters/setters

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* added general setter tests

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* fixed spacing in base.py

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* added __eq__ to option and datacontentencoding property to v03

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* lint fixes

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* testing extensions and old getters

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* removed versions v01 and v02 from test_data_encaps_refs.py

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* fixed inheritance issue in CloudEvent

Signed-off-by: Curtis Mason <cumason@google.com>

* added prefixed_headers dict to test

Signed-off-by: Curtis Mason <cumason@google.com>

* Http structured cloudevents (#47)

* Moved fields out of base & structured support

base._ce_required_fields and base._ce_optional_fields were moved into
event classes v03 and v1.

http_events.CloudEvent class now looks for fieldnames in either headers
or data, and can automatically determine whether this is a binary or
structured event.

Signed-off-by: Curtis Mason <cumason@google.com>

* testing structured

Signed-off-by: Curtis Mason <cumason@google.com>

* added tests for structured events

Signed-off-by: Curtis Mason <cumason@google.com>

* Added test valid structured cloudevents

Signed-off-by: Curtis Mason <cumason@google.com>

* Created default headers arg in CloudEvent

Signed-off-by: Curtis Mason <cumason@google.com>

* Added http_events.py sample code

Signed-off-by: Curtis Mason <cumason@google.com>

* removed ../python-event-requests

Signed-off-by: Curtis Mason <cumason@google.com>

* README.md nit

Signed-off-by: Curtis Mason <cumason@google.com>

* client.py nit

Signed-off-by: Curtis Mason <cumason@google.com>

* comment nits

Signed-off-by: Curtis Mason <cumason@google.com>

* created __getitem__ in CloudEvent

Signed-off-by: Curtis Mason <cumason@google.com>

* sample nits

Signed-off-by: Curtis Mason <cumason@google.com>

* fixed structured empty data issue

Signed-off-by: Curtis Mason <cumason@google.com>

* Added CloudEvent to README

Signed-off-by: Curtis Mason <cumason@google.com>

* added http_msg to CloudEvent

Signed-off-by: Curtis Mason <cumason@google.com>

* implemented ToRequest in CloudEvent

Signed-off-by: Curtis Mason <cumason@google.com>

* testing more specversions

Signed-off-by: Curtis Mason <cumason@google.com>

* Added sample code to README.md

Signed-off-by: Curtis Mason <cumason@google.com>

* modified sample code

Signed-off-by: Curtis Mason <cumason@google.com>

* added datavalidation to changelog

Signed-off-by: Curtis Mason <cumason@google.com>

* updated README

Signed-off-by: Curtis Mason <cumason@google.com>

* README adjustment

Signed-off-by: Curtis Mason <cumason@google.com>

* ruler 80 adjustment on http_events

Signed-off-by: Curtis Mason <cumason@google.com>

* style and renamed ToRequest to to_request

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* fixed self.binary typo

Signed-off-by: Curtis Mason <cumason@google.com>

* CHANGELOG adjustment

Signed-off-by: Curtis Mason <cumason@google.com>

* rollback CHANGELOG

Signed-off-by: Curtis Mason <cumason@google.com>

* Added documentation to to_request

Signed-off-by: Curtis Mason <cumason@google.com>

* README.md adjustment

Signed-off-by: Curtis Mason <cumason@google.com>

* renamed event_handler to event_version

Signed-off-by: Curtis Mason <cumason@google.com>

* inlined field_name_modifier

Signed-off-by: Curtis Mason <cumason@google.com>

* renamed test body data

Signed-off-by: Curtis Mason <cumason@google.com>

* removed unnecessary headers from test

Signed-off-by: Curtis Mason <cumason@google.com>

* removed field_name_modifier and fixed e.g. in client.py

Signed-off-by: Curtis Mason <cumason@google.com>

* pylint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* Update types and handle data_base64 structured. (#34)

* Update types and handle data_base64 structured.

- Add sane defaults for encoding
  - Unfortunately, defaults for structured and binary need to be *different*
   - Push types through interfaces
- Make it easy to call 'ToRequest' using Marshaller defaults
- Add tests for above

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Fix lint warnings due to changes to W503/W504

See https://gitlab.com/pycqa/flake8/-/issues/466 for details.

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Adopt di's suggestions.

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Fix lint.

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Move types to another package.

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Adjust CloudEvent class in http_events.py to support binary data as well as JSON.

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Apply suggested changes by MacrBoissonneault

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Fix samples as well.

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Fix lint. Apparently, we can complain about formating issues, but a human has to fix them.

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Add test for binary encoding of messages.

Fix usability of binary detection in MarshalJSON to support memoryview.

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Fix errors noticed by cumason123

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>

* Changelog version deprecation (#48)

* added changelog

Signed-off-by: Curtis Mason <cumason@google.com>

* Created CloudEvent class (#36)

CloudEvents is a more pythonic interface for using cloud events.
It is powered by internal marshallers and cloud event base classes.
It performs basic validation on fields, and cloud event type checking.

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* Fix tox configuration for CI (#46)

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* Implemented python properties in base.py (#41)

* Added SetCloudEventVersion

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* began adding python properties

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* added pythonic properties to base class

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* began testing for getters/setters

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* added general setter tests

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* fixed spacing in base.py

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* added __eq__ to option and datacontentencoding property to v03

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* lint fixes

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* testing extensions and old getters

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* removed versions v01 and v02 from test_data_encaps_refs.py

Signed-off-by: Curtis Mason <cumason@google.com>
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* fixed inheritance issue in CloudEvent

Signed-off-by: Curtis Mason <cumason@google.com>

* added prefixed_headers dict to test

Signed-off-by: Curtis Mason <cumason@google.com>

* CHANGELOG adjustment

Signed-off-by: Curtis Mason <cumason@google.com>

* Update CHANGELOG.md

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* Update CHANGELOG.md

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* Update CHANGELOG.md

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* Update CHANGELOG.md

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* Removed irrelevant files from commit diff

Signed-off-by: Curtis Mason <cumason@google.com>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>

* Black formatter (#51)

* black and isort added to precommit

Signed-off-by: Curtis Mason <cumason@google.com>

* main renaming

Signed-off-by: Curtis Mason <cumason@google.com>

* fixed tox

Signed-off-by: Curtis Mason <cumason@google.com>

* linting in tox rename

Signed-off-by: Curtis Mason <cumason@google.com>

* fixed tox trailing space

Signed-off-by: Curtis Mason <cumason@google.com>

* added reformat tox env

Signed-off-by: Curtis Mason <cumason@google.com>

* Reformatting files

Signed-off-by: Curtis Mason <cumason@google.com>

* reformatted more files

Signed-off-by: Curtis Mason <cumason@google.com>

* documented tox in README

Signed-off-by: Curtis Mason <cumason@google.com>

* removed -rc flag

Signed-off-by: Curtis Mason <cumason@google.com>

* README and http-cloudevents sample code adjustments to reflect new CloudEvent (#56)

* README and http-cloudevents CloudEvent adjustments

README no longer shows how to use base event classes to create events.
Removed this because users shouldn't be forced to interact with the
marshaller class. Additionally, CloudEvent is a simpler interface
therefore we are encouraging the CloudEvent class usage.
http-cloudevents now has more example usage for the getitem overload.
Similarly README shows how to use getitem overload.

Signed-off-by: Curtis Mason <cumason@google.com>

* lint reformat

Signed-off-by: Curtis Mason <cumason@google.com>

* resolved nits

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* renamed /mycontext to url

Signed-off-by: Curtis Mason <cumason@google.com>

* renamed here linlk to in the samples directory

Signed-off-by: Curtis Mason <cumason@google.com>

* Separated http methods (#60)

* instantiated http path

Signed-off-by: Curtis Mason <cumason@google.com>

* moved from_http from CloudEvent to http

Signed-off-by: Curtis Mason <cumason@google.com>

* Moved to_http out of CloudEvent

Signed-off-by: Curtis Mason <cumason@google.com>

* moved http library into event.py

Signed-off-by: Curtis Mason <cumason@google.com>

* testing printable cloudevent

Signed-off-by: Curtis Mason <cumason@google.com>

* Adjusted README

Signed-off-by: Curtis Mason <cumason@google.com>

* Created EventClass

Signed-off-by: Curtis Mason <cumason@google.com>

* reformatted event.py

Signed-off-by: Curtis Mason <cumason@google.com>

* from_json definition

Signed-off-by: Curtis Mason <cumason@google.com>

* server print changes

Signed-off-by: Curtis Mason <cumason@google.com>

* Specversion toggling (#57)

* cloudevent now switches specversion types

Signed-off-by: Curtis Mason <cumason@google.com>

* removed duplicate marshall instance

Signed-off-by: Curtis Mason <cumason@google.com>

* resolved grant requests

Signed-off-by: Curtis Mason <cumason@google.com>

* converters now can check headers for fields

Signed-off-by: Curtis Mason <cumason@google.com>

* removed print statement

Signed-off-by: Curtis Mason <cumason@google.com>

* Fixed marshallers looking at headers for specversion

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fixes

Signed-off-by: Curtis Mason <cumason@google.com>

* is_binary static method and structured isinstance rework

Signed-off-by: Curtis Mason <cumason@google.com>

* testing for is_binary and is_structured

Signed-off-by: Curtis Mason <cumason@google.com>

* Image sample code (#65)

* added image example

Signed-off-by: Curtis Mason <cumason@google.com>

* moved size into headers

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* renamed sample code

Signed-off-by: Curtis Mason <cumason@google.com>

* added test to http-image-cloudevents sample

Signed-off-by: Curtis Mason <cumason@google.com>

* removed unnecessary function

Signed-off-by: Curtis Mason <cumason@google.com>

* Added testing for http-image-cloudevents

Signed-off-by: Curtis Mason <cumason@google.com>

* Data marshall arg fix and better image in sample

Fixed bug where data_marshaller and data_unmarshaller wasn't being
passed into positional arguments. Also used cloudevents logo for the
image in http-image-cloudevents

Signed-off-by: Curtis Mason <cumason@google.com>

* adjusted http-image-cloudevents samples

Signed-off-by: Curtis Mason <cumason@google.com>

* reformat and README changes

Signed-off-by: Curtis Mason <cumason@google.com>

* io bytes casting in data_unmarshaller

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* removed unusued imports in http-image samples

Signed-off-by: Curtis Mason <cumason@google.com>

* removed samples/http-cloudevents/tmp.png

Signed-off-by: Curtis Mason <cumason@google.com>

* Nits

Signed-off-by: Curtis Mason <cumason@google.com>

* Implemented to_json and from_json (#72)

* added test_to_json test

Signed-off-by: Curtis Mason <cumason@google.com>

* implemented to_json with tests

Signed-off-by: Curtis Mason <cumason@google.com>

* from_json and to_json tests

Signed-off-by: Curtis Mason <cumason@google.com>

* Tests for to_json being able to talk to from_json

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* added documentation for to_json and from_json

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* Fixed top level extensions bug (#71)

* Fixed top level extensions bug

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* fixed name bug in test_event_extensions

Signed-off-by: Curtis Mason <cumason@google.com>

* fixed broken links in README.md (#75)

Signed-off-by: Curtis Mason <cumason@google.com>

* Fixed marshaller documentation typo's in http (#76)

* Fixed marshaller documentation in http directory

Signed-off-by: Curtis Mason <cumason@google.com>

* adjusted marshaller documentation

Signed-off-by: Curtis Mason <cumason@google.com>

* None data fix (#78)

* fixed none data issue

Signed-off-by: Curtis Mason <cumason@google.com>

* added none data test for marshalling

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* Samples image test server (#79)

* fixed none data issue

Signed-off-by: Curtis Mason <cumason@google.com>

* added none data test for marshalling

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* added http server test in image sample

Signed-off-by: Curtis Mason <cumason@google.com>

* Removed print statements from test

Signed-off-by: Curtis Mason <cumason@google.com>

* removed requests from test

Signed-off-by: Curtis Mason <cumason@google.com>

* Top level http (#83)

* Modularized http and made http a top level module

Modularized the http directory by separating related functions into
different scripts. Also removed EventClass and kept a singular
CloudEvent. Finally, CloudEvent.__repr__ was refactored such that it
doesn't depend on external methods.

Signed-off-by: Curtis Mason <cumason@google.com>

* renamed requests.py to http_methods

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fixes

Signed-off-by: Curtis Mason <cumason@google.com>

* http-json-cloudevents testing (#80)

* Added tests to http-json-cloudevents

Signed-off-by: Curtis Mason <cumason@google.com>

* removed outdated python-requests sample code

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* Added flask to requirements

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fix

Signed-off-by: Curtis Mason <cumason@google.com>

* docs: add README badge (#85)

Signed-off-by: Grant Timmerman <timmerman+devrel@google.com>

* added pypi-release rule (#87)

* added pypi-release rule

Signed-off-by: Curtis Mason <cumason@google.com>

* added RELEASING.md

Signed-off-by: Curtis Mason <cumason@google.com>

* Adjusted RELEASING.md

Signed-off-by: Curtis Mason <cumason@google.com>

* Update .github/workflows/pypi-release.yml

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* workflow pypi name changed

Signed-off-by: Curtis Mason <cumason@google.com>

* Update RELEASING.md

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* Update RELEASING.md

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* Update RELEASING.md

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* removed some pbr stuff

Signed-off-by: Curtis Mason <cumason@google.com>

* Removed all pbr stuff

Signed-off-by: Curtis Mason <cumason@google.com>

* README nits

Signed-off-by: Curtis Mason <cumason@google.com>

* RELEASING adjustment in README

Signed-off-by: Curtis Mason <cumason@google.com>

* author update in setup.cfg

Signed-off-by: Curtis Mason <cumason@google.com>

* removed setup.cfg

Signed-off-by: Curtis Mason <cumason@bu.edu>

* Update setup.py

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@bu.edu>

* lint fix

Signed-off-by: Curtis Mason <cumason@bu.edu>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>

* pypi-release git tags automation (#88)

* added pypi_packaging

Signed-off-by: Curtis Mason <cumason@bu.edu>

* reverted pypi-release

Signed-off-by: Curtis Mason <cumason@bu.edu>

* added pypi_package workflow

Signed-off-by: Curtis Mason <cumason@bu.edu>

* added gitpython dependency

Signed-off-by: Curtis Mason <cumason@bu.edu>

* added git import in createTag function

Signed-off-by: Curtis Mason <cumason@bu.edu>

* Updated RELEASING.md and implemented pypi_config in pypi_packaging.pg

Signed-off-by: Curtis Mason <cumason@bu.edu>
Signed-off-by: Curtis Mason <cumason@google.com>

* Fixed some docs

Signed-off-by: Curtis Mason <cumason@bu.edu>
Signed-off-by: Curtis Mason <cumason@google.com>

* Update .github/workflows/pypi-release.yml

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Signed-off-by: Curtis Mason <cumason@google.com>

* added __version__

Signed-off-by: Curtis Mason <cumason@google.com>

* lint change

Signed-off-by: Curtis Mason <cumason@google.com>

* reinstalling cloudevents in workflow

Signed-off-by: Curtis Mason <cumason@google.com>

* added cloudevents to publish.txt

Signed-off-by: Curtis Mason <cumason@google.com>

* removed old release_doc

Signed-off-by: Curtis Mason <cumason@google.com>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>

Co-authored-by: Evan Anderson <evan.k.anderson@gmail.com>
Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
Co-authored-by: Grant Timmerman <timmerman@google.com>
2020-08-10 19:47:10 -07:00
Dustin Ingram d551dba58a
Fix tox configuration for CI (#46)
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>
2020-06-23 16:52:47 -05:00
Curtis Mason e027fa3f21
Remove old cloudevents specversion support (v01 and v02) (#43)
* removed tests/classes v01 and v02

Signed-off-by: Curtis Mason <cumason@google.com>

* lint fixes

Signed-off-by: Curtis Mason <cumason@google.com>

* removed v02 from samples

Signed-off-by: Curtis Mason <cumason@google.com>

* removed v02 from README.md

Signed-off-by: Curtis Mason <cumason@google.com>

* removed v0.2 and v0.3 from README.md

Signed-off-by: Curtis Mason <cumason@google.com>
2020-06-22 09:00:10 -07:00
Curtis Mason 2b11e1171a
Issue and pull request templates revisions (#44)
* Added issue template

Signed-off-by: Curtis Mason <cumason@google.com>

* modified pull_request_template.md

Signed-off-by: Curtis Mason <cumason@google.com>

* adjusted templates

Signed-off-by: Curtis Mason <cumason@google.com>

* removing duplicate issue template file

Signed-off-by: Curtis Mason <cumason@google.com>
2020-06-19 13:33:38 -07:00
Dustin Ingram cda44dd83d
Update docs (#31)
* Update README to show v1 examples

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Update release process

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Update CHANGELOG

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>
2020-04-27 19:18:23 -05:00
Francesco Guardiani bcacf3391a
Added Cloudevents V0.3 and V1 implementations (#22)
* Added v1 and v03 specs

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Added v1 and v03 specs implementations

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* linter

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* linter 2

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Add changelog entry

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
2020-04-24 09:57:41 -05:00
Dustin Ingram b7ad8c2fbb
Add a changelog (#30)
Signed-off-by: Dustin Ingram <di@users.noreply.github.com>
2020-04-24 09:47:30 -05:00
Ryan Dawson 76654a98ed
fix small bug with extensions (#25)
* Add a failing test

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* fix small bug with extensions

Signed-off-by: ryandawsonuk <rd@seldon.io>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
2020-04-20 17:52:14 -05:00
Doug Davis 173ed417d8
add link to email (#27)
Signed-off-by: Doug Davis <dug@us.ibm.com>

Co-authored-by: Dustin Ingram <di@users.noreply.github.com>
2020-04-20 17:25:57 -05:00
Dustin Ingram 2413665890
GitHub Actions (#29)
* Switch to Github Actions

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>

* Add support for Python 3.8

Signed-off-by: Dustin Ingram <di@users.noreply.github.com>
2020-04-20 17:22:42 -05:00
Doug Davis ec0ae88f3b
Merge pull request #23 from duglin/editreadme
add helpful text to README
2020-03-20 10:19:46 -04:00
Doug Davis 6818ca3ebf add helpful text to README
Signed-off-by: Doug Davis <dug@us.ibm.com>
2020-01-28 18:58:04 +00:00
bonnevm f51b5e4176 Fix typo in extensions (#21)
Signed-off-by: Martin Bonneville <martin.bonneville@elementai.com>
2019-06-07 15:43:41 +03:00
Sylvain Hellegouarch 3084ca5488 Move Sphinx dependency out of package depedency (#17)
Contributes to https://github.com/cloudevents/sdk-python/issues/16

Signed-off-by: Sylvain Hellegouarch <sh@defuze.org>
2019-04-19 22:17:03 +03:00
Denis Makogon 7508d3cb2f
Update sample scripts (#15)
Signed-off-by: Denis Makogon <lildee1991@gmail.com>
2019-02-05 18:27:25 +02:00
Denis Makogon 7070e5124a
Adding web app tests (#13)
* Adding web app tests

Signed-off-by: Denis Makogon <denys.makogon@oracle.com>

* addressing review comments

Signed-off-by: Denis Makogon <denys.makogon@oracle.com>
2019-01-17 02:26:55 +02:00
Evan Anderson 5cd67e4122 Add content-type for long-description. (#11)
Causes markdown to render correctly on pypi

Signed-off-by: Evan Anderson <argent@google.com>
2019-01-16 22:39:28 +02:00
Denis Makogon 94c7c9ae1f
Merge pull request #10 from cloudevents/0.2-force-improvements
0.2 force improvements
2019-01-16 16:58:14 +02:00
Denis Makogon c9eec27153
Merge pull request #9 from evankanderson/boonary
Updates for binary encoding
2019-01-15 19:16:35 +02:00
Evan Anderson 47873fbca1 Adding type info to Converter interface.
Signed-off-by: Evan Anderson <argent@google.com>
2019-01-14 00:21:49 +00:00
Evan Anderson d90a4861f9 Application of 7de461a589 to https://github.com/cloudevents/sdk-python/pull/7
Signed-off-by: Evan Anderson <argent@google.com>
2019-01-13 22:09:56 +00:00
Denis Makogon d8cec175a9 Adding event_supported to converters
- this method validates whether a converter can process the event,
   in case of structured converter this method does nothing,
   in case of binary converter this method raise an exception if an event is not v0.2
 - adding (un)marshaller validation on being a callable object
 - tests added

Signed-off-by: Denis Makogon <denys.makogon@oracle.com>
2018-12-10 11:23:52 -08:00
Denis Makogon 9357beb4c2 Adding back can_read to converters
Signed-off-by: Denis Makogon <denys.makogon@oracle.com>
2018-12-10 10:54:45 -08:00
Denis Makogon 043236bb42 Consolidating return types
Closes: #6
Closes: #4
Signed-off-by: Denis Makogon <denys.makogon@oracle.com>
2018-12-10 10:14:57 -08:00
Denis Makogon f4a3c05857
Merge pull request #3 from cloudevents/sdk-spec
README update
2018-12-09 02:56:26 +03:00
Denis Makogon 8de0ade014 README update
Signed-off-by: Denis Makogon <lildee1991@gmail.com>
2018-12-08 18:04:33 -05:00
Denis Makogon 67e3525675
Merge pull request #2 from cloudevents/sdk-spec
Make SDK compliant with CloudEvents SDK spec
2018-12-09 01:55:49 +03:00