| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
| |
This is not a full rewrite to pytest style tests, it just changes the
minimum to allow pytest to run the existing tests.
Resolves #72
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The array methods fromstring/tostring have been deprecated since Python
3.2. Python 3.9 removes them completely.
This was discovered when trying to build gitdb package for Fedora 33.
https://bugzilla.redhat.com/show_bug.cgi?id=1788660
|
| |
|
| |
|
| |
|
|
|
|
| |
windows)
|
| |
|
|
|
|
|
| |
Sometimes the OS or some other process has the handle to file a bit longer, and the file could not be deleted immediatly.
Retry 10 Times with 100ms distance.
|
|
|
|
|
| |
Currently renaming files is not supported while the the OS doesn't support renaming open files.
When closing the file, as done in the code by using http://smmap.readthedocs.io/en/latest/api.html#smmap.mman.StaticWindowMapManager.force_map_handle_removal_win force_map_handle_removal_win, we can rename, but the cache does still have a handle to this file and crashes.
|
|
|
|
|
| |
+ On Windows, you cannot write onto a file held by another live
file-pointer (test_pack.py:#L204).
+ The TC fails later, on clean up (the usual).
|
| |
|
|\
| |
| | |
Handle more file open/close with "with"
|
| | |
|
|/ |
|
|
|
|
|
|
|
| |
Therefore, hardcoded sha's are not allowed anymore, as the contents of
the repository is unknown.
Fixes #16, for real this time ;)
|
| |
|
|
|
|
|
|
|
| |
I have verified that all tests are working, even without a parent
git repository, as long as the said environment variable is set.
Fixes #16
|
|
|
|
| |
autopep8 -v -j 8 --max-line-length 120 --in-place --recursive
|
|
|
|
|
|
|
|
| |
just packs
This should make it easier to assert the issue is truly fixed now
[skip ci]
|
|
|
|
| |
Fixed tiny issue in python 3
|
|
|
|
|
|
| |
the issue described in https://github.com/gitpython-developers/GitPython/issues/220
See test notes for proper usage, it all depends on a useful dataset with high entropy
|
| |
|
|
|
|
|
|
|
|
|
| |
information
This appears to fix https://github.com/gitpython-developers/GitPython/issues/220 , in this particular case.
Nonetheless, we might just have gotten lucky here, and the actual issue is not yet solved and can thus re-occour.
It would certainly be best to churn through plenty of loose objects to assure this truly works now. Maybe the pack could be recompressed as loose objects
to get a sufficiently large data set
|
|
|
|
| |
This also explains why the tests suddenly stopped working - after all, the interpreter changed ... .
|
|
|
|
| |
Maybe I can find a py 2.6 interpreter somewhere to reproduce it.
|
|
|
|
| |
With a bit of luck, this one will just work now.
|
|
|
|
|
|
|
| |
By default, a small repository will be tested, which doesn't take that long actually (~20s)
Additionally, that way we enforce correctness tests, which didn't run by default previously.
As we are handling data here, we must be sure that it's handled correctly, thus the tests should
run.
|
|
|
|
|
|
| |
It was useful for debugging though, maybe an explicit type assertions would
help others ?
As 'others' will be gitpython, I suppose I can handle it myself
|
|
|
|
| |
It's a nice way of saying that there is still one failing, consistently.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
gitdb/base.py
gitdb/fun.py
gitdb/pack.py
gitdb/stream.py
gitdb/test/lib.py
gitdb/util.py
|
| |
| |
| |
| |
| |
| |
| | |
range in py2 will return a list, which can mean a lot of time and memory
is spent on generating it even though it's just used for iteration.
Simplified implementation of MAXSIZE
|
| |
| |
| |
| |
| |
| |
| |
| | |
Bytes should always be returned from the streams, so the tests
should be checking against byte strings instead of text strings.
This also fixes the `sha_iter` as it relied on the Python 2
`iterkeys` which has been renamed to `keys` in Python 3.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There were a few things which were being reused consistently for
compatibility purposes, such as the `buffer`/`memoryview` functions
as well as the `izip` method which needed to be aliased for
Python 3. The `buffer` function was taken from `smmap` [1] and
reworked slightly to handle the optional third parameter.
This also adds a compatibility file dedicated entirely to encoding
issues, which seem to be the biggest problem. The main functions
were taken in part from the Django project [2] and rewritten
slightly because our needs are a bit more narrow.
A constants file has been added to consistently handle the
constants which are required for the gitdb project in the core
and the tests. This is part of a greater plan to reorganize
the `util.py` file included in this project.
This points the async extension back at the original repository
and points it to the latest commit.
[1]: https://github.com/Byron/smmap/blob/1af4b42a2354acbb53c7956d647655922658fd80/smmap/util.py#L20-L26
[2]: https://github.com/django/django/blob/b8d255071ead897cf68120cd2fae7c91326ca2cc/django/utils/encoding.py
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
This changes the internals to use BytesIO over StringIO, which
fixed a few of the failing tests in Python 3. We are only
importing from `io` now, instead of the entire chain, as this is
available in Python 2.6+.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
In Python 3, the default string type is now the Python 2 unicode
strings. The unicode strings cannot be converted to a byte stream,
so we have to convert it before writing to the streams.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes most of the import errors that came from using the
implicit relative imports that Python 2 supports. This also fixes
the use of `xrange`, which has replaced `range` in Python 3. The
same has happened for `izip`, which is also being aliased.
The octal number syntax changed in Python 3, so we are now
converting from strings using the `int` built-in function, which
will produce the same output across both versions of Python.
|
| | |
|
|/ |
|
| |
|