Repository navigation
Updates: the updater reports installing, ready, installed and failed, and installs at exit - #1980
Conversation
… and installs at exit craft-media, craft-pdf, craft-ui, craft-update and krilla move from craft-libs c5a1cbfb to c7c84230, which carries storytold/craft-libs#687 and storytold#696. The check result window now shows whenever the updater's status is not idle: after Help > Check for Updates, and at the first start after an update, to say that it installed or why it failed. Restart to Update in that window asks the app to close once nothing is unsaved. on_exit starts the helper of a ready update, since on macOS it ends the process before the app is dropped.
|
Caution Review failedThe pull request is closed.
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
…s pin The pdf-deps check compared craft-pdf and krilla against storytold/craft-libs at c5a1cbfb, so the gate stopped at that step once the pin moved to dotCooCoo/craft-libs c7c84230. The expected repository and revision now match the pin in Cargo.toml.
|
The gate stopped at 3504a9d sets the expected repository and revision in |
dylanmtaylor
left a comment
There was a problem hiding this comment.
LGTM. craft-libs#696 is merged into main.
Conflict: main moved the craft-libs pin from c5a1cbfb to 1b34eba4 (storytold#1980, 5ee82b4). craft-i18n moves with it, so it stays on the same rev as craft-ui; crates/i18n is unchanged between the two revs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Draft until storytold/craft-libs#687 and #696 merge. The craft-libs pin points at
dotCooCoo/craft-libsc7c84230, a branch that is craft-libsmainat0a9d1f48with #687 and then #696 merged in. When both merge, the pin moves to the craft-libs merge commit onstorytold/craft-libsand the pull request is marked ready.What changes
Cargo.toml:craft-media,craft-pdf,craft-update,craft-uiand thekrillapatch move together fromc5a1cbfbtoc7c84230.Cargo.lockchanges those entries andcraft-i18nandcraft-fonts-build, and dropszopflifromzip's dependencies. The web app'scraft-web-apiandcraft-web-hoststay on their own rev.crates/ui-egui/src/dialogs/updates_ui.rs: the check result window now shows whenever the updater's status is not idle, not only after Help ▸ Check for Updates. At the first start after an update it says that the update installed (Status::Updated) or why it failed (Status::InstallFailed). OK dismisses it, Check Again runs a new check, and Restart to Update (Status::Ready) callsUpdater::restart_to_update, so the next frame asks the window to close once nothing is unsaved. The newInstalling,ReadyandManagedstatuses are shown by the same window.apps/deckcraft/src/main.rs,crates/ui-egui/src/app.rs:on_exitcalls the newSlideApp::start_pending_update, which callsUpdater::start_pending_update. On Windows the install helper now starts at the app's exit instead of right after the download, so a canceled close keeps the update ready. On macOSon_exitends the process before the app is dropped, so the updater's own drop would not run there.the_start_after_an_update_reports_it_until_dismissedandthe_start_after_a_failed_update_reports_why_and_offers_a_new_check: an outcome record written under a temporary folder makes the start show the result window, OK returns the status to idle, and Check Again requests a check. Both fail when the window's answers are ignored.No other source change was needed for the newer craft-libs crates.
Other craft-libs changes since
c5a1cbfbByteSourcetrait (craft-libs#439), faster bit reader and RBSP unescape (UI: WordArt adjust handles drag a text warp #519, Text: AutoCorrect options, case rules and your own entries #521, UI: keep editor slides on the Retina pixel grid #522), an optional Ogg demuxer (Palette: skip commands that need a value #440, not enabled here), a cap on a Matroska track's content encoding chain (Morph: the same text moves and resizes instead of cross-fading #541).SHA256SUMS.txt(Pictures: compress pictures to a target resolution #513), standalone updates that stage every file first ([Audit] Native-format load silently ignores missing or corrupt embedded media #392), andzipwithout zlib-rs on Windows (Export: MP4 and MOV video of the deck, with our own H.264 encoder #608).Overlap
No open pull request moves the craft-libs pin. #1488, #1530, #1549 and #1571 add
craft-i18natc5a1cbfb, the same rev ascraft-ui, and #1540 adds it at92d392cf; whichever merges second needs only the rev inCargo.tomlandCargo.lock. Earlier pin changes landed together with the change that needed them (#1253, #1377, #1383, #1386, #1457, #1561, #1562), and9678ed7dmoved the pin in a direct commit.Tested
On Windows 11, on
48e22031plus this commit, without craft-fonts:cargo fmt --all -- --check: clean.cargo check --workspace --tests --locked: clean.cargo clippy --locked --all-targets -- -D warningsfor the 16 crates that depend on craft-libs crates: clean.cargo test --locked --no-fail-fastfor the same 16 crates: 23 test binaries and 13 doc-test runs, 1570 passed, 0 failed, 6 ignored.cargo xtask assets: all 48 asset files attributed.cargo xtask layers: 28 crates, no layering violations.