| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Fixes #743
Signed-off-by: Ruslan Kuprieiev <kupruser@gmail.com>
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
windows
|
| |
|
| |
|
|
|
|
| |
https://docs.python.org/3/whatsnew/3.6.html#deprecated-python-behavior
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Details:
- Added Python 2.6 again to .travis.yml (it was removed in commit 4486bcb).
- Replaced the use of dictionary comprehensions in `git/cmd.py` around
line 800 with the code before that change (in commit 25a2ebf).
Reason: dict comprehensions were introduced only in Python 2.7.
- Changed the import source for `SkipTest` and `skipIf` from `unittest.case`
to first trying `unittest` and upon ImportError from `unittest2`.
This was done in `git/util.py` and in several testcases.
Reason: `SkipTest` and `skipIf` were introduced to unittest only
in Python 2.7, and `unittest2` is a backport of `unittest` additions
to Python 2.6.
- In git/test/lib/helper.py, fixed the definition of `assertRaisesRegex`
to work on py26.
- For Python 2.6, added the `unittest2` dependency to `requirements.txt`
and changed `.travis.yml` to install `unittest2`. Because git/util.py
uses SkipTest from unittest/unittest2, the dependency could not be added
to `test-requirements.txt`.
- Fixed an assertion in `git/test/test_index.py` to also allow
a Python 2.6 specific exception message.
- In `is_cygwin_git()` in `git/util.py`, replaced `check_output()` with
`Popen()`. It was added in Python 2.7.
- Enabled Python 2.6 for Windows:
- Added Python 2.6 for MINGW in .appveyor.yml.
- When defining `PROC_CREATIONFLAGS` in `git/cmd.py`, made use of certain
win32 and subprocess flags that were introduced in Python 2.7, dependent
on whether we run on Python 2.7 or higher.
- In `AutoInterrupt.__del__()` in `git/cmd.py`, allowed for `os` not having
`kill()`. `os.kill()` was added for Windows in Python 2.7 (For Linux, it
existed in Python 2.6 already).
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
+ Move `HIDE_WINDOWS_KNOWN_ERRORS` flag from
`git.test.lib.helper-->git.util`;
regular modules in main-sources folder also depend on that flag.
+ Use unittest.SkipTest instead of from non-standard `nose` lib.
|
| |
|
|
|
|
|
|
|
|
| |
+ Mark all unused vars and other non-pep8 (PyDev) warnings
+ test_utils:
+ enable & fix forgotten IterableList looped path.
+ unittestize all assertions.
+ remote: minor fix progress dispatching unknown err-lines
|
|
|
|
|
|
|
|
|
| |
+ Detect code breaking the body of TCs eventually hidden win-errors by
raising SkipTest ALAP.
+ submodule.base.py: import classes from `git.objects` instead of
`utils`.
+ had to ++ ulimit 100->110 for the extra code tested (more leaks :-)
+ Centralize is_win detection.
|
|
|
|
|
| |
+ Collect all "acknowledged" failing TCs on Appveyor and use
"HIDE_WINDOWS_KNOWN_ERRORS" var to hide them.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
+ 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.
|
| |
|
|
|
|
|
| |
+ No WindowsError exception.
+ Add `test_exc.py` for unicode issues.
+ Single-arg for decoding-streams in pump-func.
|
|
|
|
|
|
|
|
| |
+ HookException thrown on Popen, and were missed on Windows.
+ No SHELL on Popen??
+ Minor fixes:
+ Try harder to delete trees - no remorses.
+ Simplify exception reprs.
+ Unittest-ize test_index assertions.
|
|
|
|
|
| |
+ Stop using gitdb's respective helper.
+ Fix files chmod(555) which CANNOT DELETE on Windows (but do on Linux).
|
|
|
| |
+ TCs: unittest-asserts for git-tests.
|
| |
|
| |
|
|
|
|
|
|
| |
It ain't pretty, but should do the job.
Related to #514
|
|
|
|
|
|
|
|
|
|
| |
Relying on the destructor will not work, even though
the code used to rely on it.
Now we handle failures more explicitly. Far from perfect,
but a good start for a fix.
Fixes #514
|
|
|
|
|
| |
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/
|
| |
|
|
|
|
| |
Issue #407
|
| |
|
|
|
|
|
|
|
|
|
|
| |
I really never want to touch python again, and never deal with
py2/3 unicode handling anymore.
By now, it seems pretty much anything is better.
Is python to be blamed for it entirely ?
Probably not, but there are better alternatives.
Nim ? Rust ? Ruby ?
Totally
|
|
|
|
|
|
|
|
|
| |
This issue only surfaced in python 2, in case paths containing unicode
characters were not actual unicode objects.
In python 3, this was never the issue.
Closes #331
|
| |
|
|
|
|
|
|
|
|
|
|
| |
When expanding directories, check if it is a symlink and don't expand
them at all.
Previously, we followed symlinks and expanded their contents, which
could lead to weird index files.
Fixes #302
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It turned out that the index is not actually corrupted, which is good
news. What happens is that `git` writes `TREE` extension data into the
index, which causes it to write out the given tree *as is* next time
a `git commit` is executed. When using `git add`, this extension data
is maintained automatically. However, GitPython doesn't do that ... .
Usually this is no problem at all, as you are supposed to use
`IndexFile.commit(...)` along with `IndexFile.add(...)`.
Thanks to a shortcoming in the GitPython API, the index was
automatically written out whenever files have been added, without
providing control over whether or not *extension data* will be
written along with it.
My fix consists of an additional flag in `IndexFile.add(...)`, which
causes extension data not to be written by default, so commits can be
safely done via `git commit` or `IndexFile.commit(...)`.
However, this might introduce new subtle bugs in case someone is
relying on extension data to be written. As this can be controlled
through the said flag though, a fix is easily done in that case.
Fixes #265
|
|
|
|
|
| |
However, it doesn't reproduce on the latest version of GitPython.
Maybe it's on an older one.
|
|
|
|
|
| |
Previously, it checked for AssertionErrors, now we have to implement
need-unbare-repo check ourselves.
|
|
|
|
|
|
|
| |
Assured unicode values are supported when reading the configuration,
and when getting author/committer information from the environment.
Fixes #237
|
|
|
|
|
|
|
|
|
| |
However, it does so only on posix. The test-case will run on posix only
as well.
Please note that in theory, even on windows we will attempt to run hooks,
even though I am not sure that this will actually work.
Fixes #81
|
|
|
|
|
|
|
|
| |
used consistently.
This will save IOPs, and make the code easier to understand (I suppose).
Related to #224
|
| |
|
| |
|
| |
|