-
Notifications
You must be signed in to change notification settings - Fork 69
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merging at the top level broken in git 2.36 #227
Comments
Confirmed. As of Git v2.36 (April 17) it looks like we have 25 failing tests. Your diagnosis looks spot on. A likely fix is going to be just deleting the lines of code that add trailing slashes. A comment in that code dating back to April 2014 suggests that the trailing slash was never really required and was only included to comply with documentation, so hopefully this fix won't break anyone in practice. Unfortunately this is the second breaking change we've seen from Git within the past year. (Here's the other one.) The "use Git plumbing commands as a low-level library" strategy has worked well for peru for almost a decade, but I'm worried we're going to be seeing more of these issues, and I'm not thrilled about doing a complete rewrite on top of e.g. libgit2. |
As of Git 2.36, this leads to a fatal error when the prefix is empty (the root of the repo). See #227.
Changes since 1.3.0: - BUGFIX: Fixed "invalid prefix" errors in common cases, including in the README example project. The immediate cause of the errors was that Git 2.36 changed the requirements of the `git read-tree --prefix` flag. See #227. Reported by @raineszm. - As of Git 2.34, handling of `.gitignore` files in the sync directory has changed. This is an upstream change, rather than a peru change. Previously, peru would emit an error if a sync would overwrite any file that wasn't created in a previous sync, even if that file was ignored in `.gitignore`. Now, ignoring a file in `.gitignore` will suppress this error. - "curl" modules now include a user-agent header in its requests, to fix errors from some hosts that require this header. Contributed by @colindean. - Fix deprecation warnings from Python 3.10.
Fix released as v1.3.1. |
Importing at the top level seems to be broken by newer versions of git.
This can be reproduced by example given in the README
When running
peru sync
this errors withThe culprit seems to be
peru/peru/cache.py
Line 142 in f16cd2d
The text was updated successfully, but these errors were encountered: