Skip to content

Conversation

@lrafeei
Copy link
Contributor

@lrafeei lrafeei commented Nov 11, 2025

In Python 3.11, the asyncio.Runner class was added as well as the loop_factory parameter. The loop_factory parameter provides a replacement for loop policies (which are scheduled for removal in Python 3.16).

This PR instruments the loop that is created, regardless of whether it is through an global event loop setting or a custom event loop.

Closes #1581

@github-actions
Copy link

github-actions bot commented Nov 11, 2025

MegaLinter analysis: Success

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ ACTION actionlint 7 0 0 0.92s
✅ MARKDOWN markdownlint 7 0 0 0 1.12s
✅ PYTHON ruff 948 0 0 0 1.08s
✅ PYTHON ruff-format 948 0 0 0 0.32s
✅ YAML prettier 15 0 0 0 1.55s
✅ YAML v8r 15 0 0 5.82s
✅ YAML yamllint 15 0 0 0.69s

See detailed reports in MegaLinter artifacts

MegaLinter is graciously provided by OX Security

@mergify mergify bot added the tests-failing Tests failing in CI. label Nov 11, 2025
@codecov-commenter
Copy link

codecov-commenter commented Nov 11, 2025

Codecov Report

❌ Patch coverage is 95.83333% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 81.80%. Comparing base (32215b9) to head (8b8547e).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
newrelic/hooks/coroutines_asyncio.py 95.45% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1576      +/-   ##
==========================================
- Coverage   81.81%   81.80%   -0.01%     
==========================================
  Files         207      207              
  Lines       23953    23965      +12     
  Branches     3799     3801       +2     
