Zensical publishing: mike fork, publish task, preview - #262
Merged
Conversation
mike deploy builds and commits in one process, with no hook in between, so its bare `zensical build` would publish the unpkg.com URLs localize-bundle-assets removes. Build here instead; mike still owns versions.json, aliases, redirect.
Test Results1 files ±0 2 suites ±0 0s ⏱️ ±0s For more details on these failures, see this check. Results for commit 69aace3. ± Comparison against base commit 84390da. ♻️ This comment has been updated with latest results. |
seebi
approved these changes
Sep 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Makes
task public:deploywork under Zensical, and produce the same sitetask builddoes.mikefrom squidfunk's fork; the PyPI one aborts on config load and would build with MkDocspublic:deploybuilds, thendec-tool publishprunes copied-along dotfiles and commitssite/via mikepublic:previewrehearses a deploy on a throwaway branch and drops it again;previewremovedresize-observer-polyfillvendored (its trigger is browser age, so no content check can guard it); licence notices added for it and glightboxWhy not
mike deploy?It builds the site itself and commits it in the same process - no hook in between, no
--no-buildflag. That build is a barezensical build: no--strict, and none of our post-build steps, so a published version would ship the unpkg.com URLs thatlocalize-bundle-assetsexists to remove. Building first doesn't help either: mike's rebuild overwrites the localized bundle before committing it (measured: 4 -> 6 unpkg references).So we take mike's build step away and keep the rest.
dec-tool publishchecks, prunes and hands the finishedsite/tomike.commands.deploy; mike still ownsversions.json, the alias symlinks, the root redirect and the commit message. As a side effect the publish is guarded: it refuses asite/whose canonical URL lacks the version, which is exactly what a stale or serve-clobbered build looks like.The alternative - shimming
zensicalonPATHso mike's own build runs ours - worked, but was too opaque to debug later.Verified
Against a scratch copy of
published: 0 dotfiles, 0 reachable CDN URLs, versioned canonical, versions.json andlatestsymlink intact.task checkandtask test:unitgreen.