Index | Thread | Search

From:
Volker Schlecht <openbsd-ports@schlecht.dev>
Subject:
Re: [udpate] textproc/mdbook 0.5.3
To:
Theo Buehler <tb@theobuehler.org>, Laurent Cheylus <foxy@free.fr>
Cc:
ports <ports@openbsd.org>, Edd Barrett <edd@theunixzoo.co.uk>
Date:
Tue, 9 Jun 2026 23:13:57 +0200

Download raw body.

Thread
On 6/9/26 10:36 PM, Theo Buehler wrote:
>> Build and tests OK on current/amd64 with Rust 1.95.0
> 
> It broke packaging of rust-analyzer since mdbook generated output
> includes some hex digits that changed with the update (presumably some
> hash over the contents). When updating a port you really need to check
> whether the ports depending on it still build and package.
We may be able to reduce the risk of that happening by disabling the
hash. It's intended as a cache busting feature which doesn't make sense
for docs bundled with a package.

Of course future versions of mdbook may still change the file names of
the bundled default theme (or add / remove files), so the note is still
needed.

What do you think?
(I moved rendering the docs from post-build to pre-install. It would
have been a bit of a nuisance to find the right place for the patch
otherwise)
Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/rust-analyzer/Makefile,v
retrieving revision 1.7
diff -u -p -r1.7 Makefile
--- Makefile	9 Jun 2026 20:19:45 -0000	1.7
+++ Makefile	9 Jun 2026 21:05:55 -0000
@@ -4,7 +4,7 @@ CATEGORIES =	devel
 GH_ACCOUNT =	rust-lang
 GH_PROJECT =	rust-analyzer
 GH_TAGNAME =	2026-01-12
