Skip to content

Compatibility with python-multipart in Starlette integration #3692

Closed
@CharlesPerrotMinotHCHB

Description

@CharlesPerrotMinotHCHB

How do you use Sentry?

Sentry Saas (sentry.io)

Version

2.17.0

Steps to Reproduce

HI,

When using starlette 0.41.2 and python-multipart 0.0.16, we get the following warning:
E PendingDeprecationWarning: Please use 'import python_multipart' instead.

Error location is:

sentry_sdk/integrations/starlette.py:68: in <module> 
 import multipart  # type: ignore

Full stack

<frozen importlib._bootstrap>:1360: in _find_and_load
    ???
<frozen importlib._bootstrap>:1331: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:935: in _load_unlocked
    ???
.venv/lib/python3.12/site-packages/ddtrace/internal/module.py:295: in _exec_module
    self.loader.exec_module(module)
integrity_lock/main.py:35: in <module>
    app = create_app()
integrity_lock/main.py:28: in create_app
    setup_sentry()
integrity_lock/sentry.py:9: in setup_sentry
    sentry_sdk.init(
.venv/lib/python3.12/site-packages/sentry_sdk/_init_implementation.py:41: in _init
    client = sentry_sdk.Client(*args, **kwargs)
.venv/lib/python3.12/site-packages/sentry_sdk/client.py:259: in __init__
    self._init_impl()
.venv/lib/python3.12/site-packages/sentry_sdk/client.py:382: in _init_impl
    self.integrations = setup_integrations(
.venv/lib/python3.12/site-packages/sentry_sdk/integrations/__init__.py:154: in setup_integrations
    for integration_cls in iter_default_integrations(
.venv/lib/python3.12/site-packages/sentry_sdk/integrations/__init__.py:51: in iter_default_integrations
    yield getattr(import_module(module), cls)
../../../../.local/share/uv/python/cpython-3.12.7-macos-aarch64-none/lib/python3.12/importlib/__init__.py:90: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1387: in _gcd_import
    ???
<frozen importlib._bootstrap>:1360: in _find_and_load
    ???
<frozen importlib._bootstrap>:1331: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:935: in _load_unlocked
    ???
.venv/lib/python3.12/site-packages/ddtrace/internal/module.py:295: in _exec_module
    self.loader.exec_module(module)
.venv/lib/python3.12/site-packages/sentry_sdk/integrations/fastapi.py:21: in <module>
    from sentry_sdk.integrations.starlette import (
<frozen importlib._bootstrap>:1360: in _find_and_load
    ???
<frozen importlib._bootstrap>:1331: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:935: in _load_unlocked
    ???
.venv/lib/python3.12/site-packages/ddtrace/internal/module.py:295: in _exec_module
    self.loader.exec_module(module)
.venv/lib/python3.12/site-packages/sentry_sdk/integrations/starlette.py:68: in <module>
    import multipart  # type: ignore
<frozen importlib._bootstrap>:1360: in _find_and_load
    ???
<frozen importlib._bootstrap>:1331: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:935: in _load_unlocked
    ???
.venv/lib/python3.12/site-packages/ddtrace/internal/module.py:295: in _exec_module
    self.loader.exec_module(module)
.venv/lib/python3.12/site-packages/multipart/__init__.py:19: in <module>
    warnings.warn("Please use `import python_multipart` instead.", PendingDeprecationWarning, stacklevel=2)
E   PendingDeprecationWarning: Please use `import python_multipart` instead.

Expected Result

No warning, correct import

Actual Result

Warning about the import

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Waiting for: Product Owner

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions