zamzterz/Flask-pyoidc

BaseSettings has been moved to the pydantic-settings

Closed this issue · 3 comments

Simply importing throws error:

raise PydanticImportError(
pydantic.errors.PydanticImportError: `BaseSettings` has been moved to the `pydantic-settings` package. 
See https://docs.pydantic.dev/2.0.2/migration/#basesettings-has-moved-to-pydantic-settings for more details.

For further information visit https://errors.pydantic.dev/2.0.2/u/import-error

app.py

from flask import Flask, jsonify

from flask_pyoidc import OIDCAuthentication
from flask_pyoidc.provider_configuration import ProviderConfiguration

pip install --upgrade $(pip freeze)

Requirement already satisfied: annotated-types==0.5.0 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (0.5.0)
Requirement already satisfied: blinker==1.6.2 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (1.6.2)
Requirement already satisfied: certifi==2023.5.7 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2023.5.7)
Requirement already satisfied: cffi==1.15.1 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (1.15.1)
Requirement already satisfied: charset-normalizer==3.2.0 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (3.2.0)
Requirement already satisfied: click==8.1.4 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (8.1.4)
Requirement already satisfied: cryptography==41.0.1 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (41.0.1)
Requirement already satisfied: defusedxml==0.7.1 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (0.7.1)
Requirement already satisfied: Flask==2.3.2 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.3.2)
Requirement already satisfied: Flask-pyoidc==3.14.0 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (3.14.0)
Requirement already satisfied: future==0.18.3 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (0.18.3)
Requirement already satisfied: idna==3.4 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (3.4)
Requirement already satisfied: importlib-resources==6.0.0 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (6.0.0)
Requirement already satisfied: itsdangerous==2.1.2 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.1.2)
Requirement already satisfied: Jinja2==3.1.2 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (3.1.2)
Requirement already satisfied: Mako==1.2.4 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (1.2.4)
Requirement already satisfied: MarkupSafe==2.1.3 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.1.3)
Requirement already satisfied: oic==1.6.0 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (1.6.0)
Requirement already satisfied: pycparser==2.21 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.21)
Requirement already satisfied: pycryptodomex==3.18.0 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (3.18.0)
Requirement already satisfied: pydantic==2.0.2 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.0.2)
Requirement already satisfied: pydantic_core==2.1.2 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.1.2)
Requirement already satisfied: pyjwkest==1.4.2 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (1.4.2)
Requirement already satisfied: requests==2.31.0 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.31.0)
Requirement already satisfied: six==1.16.0 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (1.16.0)
Requirement already satisfied: typing_extensions==4.7.1 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (4.7.1)
Requirement already satisfied: urllib3==2.0.3 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.0.3)
Requirement already satisfied: Werkzeug==2.3.6 in /srv/repos/qbo-tools/venv/lib/python3.10/site-packages (2.3.6)

Looks like caused by oic==1.6.0

utils->settings.py

replace from pydantic import BaseSettings
with from pydantic_settings import BaseSettings

oic target codebase is already updated

looks like it is already a released on the fix
https://github.com/CZ-NIC/pyoidc/releases/tag/1.6.1

Thanks for reporting this error - it has already been fixed in #162 which has just been released as part of v3.14.2.