Skip to content

Commit 52006bf

Browse files
committed
Ensure intersphinx cannot map to current project
1 parent 5325be7 commit 52006bf

1 file changed

Lines changed: 12 additions & 3 deletions

File tree

docs/source/conf.py

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -164,20 +164,29 @@
164164
labscript_suite_doc_version = 'latest'
165165

166166
# add intersphinx references for each component
167+
labscript_intersphinx_mapping = {}
167168
for ls_prog in labscript_suite_programs:
168-
intersphinx_mapping[ls_prog] = (
169+
val = (
169170
'https://docs.labscriptsuite.org/projects/{}/en/{}/'.format(
170171
ls_prog, labscript_suite_doc_version
171172
),
172173
None,
173174
)
175+
labscript_intersphinx_mapping[ls_prog] = val
176+
if ls_prog != project:
177+
# don't add intersphinx for current project
178+
# if internal links break, they can silently be filled by links to existing online docs
179+
# this is confusing and difficult to detect
180+
intersphinx_mapping[ls_prog] = val
174181

175182
# add intersphinx reference for the metapackage
176183
if project != "the labscript suite":
177-
intersphinx_mapping['labscript-suite'] = (
184+
val = (
178185
'https://docs.labscriptsuite.org/en/{}/'.format(labscript_suite_doc_version),
179186
None,
180187
)
188+
intersphinx_mapping['labscript-suite'] = val
189+
labscript_intersphinx_mapping['labscript-suite'] = val
181190

182191
# Make `some code` equivalent to :code:`some code`
183192
default_role = 'code'
@@ -227,7 +236,7 @@ def setup(app):
227236
with open(Path(__file__).resolve().parent / 'components.rst', 'w') as f:
228237
f.write(
229238
template.render(
230-
intersphinx_mapping=intersphinx_mapping,
239+
intersphinx_mapping=labscript_intersphinx_mapping,
231240
programs=labscript_suite_programs,
232241
current_project=project,
233242
img_path=img_path

0 commit comments

Comments
 (0)