Skip to content

Cleanup Python test suite deprecation warnings #1724

@data-sync-user

Description

@data-sync-user

The syncstorage and tokenserver python test suites emit a number of warnings that should be resolved to cleanup the logs, which will make it easier to catch other problems:

 =============================== warnings summary ===============================
mysql-e2e-tests    | ../usr/local/lib/python3.9/dist-packages/pyramid_hawkauth/__init__.py:26
mysql-e2e-tests    |   /usr/local/lib/python3.9/dist-packages/pyramid_hawkauth/__init__.py:26: DeprecationWarning: Everyone: "pyramid.security.Everyone" is deprecated in Pyramid 2.0. Adjust your import to "pyramid.authorization.Everyone"
mysql-e2e-tests    |     from pyramid.security import Everyone, Authenticated
mysql-e2e-tests    | 
mysql-e2e-tests    | ../usr/local/lib/python3.9/dist-packages/pyramid_hawkauth/__init__.py:26
mysql-e2e-tests    |   /usr/local/lib/python3.9/dist-packages/pyramid_hawkauth/__init__.py:26: DeprecationWarning: Authenticated: "pyramid.security.Authenticated" is deprecated in Pyramid 2.0. Adjust your import to "pyramid.authorization.Authenticated"
mysql-e2e-tests    |     from pyramid.security import Everyone, Authenticated
mysql-e2e-tests    | 
mysql-e2e-tests    | tools/integration_tests/test_storage.py: 63 warnings
mysql-e2e-tests    |   /app/tools/integration_tests/test_support.py:182: DeprecationWarning: Authentication and authorization policies have been deprecated in favor of security policies.  See "Upgrading Authentication/Authorization" in "What's New in Pyramid 2.0" of the documentation for more information.
mysql-e2e-tests    |     config.set_authorization_policy(authz_policy)
mysql-e2e-tests    | 
mysql-e2e-tests    | tools/integration_tests/test_storage.py: 63 warnings
mysql-e2e-tests    |   /app/tools/integration_tests/test_support.py:186: DeprecationWarning: Authentication and authorization policies have been deprecated in favor of security policies.  See "Upgrading Authentication/Authorization" in "What's New in Pyramid 2.0" of the documentation for more information.
mysql-e2e-tests    |     config.set_authentication_policy(authn_policy)
mysql-e2e-tests    | 
mysql-e2e-tests    | tools/integration_tests/tokenserver/test_authorization.py::TestAuthorization::test_client_specified_duration
mysql-e2e-tests    |   /app/tools/integration_tests/tokenserver/test_support.py:231: RemovedIn20Warning: Deprecated API features detected! These feature(s) are not compatible with SQLAlchemy 2.0. To prevent incompatible upgrades prior to updating applications, ensure requirements files are pinned to "sqlalchemy<2.0". Set environment variable SQLALCHEMY_WARN_20=1 to show all deprecation warnings.  Set environment variable SQLALCHEMY_SILENCE_UBER_WARNING=1 to silence this message. (Background on SQLAlchemy 2.0 at: https://sqlalche.me/e/b8d9)
mysql-e2e-tests    |     cursor = self.database.execute(query, args)
mysql-e2e-tests    | 
mysql-e2e-tests    | -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
mysql-e2e-tests    | ---------- generated xml file: /mysql_no_jwk_integration_results.xml -----------
mysql-e2e-tests    | ====================== 102 passed, 129 warnings in 23.69s ======================

The pyramid warnings are hopefully just simple moved imports, whereas the sqlalchemy warnings may be more involved (either upgrading to 2.x, handling them individually or enabling SQLALCHEMY_SILENCE_UBER_WARNING=1)

┆Issue is synchronized with this Jira Task

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions