intersphinx-registry 0.2411.13__tar.gz → 0.2411.17__tar.gz

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.
@@ -0,0 +1,87 @@
1
+ Metadata-Version: 2.3
2
+ Name: intersphinx_registry
3
+ Version: 0.2411.17
4
+ Summary: This package provides convenient utilities and data to write a sphinx config file.
5
+ Author-email: Matthias Bussonnier <bussonniermatthias@gmail.com>
6
+ Description-Content-Type: text/markdown
7
+ Classifier: License :: OSI Approved :: MIT License
8
+ Requires-Dist: pytest>=7.0 ; extra == "tests"
9
+ Requires-Dist: pytest-xdist ; extra == "tests"
10
+ Requires-Dist: requests ; extra == "tests"
11
+ Requires-Dist: mypy ; extra == "tests"
12
+ Requires-Dist: types-requests ; extra == "tests"
13
+ Project-URL: Home, https://github.com/Quansight-labs/intersphinx_registry
14
+ Provides-Extra: tests
15
+
16
+ # Intersphinx Registry
17
+
18
+ A simple utility package that provide default inter sphinx mapping for a large chunk of the python ecosystem.
19
+
20
+ Usage in `conf.py`
21
+
22
+ ```python
23
+ from intersphinx_registry import get_intersphinx_mapping
24
+
25
+ # ...
26
+ intersphinx_mapping = get_intersphinx_mapping(
27
+ packages={"ipython", "matplotlib", "pandas", "python"}
28
+ )
29
+ intersphinx_mapping.update({
30
+ 'overwrite': ('<url>', None),
31
+ 'my-package' : ('<url>', None),
32
+ })
33
+ ```
34
+
35
+ ## quick lookup
36
+
37
+ You can use the following to lookup target/webpages of various packages.
38
+
39
+ Call without arguments to get help:
40
+
41
+ ```
42
+ $ python -m intersphinx_registry.lookup
43
+
44
+ Usage: python -m intersphinx_registry.lookup <package>[,package] [search_term]
45
+
46
+ Example:
47
+
48
+ $ python -m intersphinx_registry.lookup numpy,scipy array
49
+ $ python -m intersphinx_registry.lookup ipython formatters.html
50
+
51
+ ```
52
+
53
+ You can search multiple packages as once.
54
+
55
+ ```
56
+ $ python -m intersphinx_registry.lookup numpy,scipy Universal
57
+ std:label ufuncs NumPy 2.1 'Universal functions (ufunc)' https://numpy.org/doc/stable/reference/ufuncs.html#ufuncs
58
+ std:label ufuncs-basics NumPy 2.1 'Universal functions (ufunc) basics' https://numpy.org/doc/stable/user/basics.ufuncs.html#ufuncs-basics
59
+ std:label ufuncs-internals NumPy 2.1 'Universal functions' https://numpy.org/doc/stable/dev/internals.code-explanations.html#ufuncs-internals
60
+ std:doc reference/ufuncs NumPy 2.1 'Universal functions (ufunc)' https://numpy.org/doc/stable/reference/ufuncs.html
61
+ std:doc user/basics.ufuncs NumPy 2.1 'Universal functions (ufunc) basics' https://numpy.org/doc/stable/user/basics.ufuncs.html
62
+ std:label non-uniform-random-number-sampling SciPy 1.14.1 'Universal Non-Uniform Random Number Sampling in SciPy' https://docs.scipy.org/doc/scipy/tutorial/stats/sampling.html#non-uniform-random-number-sampling
63
+ std:doc tutorial/stats/sampling SciPy 1.14.1 'Universal Non-Uniform Random Number Sampling in SciPy' https://docs.scipy.org/doc/scipy/tutorial/stats/sampling.html
64
+ ```
65
+
66
+ Warning, there is no cache, it downloads the inventory of each mentioned package every time.
67
+
68
+
69
+ ## Why ?
70
+
71
+ Sometime packages docs move and it's hard to keep track of. We _try_ to keep the
72
+ registry up to date, so yo do not have to ask yourself questions and update your
73
+ intersphinx-mapping.
74
+
75
+ You also might not want to think about adding intersphinx mapping when you refer
76
+ to dependencies.
77
+
78
+ ## A package url is wrong !
79
+
80
+ Please send a PR updating only this package in the `registry.json`. We try to
81
+ link only to _stable_ package, not dev versions.
82
+
83
+ ## A package is missing !
84
+
85
+ We can't do all packages, but if you think a package is widely used and missing,
86
+ please send a PR.
87
+
@@ -0,0 +1,71 @@
1
+ # Intersphinx Registry
2
+
3
+ A simple utility package that provide default inter sphinx mapping for a large chunk of the python ecosystem.
4
+
5
+ Usage in `conf.py`
6
+
7
+ ```python
8
+ from intersphinx_registry import get_intersphinx_mapping
9
+
10
+ # ...
11
+ intersphinx_mapping = get_intersphinx_mapping(
12
+ packages={"ipython", "matplotlib", "pandas", "python"}
13
+ )
14
+ intersphinx_mapping.update({
15
+ 'overwrite': ('<url>', None),
16
+ 'my-package' : ('<url>', None),
17
+ })
18
+ ```
19
+
20
+ ## quick lookup
21
+
22
+ You can use the following to lookup target/webpages of various packages.
23
+
24
+ Call without arguments to get help:
25
+
26
+ ```
27
+ $ python -m intersphinx_registry.lookup
28
+
29
+ Usage: python -m intersphinx_registry.lookup <package>[,package] [search_term]
30
+
31
+ Example:
32
+
33
+ $ python -m intersphinx_registry.lookup numpy,scipy array
34
+ $ python -m intersphinx_registry.lookup ipython formatters.html
35
+
36
+ ```
37
+
38
+ You can search multiple packages as once.
39
+
40
+ ```
41
+ $ python -m intersphinx_registry.lookup numpy,scipy Universal
42
+ std:label ufuncs NumPy 2.1 'Universal functions (ufunc)' https://numpy.org/doc/stable/reference/ufuncs.html#ufuncs
43
+ std:label ufuncs-basics NumPy 2.1 'Universal functions (ufunc) basics' https://numpy.org/doc/stable/user/basics.ufuncs.html#ufuncs-basics
44
+ std:label ufuncs-internals NumPy 2.1 'Universal functions' https://numpy.org/doc/stable/dev/internals.code-explanations.html#ufuncs-internals
45
+ std:doc reference/ufuncs NumPy 2.1 'Universal functions (ufunc)' https://numpy.org/doc/stable/reference/ufuncs.html
46
+ std:doc user/basics.ufuncs NumPy 2.1 'Universal functions (ufunc) basics' https://numpy.org/doc/stable/user/basics.ufuncs.html
47
+ std:label non-uniform-random-number-sampling SciPy 1.14.1 'Universal Non-Uniform Random Number Sampling in SciPy' https://docs.scipy.org/doc/scipy/tutorial/stats/sampling.html#non-uniform-random-number-sampling
48
+ std:doc tutorial/stats/sampling SciPy 1.14.1 'Universal Non-Uniform Random Number Sampling in SciPy' https://docs.scipy.org/doc/scipy/tutorial/stats/sampling.html
49
+ ```
50
+
51
+ Warning, there is no cache, it downloads the inventory of each mentioned package every time.
52
+
53
+
54
+ ## Why ?
55
+
56
+ Sometime packages docs move and it's hard to keep track of. We _try_ to keep the
57
+ registry up to date, so yo do not have to ask yourself questions and update your
58
+ intersphinx-mapping.
59
+
60
+ You also might not want to think about adding intersphinx mapping when you refer
61
+ to dependencies.
62
+
63
+ ## A package url is wrong !
64
+
65
+ Please send a PR updating only this package in the `registry.json`. We try to
66
+ link only to _stable_ package, not dev versions.
67
+
68
+ ## A package is missing !
69
+
70
+ We can't do all packages, but if you think a package is widely used and missing,
71
+ please send a PR.
@@ -11,7 +11,7 @@ from typing import Dict, Tuple, Set, Optional, cast
11
11
  # See issue 4, we this the best format is Major.YYMM.day,
12
12
  # in case of multiple releases a day we can borrow the next day's date.
13
13
  # no 0 in front of the day as it is not pep440 compliant.
14
- __version__ = "0.2411.13"
14
+ __version__ = "0.2411.17"
15
15
 
16
16
  registry_file = Path(__file__).parent / "registry.json"
17
17
 
@@ -0,0 +1,80 @@
1
+ """
2
+ Experimental, print info about all (or a subset of), all the known inventories.
3
+
4
+ As this is likely to make _many_ concurrent connections;
5
+ we use aoihttp and sphobjinv which are not listed as dependencies.
6
+ """
7
+
8
+ import asyncio
9
+ import sys
10
+ from urllib.parse import urljoin
11
+
12
+ import aiohttp
13
+ from sphobjinv import Inventory # type: ignore
14
+
15
+ from intersphinx_registry import get_intersphinx_mapping
16
+
17
+ if len(sys.argv) not in [2, 3]:
18
+ sys.exit(
19
+ """Usage: python -m intersphinx_registry._info <package>[,package|:all]
20
+
21
+ This prints debug info about registered package.
22
+
23
+ WARNING: :all: will query _all_ the domains; this can be considered
24
+
25
+ """
26
+ )
27
+
28
+ packages = set(sys.argv[1].split(","))
29
+ if packages == {":all:"}:
30
+ from intersphinx_registry import _get_all_mappings
31
+
32
+ packages = set(list(_get_all_mappings().keys()))
33
+
34
+ print("Looking up metadata for", len(packages), "package")
35
+
36
+ # there will be only one url
37
+ urls = [
38
+ (k, u[0], (u[1] if u[1] else "objects.inv"))
39
+ for k, u in get_intersphinx_mapping(packages=packages).items()
40
+ ]
41
+
42
+
43
+ async def fetch(session, key, base_url, obj):
44
+ final_url = urljoin(base_url, obj)
45
+ if obj != "objects.inv":
46
+ print("Obj for ", base_url, obj)
47
+ async with session.get(final_url) as response:
48
+ return key, base_url, await response.read()
49
+
50
+
51
+ async def fetch_all(urls):
52
+ async with aiohttp.ClientSession() as session:
53
+ tasks = [fetch(session, *url) for url in urls]
54
+ return await asyncio.gather(*tasks)
55
+
56
+
57
+ results = asyncio.run(fetch_all(urls))
58
+
59
+ flattened = []
60
+ for key, base_url, data in results:
61
+ try:
62
+ inv = Inventory(zlib=data)
63
+ except Exception:
64
+ print("ERROR with", key, base_url, file=sys.stderr)
65
+ continue
66
+ flattened.append((key, base_url, inv.project, inv.version, inv.count))
67
+
68
+ if not flattened:
69
+ sys.exit("Could not reach any pacakges")
70
+ width = [len(x) for x in flattened[0][:-1]]
71
+
72
+ for item in flattened:
73
+ width = [max(w, len(x)) for w, x in zip(width, item[:-1])]
74
+
75
+
76
+ for key, url, proj, version, count in flattened:
77
+ w_key, w_url, w_proj, w_version = width
78
+ print(
79
+ f"{key:<{w_key}} {proj!r:<{w_proj+2}} {version:<{w_version}} {count:<5} {url:<{w_url}}"
80
+ )
@@ -0,0 +1,74 @@
1
+ import sys
2
+
3
+ from . import get_intersphinx_mapping
4
+ from urllib.parse import urljoin
5
+
6
+ from typing import Optional
7
+
8
+ from sphinx.util.inventory import InventoryFile
9
+ from io import BytesIO
10
+
11
+ import requests
12
+
13
+ if len(sys.argv) not in [2, 3]:
14
+ sys.exit(
15
+ """Usage: python -m intersphinx_registry.lookup <package>[,package] [search_term]
16
+
17
+ Example:
18
+
19
+ $ python -m intersphinx_registry.lookup numpy,scipy array
20
+ $ python -m intersphinx_registry.lookup ipython formatters.html
21
+
22
+ """
23
+ )
24
+
25
+ packages = set(sys.argv[1].split(","))
26
+
27
+ search_term: Optional[str]
28
+ if len(sys.argv) == 3:
29
+ search_term = sys.argv[2]
30
+ else:
31
+ search_term = None
32
+
33
+ # there will be only one url
34
+ urls = [
35
+ (u[0], (u[1] if u[1] else "objects.inv"))
36
+ for u in get_intersphinx_mapping(packages=packages).values()
37
+ ]
38
+
39
+ flattened = []
40
+ for base_url, obj in urls:
41
+
42
+ final_url = urljoin(base_url, obj)
43
+
44
+ resp = requests.get(final_url)
45
+
46
+ inv = InventoryFile.load(BytesIO(resp.content), base_url, urljoin)
47
+
48
+ for key, v in inv.items():
49
+ inv_entries = sorted(v.items())
50
+ for entry, (_proj, _ver, url_path, display_name) in inv_entries:
51
+ # display_name = display_name * (display_name != '-')
52
+ flattened.append((key, entry, _proj, _ver, display_name, url_path))
53
+
54
+ filtered = []
55
+
56
+ width = [len(x) for x in flattened[0]]
57
+
58
+ for item in flattened:
59
+ key, entry, proj, version, display_name, url_path = item
60
+ if (
61
+ (search_term is None)
62
+ or (search_term in entry)
63
+ or (search_term in display_name)
64
+ or (search_term in url_path)
65
+ ):
66
+ filtered.append((key, entry, proj, version, display_name, url_path))
67
+ width = [max(w, len(x)) for w, x in zip(width, item)]
68
+
69
+
70
+ for key, entry, proj, version, display_name, url_path in filtered:
71
+ w_key, w_entry, w_proj, w_version, w_di, w_url = width
72
+ print(
73
+ f"{key:<{w_key}} {entry:<{w_entry}} {proj:<{w_proj}} {version:<{w_version}} {display_name!r:<{w_di+2}} {url_path}"
74
+ )
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "anndata": ["https://anndata.readthedocs.io/en/stable/", null],
3
- "asdf-astropy": ["https://asdf-astropy.readthedocs.io/en/latest/", null],
4
- "astropy-dev": ["https://docs.astropy.org/en/latest/", null],
3
+ "asdf-astropy": ["https://asdf-astropy.readthedocs.io/en/stable/", null],
4
+ "astropy-dev": ["https://docs.astropy.org/en/stable/", null],
5
5
  "asv": ["https://asv.readthedocs.io/en/stable/", null],
