Repository navigation
v0.9.6 - Long Paths No Longer Break a Push on Windows
What's Changed in v0.9.6
A push of a repository holding long non-ASCII paths failed on Windows with
git pack-objects failed: fatal: expected object ID, got garbage. Found on a real vault whose Thai
file names run to 400 bytes. Nothing about what is stored changes.
Fixed
- A long path broke the push.
pack-objects --stdinon git for Windows reads each<id> <path>
line into a 302-byte buffer and takes the overflow for the next line. The path is only a hint for
delta compression, so a line over 300 bytes is now sent as the bare object id; the pack holds the
same objects. - A path containing U+0085, U+2028 or U+2029 was cut in two by the object listing
(str.splitlines()splits on them). It is now split on\nonly.
Not changed
- What is stored, the pack layout and every setting.
The full list is in CHANGELOG.md.
Full Changelog: v0.9.5...v0.9.6