novu-python icon indicating copy to clipboard operation
novu-python copied to clipboard

feat(deps): update dependency sentry-sdk to v2.16.0

Open renovate[bot] opened this issue 1 year ago • 1 comments

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
sentry-sdk (changelog) 2.10.0 -> 2.16.0 age adoption passing confidence

Release Notes

getsentry/sentry-python (sentry-sdk)

v2.16.0

Compare Source

Integrations
  • Bottle: Add failed_request_status_codes (#​3618) by @​szokeasaurusrex

    You can now define a set of integers that will determine which status codes should be reported to Sentry.

    sentry_sdk.init(
        integrations=[
            BottleIntegration(
                failed_request_status_codes={403, *range(500, 600)},
            )
        ]
    )
    

    Examples of valid failed_request_status_codes:

    • {500} will only send events on HTTP 500.
    • {400, *range(500, 600)} will send events on HTTP 400 as well as the 5xx range.
    • {500, 503} will send events on HTTP 500 and 503.
    • set() (the empty set) will not send events for any HTTP status code.

    The default is {*range(500, 600)}, meaning that all 5xx status codes are reported to Sentry.

  • Bottle: Delete never-reached code (#​3605) by @​szokeasaurusrex

  • Redis: Remove flaky test (#​3626) by @​sentrivana

  • Django: Improve getting psycopg3 connection info (#​3580) by @​nijel

  • Django: Add SpotlightMiddleware when Spotlight is enabled (#​3600) by @​BYK

  • Django: Open relevant error when SpotlightMiddleware is on (#​3614) by @​BYK

  • Django: Support http_methods_to_capture in ASGI Django (#​3607) by @​sentrivana

    ASGI Django now also supports the http_methods_to_capture integration option. This is a configurable tuple of HTTP method verbs that should create a transaction in Sentry. The default is ("CONNECT", "DELETE", "GET", "PATCH", "POST", "PUT", "TRACE",). OPTIONS and HEAD are not included by default.

    Here's how to use it:

    sentry_sdk.init(
        integrations=[
            DjangoIntegration(
                http_methods_to_capture=("GET", "POST"),
            ),
        ],
    )
    
Miscellaneous

v2.15.0

Compare Source

Integrations
  • Configure HTTP methods to capture in ASGI/WSGI middleware and frameworks (#​3531) by @​antonpirker

    We've added a new option to the Django, Flask, Starlette and FastAPI integrations called http_methods_to_capture. This is a configurable tuple of HTTP method verbs that should create a transaction in Sentry. The default is ("CONNECT", "DELETE", "GET", "PATCH", "POST", "PUT", "TRACE",). OPTIONS and HEAD are not included by default.

    Here's how to use it (substitute Flask for your framework integration):

    sentry_sdk.init(
        integrations=[
          FlaskIntegration(
              http_methods_to_capture=("GET", "POST"),
          ),
      ],
    )
    
    
  • Django: Allow ASGI to use drf_request in DjangoRequestExtractor (#​3572) by @​PakawiNz

  • Django: Don't let RawPostDataException bubble up (#​3553) by @​sentrivana

  • Django: Add sync_capable to SentryWrappingMiddleware (#​3510) by @​szokeasaurusrex

  • AIOHTTP: Add failed_request_status_codes (#​3551) by @​szokeasaurusrex

    You can now define a set of integers that will determine which status codes should be reported to Sentry.

    sentry_sdk.init(
        integrations=[
            AioHttpIntegration(
                failed_request_status_codes={403, *range(500, 600)},
            )
        ]
    )
    

    Examples of valid failed_request_status_codes:

    • {500} will only send events on HTTP 500.
    • {400, *range(500, 600)} will send events on HTTP 400 as well as the 5xx range.
    • {500, 503} will send events on HTTP 500 and 503.
    • set() (the empty set) will not send events for any HTTP status code.

    The default is {*range(500, 600)}, meaning that all 5xx status codes are reported to Sentry.

  • AIOHTTP: Delete test which depends on AIOHTTP behavior (#​3568) by @​szokeasaurusrex

  • AIOHTTP: Handle invalid responses (#​3554) by @​szokeasaurusrex

  • FastAPI/Starlette: Support new failed_request_status_codes (#​3563) by @​szokeasaurusrex

    The format of failed_request_status_codes has changed from a list of integers and containers to a set:

    sentry_sdk.init(
        integrations=StarletteIntegration(
            failed_request_status_codes={403, *range(500, 600)},
        ),
    )
    

    The old way of defining failed_request_status_codes will continue to work for the time being. Examples of valid new-style failed_request_status_codes:

    • {500} will only send events on HTTP 500.
    • {400, *range(500, 600)} will send events on HTTP 400 as well as the 5xx range.
    • {500, 503} will send events on HTTP 500 and 503.
    • set() (the empty set) will not send events for any HTTP status code.

    The default is {*range(500, 600)}, meaning that all 5xx status codes are reported to Sentry.

  • FastAPI/Starlette: Fix failed_request_status_codes=[] (#​3561) by @​szokeasaurusrex

  • FastAPI/Starlette: Remove invalid failed_request_status_code tests (#​3560) by @​szokeasaurusrex

  • FastAPI/Starlette: Refactor shared test parametrization (#​3562) by @​szokeasaurusrex

Miscellaneous

v2.14.0

Compare Source

Various fixes & improvements

v2.13.0

Compare Source

Various fixes & improvements

v2.12.0

Compare Source

Various fixes & improvements

v2.11.0

Compare Source

Various fixes & improvements
  • Add disabled_integrations (#​3328) by @​sentrivana

    Disabling individual integrations is now much easier. Instead of disabling all automatically enabled integrations and specifying the ones you want to keep, you can now use the new disabled_integrations config option to provide a list of integrations to disable:

    import sentry_sdk
    from sentry_sdk.integrations.flask import FlaskIntegration
    
    sentry_sdk.init(
    

Do not use the Flask integration even if Flask is installed.

  disabled_integrations=[
      FlaskIntegration(),
  ],

)


- Use operation name as transaction name in Strawberry (#​3294) by @​sentrivana
- WSGI integrations respect `SCRIPT_NAME` env variable (#​2622) by @​sarvaSanjay
- Make Django DB spans have origin `auto.db.django` (#​3319) by @​antonpirker
- Sort breadcrumbs by time before sending (#​3307) by @​antonpirker
- Fix `KeyError('sentry-monitor-start-timestamp-s')` (#​3278) by @​Mohsen-Khodabakhshi
- Set MongoDB tags directly on span data (#​3290) by @​0Calories
- Lower logger level for some messages (#​3305) by @​sentrivana and @​antonpirker
- Emit deprecation warnings from `Hub` API (#​3280) by @​szokeasaurusrex
- Clarify that `instrumenter` is internal-only (#​3299) by @​szokeasaurusrex
- Support Django 5.1 (#​3207) by @​sentrivana
- Remove apparently unnecessary `if` (#​3298) by @​szokeasaurusrex
- Preliminary support for Python 3.13 (#​3200) by @​sentrivana
- Move `sentry_sdk.init` out of `hub.py` (#​3276) by @​szokeasaurusrex
- Unhardcode integration list (#​3240) by @​rominf
- Allow passing of PostgreSQL port in tests (#​3281) by @​rominf
- Add tests for `@ai_track` decorator (#​3325) by @​colin-sentry
- Do not include type checking code in coverage report (#​3327) by @​antonpirker
- Fix test_installed_modules (#​3309) by @​szokeasaurusrex
- Fix typos and grammar in a comment (#​3293) by @​szokeasaurusrex
- Fixed failed tests setup (#​3303) by @​antonpirker
- Only assert warnings we are interested in (#​3314) by @​szokeasaurusrex

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

renovate[bot] avatar Jul 24 '24 08:07 renovate[bot]