diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 714033de..5530e82f 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -3,7 +3,6 @@ { "name": "Python 3", // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile - // "image": "mcr.microsoft.com/devcontainers/python:3.9-bookworm", // "image": "mcr.microsoft.com/devcontainers/python:3.10-bookworm", // "image": "mcr.microsoft.com/devcontainers/python:3.11-bookworm", // "image": "mcr.microsoft.com/devcontainers/python:3.12-bookworm", diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5c7893b3..65b882c2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -19,7 +19,7 @@ jobs: max-parallel: 10 fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] library : - name: "kiota_abstractions" path: "./packages/abstractions" @@ -77,7 +77,7 @@ jobs: strategy: max-parallel: 10 matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] steps: - name: Checkout diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 627610b7..8f28a928 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -148,7 +148,7 @@ __TIP__ Running `.\kiota-python.ps1 test` should give a hint of all available co This repository is setup to use [Visual Studio Code Dev Containers](https://code.visualstudio.com/docs/remote/containers) to provide a consistent development environment for contributors. The dev container is configured to have all the necessary tools and dependencies to work on the repository. -By default we do all development in `Python 3.14`, but we support Python 3.9, 3.10, 3.11, 3.12, 3.13, and 3.14. The dev container is configured to use Python 3.14, but you can test your changes by changing the `"image": "mcr.microsoft.com/devcontainers/python:3.14-bookworm",` line in the `.devcontainer/devcontainer.json` file to the desired version. If you save changes to this file, you will be prompted to rebuild the dev container. You can also rebuild the dev container by running the `Remote-Containers: Rebuild Container` command from the command palette. +By default we do all development in `Python 3.14`, but we support Python 3.10, 3.11, 3.12, 3.13, and 3.14. The dev container is configured to use Python 3.14, but you can test your changes by changing the `"image": "mcr.microsoft.com/devcontainers/python:3.14-bookworm",` line in the `.devcontainer/devcontainer.json` file to the desired version. If you save changes to this file, you will be prompted to rebuild the dev container. You can also rebuild the dev container by running the `Remote-Containers: Rebuild Container` command from the command palette. ### Dependencies diff --git a/packages/abstractions/pyproject.toml b/packages/abstractions/pyproject.toml index a7524cd4..648435aa 100644 --- a/packages/abstractions/pyproject.toml +++ b/packages/abstractions/pyproject.toml @@ -12,11 +12,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -25,7 +25,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_abstractions"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" std-uritemplate = ">=2.0.0" opentelemetry-api = ">=1.27.0" opentelemetry-sdk = ">=1.27.0" diff --git a/packages/authentication/azure/pyproject.toml b/packages/authentication/azure/pyproject.toml index b2d5bf23..41871c48 100644 --- a/packages/authentication/azure/pyproject.toml +++ b/packages/authentication/azure/pyproject.toml @@ -12,11 +12,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -25,7 +25,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_authentication_azure"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" aiohttp = ">=3.8.0" azure-core = ">=1.21.1" microsoft-kiota-abstractions = {path="../../abstractions/", develop=true} diff --git a/packages/bundle/pyproject.toml b/packages/bundle/pyproject.toml index d6b396a9..f838c56f 100644 --- a/packages/bundle/pyproject.toml +++ b/packages/bundle/pyproject.toml @@ -12,11 +12,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -25,7 +25,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_bundle"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" microsoft-kiota-abstractions = {path="../../packages/abstractions/", develop=true} microsoft-kiota-http = {path="../../packages/http/httpx/", develop=true} microsoft-kiota-serialization-json = {path="../../packages/serialization/json/", develop=true} diff --git a/packages/http/httpx/pyproject.toml b/packages/http/httpx/pyproject.toml index ce6d10e7..253be60a 100644 --- a/packages/http/httpx/pyproject.toml +++ b/packages/http/httpx/pyproject.toml @@ -12,11 +12,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -25,7 +25,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_http"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" microsoft-kiota-abstractions = {path="../../abstractions/", develop=true} opentelemetry-api = ">=1.27.0" opentelemetry-sdk = ">=1.27.0" diff --git a/packages/serialization/form/pyproject.toml b/packages/serialization/form/pyproject.toml index c3fb74cd..10b635f6 100644 --- a/packages/serialization/form/pyproject.toml +++ b/packages/serialization/form/pyproject.toml @@ -12,11 +12,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -25,7 +25,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_serialization_form"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" microsoft-kiota-abstractions = {path="../../abstractions/", develop=true} [tool.poetry.group.dev.dependencies] diff --git a/packages/serialization/json/pyproject.toml b/packages/serialization/json/pyproject.toml index 5f9e0a75..6a1007cb 100644 --- a/packages/serialization/json/pyproject.toml +++ b/packages/serialization/json/pyproject.toml @@ -12,11 +12,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -25,7 +25,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_serialization_json"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" microsoft-kiota-abstractions = {path="../../abstractions/", develop=true} [tool.poetry.group.dev.dependencies] diff --git a/packages/serialization/multipart/pyproject.toml b/packages/serialization/multipart/pyproject.toml index f6b02660..d868bfad 100644 --- a/packages/serialization/multipart/pyproject.toml +++ b/packages/serialization/multipart/pyproject.toml @@ -12,11 +12,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -25,7 +25,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_serialization_multipart"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" microsoft-kiota-abstractions = {path="../../abstractions/", develop=true} [tool.poetry.group.dev.dependencies] diff --git a/packages/serialization/text/pyproject.toml b/packages/serialization/text/pyproject.toml index 4ddbdc3d..82ecb438 100644 --- a/packages/serialization/text/pyproject.toml +++ b/packages/serialization/text/pyproject.toml @@ -12,11 +12,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -25,7 +25,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_serialization_text"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" microsoft-kiota-abstractions = {path="../../abstractions/", develop=true} [tool.poetry.group.dev.dependencies] diff --git a/tests/validation/pyproject.toml b/tests/validation/pyproject.toml index 6e01bc9c..7a037aaa 100644 --- a/tests/validation/pyproject.toml +++ b/tests/validation/pyproject.toml @@ -13,11 +13,11 @@ readme = "README.md" keywords = ["kiota", "openAPI", "Microsoft", "Graph"] classifiers = [ "Development Status :: 5 - Production/Stable", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "License :: OSI Approved :: MIT License", ] homepage = "https://github.com/microsoft/kiota#readme" @@ -26,7 +26,7 @@ documentation = "https://learn.microsoft.com/openapi/kiota/" packages = [{include = "kiota_abstractions"}] [tool.poetry.dependencies] -python = ">=3.9,<4.0" +python = ">=3.10,<4.0" microsoft-kiota-abstractions = {path="../../packages/abstractions/", develop=true} microsoft-kiota-http = {path="../../packages/http/httpx/", develop=true} microsoft-kiota-serialization-json = {path="../../packages/serialization/json/", develop=true}