Skip to content

0.9.0#41

Open
Lance-Drane wants to merge 23 commits intomainfrom
candidate-0.9.0
Open

0.9.0#41
Lance-Drane wants to merge 23 commits intomainfrom
candidate-0.9.0

Conversation

@Lance-Drane
Copy link
Collaborator

There are enough changes here, and this fixes enough flaws with the original design, that I think we should go ahead and release this.

This makes considerable internal changes, and is best understood by observing the following issues. This does not change the public API by much, but it does change how events function.

This MR does NOT include:

  • the encryption logic (it does add a "default capability")
  • any registry service integration

(these features will come in a future release)

Closes #8 #13 #23 #24 #26 #29 #33 #40

TODOS BEFORE RELEASING 0.9.0

  • make sure to update CHANGELOG.md and src/intersect_sdk/version.py before release
  • make sure to add user-facing upgrade information to UPGRADING.md

Lance-Drane and others added 22 commits July 29, 2024 23:11
…types

still need to add protocol-level and message-level handling

Signed-off-by: Lance Drane <dranelt@ornl.gov>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
still need to namespace events

Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
…rver

Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Signed-off-by: Lance-Drane <Lance-Drane@users.noreply.github.com>
Copy link
Collaborator

@marshallmcdonnell marshallmcdonnell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, looking great!
Agree, there is a lot here already and justifies 0.9.0 release.

Specifically, I like the new events by capability setup (ping @andrewfayres on that one!), MQTT support dropping 3 and adding 5, new core capabilities, and definitely the headers logic!

Issues:

  • looks like CI caught some tests on specific version of python, copy-pasted the two failed tests below if that helps:
SKIPPED [1] tests/unit/test_schema_invalids.py:745: Python 3.11 does not allow dataclasses to be constructed in this improper format
FAILED tests/e2e/test_examples.py::test_example_4_service_to_service - subprocess.TimeoutExpired: Command '['/home/runner/work/python-sdk/python-sdk/.venv/bin/python', '-m', 'examples.4_service_to_service.example_client']' timed out after 60 seconds
FAILED tests/integration/test_service.py::test_call_user_function - TypeError: 'UserspaceMessageHeaders' object is not subscriptable
  • Ruff linting caught a few errors as well

I'll launch a copilot review after those are fixed, just to see what it says (not required to address everything it might bring up)

Yet, merge whenever you feel ready.
I'll put requested changes but will readily approve after CI is green

services:
broker:
image: "bitnamilegacy/rabbitmq:3.13.3"
image: "bitnamilegacy/rabbitmq:4.1"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this need to change in ci.yml as well?

I am having issues with running the e2e tests locally, getting "FAILED".
(env) ntm@lap128806:python-sdk$ pdm run test-all -vvv
======================================================= test session starts =======================================================
platform linux -- Python 3.11.9, pytest-8.3.2, pluggy-1.5.0 -- /home/ntm/projects/intersect/github/python-sdk/env/bin/python
cachedir: .pytest_cache
rootdir: /home/ntm/projects/intersect/github/python-sdk
configfile: pyproject.toml
plugins: cov-5.0.0
collected 169 items

tests/e2e/test_examples.py::test_example_1_hello_world_amqp FAILED [ 0%]
tests/e2e/test_examples.py::test_example_1_hello_world_mqtt FAILED [ 1%]
tests/e2e/test_examples.py::test_example_1_hello_world_minio FAILED [ 1%]
tests/e2e/test_examples.py::test_example_1_hello_world_events ...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Rework messaging handling to directly use protocol headers, support multiple content-types

2 participants