Repository navigation
Version Packages - #1240
Merged
Merged
Version Packages#1240
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
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.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@hyperbook/fs@0.31.0
Minor Changes
f7957e5Thanks @mikebarkmin! -hyperbook.jsonhas a newexcludesetting: globs for files that must not be part of the built site, for example["intern/**", "**/*.draft.*"]. They are matched against the address a file would have in the site and apply to the files inpublic/and to everything inbook/andglossary/that is not a page. The dev server does not serve such files either, andhyperbook checkreports links that point at them.hyperbook@0.123.0
Minor Changes
f7957e5Thanks @mikebarkmin! -hyperbook.jsonhas a newexcludesetting: globs for files that must not be part of the built site, for example["intern/**", "**/*.draft.*"]. They are matched against the address a file would have in the site and apply to the files inpublic/and to everything inbook/andglossary/that is not a page. The dev server does not serve such files either, andhyperbook checkreports links that point at them.f7957e5Thanks @mikebarkmin! - New::pdf[Title]{src="file.pdf"}element: shows a PDF document on a page. pdf.js draws the pages in the browser, so documents also work on tablets and phones, and their text can be selected, searched and read aloud.viewchooses betweenpages(all pages below each other, the default),slides(one page with previous/next, arrow keys, swipe and fullscreen),thumb(the first page beside title and download button),embed(the browser's own viewer) andbutton(only a download button).pages="1-2"limits the pages shown,download="false"hides the download button,heightsets the height ofslidesandembed. The viewer is a downloadable element runtime like Typst or GeoGebra (elements.pdf.cdn), and Hyperbook Cloud can serve it for all books.f7957e5Thanks @mikebarkmin! -::pdfbuilds Typst documents:::pdf[Worksheet]{src="worksheet.typ"}compiles the document into a PDF during the build and shows it like any other.inputs="solution=true"passes values to the document (each set of inputs is its own PDF). Documents are compiled with the official Typst compiler, which Hyperbook downloads and checks on first use;typst.versioninhyperbook.jsonpins it (0.15.0 and newer are supported),typst.packagePathnames a folder of the book's own packages (@local/…), andtypst.fontPatha folder of fonts.HYPERBOOK_TYPST_PACKAGE_PATHadds packages shared by several books. The book's root is Typst's root, so imports and images work from anywhere in the book and nothing outside it is read. An unchanged document is not compiled again, a document with errors fails the build with Typst's message, and the dev server compiles documents as pages show them.Behaviour change:
.typfiles are no longer copied into the site. A page that offers one for download with:download[…]{src="file.typ"}still gets it; a plain Markdown link to a.typfile now breaks, andhyperbook checkreports it.:::typstblocks are not affected.f7957e5Thanks @mikebarkmin! -:::typstblocks compile with Typst 0.15.1 (typst.ts 0.8.0-rc4, up from 0.7.0 with Typst 0.14.2), and they can import packages: from Typst Universe as before, and now also the book's own packages (typst.packagePath, e.g.#import "@local/template:1.0.0": *), shared ones fromHYPERBOOK_TYPST_PACKAGE_PATH, and on Hyperbook Cloud the instance's packages under Settings → Typst packages. The build packs every package a block imports, and the packages those import, into the site at/__hyperbook_typst/; readers' browsers load them from there. A newpackagesattribute offers packages that no file imports yet, for edit mode. A package the book'sexcludematches stops the build instead of being published.Note: a document that uses something Typst 0.15 removed or changed may need an update. typst.ts 0.8.0 is still a release candidate; it is pinned by checksum.
@hyperbook/markdown@0.93.0
Minor Changes
f7957e5Thanks @mikebarkmin! - New::pdf[Title]{src="file.pdf"}element: shows a PDF document on a page. pdf.js draws the pages in the browser, so documents also work on tablets and phones, and their text can be selected, searched and read aloud.viewchooses betweenpages(all pages below each other, the default),slides(one page with previous/next, arrow keys, swipe and fullscreen),thumb(the first page beside title and download button),embed(the browser's own viewer) andbutton(only a download button).pages="1-2"limits the pages shown,download="false"hides the download button,heightsets the height ofslidesandembed. The viewer is a downloadable element runtime like Typst or GeoGebra (elements.pdf.cdn), and Hyperbook Cloud can serve it for all books.f7957e5Thanks @mikebarkmin! -::pdfbuilds Typst documents:::pdf[Worksheet]{src="worksheet.typ"}compiles the document into a PDF during the build and shows it like any other.inputs="solution=true"passes values to the document (each set of inputs is its own PDF). Documents are compiled with the official Typst compiler, which Hyperbook downloads and checks on first use;typst.versioninhyperbook.jsonpins it (0.15.0 and newer are supported),typst.packagePathnames a folder of the book's own packages (@local/…), andtypst.fontPatha folder of fonts.HYPERBOOK_TYPST_PACKAGE_PATHadds packages shared by several books. The book's root is Typst's root, so imports and images work from anywhere in the book and nothing outside it is read. An unchanged document is not compiled again, a document with errors fails the build with Typst's message, and the dev server compiles documents as pages show them.Behaviour change:
.typfiles are no longer copied into the site. A page that offers one for download with:download[…]{src="file.typ"}still gets it; a plain Markdown link to a.typfile now breaks, andhyperbook checkreports it.:::typstblocks are not affected.f7957e5Thanks @mikebarkmin! -:::typstblocks compile with Typst 0.15.1 (typst.ts 0.8.0-rc4, up from 0.7.0 with Typst 0.14.2), and they can import packages: from Typst Universe as before, and now also the book's own packages (typst.packagePath, e.g.#import "@local/template:1.0.0": *), shared ones fromHYPERBOOK_TYPST_PACKAGE_PATH, and on Hyperbook Cloud the instance's packages under Settings → Typst packages. The build packs every package a block imports, and the packages those import, into the site at/__hyperbook_typst/; readers' browsers load them from there. A newpackagesattribute offers packages that no file imports yet, for edit mode. A package the book'sexcludematches stops the build instead of being published.Note: a document that uses something Typst 0.15 removed or changed may need an update. typst.ts 0.8.0 is still a release candidate; it is pinned by checksum.
@hyperbook/types@0.31.0
Minor Changes
f7957e5Thanks @mikebarkmin! -hyperbook.jsonhas a newexcludesetting: globs for files that must not be part of the built site, for example["intern/**", "**/*.draft.*"]. They are matched against the address a file would have in the site and apply to the files inpublic/and to everything inbook/andglossary/that is not a page. The dev server does not serve such files either, andhyperbook checkreports links that point at them.f7957e5Thanks @mikebarkmin! - New::pdf[Title]{src="file.pdf"}element: shows a PDF document on a page. pdf.js draws the pages in the browser, so documents also work on tablets and phones, and their text can be selected, searched and read aloud.viewchooses betweenpages(all pages below each other, the default),slides(one page with previous/next, arrow keys, swipe and fullscreen),thumb(the first page beside title and download button),embed(the browser's own viewer) andbutton(only a download button).pages="1-2"limits the pages shown,download="false"hides the download button,heightsets the height ofslidesandembed. The viewer is a downloadable element runtime like Typst or GeoGebra (elements.pdf.cdn), and Hyperbook Cloud can serve it for all books.f7957e5Thanks @mikebarkmin! -::pdfbuilds Typst documents:::pdf[Worksheet]{src="worksheet.typ"}compiles the document into a PDF during the build and shows it like any other.inputs="solution=true"passes values to the document (each set of inputs is its own PDF). Documents are compiled with the official Typst compiler, which Hyperbook downloads and checks on first use;typst.versioninhyperbook.jsonpins it (0.15.0 and newer are supported),typst.packagePathnames a folder of the book's own packages (@local/…), andtypst.fontPatha folder of fonts.HYPERBOOK_TYPST_PACKAGE_PATHadds packages shared by several books. The book's root is Typst's root, so imports and images work from anywhere in the book and nothing outside it is read. An unchanged document is not compiled again, a document with errors fails the build with Typst's message, and the dev server compiles documents as pages show them.Behaviour change:
.typfiles are no longer copied into the site. A page that offers one for download with:download[…]{src="file.typ"}still gets it; a plain Markdown link to a.typfile now breaks, andhyperbook checkreports it.:::typstblocks are not affected.create-hyperbook@0.4.8
Patch Changes
f7957e5,f7957e5,f7957e5]:@hyperbook/cloud@0.6.0
Minor Changes
f7957e5Thanks @mikebarkmin! - Typst documents in Hyperbook Cloud. Books build::pdf[…]{src="x.typ"}like a local build: the sandboxed CLI lists the documents and the server compiles them with the official Typst compiler, which it downloads and checks itself, with an empty environment, no system fonts, memory and file-size limits, a timeout per document inside the build's own and a compile cache per book. The page preview shows Typst documents with the editor's unsaved text, and an open.typfile gets a PDF preview pane next to the editor, with Typst's errors in the editor's gutter;#import "@…"completes the available packages. Admins add Typst packages every book can import (e.g.@local/assessio:0.1.0) under Settings → Typst packages; versions are added or removed, never replaced. New settings:TYPST_TIMEOUT_SECONDS,TYPST_MAX_JOBS,TYPST_MEMORY_MB,TYPST_PREVIEW_CONCURRENCY,TYPST_BINARY. The::pdfelement's runtime (pdf.js) can be served by the instance like the other element runtimes.The editor's
.typfiles use Hyperbook's light and dark syntax colors instead of the Typst grammar's own light-only ones, the PDF preview (and an opened PDF file) is drawn on the editor's own surface in light and dark mode instead of the browser's dark PDF viewer, keeps its scroll position and no longer flashes while it updates, Typst's errors and the syntax checks share the gutter, and the borders of the file tree, the editor's gutter, its tooltips and menus no longer appear near-black in light mode.f7957e5Thanks @mikebarkmin! - New::pdf[Title]{src="file.pdf"}element: shows a PDF document on a page. pdf.js draws the pages in the browser, so documents also work on tablets and phones, and their text can be selected, searched and read aloud.viewchooses betweenpages(all pages below each other, the default),slides(one page with previous/next, arrow keys, swipe and fullscreen),thumb(the first page beside title and download button),embed(the browser's own viewer) andbutton(only a download button).pages="1-2"limits the pages shown,download="false"hides the download button,heightsets the height ofslidesandembed. The viewer is a downloadable element runtime like Typst or GeoGebra (elements.pdf.cdn), and Hyperbook Cloud can serve it for all books.f7957e5Thanks @mikebarkmin! - Books have a publishing lock, for exams and other material that must never be public. An owner (or an admin) disables publishing on the book's page; from then on the book can neither be published nor rolled back, an open request to publish is dropped, and a book that is live is taken offline at once. The lock is enforced where a build goes live, so a build that was already waiting or running when the lock was set does not publish the book either. Previews, builds and downloads keep working for the book's members, the book's card shows a badge, and the change is written to the audit log.f7957e5Thanks @mikebarkmin! -:::typstblocks compile with Typst 0.15.1 (typst.ts 0.8.0-rc4, up from 0.7.0 with Typst 0.14.2), and they can import packages: from Typst Universe as before, and now also the book's own packages (typst.packagePath, e.g.#import "@local/template:1.0.0": *), shared ones fromHYPERBOOK_TYPST_PACKAGE_PATH, and on Hyperbook Cloud the instance's packages under Settings → Typst packages. The build packs every package a block imports, and the packages those import, into the site at/__hyperbook_typst/; readers' browsers load them from there. A newpackagesattribute offers packages that no file imports yet, for edit mode. A package the book'sexcludematches stops the build instead of being published.Note: a document that uses something Typst 0.15 removed or changed may need an update. typst.ts 0.8.0 is still a release candidate; it is pinned by checksum.
Patch Changes
f7957e5Thanks @mikebarkmin! - The editor's AI assistant writes code blocks of:::pyide,:::webide,:::typst,:::openscadand:::p5in the current syntax: the main file without a name, every other file withfile="…"on the fence. It used to write the old form (python main.py), whose blocks a build ignores with a warning.:::onlineideand:::sqlide, which still take the file name after the language, are unchanged.hyperbook-studio@0.59.0
Minor Changes
f7957e5Thanks @mikebarkmin! - New::pdf[Title]{src="file.pdf"}element: shows a PDF document on a page. pdf.js draws the pages in the browser, so documents also work on tablets and phones, and their text can be selected, searched and read aloud.viewchooses betweenpages(all pages below each other, the default),slides(one page with previous/next, arrow keys, swipe and fullscreen),thumb(the first page beside title and download button),embed(the browser's own viewer) andbutton(only a download button).pages="1-2"limits the pages shown,download="false"hides the download button,heightsets the height ofslidesandembed. The viewer is a downloadable element runtime like Typst or GeoGebra (elements.pdf.cdn), and Hyperbook Cloud can serve it for all books.Patch Changes
f7957e5Thanks @mikebarkmin! -hyperbook.jsonhas a newexcludesetting: globs for files that must not be part of the built site, for example["intern/**", "**/*.draft.*"]. They are matched against the address a file would have in the site and apply to the files inpublic/and to everything inbook/andglossary/that is not a page. The dev server does not serve such files either, andhyperbook checkreports links that point at them.f7957e5Thanks @mikebarkmin! -::pdfbuilds Typst documents:::pdf[Worksheet]{src="worksheet.typ"}compiles the document into a PDF during the build and shows it like any other.inputs="solution=true"passes values to the document (each set of inputs is its own PDF). Documents are compiled with the official Typst compiler, which Hyperbook downloads and checks on first use;typst.versioninhyperbook.jsonpins it (0.15.0 and newer are supported),typst.packagePathnames a folder of the book's own packages (@local/…), andtypst.fontPatha folder of fonts.HYPERBOOK_TYPST_PACKAGE_PATHadds packages shared by several books. The book's root is Typst's root, so imports and images work from anywhere in the book and nothing outside it is read. An unchanged document is not compiled again, a document with errors fails the build with Typst's message, and the dev server compiles documents as pages show them.Behaviour change:
.typfiles are no longer copied into the site. A page that offers one for download with:download[…]{src="file.typ"}still gets it; a plain Markdown link to a.typfile now breaks, andhyperbook checkreports it.:::typstblocks are not affected.Updated dependencies [
f7957e5,f7957e5,f7957e5,f7957e5]: