python-docs-mcp-server 0.2.0__py3-none-any.whl → 0.2.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mcp_server_python_docs/ingestion/sphinx_json.py +21 -1
- {python_docs_mcp_server-0.2.0.dist-info → python_docs_mcp_server-0.2.1.dist-info}/METADATA +1 -1
- {python_docs_mcp_server-0.2.0.dist-info → python_docs_mcp_server-0.2.1.dist-info}/RECORD +6 -6
- {python_docs_mcp_server-0.2.0.dist-info → python_docs_mcp_server-0.2.1.dist-info}/WHEEL +0 -0
- {python_docs_mcp_server-0.2.0.dist-info → python_docs_mcp_server-0.2.1.dist-info}/entry_points.txt +0 -0
- {python_docs_mcp_server-0.2.0.dist-info → python_docs_mcp_server-0.2.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -13,6 +13,7 @@ import logging
|
|
|
13
13
|
import os
|
|
14
14
|
import re
|
|
15
15
|
import sqlite3
|
|
16
|
+
import sys
|
|
16
17
|
from collections.abc import Mapping
|
|
17
18
|
from pathlib import Path
|
|
18
19
|
|
|
@@ -166,6 +167,25 @@ def make_sphinx_json_env(
|
|
|
166
167
|
return env
|
|
167
168
|
|
|
168
169
|
|
|
170
|
+
def sphinx_parallel_jobs(
|
|
171
|
+
version_info: tuple[int, ...] = (sys.version_info.major, sys.version_info.minor),
|
|
172
|
+
) -> str:
|
|
173
|
+
"""Return the Sphinx ``-j`` value for the build interpreter.
|
|
174
|
+
|
|
175
|
+
The Sphinx venv is created from the current interpreter (``venv.create``),
|
|
176
|
+
so ``sys.version_info`` reflects the Python that will run ``sphinx-build``.
|
|
177
|
+
|
|
178
|
+
Python 3.14 changed the default ``multiprocessing`` start method on
|
|
179
|
+
POSIX from ``fork`` to ``forkserver``. ``forkserver`` pickles the work
|
|
180
|
+
handed to child processes, but Sphinx's parallel build passes a
|
|
181
|
+
``ParallelTasks`` object holding a local closure
|
|
182
|
+
(``Builder._read_parallel.<locals>.merge``) that cannot be pickled, so
|
|
183
|
+
``-j auto`` raises ``_pickle.PicklingError`` on 3.14+. Fall back to a
|
|
184
|
+
serial build there; ``fork``-default interpreters keep the parallel path.
|
|
185
|
+
"""
|
|
186
|
+
return "1" if version_info >= (3, 14) else "auto"
|
|
187
|
+
|
|
188
|
+
|
|
169
189
|
def build_sphinx_json_command(
|
|
170
190
|
sphinx_build: Path | str,
|
|
171
191
|
doc_dir: Path | str,
|
|
@@ -179,7 +199,7 @@ def build_sphinx_json_command(
|
|
|
179
199
|
"-D",
|
|
180
200
|
"html_theme=classic",
|
|
181
201
|
"-j",
|
|
182
|
-
|
|
202
|
+
sphinx_parallel_jobs(),
|
|
183
203
|
str(doc_dir),
|
|
184
204
|
str(json_out),
|
|
185
205
|
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-docs-mcp-server
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: The canonical Python stdlib oracle for AI coding agents — exact symbols, exact sections, exact versions, offline, always free, always MIT, token-frugal.
|
|
5
5
|
Author-email: Aymen Hammouda <hammouda.aymen@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -12,7 +12,7 @@ mcp_server_python_docs/ingestion/__init__.py,sha256=Yd7Jk7hD7XG3eoBVQpYiG94EwJGf
|
|
|
12
12
|
mcp_server_python_docs/ingestion/cpython_versions.py,sha256=mEhjuT7q8Bo1aZ-zj6PSqmbq2Bz64g4xj50ttqA4QUU,977
|
|
13
13
|
mcp_server_python_docs/ingestion/inventory.py,sha256=5gQCWOo1tBiQgv-e_A9KR9n2xfP4YAnJrSmb0pFbzwY,5672
|
|
14
14
|
mcp_server_python_docs/ingestion/publish.py,sha256=gra87NgH1i4T92nSwf3sqp4AnKuuzQfrcE7ySnDgcSQ,17247
|
|
15
|
-
mcp_server_python_docs/ingestion/sphinx_json.py,sha256=
|
|
15
|
+
mcp_server_python_docs/ingestion/sphinx_json.py,sha256=OXrZ8LMeLFn2har2TVnWVNwMY9b5z1VCMioQdIE5gJE,20270
|
|
16
16
|
mcp_server_python_docs/retrieval/__init__.py,sha256=xSH2dWrIun_Q980ElcoXWBIobTqz0am66-AkEvRo_ck,779
|
|
17
17
|
mcp_server_python_docs/retrieval/budget.py,sha256=kORd1Pt6IxLH95vRE7WBwdwezxvk98deYBgeNLEmyOw,2098
|
|
18
18
|
mcp_server_python_docs/retrieval/query.py,sha256=9rWBvWQG3KwVjCqEqCYKMFgKqswU-O4a1SyJiTzQrjk,6116
|
|
@@ -30,8 +30,8 @@ mcp_server_python_docs/services/version_resolution.py,sha256=rULBoqq97t0ZfSWSy-e
|
|
|
30
30
|
mcp_server_python_docs/storage/__init__.py,sha256=YNeNr7FW9Vgvo79oXgKXE3eGP0WwWDqRgTZ7lg7MFW4,62
|
|
31
31
|
mcp_server_python_docs/storage/db.py,sha256=Lys8HN3IvgmNpr_qyocUQghcZnwHf2lz9eq_BFmwi54,5634
|
|
32
32
|
mcp_server_python_docs/storage/schema.sql,sha256=4cXPktPQSLfbjkSjirpf0dA2CphlO9UCIKUxnLiIm_g,5637
|
|
33
|
-
python_docs_mcp_server-0.2.
|
|
34
|
-
python_docs_mcp_server-0.2.
|
|
35
|
-
python_docs_mcp_server-0.2.
|
|
36
|
-
python_docs_mcp_server-0.2.
|
|
37
|
-
python_docs_mcp_server-0.2.
|
|
33
|
+
python_docs_mcp_server-0.2.1.dist-info/METADATA,sha256=cRyy9YN4VFMSHudIlNbZEW2NB2D6B9F72mwDK5FCUNM,13880
|
|
34
|
+
python_docs_mcp_server-0.2.1.dist-info/WHEEL,sha256=QccIxa26bgl1E6uMy58deGWi-0aeIkkangHcxk2kWfw,87
|
|
35
|
+
python_docs_mcp_server-0.2.1.dist-info/entry_points.txt,sha256=-1arbtjZhF5mtnJNAh_90UBr1f4AqJxT3Tmfy9p7NMI,142
|
|
36
|
+
python_docs_mcp_server-0.2.1.dist-info/licenses/LICENSE,sha256=-AHGWRwcvoeP4bkY1W2ok_qaI1Mg0Zx2qYgR1k-3CHY,1071
|
|
37
|
+
python_docs_mcp_server-0.2.1.dist-info/RECORD,,
|
|
File without changes
|
{python_docs_mcp_server-0.2.0.dist-info → python_docs_mcp_server-0.2.1.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{python_docs_mcp_server-0.2.0.dist-info → python_docs_mcp_server-0.2.1.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|