6
6
  "asyncssh": ["https://asyncssh.readthedocs.io/en/latest/", null],
7
7
  "attrs": ["https://www.attrs.org/en/stable/", null],
@@ -20,17 +20,14 @@
20
20
  "cycler": ["https://matplotlib.org/cycler/", null],
21
21
  "cython": ["https://docs.cython.org/en/latest/", null],
22
22
  "dask": ["https://docs.dask.org/en/latest/", null],
23
- "dateutil": ["https://dateutil.readthedocs.io/en/latest/", null],
23
+ "dateutil": ["https://dateutil.readthedocs.io/en/stable/", null],
24
24
  "devguide": ["https://devguide.python.org/", null],
25
25
  "devpi": ["https://devpi.net/docs/devpi/devpi/latest/+doc/", null],
26
26
  "dh-virtualenv": ["https://dh-virtualenv.readthedocs.io/en/latest/", null],
27
27
  "dipy": ["https://docs.dipy.org/stable/", null],
28
28
  "distlib": ["https://distlib.readthedocs.io/en/latest/", null],
29
29
  "distributed": ["https://distributed.dask.org/en/stable/", null],
30
- "django": [
31
- "https://docs.djangoproject.com/en/stable/",
32
- "https://docs.djangoproject.com/en/stable/_objects/"
33
- ],
30
+ "django": ["https://docs.djangoproject.com/en/stable/", "https://docs.djangoproject.com/en/stable/_objects/"],
34
31
  "dlpack": ["https://dmlc.github.io/dlpack/latest/", null],
