Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intersphinx features #764

Draft
wants to merge 21 commits into
base: master
Choose a base branch
from
Draft

Intersphinx features #764

wants to merge 21 commits into from

Conversation

tristanlatr
Copy link
Contributor

@tristanlatr tristanlatr commented Mar 2, 2024

Fixes #609
Fixes #741

Missing a lot tests..

TODO:

  • the exception reftype and the class reftype should be compatible since a exception is a class.
  • lift the limitation regarding colon in filenames, change the --intersphinx options parser in order to seek both from right and from left for the colon, excluding '://'. This might require the users to always specify the http scheme if they use the new feature.

This comment has been minimized.

Copy link

codecov bot commented Mar 2, 2024

Codecov Report

Attention: Patch coverage is 61.21951% with 159 lines in your changes missing coverage. Please review.

Project coverage is 91.11%. Comparing base (f3b1c12) to head (fb20cad).

Files with missing lines Patch % Lines
pydoctor/sphinx.py 56.61% 52 Missing and 7 partials ⚠️
pydoctor/epydoc/markup/restructuredtext.py 47.43% 35 Missing and 6 partials ⚠️
pydoctor/options.py 56.17% 36 Missing and 3 partials ⚠️
pydoctor/linker.py 71.18% 11 Missing and 6 partials ⚠️
pydoctor/model.py 50.00% 1 Missing and 1 partial ⚠️
pydoctor/node2stan.py 97.56% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #764      +/-   ##
==========================================
- Coverage   92.59%   91.11%   -1.48%     
==========================================
  Files          47       47              
  Lines        8402     8725     +323     
  Branches     1853     1924      +71     
==========================================
+ Hits         7780     7950     +170     
- Misses        357      488     +131     
- Partials      265      287      +22     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

1 similar comment

This comment has been minimized.

This comment has been minimized.

an attribute 'names', which is in turn a list of 2-tuples
(dotted_name, as_name) where as_name is None if there was no 'as foo'
part of the statement.
See L{import}.
Copy link
Contributor Author

@tristanlatr tristanlatr Mar 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So this is an implicit external link to the following intersphinx inventory

import std:label reference/simple_stmts.html#$ The import statement

It might not be the best idea to allow these kind of links implicitely. The epytext standard did not cover this. The wiser thing to do would probably be not to touch the epytext parser at first, or maybe only by changing some error message to suggest using restructuredtext instead (until a new inline markup for epytext is added for such kind of links)

Comment on lines +304 to +313
# To cope with the fact that we're not striping spaces from epytext parsed target anymore,
# some target that span over multiple lines will be misinterpreted with having a space
# So we check if the taget has spaces, and if it does we try again without the spaces.
if _CONTAINS_SPACE_RE.match(identifier):
try:
return self._resolve_identifier_xref(_SPACE_RE.sub('', identifier),
lineno, invname=invname, domain=domain,
reftype=reftype, external=external, no_warnings=True)
except LookupError:
pass
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This wouldn't be necessary if we drop the epytext parser changes

Comment on lines +96 to +98
if target.endswith(')') and _CALLABLE_RE.match(target, endpos=begin_parameters):
# Remove arg lists for functions (e.g., L{_colorize_link()})
target = _CALLABLE_ARGS_RE.sub('', target)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This implementation doesn't handle targets like thing().stuff(), for these cases we should just give-up

Comment on lines +698 to +699
for i in opt.intersphinx:
inv.update(cache, i)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
for i in opt.intersphinx:
inv.update(cache, i)
for i in opt.intersphinx:
inv.update(cache, i)
for i in opt.intersphinx_files:
inv.update_from_file(i)

