|
2 | 2 | Changelog
|
3 | 3 | #########
|
4 | 4 |
|
5 |
| -***** |
| 5 | +2.1.0 |
| 6 | +* **BREAKING API:** retrofit streams and (internal) packers as context-managers. |
| 7 | + |
| 8 | + Specifically if you are using directly the packers |
| 9 | + (``git.pack.PackIndexFile``, ``git.pack.PackFile`` & ``git.pack.PackEntity``) |
| 10 | + they must always be used from within a ``with ..`` block, or else |
| 11 | + you will get *mmap-cursor* missing errors. |
| 12 | + |
| 13 | + .. Tip:: |
| 14 | + |
| 15 | + You can "enter" `PackIndexFile`` & ``PackFile`` multiple time, but ``PackEntity`` only once |
| 16 | + to detect and avoid sloppy deep-nesting. |
| 17 | + Since ``git.pack.PackEntity`` class just coalseces ``PackIndexFile`` & ``PackFile``, |
| 18 | + you may "enter" either each internal packer separately, or the entity only once. |
| 19 | + |
| 20 | +* **BREAKING API:** some utilities moved between ``git.util``, ``git.const`` & ``git.utils.compat``. |
| 21 | +* Fix (probably) all leaks in Windows. |
| 22 | + |
| 23 | + .. Note:: |
| 24 | + |
| 25 | + The problem is that on Linux, any open files go unoticed, or collected by GC. |
| 26 | + But on *Windows* (and specifically on PY3 where GC is not deterministic), |
| 27 | + the underlying files cannot delete due to *access violation*. |
| 28 | + |
| 29 | + That's a Good-thing|copy|, because it is dangerous to *leak* memory-mapped handles. |
| 30 | + Actually *Windows* may leak them even after process who created them have died, |
| 31 | + needing a full restart(!) to clean them up (signing-out is not enough). |
| 32 | + |
| 33 | + |
| 34 | +* Stop importing *on runtime* *smmap* submodule - deleted completely submodule from sources. |
| 35 | + |
| 36 | + .. Tip:: |
| 37 | + |
| 38 | + Developer now has to specify specific dependency to *smmap* in ``requirements.txt`` file, and |
| 39 | + remember to updated it before a final release. |
| 40 | + |
| 41 | +* Run TCs also on Appveyor. |
| 42 | + |
| 43 | + |
6 | 44 | 0.6.1
|
7 |
| -***** |
| 45 | +===== |
8 | 46 |
|
9 | 47 | * Fixed possibly critical error, see https://github.com/gitpython-developers/GitPython/issues/220
|
10 | 48 |
|
11 | 49 | - However, it only seems to occur on high-entropy data and didn't reoccour after the fix
|
12 | 50 |
|
13 |
| -***** |
| 51 | + |
14 | 52 | 0.6.0
|
15 |
| -***** |
| 53 | +===== |
16 | 54 |
|
17 | 55 | * Added support got python 3.X
|
18 | 56 | * Removed all `async` dependencies and all `*_async` versions of methods with it.
|
19 | 57 |
|
20 |
| -***** |
| 58 | + |
21 | 59 | 0.5.4
|
22 |
| -***** |
| 60 | +===== |
23 | 61 | * Adjusted implementation to use the SlidingMemoryManager by default in python 2.6 for efficiency reasons. In Python 2.4, the StaticMemoryManager will be used instead.
|
24 | 62 |
|
25 |
| -***** |
| 63 | + |
26 | 64 | 0.5.3
|
27 |
| -***** |
| 65 | +===== |
28 | 66 | * Added support for smmap. SmartMMap allows resources to be managed and controlled. This brings the implementation closer to the way git handles memory maps, such that unused cached memory maps will automatically be freed once a resource limit is hit. The memory limit on 32 bit systems remains though as a sliding mmap implementation is not used for performance reasons.
|
29 | 67 |
|
30 |
| -***** |
| 68 | + |
31 | 69 | 0.5.2
|
32 |
| -***** |
| 70 | +===== |
33 | 71 | * Improved performance of the c implementation, which now uses reverse-delta-aggregation to make a memory bound operation CPU bound.
|
34 | 72 |
|
35 |
| -***** |
| 73 | + |
36 | 74 | 0.5.1
|
37 |
| -***** |
| 75 | +===== |
38 | 76 | * Restored most basic python 2.4 compatibility, such that gitdb can be imported within python 2.4, pack access cannot work though. This at least allows Super-Projects to provide their own workarounds, or use everything but pack support.
|
39 | 77 |
|
40 |
| -***** |
| 78 | + |
41 | 79 | 0.5.0
|
42 |
| -***** |
| 80 | +===== |
43 | 81 | Initial Release
|
| 82 | + |
| 83 | + |
| 84 | +.. |copy| unicode:: U+000A9 .. COPYRIGHT SIGN |
0 commit comments