35
32
  "flax": ["https://flax.readthedocs.io/en/latest/", null],
36
33
  "flexx": ["https://flexx.readthedocs.io/en/latest/", null],
@@ -38,19 +35,18 @@
38
35
  "geopandas": ["https://geopandas.org/en/stable/", null],
39
36
  "hub": ["https://jupyterhub.readthedocs.io/en/latest/", null],
40
37
  "imageio": ["https://imageio.readthedocs.io/en/stable/", null],
41
- "importlib-resources": [
42
- "https://importlib-resources.readthedocs.io/en/latest/",
43
- null
44
- ],
38
+ "iminuit": ["https://iminuit.readthedocs.io/en/stable/", null],
39
+ "importlib-resources": ["https://importlib-resources.readthedocs.io/en/latest/", null],
45
40
  "ipykernel": ["https://ipykernel.readthedocs.io/en/latest/", null],
46
41
  "ipyleaflet": ["https://ipyleaflet.readthedocs.io/en/latest/", null],
47
- "ipyparallel": ["https://ipyparallel.readthedocs.io/en/latest/", null],
48
- "ipython": ["https://ipython.readthedocs.io/en/latest/", null],
42
+ "ipyparallel": ["https://ipyparallel.readthedocs.io/en/stable/", null],
43
+ "ipython": ["https://ipython.readthedocs.io/en/stable/", null],
49
44
  "ipywidgets": ["https://ipywidgets.readthedocs.io/en/latest/", null],
