mirror of
https://github.com/storytold/photocraft.git
synced 2026-10-17 12:49:31 +02:00
* Fix two ui-egui tests broken on main by concurrent landings - profile_open_tests: #5614 renamed the built-in profile to "(PhotoCraft)" after #5208 hard-coded "(Photocraft)" in the Use-embedded button label. - smart_object_curves_preview_keeps_its_size_on_a_reduced_proxy (#5779): the reduced square is in the right place, but its corner pixels are 220/255 after the smart object's resampling; assert full coverage inside and over half at the corners. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Web: ship the wasm as compressed parts behind a boot module (#5302) The release site held the app's wasm as one file, which sits at the 25 MiB per-file cap of Cloudflare Pages, so the 24 MiB gate failed unrelated PRs. packaging/web/package.sh now gzips the wasm and cuts it into parts of at most 20 MiB under app/, and ships the page of a new crate, apps/photocraft-web-boot. That module fetches the parts in order, has the browser inflate them (DecompressionStream) and passes the stream to the app's own wasm-bindgen loader, so the browser still compiles while it downloads. A failed download is retried twice, then the page says so. The check is now that no file in the site is over 24 MiB. trunk build in apps/photocraft-web and the Docker image still give one .wasm. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Web boot: inflate the parts in the module where the browser can't (#5302) * Tests: the adjustment-layer drag preview test follows #5778 (#5926) #5778 caps a live adjustment-layer preview by the view's zoom, so at 100 % the drag shows full resolution even with Low Resolution Previews on. The test still expected the reduced copy there. It now checks that at 100 % every column shows by default, and moves the low-res on/off comparison to 50 %, where the reduced copy is still used: on, the drag shows only the (inverted) black columns; off, it matches the committed view. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Brandon Thomas <echelon@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
27 lines
704 B
Plaintext
27 lines
704 B
Plaintext
# Netlify / Cloudflare Pages header rules (see HOSTING.md). Other hosts: set the same headers.
|
|
/*
|
|
X-Content-Type-Options: nosniff
|
|
|
|
/*.wasm
|
|
Content-Type: application/wasm
|
|
Cache-Control: public, max-age=31536000, immutable
|
|
|
|
/*.js
|
|
Cache-Control: public, max-age=31536000, immutable
|
|
|
|
/index.html
|
|
Cache-Control: no-cache
|
|
|
|
# app/ holds the app's wasm, gzipped and cut into parts whose names carry a content hash...
|
|
/app/*
|
|
Cache-Control: public, max-age=31536000, immutable
|
|
|
|
# ...and the app's loader and its list of parts, which keep their names from release to release.
|
|
/app/photocraft-web.js
|
|
! Cache-Control
|
|
Cache-Control: no-cache
|
|
|
|
/app/parts.txt
|
|
! Cache-Control
|
|
Cache-Control: no-cache
|