From ce2641599d898e2b3c8d52ef9d8b99982db8038a Mon Sep 17 00:00:00 2001 From: jsonbailey Date: Fri, 27 Mar 2026 11:56:32 -0500 Subject: [PATCH 1/3] feat: Drop support for python 3.9 feat!: Bump minimum langchain version to 1.0.0 --- packages/ai-providers/server-ai-langchain/pyproject.toml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/packages/ai-providers/server-ai-langchain/pyproject.toml b/packages/ai-providers/server-ai-langchain/pyproject.toml index 0f51402..a8fe2ef 100644 --- a/packages/ai-providers/server-ai-langchain/pyproject.toml +++ b/packages/ai-providers/server-ai-langchain/pyproject.toml @@ -5,13 +5,12 @@ description = "LaunchDarkly AI SDK LangChain Provider" authors = [{name = "LaunchDarkly", email = "dev@launchdarkly.com"}] license = {text = "Apache-2.0"} readme = "README.md" -requires-python = ">=3.9,<4" +requires-python = ">=3.10,<4" classifiers = [ "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", @@ -21,8 +20,8 @@ classifiers = [ ] dependencies = [ "launchdarkly-server-sdk-ai>=0.16.0", - "langchain-core>=0.2.0", - "langchain>=0.2.0", + "langchain-core>=1.0.0", + "langchain>=1.0.0", ] [project.urls] @@ -47,7 +46,7 @@ build-backend = "hatchling.build" packages = ["src/ldai_langchain"] [tool.mypy] -python_version = "3.9" +python_version = "3.10" ignore_missing_imports = true install_types = true non_interactive = true From c7fbb1417a14f1eabec58c344dca0b1a0bde9b3e Mon Sep 17 00:00:00 2001 From: jsonbailey Date: Fri, 27 Mar 2026 12:01:37 -0500 Subject: [PATCH 2/3] chore: drop Python 3.9 from LangChain CI matrix LangChain >= 1.0 requires Python >= 3.10, so remove 3.9 from the server-ai-langchain CI jobs. Other packages are unaffected. Co-Authored-By: Claude Sonnet 4.6 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 43d7aeb..b17c5fd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -59,7 +59,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 @@ -81,7 +81,7 @@ jobs: strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 From ec83dc55d9ac38871b74a6c80448dbe5309360fc Mon Sep 17 00:00:00 2001 From: jsonbailey Date: Fri, 27 Mar 2026 12:06:31 -0500 Subject: [PATCH 3/3] chore: drop Python 3.9 support across all packages Bumping langchain to >= 1.0 requires Python >= 3.10. Align all packages and CI matrices to reflect this new minimum. Co-Authored-By: Claude Sonnet 4.6 --- .github/workflows/ci.yml | 12 ++++++------ .../ai-providers/server-ai-openai/pyproject.toml | 5 ++--- packages/optimization/pyproject.toml | 5 ++--- packages/sdk/server-ai/pyproject.toml | 5 ++--- 4 files changed, 12 insertions(+), 15 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b17c5fd..e52c4f3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,7 +15,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 @@ -39,7 +39,7 @@ jobs: strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 @@ -101,7 +101,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 @@ -123,7 +123,7 @@ jobs: strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 @@ -143,7 +143,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 @@ -165,7 +165,7 @@ jobs: strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 diff --git a/packages/ai-providers/server-ai-openai/pyproject.toml b/packages/ai-providers/server-ai-openai/pyproject.toml index 9644628..eec8642 100644 --- a/packages/ai-providers/server-ai-openai/pyproject.toml +++ b/packages/ai-providers/server-ai-openai/pyproject.toml @@ -5,13 +5,12 @@ description = "LaunchDarkly AI SDK OpenAI Provider" authors = [{name = "LaunchDarkly", email = "dev@launchdarkly.com"}] license = {text = "Apache-2.0"} readme = "README.md" -requires-python = ">=3.9,<4" +requires-python = ">=3.10,<4" classifiers = [ "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", @@ -46,7 +45,7 @@ build-backend = "hatchling.build" packages = ["src/ldai_openai"] [tool.mypy] -python_version = "3.9" +python_version = "3.10" ignore_missing_imports = true install_types = true non_interactive = true diff --git a/packages/optimization/pyproject.toml b/packages/optimization/pyproject.toml index 3584bf4..375e45e 100644 --- a/packages/optimization/pyproject.toml +++ b/packages/optimization/pyproject.toml @@ -5,13 +5,12 @@ description = "LaunchDarkly AI SDK optimization helpers" authors = [{name = "LaunchDarkly", email = "dev@launchdarkly.com"}] license = {text = "Apache-2.0"} readme = "README.md" -requires-python = ">=3.9,<4" +requires-python = ">=3.10,<4" classifiers = [ "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", @@ -45,7 +44,7 @@ build-backend = "hatchling.build" packages = ["src/ldai_optimization"] [tool.mypy] -python_version = "3.9" +python_version = "3.10" ignore_missing_imports = true install_types = true non_interactive = true diff --git a/packages/sdk/server-ai/pyproject.toml b/packages/sdk/server-ai/pyproject.toml index 15e2fca..35d8987 100644 --- a/packages/sdk/server-ai/pyproject.toml +++ b/packages/sdk/server-ai/pyproject.toml @@ -5,13 +5,12 @@ description = "LaunchDarkly SDK for AI" authors = [{name = "LaunchDarkly", email = "dev@launchdarkly.com"}] license = {text = "Apache-2.0"} readme = "README.md" -requires-python = ">=3.9,<4" +requires-python = ">=3.10,<4" classifiers = [ "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", @@ -59,7 +58,7 @@ build-backend = "hatchling.build" packages = ["src/ldai"] [tool.mypy] -python_version = "3.9" +python_version = "3.10" ignore_missing_imports = true install_types = true non_interactive = true