@@ -83,6 +83,17 @@ This is the last major release to support Python 3.7.
* `ExtRegistrar.register_post_processor()` now supports a `priority` argument that is an int.
Highest priority callables will be called first during post-processing.
* Fix too noisy ``--verbose`` mode (suppres some ambiguous annotations warnings).
* Major improvements of the intersphinx integration:
- Pydoctor now supports linking to arbitrary intersphinx references with Sphinx role ``:external:``.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be clear that this feature is only supported for restructuredtext, google and numpy docfornat at the moment. It juste doesn’t work for epytext

This comment has been minimized.

@tristanlatr tristanlatr marked this pull request as draft August 22, 2024 18:52
…t looks like we're not running them so this will need to be moved to the actual test directory.
Copy link

Diff from pydoctor_primer, showing the effect of this PR on open source code:

bottle (https://github.com/bottlepy/bottle)
- /projects/bottle/bottle.py:1364: Cannot find link target for "seek(0)"
+ /projects/bottle/bottle.py:1364: Cannot find link target for "seek"

urllib3 (https://github.com/urllib3/urllib3)
- /projects/urllib3/src/urllib3/response.py:381: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/urllib3/src/urllib3/response.py:381: bad docstring: Unknown interpreted text role "ref".
- /projects/urllib3/src/urllib3/contrib/emscripten/response.py:228: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/urllib3/src/urllib3/contrib/emscripten/response.py:228: bad docstring: Unknown interpreted text role "ref".
- /projects/urllib3/src/urllib3/contrib/emscripten/fetch.py:21: Cannot find link target for "await wait_for_streaming_ready"
+ /projects/urllib3/src/urllib3/contrib/emscripten/fetch.py:21: Cannot find link target for "await wait_for_streaming_ready()"
+ /projects/urllib3/src/urllib3/contrib/emscripten/response.py:227: Cannot find link target for "json_content"
+ /projects/urllib3/src/urllib3/response.py:380: Cannot find link target for "json_content"
- these 4 objects' docstrings contain syntax errors:
+ these 2 objects' docstrings contain syntax errors:
-     urllib3.BaseHTTPResponse.json
-     urllib3.contrib.emscripten.response.EmscriptenHttpResponseWrapper.json

scrapy (https://github.com/scrapy/scrapy)
- /projects/scrapy/scrapy/item.py:68: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/item.py:68: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/item.py:76: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/item.py:76: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/item.py:83: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/item.py:83: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/settings/__init__.py:535: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/settings/__init__.py:535: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/addons.py:20: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/addons.py:20: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/core/scheduler.py:152: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/core/scheduler.py:152: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/crawler.py:241: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/crawler.py:241: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/crawler.py:384: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/crawler.py:384: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/loader/__init__.py:23: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/loader/__init__.py:23: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/loader/__init__.py:23: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/loader/__init__.py:23: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/loader/__init__.py:23: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/loader/__init__.py:23: bad docstring: Unknown interpreted text role "ref".
-     value, you may want to check out `default_item_class` first.
+     value, you may want to check out :attr:`default_item_class` first.
-     The class used to construct the `selector` of this
+     The class used to construct the :attr:`selector` of this
-     `ItemLoader`, if only a response is given in the ``__init__`` method.
+     :class:`ItemLoader`, if only a response is given in the ``__init__`` method.
-     The `~scrapy.selector.Selector` object to extract data from.
+     The :class:`~scrapy.selector.Selector` object to extract data from.
-     `default_selector_class`. This attribute is meant to be
+     :attr:`default_selector_class`. This attribute is meant to be
- /projects/scrapy/scrapy/http/request/__init__.py:78: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/http/request/__init__.py:78: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/http/response/text.py:204: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/http/response/text.py:204: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/http/response/text.py:212: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/http/response/text.py:212: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/http/response/text.py:260: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/http/response/text.py:260: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/http/request/__init__.py:245: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/http/request/__init__.py:245: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/http/request/__init__.py:245: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/http/request/__init__.py:245: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/utils/defer.py:432: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/utils/defer.py:432: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/utils/defer.py:432: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/utils/defer.py:432: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/utils/defer.py:452: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/utils/defer.py:452: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/utils/defer.py:461: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/utils/defer.py:461: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/utils/log.py:113: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/utils/log.py:113: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/signalmanager.py:22: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/signalmanager.py:22: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/downloadermiddlewares/retry.py:87: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/downloadermiddlewares/retry.py:87: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/downloadermiddlewares/retry.py:87: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/downloadermiddlewares/retry.py:87: bad docstring: Unknown interpreted text role "ref".
- /projects/scrapy/scrapy/extensions/feedexport.py:118: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/scrapy/scrapy/extensions/feedexport.py:118: bad docstring: Unknown interpreted text role "ref".
+ /projects/scrapy/scrapy/addons.py:19: Cannot find link target for "topics-addons"
+ /projects/scrapy/scrapy/core/scheduler.py:153: Cannot find link target for "topics-jobs"
+ /projects/scrapy/scrapy/crawler.py:242: Cannot find link target for "run-from-script"
+ /projects/scrapy/scrapy/crawler.py:385: Cannot find link target for "run-from-script"
+ /projects/scrapy/scrapy/downloadermiddlewares/retry.py:87: Cannot find link target for "topics-settings"
+ /projects/scrapy/scrapy/downloadermiddlewares/retry.py:88: Cannot find link target for "topics-stats"
+ /projects/scrapy/scrapy/extensions/feedexport.py:117: Cannot find link target for "topics-items"
+ /projects/scrapy/scrapy/http/request/__init__.py:77: Cannot find link target for "topics-components"
+ /projects/scrapy/scrapy/http/response/text.py:204: Cannot find link target for "topics-link-extractors"
+ /projects/scrapy/scrapy/http/response/text.py:211: Cannot find link target for "response-follow-example"
+ /projects/scrapy/scrapy/http/response/text.py:260: Cannot find link target for "topics-link-extractors"
+ /projects/scrapy/scrapy/loader/__init__.py:22: Cannot find link target for "topics-items"
+ /projects/scrapy/scrapy/loader/__init__.py:23: Cannot find link target for "topics-loaders-processors"
+ /projects/scrapy/scrapy/loader/__init__.py:25: Cannot find link target for "topics-selectors"
+ /projects/scrapy/scrapy/settings/__init__.py:537: Cannot find link target for "topics-settings-ref"
+ /projects/scrapy/scrapy/signalmanager.py:22: Cannot find link target for "topics-signals"
+ /projects/scrapy/scrapy/utils/defer.py:431: Cannot find link target for "install-asyncio"
+ /projects/scrapy/scrapy/utils/defer.py:432: Cannot find link target for "coroutine-support"
+ /projects/scrapy/scrapy/utils/defer.py:451: Cannot find link target for "coroutine-support"
+ /projects/scrapy/scrapy/utils/defer.py:460: Cannot find link target for "install-asyncio"
+ /projects/scrapy/scrapy/utils/log.py:114: Cannot find link target for "topics-logging-settings"

... (truncated 22 lines) ...

astroid (https://github.com/pylint-dev/astroid)
- /projects/astroid/astroid/nodes/__init__.py:9: bad docstring: No role entry for "doc" in module "docutils.parsers.rst.languages.en".
- Trying "doc" as canonical role name.
- /projects/astroid/astroid/nodes/__init__.py:9: bad docstring: Unknown interpreted text role "doc".
- /projects/astroid/astroid/nodes/node_ng.py:133: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/astroid/astroid/nodes/node_ng.py:133: bad docstring: Unknown interpreted text role "ref".
- /projects/astroid/astroid/nodes/node_ng.py:580: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/astroid/astroid/nodes/node_ng.py:580: bad docstring: Unknown interpreted text role "ref".
+ /projects/astroid/astroid/interpreter/objectmodel.py:15: Cannot find link target for "__class__ will be looked for in the inferred object. This is the part where the data model occurs. The model is attached to those nodes and the lookup mechanism will try to see if attributes such as `__class__" (you can link to external docs with --intersphinx)
- /projects/astroid/astroid/interpreter/objectmodel.py:15: Cannot find link target for "__class__ will be looked for in the inferred object. This is the part
- where the data model occurs. The model is attached to those nodes
- and the lookup mechanism will try to see if attributes such as
- `__class__" (you can link to external docs with --intersphinx)
+ /projects/astroid/astroid/nodes/__init__.py:8: Cannot find intersphinx link target for "green_tree_snakes:nodes"
+ /projects/astroid/astroid/nodes/node_ng.py:132: Cannot find link target for "inference"
+ /projects/astroid/astroid/nodes/node_ng.py:579: Cannot find link target for "inference"
- /projects/astroid/astroid/transforms.py:137: Cannot find link target for "transform(node)"
+ /projects/astroid/astroid/transforms.py:137: Cannot find link target for "transform"
- these 15 objects' docstrings contain syntax errors:
+ these 12 objects' docstrings contain syntax errors:
-     astroid.nodes
-     astroid.nodes.NodeNG.infer
-     astroid.nodes.NodeNG.inferred

pycma (https://github.com/CMA-ES/pycma)
- /projects/pycma/cma/constraints_handler.py:1313: Cannot find link target for "find_feasible(es)"
- /projects/pycma/cma/constraints_handler.py:1426: Cannot find link target for "fun(x)"
- /projects/pycma/cma/logger.py:1803: Cannot find link target for "isscalar(x_opt)"
+ /projects/pycma/cma/logger.py:1803: Cannot find link target for "isscalar"
- /projects/pycma/cma/logger.py:769: Cannot find link target for "isscalar(x_opt)"
+ /projects/pycma/cma/logger.py:769: Cannot find link target for "isscalar"
- /projects/pycma/cma/logger.py:930: Cannot find link target for "isscalar(x_opt)"
+ /projects/pycma/cma/logger.py:930: Cannot find link target for "isscalar"
- /projects/pycma/cma/logger.py:2205: Cannot find link target for "matplotlib.pyplot.gca().clear" (you can link to external docs with --intersphinx)
+ /projects/pycma/cma/logger.py:2205: Cannot find link target for "matplotlib.pyplot.gca" (you can link to external docs with --intersphinx)
- /projects/pycma/cma/transformations.py:511: Cannot find link target for "numpy.diag(scaling)", resolved from "np.diag(scaling)" (you can link to external docs with --intersphinx)
+ /projects/pycma/cma/transformations.py:511: Cannot find link target for "numpy.diag", resolved from "np.diag" (you can link to external docs with --intersphinx)
- /projects/pycma/cma/transformations.py:511: Cannot find link target for "numpy.diag(scaling)", resolved from "np.diag(scaling)" (you can link to external docs with --intersphinx)
+ /projects/pycma/cma/transformations.py:511: Cannot find link target for "numpy.diag", resolved from "np.diag" (you can link to external docs with --intersphinx)
- /projects/pycma/cma/utilities/math.py:659: Cannot find link target for "log10(x / (1 - x))"
+ /projects/pycma/cma/utilities/math.py:659: Cannot find link target for "log10"

coco (https://github.com/numbbo/coco)
- /projects/coco/code-postprocessing/cocopp/archiving.py:626: Cannot find link target for "len(self)"
+ /projects/coco/code-postprocessing/cocopp/archiving.py:626: Cannot find link target for "len"
- /projects/coco/code-postprocessing/cocopp/archiving.py:607: Cannot find link target for "get_first(substrs, remote)"
- /projects/coco/code-postprocessing/cocopp/bestalg.py:13: Cannot find link target for "load_reference_algorithm(...)" (you can link to external docs with --intersphinx)
- /projects/coco/code-postprocessing/cocopp/genericsettings.py:76: Cannot find link target for "int(1e4)"
+ /projects/coco/code-postprocessing/cocopp/genericsettings.py:76: Cannot find link target for "int"

attrs (https://github.com/python-attrs/attrs)
- /projects/attrs/src/attr/_make.py:2249: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/attrs/src/attr/_make.py:2249: bad docstring: Unknown interpreted text role "ref".
- /projects/attrs/src/attr/_make.py:2260: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/attrs/src/attr/_make.py:2260: bad docstring: Unknown interpreted text role "ref".
- /projects/attrs/src/attr/_make.py:1200: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/attrs/src/attr/_make.py:1200: bad docstring: Unknown interpreted text role "term".
- /projects/attrs/src/attr/_next_gen.py:50: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:50: bad docstring: Unknown interpreted text role "term".
- /projects/attrs/src/attr/_next_gen.py:50: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:50: bad docstring: Unknown interpreted text role "term".
- /projects/attrs/src/attr/_next_gen.py:50: bad docstring: No role entry for "doc" in module "docutils.parsers.rst.languages.en".
- Trying "doc" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:50: bad docstring: Unknown interpreted text role "doc".
- /projects/attrs/src/attr/_next_gen.py:54: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:54: bad docstring: Unknown interpreted text role "ref".
- /projects/attrs/src/attr/_next_gen.py:62: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:62: bad docstring: Unknown interpreted text role "term".
- /projects/attrs/src/attr/_next_gen.py:62: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:62: bad docstring: Unknown interpreted text role "term".
- /projects/attrs/src/attr/_next_gen.py:290: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:290: bad docstring: Unknown interpreted text role "ref".
- /projects/attrs/src/attr/_next_gen.py:336: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:336: bad docstring: Unknown interpreted text role "term".
- /projects/attrs/src/attr/_next_gen.py:437: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:437: bad docstring: Unknown interpreted text role "term".
- /projects/attrs/src/attr/_next_gen.py:437: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:437: bad docstring: Unknown interpreted text role "term".
- /projects/attrs/src/attr/_next_gen.py:481: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:481: bad docstring: Unknown interpreted text role "ref".
- /projects/attrs/src/attr/_next_gen.py:544: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/attrs/src/attr/_next_gen.py:544: bad docstring: Unknown interpreted text role "ref".
+ /projects/attrs/src/attr/_make.py:1199: Cannot find intersphinx link target for "dunder methods"
+ /projects/attrs/src/attr/_next_gen.py:49: Cannot find intersphinx link target for "dunder methods"
+ /projects/attrs/src/attr/_next_gen.py:50: Cannot find intersphinx link target for "attr.field"
+ /projects/attrs/src/attr/_next_gen.py:50: Cannot find intersphinx link target for "types"
+ /projects/attrs/src/attr/_next_gen.py:57: Cannot find link target for "init-subclass"
+ /projects/attrs/src/attr/_next_gen.py:61: Cannot find intersphinx link target for "slotted classes"
+ /projects/attrs/src/attr/_next_gen.py:64: Cannot find intersphinx link target for "slotted classes"
+ /projects/attrs/src/attr/_next_gen.py:337: Cannot find intersphinx link target for "slotted classes"
+ /projects/attrs/src/attr/_next_gen.py:436: Cannot find intersphinx link target for "attr.field"
+ /projects/attrs/src/attr/_next_gen.py:436: Cannot find intersphinx link target for "attribute"
- /projects/attrs/src/attr/_next_gen.py:558: Cannot find link target for "static type
+ /projects/attrs/src/attr/_next_gen.py:558: Cannot find link target for "types"
- checking <types>"
+ /projects/attrs/src/attr/_make.py:2252: Cannot find link target for "custom-comparison"
+ /projects/attrs/src/attr/_make.py:2259: Cannot find link target for "transform-fields"
- these 6 objects' docstrings contain syntax errors:
+ these 2 objects' docstrings contain syntax errors:
-     attr._make.Attribute
-     attr.attrs
-     attr.define
-     attr.field

pylint (https://github.com/pylint-dev/pylint)
- /projects/pylint/pylint/checkers/refactoring/refactoring_checker.py:588: Cannot find link target for "bool(test)"
+ /projects/pylint/pylint/checkers/refactoring/refactoring_checker.py:588: Cannot find link target for "bool"
- /projects/pylint/pylint/checkers/refactoring/refactoring_checker.py:2427: Cannot find link target for "enumerate([1,2,3], start=1)"
+ /projects/pylint/pylint/checkers/refactoring/refactoring_checker.py:2427: Cannot find link target for "enumerate"
- /projects/pylint/pylint/checkers/refactoring/refactoring_checker.py:2428: Cannot find link target for "enumerate([1,2,3], 1)"
+ /projects/pylint/pylint/checkers/refactoring/refactoring_checker.py:2428: Cannot find link target for "enumerate"
- /projects/pylint/pylint/checkers/strings.py:1022: Cannot find link target for "ast.literal_eval(token)" (you can link to external docs with --intersphinx)
+ /projects/pylint/pylint/checkers/strings.py:1022: Cannot find link target for "ast.literal_eval" (you can link to external docs with --intersphinx)

sphinx (https://github.com/sphinx-doc/sphinx)
- /projects/sphinx/sphinx/util/typing.py:134: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/sphinx/sphinx/util/typing.py:134: bad docstring: Unknown interpreted text role "ref".
- /projects/sphinx/sphinx/environment/collectors/__init__.py:25: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/sphinx/sphinx/environment/collectors/__init__.py:25: bad docstring: Unknown interpreted text role "ref".
- /projects/sphinx/sphinx/ext/autosummary/__init__.py:45: bad docstring: Inline literal start-string without end-string.
- /projects/sphinx/sphinx/transforms/post_transforms/images.py:170: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/sphinx/sphinx/transforms/post_transforms/images.py:170: bad docstring: Unknown interpreted text role "ref".
- /projects/sphinx/sphinx/util/inspect.py:180: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/sphinx/sphinx/util/inspect.py:180: bad docstring: Unknown interpreted text role "term".
- /projects/sphinx/sphinx/util/inspect.py:268: bad docstring: No role entry for "external+python:term" in module "docutils.parsers.rst.languages.en".
- Trying "external+python:term" as canonical role name.
- /projects/sphinx/sphinx/util/inspect.py:268: bad docstring: Unknown interpreted text role "external+python:term".
- /projects/sphinx/sphinx/util/inspect.py:370: bad docstring: No role entry for "external+python:term" in module "docutils.parsers.rst.languages.en".
- Trying "external+python:term" as canonical role name.
- /projects/sphinx/sphinx/util/inspect.py:370: bad docstring: Unknown interpreted text role "external+python:term".
- /projects/sphinx/sphinx/application.py:789: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/sphinx/sphinx/application.py:789: bad docstring: Unknown interpreted text role "ref".
- /projects/sphinx/sphinx/application.py:1186: bad docstring: No role entry for "term" in module "docutils.parsers.rst.languages.en".
- Trying "term" as canonical role name.
- /projects/sphinx/sphinx/application.py:1186: bad docstring: Unknown interpreted text role "term".
- /projects/sphinx/sphinx/application.py:1234: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/sphinx/sphinx/application.py:1234: bad docstring: Unknown interpreted text role "ref".
- /projects/sphinx/sphinx/application.py:1519: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/sphinx/sphinx/application.py:1519: bad docstring: Unknown interpreted text role "ref".
- /projects/sphinx/sphinx/application.py:1593: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/sphinx/sphinx/application.py:1593: bad docstring: Unknown interpreted text role "ref".
- /projects/sphinx/sphinx/application.py:1603: bad docstring: No role entry for "ref" in module "docutils.parsers.rst.languages.en".
- Trying "ref" as canonical role name.
- /projects/sphinx/sphinx/application.py:1603: bad docstring: Unknown interpreted text role "ref".
+ /projects/sphinx/sphinx/application.py:1518: Cannot find link target for "autodoc_ext_tutorial"
+ /projects/sphinx/sphinx/application.py:1592: Cannot find link target for "collector-api"
+ /projects/sphinx/sphinx/application.py:1603: Cannot find link target for "distribute-your-theme"
+ /projects/sphinx/sphinx/application.py:1185: Cannot find intersphinx link target for "object"
+ /projects/sphinx/sphinx/application.py:1234: Cannot find link target for "xref-syntax"
- /projects/sphinx/sphinx/domains/_index.py:41: Cannot find link target for "~sphinx.application.Sphinx.add_index_to_domain" (you can link to external docs with --intersphinx)
+ /projects/sphinx/sphinx/domains/_index.py:41: Cannot find link target for "~sphinx.application.Sphinx.add_index_to_domain()" (you can link to external docs with --intersphinx)
+ /projects/sphinx/sphinx/util/console.py:153: Cannot find link target for "escape sequences `__ (e.g., VT100-specific functions) are not supported and only control sequences *natively* known to Sphinx (i.e., colors declared in this module and "erase entire line" (`" (you can link to external docs with --intersphinx)
- /projects/sphinx/sphinx/util/console.py:153: Cannot find link target for "escape sequences `__ (e.g., VT100-specific functions) are not
- supported and only control sequences *natively* known to Sphinx (i.e.,
- colors declared in this module and "erase entire line" (`" (you can link to external docs with --intersphinx)
+ /projects/sphinx/sphinx/util/inspect.py:179: Cannot find intersphinx link target for "__slots__"
+ /projects/sphinx/sphinx/util/inspect.py:353: Cannot find intersphinx link target for "inspect.isbuiltin"
+ /projects/sphinx/sphinx/util/inspect.py:369: Cannot find intersphinx link target for "coroutine"
+ /projects/sphinx/sphinx/util/inspect.py:267: Cannot find intersphinx link target for "descriptor"
+ /projects/sphinx/sphinx/util/inspect.py:343: Cannot find intersphinx link target for "inspect.isfunction"
+ /projects/sphinx/sphinx/util/inspect.py:363: Cannot find intersphinx link target for "inspect.isroutine"
+ /projects/sphinx/sphinx/util/typing.py:133: Cannot find link target for "ext-metadata"
- these 64 objects' docstrings contain syntax errors:
+ these 54 objects' docstrings contain syntax errors:
-     sphinx.application.Sphinx.add_autodocumenter
-     sphinx.application.Sphinx.add_env_collector
-     sphinx.application.Sphinx.add_html_theme
-     sphinx.application.Sphinx.connect
-     sphinx.environment.collectors.EnvironmentCollector
-     sphinx.transforms.post_transforms.images.ImageConverter
-     sphinx.util.inspect.getslots
-     sphinx.util.inspect.iscoroutinefunction
-     sphinx.util.inspect.isdescriptor
-     sphinx.util.typing.ExtensionMetadata

sdk-python (https://github.com/temporalio/sdk-python)
+ /projects/sdk-python/temporalio/client.py:2342: Cannot find link target for "KeyError" (your link role filters 'https://docs.python.org/3/library/exceptions.html#KeyError', is it by design?)
+ /projects/sdk-python/temporalio/client.py:3785: Cannot find link target for "KeyError" (your link role filters 'https://docs.python.org/3/library/exceptions.html#KeyError', is it by design?)
+ /projects/sdk-python/temporalio/client.py:4031: Cannot find link target for "KeyError" (your link role filters 'https://docs.python.org/3/library/exceptions.html#KeyError', is it by design?)

... (truncated 123 lines) ...```

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Intersphinx from local folder Allow links to arbitrary intersphinx references
1 participant