-REVISION =	0
+REVISION =	1
 
 DISTNAME =	${GH_PROJECT}-${GH_TAGNAME:S/-//g}
 
@@ -34,7 +34,7 @@ CONFIGURE_STYLE =	cargo
 MAKE_ENV += CFG_RELEASE=${GH_TAGNAME}
 
 # generate HTML docs
-post-build:
+pre-install:
 	${MODCARGO_CARGO_RUN} xtask codegen
 	cd ${WRKSRC}/docs/book && ${SETENV} ${MAKE_ENV} \
 		${LOCALBASE}/bin/mdbook build
Index: patches/patch-docs_book_book_toml
===================================================================
RCS file: patches/patch-docs_book_book_toml
diff -N patches/patch-docs_book_book_toml
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-docs_book_book_toml	9 Jun 2026 21:05:55 -0000
@@ -0,0 +1,14 @@
+Don't add a browser-cache busting hash to the generated files.
+mdbook 0.5 made this the default behavior.
+
+Index: docs/book/book.toml
+--- docs/book/book.toml.orig
++++ docs/book/book.toml
+@@ -12,6 +12,7 @@ edit-url-template = "https://github.com/rust-lang/rust
+ git-repository-url = "https://github.com/rust-lang/rust-analyzer/tree/master/docs/book"
+ mathjax-support = true
+ site-url = "/book/"
++hash-files = false
+ 
+ [output.html.playground]
+ editable = true
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/rust-analyzer/pkg/PLIST,v
retrieving revision 1.4
diff -u -p -r1.4 PLIST
--- pkg/PLIST	9 Jun 2026 20:19:45 -0000	1.4
+++ pkg/PLIST	9 Jun 2026 21:05:55 -0000
@@ -2,11 +2,11 @@
 share/doc/rust-analyzer/
 @comment share/doc/rust-analyzer/.nojekyll
 share/doc/rust-analyzer/404.html
-share/doc/rust-analyzer/ace-2a3cd908.js
+share/doc/rust-analyzer/ace.js
 share/doc/rust-analyzer/assists.html
-share/doc/rust-analyzer/ayu-highlight-3fdfc3ac.css
-share/doc/rust-analyzer/book-c22b7243.js
-share/doc/rust-analyzer/clipboard-1626706a.min.js
+share/doc/rust-analyzer/ayu-highlight.css
+share/doc/rust-analyzer/book.js
+share/doc/rust-analyzer/clipboard.min.js
 share/doc/rust-analyzer/configuration.html
 share/doc/rust-analyzer/contributing/
 share/doc/rust-analyzer/contributing/architecture.html
@@ -19,52 +19,52 @@ share/doc/rust-analyzer/contributing/sty
 share/doc/rust-analyzer/contributing/syntax.html
 share/doc/rust-analyzer/contributing/testing.html
 share/doc/rust-analyzer/css/
-share/doc/rust-analyzer/css/chrome-fc474251.css
-share/doc/rust-analyzer/css/general-0392ca55.css
-share/doc/rust-analyzer/css/print-9e4910d8.css
-share/doc/rust-analyzer/css/variables-8adf115d.css
+share/doc/rust-analyzer/css/chrome.css
+share/doc/rust-analyzer/css/general.css
+share/doc/rust-analyzer/css/print.css
+share/doc/rust-analyzer/css/variables.css
 share/doc/rust-analyzer/diagnostics.html
-share/doc/rust-analyzer/editor-16ca416c.js
+share/doc/rust-analyzer/editor.js
 share/doc/rust-analyzer/editor_features.html
-share/doc/rust-analyzer/elasticlunr-ef4e11c1.min.js
+share/doc/rust-analyzer/elasticlunr.min.js
 share/doc/rust-analyzer/faq.html
-share/doc/rust-analyzer/favicon-8114d1fc.png
-share/doc/rust-analyzer/favicon-de23e50b.svg
+share/doc/rust-analyzer/favicon.png
+share/doc/rust-analyzer/favicon.svg
 share/doc/rust-analyzer/features.html
 share/doc/rust-analyzer/fonts/
 share/doc/rust-analyzer/fonts/OPEN-SANS-LICENSE.txt
 share/doc/rust-analyzer/fonts/SOURCE-CODE-PRO-LICENSE.txt
-share/doc/rust-analyzer/fonts/fonts-9644e21d.css
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-300-7736aa35.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-300italic-2c7b95c0.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-600-486c6759.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-600italic-1a3e8659.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-700-c22fe8c7.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-700italic-238ae959.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-800-3d2c812a.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-800italic-ba1521ec.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-italic-6c9463f7.woff2
-share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-regular-2e3b1d34.woff2
-share/doc/rust-analyzer/fonts/source-code-pro-v11-all-charsets-500-2bdd9410.woff2
-share/doc/rust-analyzer/highlight-493f70e1.css
-share/doc/rust-analyzer/highlight-abc7f01d.js
+share/doc/rust-analyzer/fonts/fonts.css
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-300.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-300italic.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-600.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-600italic.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-700.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-700italic.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-800.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-800italic.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-italic.woff2
+share/doc/rust-analyzer/fonts/open-sans-v17-all-charsets-regular.woff2
+share/doc/rust-analyzer/fonts/source-code-pro-v11-all-charsets-500.woff2
+share/doc/rust-analyzer/highlight.css
+share/doc/rust-analyzer/highlight.js
 share/doc/rust-analyzer/index.html
 share/doc/rust-analyzer/installation.html
 share/doc/rust-analyzer/manual.html
-share/doc/rust-analyzer/mark-09e88c2c.min.js
-share/doc/rust-analyzer/mode-rust-2c9d5c9a.js
+share/doc/rust-analyzer/mark.min.js
+share/doc/rust-analyzer/mode-rust.js
 share/doc/rust-analyzer/non_cargo_based_projects.html
 share/doc/rust-analyzer/other_editors.html
 share/doc/rust-analyzer/print.html
 share/doc/rust-analyzer/privacy.html
 share/doc/rust-analyzer/rust_analyzer_binary.html
-share/doc/rust-analyzer/searcher-09f2665d.js
-share/doc/rust-analyzer/searchindex-0c13bc81.js
+share/doc/rust-analyzer/searcher.js
+share/doc/rust-analyzer/searchindex.js
 share/doc/rust-analyzer/security.html
-share/doc/rust-analyzer/theme-dawn-4493f9c8.js
-share/doc/rust-analyzer/theme-tomorrow_night-9dbe62a9.js
-share/doc/rust-analyzer/toc-9d21adb9.js
+share/doc/rust-analyzer/theme-dawn.js
+share/doc/rust-analyzer/theme-tomorrow_night.js
 share/doc/rust-analyzer/toc.html
-share/doc/rust-analyzer/tomorrow-night-4c0ae647.css
+share/doc/rust-analyzer/toc.js
+share/doc/rust-analyzer/tomorrow-night.css
 share/doc/rust-analyzer/troubleshooting.html
 share/doc/rust-analyzer/vs_code.html