splunk / splunk/splunk-sdk-python

Splunk core -> python3.13

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

Nobody has claimed this yet.

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

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

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.

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.

Assessment

Tech stack
python
Domain
build-system, developer-experience
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.