Skip to content

ODSC-88493: ADS Python 3.14 support readiness#1398

Open
cheryloracle wants to merge 11 commits into
oracle:mainfrom
cheryloracle:csa/odsc-88493
Open

ODSC-88493: ADS Python 3.14 support readiness#1398
cheryloracle wants to merge 11 commits into
oracle:mainfrom
cheryloracle:csa/odsc-88493

Conversation

@cheryloracle

Copy link
Copy Markdown
Member

Summary

This branch prepares ADS for staged Python 3.14 readiness without prematurely advertising full Python 3.14 package support. It records a Python 3.14 dependency readiness audit, documents the agreed support scope, keeps the Python 3.14 classifier gated in pyproject.toml, and adds the audit to the developer docs index.

The implementation updates model artifact Python-version validation to accept Python 3.14, adds runtime metadata coverage for Python 3.14 service-conda paths, fixes Python 3.14 dataclass annotation handling in BaseProperties, and cleans invalid escape-sequence warning sites so import/runtime smoke checks can run with SyntaxWarning promoted to an error.

The audit documents successful Python 3.14 core install/build validation, scoped default setup test results, GitHub Actions staging requirements, optional-extra resolver outcomes, service-conda alignment risks, and issue-ready follow-up work for dependency blockers. Full Python 3.14 support remains gated until blocked optional/service-conda groups are resolved or explicitly deferred.

Tests Run

  • /usr/bin/env PYTHONDONTWRITEBYTECODE=1 MPLCONFIGDIR=/tmp .venv-py314-core/bin/python -c "import ads, sys; print(sys.version.split()[0], ads.__version__)" -> Python 3.14.5 / ADS 2.15.2 import smoke passed.
  • /usr/bin/env PYTHONDONTWRITEBYTECODE=1 MPLCONFIGDIR=/tmp .venv-py314-core/bin/python -m pytest -p no:cacheprovider tests/unitary/default_setup/model/test_model_introspect.py::TestPythonVersionCheck::test_python_version_check tests/unitary/with_extras/model/test_runtime_info.py::TestRuntimeInfo::test_from_yaml_preserves_python_314_versions -> 2 passed in 2.37s.
  • /usr/bin/env PYTHONDONTWRITEBYTECODE=1 MPLCONFIGDIR=/tmp .venv-py314-core/bin/python -m pytest -p no:cacheprovider tests/unitary/default_setup/common/test_common_base_properties.py -> 27 passed in 2.49s.
  • /usr/bin/env PYTHONDONTWRITEBYTECODE=1 MPLCONFIGDIR=/tmp NoDependency=1 .venv-py314-core/bin/python -m pytest -p no:cacheprovider tests/unitary/default_setup -> 1236 passed, 13 skipped, 2 xfailed in 407.08s.
  • /usr/bin/env PYTHONDONTWRITEBYTECODE=1 MPLCONFIGDIR=/tmp .venv-py314-core/bin/python -W error::SyntaxWarning -c "import ads; import ads.telemetry.telemetry; import ads.text_dataset.dataset; import numpy as np, pandas as pd; from sklearn.preprocessing import StandardScaler; df = pd.DataFrame({'x': np.array([1.0, 2.0, 3.0])}); out = StandardScaler().fit_transform(df); print(np.__version__, pd.__version__, out.shape)" -> 2.5.1 2.3.3 (3, 1).
  • /usr/bin/env PYTHONDONTWRITEBYTECODE=1 MPLCONFIGDIR=/tmp .venv-py314-core/bin/python -m pytest -p no:cacheprovider tests/unitary/default_setup -> failed before the BaseProperties fix and optional dependency scoping: 20 failed, 1224 passed, 5 skipped, 2 xfailed; remaining failures were optional dependency gaps for IPython, seaborn, and nbformat after the BaseProperties issue was identified.
  • git diff --check and git diff --check main...HEAD passed.
  • Full Python 3.14 broad unit coverage was not run because oracle_ads[testsuite] remains blocked by the arff dependency on Python 3.14.

@oracle-contributor-agreement oracle-contributor-agreement Bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Jul 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants