summaryrefslogtreecommitdiff
path: root/gitdb/util.py
Commit message (Collapse)AuthorAgeFilesLines
* refact(util): ask global `util.mman` from mman moduleKostis Anagnostopoulos2016-10-271-10/+4
|
* fix(io): BREAKING, wrap more out-stream usagesKostis Anagnostopoulos2016-10-251-27/+2
| | | | | | + chrore(deps): depend on *contextlib2* for `ExitStack` in PY2. + refact(util): BREAKING API move consts out of utils. + style(pep8): fixe all sources.
* refact(win_errs): move HIDE_WINDOWS_KNOWN_ERRORS from main-code to testKostis Anagnostopoulos2016-10-251-5/+0
|
* style(listuple): use literals for empty lists/tuplesKostis Anagnostopoulos2016-10-251-1/+1
|
* fix(win): FIX and HIDE 2 win-errors remainingv2.1.0.dev1Kostis Anagnostopoulos2016-10-241-13/+22
| | | | | + File-in-use errors were fixed with `gitdb.util.mman.collect()`! + This call is disabled `gitdb.util.HIDE_WINDOWS_KNOWN_ERRORS == False`. + Depend on latest smmp `v2.1.0.dev1` tag
* feat(io): breaking API: retrofit Packers as context-managers!Kostis Anagnostopoulos2016-10-241-0/+20
| | | | | | | | | | + Packers MUST be invoked inside `Withh...` blocks, or `_cursor` won't exist! + Had to drop NotLazy for their hierarchy :-( + Count entrances/exits. + feat(util: add `rmtree()` for READ_ONLY files on Windows. 3-->2 Windows TCs now fail.
* feat(io): Retrofit streams as context-managers.Kostis Anagnostopoulos2016-10-241-0/+37
| | | | | + feat(util): add logger. + feat(util): add suppress-ex context-handler (from PY3 sources).
* minor spell fixes + empty line unification + comparison for python 2.6Yaroslav Halchenko2015-01-081-1/+1
|
* Fixed python 3 compatibility issue that only showed on windows0.6.2Sebastian Thiel2015-01-061-6/+6
| | | | And bumped version to 0.6.2
* Applied autopep8Sebastian Thiel2015-01-041-11/+23
| | | | autopep8 -v -j 8 --max-line-length 120 --in-place --recursive
* Fully removed all async dependenciesSebastian Thiel2014-11-131-10/+0
|
* Fixed all applicable lint issuesSebastian Thiel2014-11-131-1/+5
|
* Merge branch 'kevin-brown-issue_4' into py2n3Sebastian Thiel2014-11-131-81/+80
|\ | | | | | | | | | | | | | | | | | | Conflicts: gitdb/base.py gitdb/fun.py gitdb/pack.py gitdb/stream.py gitdb/test/lib.py gitdb/util.py
| * Made sure xrange is used instead of range in python 2Sebastian Thiel2014-11-131-4/+1
| | | | | | | | | | | | | | 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
| * Start up compat and encoding filesKevin Brown2014-07-161-7/+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
| * Making a bit of progress...Kevin Brown2014-07-131-7/+1
| | | | | | | | | | | | | | 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+.
| * Better handling of bytesKevin Brown2014-07-131-1/+14
| | | | | | | | | | | | | | This adds a `byte_ord` version of `ord` which will let `bytes` safely pass through in Python 3. `cmp` was also swapped out as it has been dropped in Python 3.
| * Convert strings to bytes for PY3Kevin Brown2014-07-131-1/+1
| | | | | | | | | | | | 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.
| * Pick off the low hanging fruitKevin Brown2014-07-131-9/+9
| | | | | | | | | | | | | | | | | | | | | | 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.
| * Automated PEP 8 fixesKevin Brown2014-07-131-66/+65
| |
* | Minor adjustments to adapt to changes in async (due to be removed anyway)Sebastian Thiel2014-11-131-14/+9
|/
* tabs to spacesSebastian Thiel2014-02-091-269/+269
|
* wrote change log for next release.Sebastian Thiel2011-07-051-1/+5
| | | | Choosing memory manager type based on the actual python version for best efficiency
* pack: updated to use its cursor properly, which will be required if huge ↵Sebastian Thiel2011-07-051-1/+2
| | | | | | packs should be handled. This reduces performance as each access requires the windows to be checked/adjusted, but that is how it is. This should be circumvented using other backends, like the one of the gitcmd or libgit2. Default is now the sliding memory map manager
* Fixed up docs for upcoming release. Bumped version to 0.5.3Sebastian Thiel2011-06-131-10/+18
|
* Switched git db to the non-sliding version of the memory manager which is a ↵Sebastian Thiel2011-06-101-0/+13
| | | | good tradeoff between performance loss and resource handling
* preprended all modules with licensing informationSebastian Thiel2011-02-231-0/+4
|
* moved all relevant files into the gitdb folder.Sebastian Thiel2010-11-301-0/+352
Submodule relinked to point to new github location, and moved as well