50
45
  "jax": ["https://jax.readthedocs.io/en/latest/", null],
51
46
  "jedi": ["https://jedi.readthedocs.io/en/latest/", null],
52
47
  "jinja": ["https://jinja.palletsprojects.com/", null],
53
48
  "joblib": ["https://joblib.readthedocs.io/en/latest/", null],
49
+ "jsonpatch": ["https://python-json-patch.readthedocs.io/en/stable/", null],
54
50
  "jupyter": ["https://docs.jupyter.org/en/latest/", null],
55
51
  "jupyter-server": ["https://jupyter-server.readthedocs.io/en/stable/", null],
56
52
  "jupyter_core": ["https://jupyter-core.readthedocs.io/en/stable/", null],
@@ -75,10 +71,7 @@
75
71
  "mpmath": ["https://mpmath.org/doc/current/", null],
76
72
  "myst-nb": ["https://myst-nb.readthedocs.io/en/latest/", null],
77
73
  "myst-parser": ["https://myst-parser.readthedocs.io/en/latest/", null],
78
- "napari_plugin_engine": [
79
- "https://napari-plugin-engine.readthedocs.io/en/latest/",
80
- null
81
- ],
74
+ "napari_plugin_engine": ["https://napari-plugin-engine.readthedocs.io/en/latest/", null],
82
75
  "nbconvert": ["https://nbconvert.readthedocs.io/en/latest/", null],
83
76
  "nbformat": ["https://nbformat.readthedocs.io/en/latest/", null],
84
77
  "nbgitpuller": ["https://nbgitpuller.readthedocs.io/en/latest/", null],
@@ -104,12 +97,10 @@
104
97
  "pip": ["https://pip.pypa.io/en/latest/", null],
105
98
  "pipenv": ["https://pipenv.pypa.io/en/latest/", null],
106
99
  "piwheels": ["https://piwheels.readthedocs.io/en/latest/", null],
100
+ "plotly": ["https://plotly.com/python-api-reference/", null],
107
101
  "pluggy": ["https://pluggy.readthedocs.io/en/stable/", null],
108
102
  "poliastro": ["https://docs.poliastro.space/en/stable/", null],
109
- "prompt_toolkit": [
110
- "https://python-prompt-toolkit.readthedocs.io/en/stable/",
111
- null
112
- ],
103
+ "prompt_toolkit": ["https://python-prompt-toolkit.readthedocs.io/en/stable/", null],
113
104
  "py": ["https://pylib.readthedocs.io/en/latest/", null],
114
105
  "pyarrow": ["https://arrow.apache.org/docs/", null],
115
106
  "pybind11": ["https://pybind11.readthedocs.io/en/stable/", null],
@@ -153,24 +144,12 @@
153
144
  "spack": ["https://spack.readthedocs.io/en/latest/", null],
154
145
  "sparse": ["https://sparse.pydata.org/en/latest/", null],
