vectorcraft/crates
Ahmed Moussa 3e20c2cf29
build(web): copy web fonts with cargo xtask, not sh
Replace the Trunk post_build hook packaging/web/copy-fonts.sh with `cargo xtask web-fonts` (xtask/src/web_fonts.rs), so the web build only needs trunk, the wasm32 target and cargo, with no POSIX shell, and works the same on Windows.

The new task reuses crates/text/build/web_fonts.rs for list parsing and URLs, so build.rs and the copier can't disagree on fonts/<sha16>/<file>. It still does nothing without CRAFT_FONTS_DIR, checks each file's SHA-256 against the manifest, and copies the licence next to each face. A listed face that an older craft-fonts checkout lacks is now skipped with a warning, as build.rs does, instead of failing the build. A relative CRAFT_FONTS_DIR is resolved from the workspace root.

Update the references in Trunk.toml, fonts.rs, build.rs, craft_fonts.rs and web-fonts.txt, and document the web build's requirements in docs/development.md. Add tests for the copy, a hash mismatch and the no-op case.

Signed-off-by: Ahmed Moussa <moussa.ahmed95@gmail.com>
2026-10-09 17:18:54 +03:00
..
affinity AF.3: say which sample set the Affinity semantics were fitted on 2026-10-09 08:02:33 +00:00
brush M4.39: SVG symbols as <symbol>/<use>, hidden layers on Save, Dublin Core metadata 2026-10-05 09:03:52 +07:00
cad Fix #546: DXF export writes each fill's outlines before its hatch 2026-10-09 14:49:42 +07:00
color Colour: ICC CMYK converts straight into the RGB profile, with black-point compensation 2026-10-09 17:11:34 +13:00
doc Fix #602: Scale Artwork with Artboard scales the art with a resized artboard 2026-10-09 11:50:35 +01:00
effects Part of ROADMAP gap 2: Radial Blur, Smart Blur and Unsharp Mask on a pixel-filter pipeline 2026-10-09 13:30:31 +07:00
engine Merge pull request #739 from AutoHenry/feat/602-scale-art-with-artboard 2026-10-09 18:29:28 +07:00
eps Part of #637: .ai files saved without PDF compatibility open from their editing data 2026-10-09 16:35:22 +07:00
format M7: inline symbols in text 2026-10-08 15:45:34 -07:00
geom M2.9: hexagon orientation no longer depends on atan2 rounding 2026-10-09 06:37:59 +00:00
mcp Merge branch 'pr719' into land/719 2026-10-09 15:19:04 +07:00
metafile Part of #637: the editing data's structure read whole, colours, gradients, transparency, names, images and artboards included 2026-10-09 16:02:36 +07:00
pathops Fix #569: Shape Builder merges leave no stray edges in their outlines 2026-10-09 03:04:48 +07:00
pdf Merge pull request #742 from jmverges/pdf-import-slanted-type 2026-10-09 18:40:19 +07:00
plugins M0.CI: restore checks without optional fonts 2026-10-08 20:50:54 +01:00
render Fix #743: raster export leaves guides out 2026-10-09 11:31:29 +00:00
svg SVG export: name the unsupported pixel effects without a product name 2026-10-09 13:43:49 +07:00
testkit Part of #637: the editing data's structure read whole, colours, gradients, transparency, names, images and artboards included 2026-10-09 16:02:36 +07:00
text build(web): copy web fonts with cargo xtask, not sh 2026-10-09 17:18:54 +03:00
tools feat(text): load craft-fonts' Arabic families, fetch them on web 2026-10-09 16:09:34 +03:00
trace Image Trace: Flat Logo mode (sub-pixel edges, restored corners, true lines and circles) 2026-10-09 17:57:04 +11:00
ui-egui i18n: Ukrainian for the tab bar's » tooltip 2026-10-09 19:19:03 +07:00