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

Cross-spec section links failing (after version 3.10.0) #2516

Closed
svgeesus opened this issue Apr 4, 2023 · 4 comments
Closed

Cross-spec section links failing (after version 3.10.0) #2516

svgeesus opened this issue Apr 4, 2023 · 4 comments

Comments

@svgeesus
Copy link
Contributor

svgeesus commented Apr 4, 2023

Cross-spec section links, of the form [specname#id] are failing in Bikeshed and generating fatal errors which must be suppressed with the -f option. For example (on the IFT specification):

chris@SuperNomad:/mnt/c/Users/chris/Documents/GitHub/IFT$ bikeshed -f spec
LINE ~301: Couldn't find section '#name-get' in spec 'rfc9110':
[[rfc9110#name-get]]
LINE ~1093: Couldn't find section '#name-field-definitions' in spec 'rfc9111':
[[rfc9111#name-field-definitions]]
LINE ~1125: Couldn't find section '#name-accept-encoding' in spec 'rfc9110':
[[rfc9110#name-accept-encoding|Accept-Encoding]]
LINE ~1241: Couldn't find section '#name-field-definitions' in spec 'rfc9111':
[[rfc9111#name-field-definitions]]
LINE ~1259: Couldn't find section '#name-content-encoding' in spec 'rfc9110':
[[rfc9110#name-content-encoding|Content-Encoding]]
LINE ~1322: Couldn't find section '#name-freshness' in spec 'rfc9111':
[[RFC9111#name-freshness]]
LINE ~1460: Couldn't find section '#name-accept-encoding' in spec 'rfc9110':
[[rfc9110#name-accept-encoding|Accept-Encoding]]
LINE ~1602: Couldn't find section '#name-content-encoding' in spec 'rfc9110':
[[rfc9110#name-content-encoding|content encodings]]
 ✔  Successfully generated, but fatal errors were suppressed

Testing out the links manually, for example https://www.rfc-editor.org/rfc/rfc9110#name-get shows they are correct. (I don't know if this is relevant, but all the failing specs are the HTTP set, such as RFC 9110, HTTP Semantics).

Originally reported:

where it was also reported that

something seems to have changed in bikeshed at the latest version. For now I've been able to get it to compile without errors using bikeshed 3.10.0

@tidoust
Copy link
Contributor

tidoust commented Apr 4, 2023

This is probably due to the switch from Shepherd xref data to Webref xref data as a source. In Webref, RFC9110 gets crawled from https://httpwg.org/specs/rfc9110.html and not from https://www.rfc-editor.org/rfc/rfc9110

Unfortunately, the version on httpwg.org does not use the same IDs for anchors. For instance, #name-accept-encoding in the www.rfc-editor.org version becomes #field.accept-encoding in the httpwg.org version.

@svgeesus
Copy link
Contributor Author

svgeesus commented Apr 5, 2023

Unfortunately, the version on httpwg.org does not use the same IDs for anchors.

HTTP WG breaks url consistency. Lol.

BTW the Bikeshed-generated html uses the rfc-editor links (which work). Odd.

@tabatkins
Copy link
Collaborator

Yup, that's the issue. Bikeshed will silently assume you know what you're talking about if the spec is in biblio data but not in headings data, but if it is in headings data, it verifies you're using the known IDs.

Hm tho, ideally SpecRef and WebRef are using the same URL for RFCs. It looks like SpecRef uses a mix of both origins, unfortunately.

@tabatkins
Copy link
Collaborator

(Closing as this isn't a Bikeshed issue.)

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

No branches or pull requests

3 participants