Skip to content

Stabilize AWS Maze Runner & migrate ASGI tests to Starlette 1.0+#411

Merged
SB-PawanN merged 8 commits into
nextfrom
Pawan/PLAT-15480-AWS-Test
Apr 16, 2026
Merged

Stabilize AWS Maze Runner & migrate ASGI tests to Starlette 1.0+#411
SB-PawanN merged 8 commits into
nextfrom
Pawan/PLAT-15480-AWS-Test

Conversation

@SB-PawanN
Copy link
Copy Markdown
Contributor

@SB-PawanN SB-PawanN commented Apr 10, 2026

Goal

Address PLAT-15480: Fix CI failures in AWS Lambda Maze Runner tests and ensure ASGI integration tests are compatible with Starlette 1.0+.

Changeset

  1. Enable Python 3.14 for AWS Lambda Feature Tests
    Files: handled.feature, sessions.feature, unhandled.feature
  • What changed: Removed @not-python-3.14 tag from feature test scenarios
  • Why: Python 3.14 is now supported by AWS SAM CLI, enabling Lambda testing on this version
  1. Increase Maze Runner Timeouts for AWS Lambda Tests
    File: env.rb
  • What changed:
    • receive_requests_wait: 10s → 20s
    • receive_no_requests_wait: 10s → 20s
    • receive_requests_slow_threshold: 5s → 10s
  • Why: AWS Lambda cold starts (especially Python 3.12+) require longer timeouts to prevent spurious test failures
  1. Migrate ASGI Tests to Starlette 1.0+ API
    File: test_asgi.py
  • What changed: Replaced deprecated @app.route('/') decorator syntax with app.add_route('/', handler) method calls
  • Why: Starlette 1.0+ removed decorator-based routing; this migration ensures compatibility with current and future Starlette versions

Testing

Local validation:

  • Unit tests: pytest tests/test_*.py -v → 532 passed
  • Integration tests: pytest tests/integrations/ -v → 79 passed, 1 skipped
  • Flake8 linting: passed
    CI validation:
  • Both CI workflows passing

Notes

  • No production code behavior changes
  • All changes are test/fixture updates only

This comment was marked as outdated.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread features/fixtures/aws-lambda/Dockerfile Outdated
Comment thread bugsnag/tornado/__init__.py Outdated
@SB-PawanN SB-PawanN requested a review from SB-jigneshR April 14, 2026 11:54
@SB-PawanN SB-PawanN marked this pull request as ready for review April 15, 2026 12:55
@SB-PawanN SB-PawanN requested a review from twometresteve April 16, 2026 10:40
@SB-PawanN SB-PawanN changed the title Pawan/plat 15480 aws test Stabilize AWS Maze Runner & migrate ASGI tests to Starlette 1.0+ Apr 16, 2026
@SB-PawanN SB-PawanN merged commit b02691d into next Apr 16, 2026
44 checks passed
@SB-PawanN SB-PawanN deleted the Pawan/PLAT-15480-AWS-Test branch April 16, 2026 12:59
SB-PawanN added a commit that referenced this pull request Apr 21, 2026
* Clarify use of the next banch

* Add __version__ attribute using VERSION file as single source of truth

This implements the requested feature to expose bugsnag.__version__
for programmatic version checking, as per PEP 396.

Changes:
- Created VERSION file containing current version (4.8.0)
- Updated bugsnag/__init__.py to read from VERSION and expose __version__
- Updated setup.py to read version from VERSION file
- Updated bugsnag/notifier.py to read version from VERSION file
- Added MANIFEST.in to include VERSION in package distributions
- Updated CHANGELOG.md with enhancement entry
- Updated CONTRIBUTING.md to document simplified release process

Benefits:
- Single source of truth for version number (no more manual updates in 3 places)
- bugsnag.__version__ now available for programmatic access
- Graceful fallback to 'unknown' if VERSION file is missing

* Add __version__ attribute with Makefile-based version management

Implements bugsnag.__version__ for programmatic version checking (PEP 396).
Uses Makefile approach (inspired by bugsnag-cocoa) to address performance concerns.

Changes:
- Added __version__ = '4.8.0' to bugsnag/__init__.py
- Hardcoded version='4.8.0' in setup.py
- Hardcoded 'version': '4.8.0' in bugsnag/notifier.py
- Added Makefile with bump target for automated version updates
- Updated CHANGELOG.md with enhancement entry
- Updated CONTRIBUTING.md to document Makefile usage
- Removed VERSION file and MANIFEST.in (no runtime file I/O overhead)
- Updated features/support/env.rb (removed VERSION from test fixtures)

Usage:
- Users: bugsnag.__version__ returns '4.8.0'
- Maintainers: make VERSION=x.y.z bump (updates all 3 files)

Benefits:
- Zero runtime overhead (no file I/O during import)
- bugsnag.__version__ attribute now available
- Automated version updates via single Makefile command
- Addresses reviewer feedback on performance concerns

* Address review feedback

- Restore flask extras_require (accidental removal)
- Update CHANGELOG.md format per reviewer suggestion
- All 532 core unit tests passing

* Stabilize AWS Maze Runner & migrate ASGI tests to Starlette 1.0+ (#411)

Address PLAT-15480: Fix CI failures in AWS Lambda Maze Runner tests and ensure ASGI integration tests are compatible with Starlette 1.0+

Changes:
* Enable Python 3.14 for AWS Lambda feature tests (removed @not-python-3.14 tags)
* Increase Maze Runner timeouts for AWS Lambda cold starts (10s → 20s)
* Migrate ASGI tests from deprecated @app.route() to app.add_route() for Starlette 1.0+ compatibility

* release 4.9.0

---------

Co-authored-by: Steve Kirkland <steve.kirkland@smartbear.com>
Co-authored-by: Steve Kirkland <twometresteve@users.noreply.github.com>
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.

4 participants