Skip to content

Conversation

evadeflow
Copy link

@evadeflow evadeflow commented Sep 14, 2025

This PR aims to bring the EMQX fork up-to-date with the official upstream (ref issue #4).

SigureMo and others added 30 commits April 9, 2025 09:58
Co-authored-by: David Soria Parra <[email protected]>
Co-authored-by: Basil Hosmer <[email protected]>
Co-authored-by: ihrpr <[email protected]>
@evadeflow
Copy link
Author

evadeflow commented Sep 15, 2025

I just wanted to note that nearly all tests pass with these changes. Here's the tail-end of the output from running uv run --frozen pytest:

                                                                 Summary of Failures
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┓
┃  File                                  ┃  Function                                            ┃  Function Line  ┃  Error Line  ┃  Error           ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━┩
│  tests/issues/test_88_random_error.py  │  test_notification_validation_error                  │  21             │              │                  │
│  tests/client/test_stdio.py            │  test_stdio_client_bad_path                          │  68             │  72          │  RuntimeError    │
│  tests/shared/test_session.py          │  test_connection_closed                              │  125            │  161         │  RuntimeError    │
│  tests/client/test_config.py           │  test_command_execution                              │  26             │  49          │  AssertionError  │
│  tests/shared/test_streamable_http.py  │  test_session_termination                            │  606            │  642         │  AssertionError  │
│  tests/shared/test_streamable_http.py  │  test_streamablehttp_client_session_termination      │  982            │              │                  │
│  tests/shared/test_streamable_http.py  │  test_streamablehttp_request_context_isolation       │  1419           │              │                  │
│  tests/shared/test_streamable_http.py  │  test_client_crash_handled                           │  1565           │              │                  │
│  tests/shared/test_streamable_http.py  │  test_streamablehttp_client_session_termination_204  │  1023           │              │                  │
└────────────────────────────────────────┴──────────────────────────────────────────────────────┴─────────────────┴──────────────┴──────────────────┘
Results (22.88s):
         9 failed
       547 passed
         2 skipped
         1 xfailed

However, when I run the test suite for the official upstream, all tests pass:

═══════════════════════════════════════════════════════════════════════════════════ inline-snapshot ════════════════════════════════════════════════════════════════════════════════════
INFO: inline-snapshot was disabled because you used xdist. This means that tests with snapshots will continue to run, but snapshot(x) will only return x and inline-snapshot will not be
able to fix snapshots or generate reports.


Results (21.11s):
       556 passed
         2 skipped
         1 xfailed

And here's what I get when I run the tests on the main branch of this fork (i.e., without the PR applied):

                                                        Summary of Failures
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┓
┃  File                                  ┃  Function                            ┃  Function Line  ┃  Error Line  ┃  Error         ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━┩
│  tests/issues/test_88_random_error.py  │  test_notification_validation_error  │  21             │              │                │
│  tests/shared/test_session.py          │  test_request_cancellation           │  46             │  103         │  RuntimeError  │
└────────────────────────────────────────┴──────────────────────────────────────┴─────────────────┴──────────────┴────────────────┘
Results (4.00s):
         2 failed
       185 passed
         1 skipped

The two failing tests on the EMQX fork pass in the official upstream. Most of the failures for the EMQX fork (with and without the PR applied) display an error message saying: RuntimeError: Attempted to exit a cancel scope that isn't the current tasks's current cancel scope. So it's possible that these failures are all (somehow) related to a pre-existing bug around cancellation introduced in the EMQX fork, I'm not sure.

pchoudhury22 and others added 26 commits September 17, 2025 14:50
@evadeflow evadeflow force-pushed the issue-4-merge-latest-upstream-changes branch from 3a4c1c3 to 29b9dae Compare September 18, 2025 20:41
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.