Public export snapshot from bran-dev cd396e1 (Windows release packaging fix) - #8
Merged
Conversation
Fixes Windows release packaging: the zip handle must be readable.
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.
Public export snapshot produced by the approved exporter from a clean committed source.
cd396e16a2f4c9a53d95cab6eb2ef2d61796435186e5ccdWhat this fixes
The first
bran-v0.1.0release run built successfully on Linux x86_64, Linux arm64, and macOS arm64, but failed on Windows while writing the archive:write_zippassed aFile::createhandle towrite_zip_to, which callspatch_zip_external_attrto read the end-of-central-directory record back.File::createopens write-only, so the read failed at runtime. It compiled becauseFileimplementsRead.The zip branch only executes for the Windows target, and every existing zip test passed
io::Cursor, which is always readable — so the path-taking entry point the release actually calls had never been exercised on any platform.Added a regression test that writes a real file and reads it back. It reproduces the failure on Linux (
os error 9, bad file descriptor) without the fix, so this is covered off-Windows from now on.Validation
Rebase-merge, not squash.