155
146
  "sphinx": ["https://www.sphinx-doc.org/en/master/", null],
156
- "sphinx-copybutton": [
157
- "https://sphinx-copybutton.readthedocs.io/en/latest/",
158
- null
159
- ],
160
- "sphinx-design": [
161
- "https://sphinx-design.readthedocs.io/en/pydata-theme/",
162
- null
163
- ],
147
+ "sphinx-copybutton": ["https://sphinx-copybutton.readthedocs.io/en/latest/", null],
148
+ "sphinx-design": ["https://sphinx-design.readthedocs.io/en/pydata-theme/", null],
164
149
  "sphinx-gallery": ["https://sphinx-gallery.github.io/stable/", null],
165
150
  "sphinx-material": ["https://bashtage.github.io/sphinx-material/", null],
166
- "sphinx-togglebutton": [
167
- "https://sphinx-togglebutton.readthedocs.io/en/latest/",
168
- null
169
- ],
170
- "sphinx_automodapi": [
171
- "https://sphinx-automodapi.readthedocs.io/en/stable/",
172
- null
173
- ],
151
+ "sphinx-togglebutton": ["https://sphinx-togglebutton.readthedocs.io/en/latest/", null],
152
+ "sphinx_automodapi": ["https://sphinx-automodapi.readthedocs.io/en/stable/", null],
174
153
  "sqlalchemy": ["https://docs.sqlalchemy.org/en/latest/", null],
175
154
  "statsmodels": ["https://www.statsmodels.org/stable/", null],
176
155
  "sympy": ["https://docs.sympy.org/latest/", null],
@@ -183,6 +162,7 @@
183
162
  "typing": ["https://typing.readthedocs.io/en/latest/", null],
184
163
  "typing_extensions": ["https://typing-extensions.readthedocs.io/en/stable/", null],
185
164
  "ubelt": ["https://ubelt.readthedocs.io/en/latest/", null],
165
+ "uproot": ["https://uproot.readthedocs.io/en/stable/", null],
186
166
  "urwid": ["https://urwid.org/", null],
187
167
  "virtualenv": ["https://virtualenv.pypa.io/en/stable/", null],
188
168
  "writethedocs": ["https://www.writethedocs.org/", null],
