| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
| |
+ Just to see Apveyor all green and merge; the TCs HAVE TO BE FIXED.
|
|
|
| |
+ Some cases had restructuring of code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
+ FIX TestRepo.test_submodule_update():
+ submod: del `.git` file prior overwrite; Windows denied otherwise!
+ FIX TestRepo.test_untracked_files():
+ In the `git add <file>` case, it failed with unicode args on PY2.
Had to
encode them with `locale.getpreferredencoding()` AND use SHELL.
+ cmd: add `shell` into `execute()` kwds, for overriding USE_SHELL per
command.
+ repo: replace blocky `communicate()` in `_clone()` with thread-pumps.
+ test_repo.py: unittestize (almost all) assertions.
+ Replace open --> with open for index (base and TC).
+ test_index.py: Enabled a dormant assertion.
|
|
|
|
|
|
| |
+ Modify lock/read-config-file code to ensure files closed.
+ Use `with GitConfigarser()` more systematically in TCs.
+ Clear any locks left hanging from prev Tcs.
+ Util: mark lock-files as SHORT_LIVED; save some SSDs...
|
|
|
|
|
| |
+ Stop using gitdb's respective helper.
+ Fix files chmod(555) which CANNOT DELETE on Windows (but do on Linux).
|
| |
|
|
|
|
|
| |
+ Fixed the hangs at `test_git:TestGit.test_handle_process_output()`.
[travisci skip]
|
|
|
|
| |
Thanks to @yarikoptic for catching this one !
|
|
|
|
|
|
|
| |
It's entirely untested if this repo still does the right thing,
but I'd think it does.
Fixes #504
|
|\
| |
| | |
is_dirty supports path. Fixes #482.
|
| | |
|
| | |
|
| |
| |
| |
| | |
- add a second line to commit messages with the "BAD MESSAGE" text
- read in the log and confirm that the seond line is not in the log file
|
|/
|
|
|
|
|
|
|
|
| |
That way, we will not only get the summary line
contained in the blame, but fetch the full message.
This is more costly than the previous implementation
allowed it to be, but being less surprising/correct
certainly is the preferred behaviour here.
Fixes #485
|
|
|
|
|
| |
Although it's hard to see, PEP-0263 does have ws delimiting the 'coding' string.
This commit will fix the root cause of (at least) one bug: https://lists.fedoraproject.org/archives/list/eclipse-sig@lists.fedoraproject.org/thread/5XQ5JRHG6DPPMGRDU7TA2AO4EYS2H7AG/
|
|
|
|
|
| |
Returning this now to avoid having to change the function's return value
structure later on if we want to emit more information.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a sibling method to Repo's blame method:
Repo.blame_incremental(rev, path, **kwargs)
This can alternatively be called using:
Repo.blame(rev, path, incremental=True)
The main difference is that blame incremental is a bit more efficient
and does not return the full file's contents, just the commits and the
line number ranges. The parser is a bit more straight-forward and
faster since the incremental output format is defined a little stricter.
|
| |
|
|
|
|
| |
merge-base --is-ancestor
|
| |
|
|
|
|
|
|
| |
Previously, it could have happened that pipes ran full, deadlocking the operation
Related to #72
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As GitPython is in maintenance mode, there will be no new features.
However, I believe it's good idea to explicitly state we do not support
certain things if this is the case.
Therefore, when worktrees are encountered, we will throw an specific
exception to indicate that.
The current implementation is hacky to speed up development,
and increases the risk of failing due to false-positive worktree
directories.
Related to #344
|
|
|
|
|
|
| |
This should fix resource leaking issues once and for all.
Related #304
|
|
|
|
|
| |
Wrap `git merge-base --is-ancestor` into its own function because it acts
as a boolean check unlike base `git merge-base call`
|
|
|
|
|
|
|
|
|
|
|
|
| |
* untracked_files could, if there were spaces in the path returned,
re-rencode the previously decoded unicode string thanks to a
`decode("string_escape")` call. Now re-encode into utf-8 afterwards
- added test to assure this works indeed
* IndexFile.add() didn't handle unicode correctly and would write
broken index files. The solution was to compute the path length after
encoding it into utf-8 bytes, not before ... .
Closes #320
|
|
|
|
|
|
| |
Unfortunately, installation of a executable script has proven to be so
difficult thanks setuptools gloriousness, which will force me to remove
that feature
|
|
|
|
|
|
| |
Hoping to make this significantly faster on travis.
Related to #245
|
|
|
|
|
| |
The latter happened as now BadName is thrown, instead of BadObject.
Changes.rst was marked accordingly
|
|
|
|
|
|
| |
A test verifies it's truly working.
Related to #238
|
|
|
|
|
|
|
| |
This allows sub-trees to be archived as well, and makes `.archive()`
feature complete.
Fixes #67
|
|
|
|
| |
Fixes #169
|
|
|
|
|
|
|
| |
For some reason, I didn't trust the existing one as it tests that code
more indirectly.
Related to #160
|
|
|
|
| |
Related to #83
|
|
|
|
|
|
| |
general.
Fixes #83
|
|
|
|
|
| |
It works as expected by me at least.
Related to #71
|
|
|
|
| |
Fixes #74
|
|
|
|
| |
Helps to clarify #55
|
|
|
|
|
|
|
|
|
| |
Previously, an unresolvable ref name like HEAD would end up as HEX and
was presented as BadObject error, even though that exception is for
invalid shas only.
Now BadName is thrown, which converts into a more useful error message.
Improves #105
|
|
|
|
| |
Forgot to fix the test, which used the same broken version_info condition
|
|
|
|
| |
See #47
|
| |
|
|
|
|
|
|
|
|
| |
At least leakage is considerably reduced.
Additionally, a test-case was added which triggers failure if auto-disposal
of resources wouldn't work.
Fixes #60
|
|
|
|
| |
See #177
|
| |
|
|
|
|
| |
Now it's about going through PY3 issues
|
|
|
|
|
|
| |
However, StringIO really is ByteIO in most cases, and py2.7 should
run but doesn't.
This should be made work first.
|
|
|
|
| |
More to come, especially when it's about strings
|
| |
|
|
|
|
|
| |
There is more work to do though, as many imports are still incorrect.
Also, there are still print statements
|