==========================================
+ Hits        19597    19605       +8     
- Misses       3087     3090       +3     
- Partials     1269     1270       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@lrafeei lrafeei marked this pull request as ready for review November 14, 2025 19:08
@lrafeei lrafeei requested a review from a team as a code owner November 14, 2025 19:08
@mergify mergify bot removed the tests-failing Tests failing in CI. label Nov 14, 2025
@TimPansino TimPansino self-assigned this Nov 17, 2025
@mergify mergify bot added the tests-failing Tests failing in CI. label Nov 17, 2025
@TimPansino TimPansino enabled auto-merge (squash) November 18, 2025 00:41
@TimPansino TimPansino merged commit f59f52c into main Nov 18, 2025
105 of 108 checks passed
@TimPansino TimPansino deleted the asyncio-loop-factory-fix branch November 18, 2025 00:54
@mergify mergify bot removed the tests-failing Tests failing in CI. label Nov 18, 2025
hmstepanek added a commit that referenced this pull request Nov 18, 2025
* Fix error when shutdown_agent called from harvest thread (#1552)

* fix(aiomysql): avoid wrapping pooled connections multiple times (#1553)

* fix(aiomysql): avoid wrapping pooled connections multiple times

* Move and rewrite regression test

* Tweak implementation of fix

---------

Co-authored-by: Tim Pansino <[email protected]>

* Fix structlog tests (#1556)

* Bump the github_actions group with 4 updates (#1555)

Bumps the github_actions group with 4 updates: [actions/upload-artifact](https://github.com/actions/upload-artifact), [actions/download-artifact](https://github.com/actions/download-artifact), [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) and [github/codeql-action](https://github.com/github/codeql-action).


Updates `actions/upload-artifact` from 4.6.2 to 5.0.0
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@ea165f8...330a01c)

Updates `actions/download-artifact` from 5.0.0 to 6.0.0
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](actions/download-artifact@634f93c...018cc2c)

Updates `astral-sh/setup-uv` from 7.1.1 to 7.1.2
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](astral-sh/setup-uv@2ddd2b9...8585678)

Updates `github/codeql-action` from 4.30.9 to 4.31.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@16140ae...4e94bd1)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github_actions
- dependency-name: actions/download-artifact
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github_actions
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github_actions
- dependency-name: github/codeql-action
  dependency-version: 4.31.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github_actions
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Timothy Pansino <[email protected]>

* Add instrumentation for new kinesis method (#1557)

* Add free-threaded Python to CI (#1562)

* Bump github/codeql-action in the github_actions group (#1566)

Bumps the github_actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 4.31.0 to 4.31.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@4e94bd1...0499de3)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.31.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github_actions
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Region aware/ Claude 3+ bedrock support (#1561)

* Modify extractor logic.

* Add support for Claude Sonnet 3+ and region aware models.

* Update claude content extraction logic.

* Add support for Claude Sonnet 3+ and region aware models.

* Update claude content extraction logic.

* Add testing for aiobotocore.

* Restore newline.

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* Fix notice_error logic for non-iterable exceptions. (#1564)

* Revert "Fix notice_error logic for non-iterable exceptions. (#1564)" (#1568)

This reverts commit b9d9d3b.

* Add additional trace points for AWS Kinesis (#1569)

* Enable environment variables for attribute filters (#1558)

* Enable env vars for attribute filters

* [MegaLinter] Apply linters fixes

* Trigger tests

* Change attribute filters to space delimited

* Fix test assertion

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Tim Pansino <[email protected]>

* Update version of cibuildwheel to latest (#1570)

* Force uv to use non-emulated Python on windows arm64 (#1567)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* Skip hypercorn tests for v0.18 (#1579)

* Skip hypercorn tests for v0.18

* Remove tornadomaster for 3.14

* Add support for *.adaptive.sampling_target

* Add adaptive sampler instances to SamplerProxy

* Fix instability in CI caused by health check tests (#1584)

* Bump the github_actions group across 1 directory with 5 updates (#1582)

Bumps the github_actions group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout) | `5.0.0` | `5.0.1` |
| [docker/metadata-action](https://github.com/docker/metadata-action) | `5.8.0` | `5.9.0` |
| [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) | `3.6.0` | `3.7.0` |
| [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) | `7.1.2` | `7.1.3` |
| [github/codeql-action](https://github.com/github/codeql-action) | `4.31.2` | `4.31.3` |



Updates `actions/checkout` from 5.0.0 to 5.0.1
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@08c6903...93cb6ef)

Updates `docker/metadata-action` from 5.8.0 to 5.9.0
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@c1e5197...318604b)

Updates `docker/setup-qemu-action` from 3.6.0 to 3.7.0
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](docker/setup-qemu-action@2910929...c7c5346)

Updates `astral-sh/setup-uv` from 7.1.2 to 7.1.3
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](astral-sh/setup-uv@8585678...5a7eac6)

Updates `github/codeql-action` from 4.31.2 to 4.31.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](github/codeql-action@0499de3...014f16e)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 5.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github_actions
- dependency-name: docker/metadata-action
  dependency-version: 5.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github_actions
- dependency-name: docker/setup-qemu-action
  dependency-version: 3.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github_actions
- dependency-name: astral-sh/setup-uv
  dependency-version: 7.1.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github_actions
- dependency-name: github/codeql-action
  dependency-version: 4.31.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github_actions
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* Asyncio loop_factory fix (#1576)

* Runner instrumentation in asyncio

* Clean up asyncio instrumentation

* Add asyncio tests for loop_factory

* Modify uvicorn test for loop_factory

* Fix linter errors

* [MegaLinter] Apply linters fixes

* Apply suggestions from code review

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Tim Pansino <[email protected]>

* Fix issue in ASGI header consumption (#1578)

* Correct code for Sanic instrumentation

* Correct handling of headers in ASGIWebTransaction

* Correct handling of headers in ASGIBrowserMiddleware

* Add regression test for ASGI headers issues

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Timothy Pansino <[email protected]>
Co-authored-by: canonrock16 <[email protected]>
Co-authored-by: Tim Pansino <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Uma Annamalai <[email protected]>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Lalleh Rafeei <[email protected]>
sgoel-nr pushed a commit to sgoel-nr/newrelic-python-agent that referenced this pull request Nov 25, 2025
* Runner instrumentation in asyncio

* Clean up asyncio instrumentation

* Add asyncio tests for loop_factory

* Modify uvicorn test for loop_factory

* Fix linter errors

* [MegaLinter] Apply linters fixes

* Apply suggestions from code review

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Tim Pansino <[email protected]>
@lrafeei lrafeei added this to the v11.2.0 milestone Dec 8, 2025
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.

Transactions not propagating from middleware

4 participants