@@ -1,69 +0,0 @@
1
- Metadata-Version: 2.3
2
- Name: intersphinx_registry
3
- Version: 0.2411.13
4
- Summary: This package provides convenient utilities and data to write a sphinx config file.
5
- Author-email: Matthias Bussonnier <bussonniermatthias@gmail.com>
6
- Description-Content-Type: text/markdown
7
- Classifier: License :: OSI Approved :: MIT License
8
- Requires-Dist: pytest>=7.0 ; extra == "tests"
9
- Requires-Dist: pytest-xdist ; extra == "tests"
10
- Requires-Dist: requests ; extra == "tests"
11
- Requires-Dist: mypy ; extra == "tests"
12
- Requires-Dist: types-requests ; extra == "tests"
13
- Project-URL: Home, https://github.com/Quansight-labs/intersphinx_registry
14
- Provides-Extra: tests
15
-
16
- # Intersphinx Registry
17
-
18
- A simple utility package that provide default inter sphinx mapping for a large chunk of the python ecosystem.
19
-
20
- Usage in `conf.py`
21
-
22
- ```python
23
- from intersphinx_registry import get_intersphinx_mapping
24
-
25
- # ...
26
- intersphinx_mapping = get_intersphinx_mapping(
27
- packages={"ipython", "matplotlib", "pandas", "python"}
28
- )
29
- intersphinx_mapping.update({
30
- 'overwrite': ('<url>', None),
31
- 'my-package' : ('<url>', None),
32
- })
33
- ```
34
-
35
- ## quick lookup
36
-
37
- You can use the following to lookup target/webpages of various packages.
38
-
39
- ```
40
- $ python -m intersphinx_registry.lookup ipython | grep whatsnew7
41
- whatsnew700 IPython 7.0.0 : whatsnew/version7.html#whatsnew700
42
- whatsnew710 IPython 7.1.0 : whatsnew/version7.html#whatsnew710
43
- whatsnew720 IPython 7.2.0 : whatsnew/version7.html#whatsnew720
44
- whatsnew730 IPython 7.3.0 : whatsnew/version7.html#whatsnew730
45
- whatsnew740 IPython 7.4.0 : whatsnew/version7.html#whatsnew740
46
- whatsnew750 IPython 7.5.0 : whatsnew/version7.html#whatsnew750
47
- whatsnew760 IPython 7.6.0 : whatsnew/version7.html#whatsnew760
48
- ```
49
-
50
-
51
- ## Why ?
52
-
53
- Sometime packages docs move and it's hard to keep track of. We _try_ to keep the
54
- registry up to date, so yo do not have to ask yourself questions and update your
55
- intersphinx-mapping.
56
-
57
- You also might not want to think about adding intersphinx mapping when you refer
58
- to dependencies.
59
-
60
- ## A package url is wrong !
61
-
62
- Please send a PR updating only this package in the `registry.json`. We try to
63
- link only to _stable_ package, not dev versions.
64
-
65
- ## A package is missing !
66
-
67
- We can't do all packages, but if you think a package is widely used and missing,
68
- please send a PR.
69
-
@@ -1,53 +0,0 @@
1
- # Intersphinx Registry
2
-
3
- A simple utility package that provide default inter sphinx mapping for a large chunk of the python ecosystem.
4
-
5
- Usage in `conf.py`
6
-
7
- ```python
8
- from intersphinx_registry import get_intersphinx_mapping
9
-
10
- # ...
11
- intersphinx_mapping = get_intersphinx_mapping(
12
- packages={"ipython", "matplotlib", "pandas", "python"}
13
- )
14
- intersphinx_mapping.update({
15
- 'overwrite': ('<url>', None),
16
- 'my-package' : ('<url>', None),
17
- })
18
- ```
19
-
20
- ## quick lookup
21
-
22
- You can use the following to lookup target/webpages of various packages.
23
-
24
- ```
25
- $ python -m intersphinx_registry.lookup ipython | grep whatsnew7
26
- whatsnew700 IPython 7.0.0 : whatsnew/version7.html#whatsnew700
27
- whatsnew710 IPython 7.1.0 : whatsnew/version7.html#whatsnew710
28
- whatsnew720 IPython 7.2.0 : whatsnew/version7.html#whatsnew720
29
- whatsnew730 IPython 7.3.0 : whatsnew/version7.html#whatsnew730
30
- whatsnew740 IPython 7.4.0 : whatsnew/version7.html#whatsnew740
31
- whatsnew750 IPython 7.5.0 : whatsnew/version7.html#whatsnew750
32
- whatsnew760 IPython 7.6.0 : whatsnew/version7.html#whatsnew760
33
- ```
34
-
35
-
36
- ## Why ?
37
-
38
- Sometime packages docs move and it's hard to keep track of. We _try_ to keep the
39
- registry up to date, so yo do not have to ask yourself questions and update your
40
- intersphinx-mapping.
41
-
42
- You also might not want to think about adding intersphinx mapping when you refer
43
- to dependencies.
44
-
45
- ## A package url is wrong !
46
-
47
- Please send a PR updating only this package in the `registry.json`. We try to
48
- link only to _stable_ package, not dev versions.
49
-
50
- ## A package is missing !
51
-
52
- We can't do all packages, but if you think a package is widely used and missing,
53
- please send a PR.
@@ -1,21 +0,0 @@
1
- import sys
2
-
3
- from intersphinx_registry import get_intersphinx_mapping
4
- import logging as _logging
5
- from sphinx.ext.intersphinx import inspect_main
6
- from urllib.parse import urljoin
7
-
8
- if len(sys.argv) != 2:
9
- sys.exit("Usage: python -m intersphinx_registry.lookup <package>")
10
-
11
- packages = set([sys.argv[1]])
12
-
13
- # there will be only one url
14
- urls = [
15
- urljoin(u[0], (u[1] if u[1] else "objects.inv"))
16
- for u in get_intersphinx_mapping(packages=packages).values()
17
- ]
18
-
19
-
20
- _logging.basicConfig()
21
- raise SystemExit(inspect_main(urls))