Splunk core -> python3.13

Open
#785 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Refactor
Clarity
Mostly clear
Activity status
Quiet
Tech stack
python

Research direction

Start by reviewing the current dependency metadata and the ai subpackage to understand how Python 3.13 is imposed on the SDK. The proposed outcome is a core package that remains usable on Python 3.9 and a separately installable AI package with the newer requirement; the issue does not name specific files or tests.

Written by the indexing model from the issue text.

Description

Hi all,

Thank you for your efforts in getting some work done in the SDK.

Unfortunately, the requirement for Python 3.13, driven by the libraries used in the ai subpackage, renders all new SDK releases unusable for app developers. This is simply because there are multiple still-supported Splunk Enterprise versions that cannot use Python 3.13.

https://www.splunk.com/en_us/legal/splunk-software-support-policy.html#core

Version End of Support Date
9.3 Jul 24 2026
9.4 Dec 16 2026
10.0 Jul 28 2027

I propose creating a second project for the AI-related work and keeping splunk-sdk-python focused on its core purpose. Then you could do something like:

# splunk-sdk
[project]
name = "splunk-sdk"
requires-python = ">=3.9"

[project.optional-dependencies]
ai = [
  "splunk-sdk-ai==1.0.0",
]

# splunk-sdk-ai
[project]
name = "splunk-sdk-ai"
requires-python = ">=3.13"

dependencies = [
  "splunk-sdk>=3.0.0",
  "httpx==0.28.1",
  "langchain>=1.2.18",
  "mcp>=1.27.1",
  "pydantic>=2.13.4",
]

With this, it would be possible to just install the required package for 3.9 as well as pip install "splunk-sdk[ai]" that would fail on python3.9.

Best,
Simon

Dominant language
Python
Stars
743
Forks
387
Avg merge
42m
Merged PRs (30d)
4

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from splunk/splunk-sdk-python

All issues in splunk/splunk-sdk-python

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.