From ab4520683ab325046f2a9fe6ebf127dbbab60dfe Mon Sep 17 00:00:00 2001 From: Sebastian Thiel Date: Wed, 19 Nov 2014 17:19:52 +0100 Subject: [PATCH 001/172] Added readthedocs badge --- README.rst | 9 ++++++--- gitdb/ext/smmap | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 194e246..186218d 100644 --- a/README.rst +++ b/README.rst @@ -12,6 +12,9 @@ Installation .. image:: https://pypip.in/py_versions/gitdb/badge.svg :target: https://pypi.python.org/pypi/gitdb/ :alt: Supported Python versions +.. image:: https://readthedocs.org/projects/gitdb/badge/?version=latest + :target: https://readthedocs.org/projects/gitdb/?badge=latest + :alt: Documentation Status From `PyPI `_ @@ -44,7 +47,7 @@ DEVELOPMENT :target: https://travis-ci.org/gitpython-developers/gitdb .. image:: https://coveralls.io/repos/gitpython-developers/gitdb/badge.png - :target: https://coveralls.io/r/gitpython-developers/gitdb + :target: https://coveralls.io/r/gitpython-developers/gitdb The library is considered mature, and not under active development. It's primary (known) use is in git-python. @@ -52,10 +55,10 @@ INFRASTRUCTURE ============== * Mailing List - * http://groups.google.com/group/git-python + * http://groups.google.com/group/git-python * Issue Tracker - * https://github.com/gitpython-developers/gitdb/issues + * https://github.com/gitpython-developers/gitdb/issues LICENSE ======= diff --git a/gitdb/ext/smmap b/gitdb/ext/smmap index 28fd45e..eb40b44 160000 --- a/gitdb/ext/smmap +++ b/gitdb/ext/smmap @@ -1 +1 @@ -Subproject commit 28fd45e0a7018f166820a5e00fce2ccb05ebdb61 +Subproject commit eb40b44ce4a6e646aabf7b7091d876738336c42f From 5e3dbccb05f85f178d3260a27df2f59a69221668 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Wed, 17 Dec 2014 23:09:42 -0500 Subject: [PATCH 002/172] Bring gitdb.test back into distribution --- MANIFEST.in | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/MANIFEST.in b/MANIFEST.in index b14aed9..597944f 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -8,7 +8,7 @@ include gitdb/_fun.c include gitdb/_delta_apply.c include gitdb/_delta_apply.h -prune gitdb/test +graft gitdb/test global-exclude .git* global-exclude *.pyc diff --git a/setup.py b/setup.py index dc142c5..1d327eb 100755 --- a/setup.py +++ b/setup.py @@ -83,7 +83,7 @@ def get_data_files(self): author = __author__, author_email = __contact__, url = __homepage__, - packages = ('gitdb', 'gitdb.db', 'gitdb.utils'), + packages = ('gitdb', 'gitdb.db', 'gitdb.utils', 'gitdb.test'), package_dir = {'gitdb':'gitdb'}, ext_modules=[Extension('gitdb._perf', ['gitdb/_fun.c', 'gitdb/_delta_apply.c'], include_dirs=['gitdb'])], license = "BSD License", From c38bd19706abe5cf0bf0e7b3e9ad2b3e554d28ef Mon Sep 17 00:00:00 2001 From: Sebastian Thiel Date: Thu, 1 Jan 2015 13:47:19 +0100 Subject: [PATCH 003/172] Increased initial size of decompressed data to obtain loose object header 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 --- gitdb/stream.py | 7 +++++-- .../88/8401851f15db0eed60eb1bc29dec5ddcace911 | Bin 0 -> 222336 bytes gitdb/test/performance/test_pack.py | 3 ++- gitdb/test/test_stream.py | 13 ++++++++----- 4 files changed, 15 insertions(+), 8 deletions(-) create mode 100644 gitdb/test/fixtures/objects/88/8401851f15db0eed60eb1bc29dec5ddcace911 diff --git a/gitdb/stream.py b/gitdb/stream.py index edd6dd2..b0a8900 100644 --- a/gitdb/stream.py +++ b/gitdb/stream.py @@ -100,7 +100,9 @@ def _parse_header_info(self): :return: parsed type_string, size""" # read header - maxb = 512 # should really be enough, cgit uses 8192 I believe + # should really be enough, cgit uses 8192 I believe + # And for good reason !! This needs to be that high for the header to be read correctly in all cases + maxb = 8192 self._s = maxb hdr = self.read(maxb) hdrend = hdr.find(NULL_BYTE) @@ -243,7 +245,7 @@ def read(self, size=-1): # moving the window into the memory map along as we decompress, which keeps # the tail smaller than our chunk-size. This causes 'only' the chunk to be # copied once, and another copy of a part of it when it creates the unconsumed - # tail. We have to use it to hand in the appropriate amount of bytes durin g + # tail. We have to use it to hand in the appropriate amount of bytes during # the next read. tail = self._zip.unconsumed_tail if tail: @@ -284,6 +286,7 @@ def read(self, size=-1): else: unused_datalen = len(self._zip.unconsumed_tail) + len(self._zip.unused_data) # end handle very special case ... + self._cbr += len(indata) - unused_datalen self._br += len(dcompdat) diff --git a/gitdb/test/fixtures/objects/88/8401851f15db0eed60eb1bc29dec5ddcace911 b/gitdb/test/fixtures/objects/88/8401851f15db0eed60eb1bc29dec5ddcace911 new file mode 100644 index 0000000000000000000000000000000000000000..d60aeeff74d2983bcc2abd03163d2cc8c422f819 GIT binary patch literal 222336 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

y` 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

FlzzdEYD} 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

!hg4aip+5HvQHsg-ZNzfo) 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