Repository navigation
Improve Windows startup, icons, CI builds, and result preparation - #20
Merged
Merged
Conversation
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.
Opening DuckLocal from Explorer currently creates a console window and uses a generic executable icon. This change uses the Windows GUI subsystem, embeds the existing duck artwork as a seven-size icon resource, and attaches CLI commands to the caller's console while preserving redirected handles and LSP pipes.
It also fixes Windows file-lock failures when reopening the current database or promoting an attached database to primary. The old primary stays alive during a switch, and a failed open restores the attachment and default database. Regression tests cover reopening, app connection clones, and rollback. A missing comma in main's merged icon list is repaired so the integrated branch builds.
Performance and Windows CI
compactprofile with Rust size optimization and DuckDB C++ optimization level 3. Its size/performance tradeoff has not been benchmarked.cargo test --no-run, then reports test execution separately. Remove the preceding standalone Windows build, omit CI debug symbols, skip manual performance probes, retain dependency caches on failure, and cancel obsolete runs for the same branch/PR.The previous successful Windows job spent 45m40s on the standalone build and another 9m04s compiling tests; actual tests took about 13 seconds. Hosted CI savings still need measurement, and the first build with the new debug settings requires a fresh cache.
Validation
cargo test --locked --offline -- --skip perf_probe::: 368 functional tests passed; nine manual probes excluded.cargo check --locked --offline --features scroll-bench: passed.python scripts/check-windows.py target/debug/ducklocal.exe: GUI subsystem, all seven duck icon payloads, CLI stdin/stdout passed.git diff --checkpassed.