From 0f7b5490bcc5d7ea07c3fe6715e1c8b6780b3ffa Mon Sep 17 00:00:00 2001 From: Yannick DAYER <yannick.dayer@idiap.ch> Date: Mon, 13 Feb 2023 12:46:59 +0100 Subject: [PATCH] [py] Link documentation of package in main branch. --- bob/extension/test_utils.py | 13 +++++++++---- bob/extension/utils.py | 12 ++++++++++-- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/bob/extension/test_utils.py b/bob/extension/test_utils.py index ae6bca1..2374108 100644 --- a/bob/extension/test_utils.py +++ b/bob/extension/test_utils.py @@ -111,15 +111,20 @@ package-z ] # test linkage to official documentation - server = "http://www.idiap.ch/software/bob/docs/bob/%s/master/" - os.environ["BOB_DOCUMENTATION_SERVER"] = server + server = ( + "http://www.idiap.ch/software/bob/docs/bob/%s/master/", + "http://www.idiap.ch/software/bob/docs/bob/%s/master/sphinx", + "http://www.idiap.ch/software/bob/docs/bob/%s/main/", + "http://www.idiap.ch/software/bob/docs/bob/%s/main/sphinx", + ) + os.environ["BOB_DOCUMENTATION_SERVER"] = "|".join(server) result = link_documentation(additional_packages, stringio(f)) expected = [ "https://docs.python.org/%d.%d/" % sys.version_info[:2], "https://matplotlib.org/stable/", "https://setuptools.readthedocs.io/en/latest/", - server % "bob.extension", - server % "gridtk", + server[0] % "bob.extension", + server[3] % "gridtk", ] result = [k[0] for k in result.values()] assert sorted(result) == sorted(expected) diff --git a/bob/extension/utils.py b/bob/extension/utils.py index e98a516..3761c2d 100644 --- a/bob/extension/utils.py +++ b/bob/extension/utils.py @@ -198,7 +198,14 @@ def link_documentation( if "BOB_DOCUMENTATION_SERVER" in os.environ: server = os.environ["BOB_DOCUMENTATION_SERVER"] else: - server = "http://www.idiap.ch/software/bob/docs/bob/%(name)s/%(version)s/|http://www.idiap.ch/software/bob/docs/bob/%(name)s/%(version)s/sphinx|http://www.idiap.ch/software/bob/docs/bob/%(name)s/master/|http://www.idiap.ch/software/bob/docs/bob/%(name)s/master/sphinx" + server = ( + "http://www.idiap.ch/software/bob/docs/bob/%(name)s/%(version)s/" + "|http://www.idiap.ch/software/bob/docs/bob/%(name)s/%(version)s/sphinx" + "|http://www.idiap.ch/software/bob/docs/bob/%(name)s/main/" + "|http://www.idiap.ch/software/bob/docs/bob/%(name)s/main/sphinx" + "|http://www.idiap.ch/software/bob/docs/bob/%(name)s/master/" + "|http://www.idiap.ch/software/bob/docs/bob/%(name)s/master/sphinx" + ) # array support for BOB_DOCUMENTATION_SERVER # transforms "(file:///path/to/dir https://example.com/dir| http://bla )" @@ -226,7 +233,7 @@ def link_documentation( ) except pkg_resources.DistributionNotFound: version = "stable" # package is not a runtime dep, only referenced - url = s % {"name": package_name, "version": version} + url = s.format(name=package_name, version=version) try: # otherwise, urlopen will fail @@ -249,6 +256,7 @@ def link_documentation( # url request failed with a something else than 404 Error print("Requesting URL %s returned error: %s" % (url, exc)) # notice mapping is not updated here, as the URL does not exist + print(f"Nothing found at {url}.") except URLError as exc: print( -- GitLab