diff options
Diffstat (limited to 'doc/source/whatsnew.rst')
-rw-r--r-- | doc/source/whatsnew.rst | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/doc/source/whatsnew.rst b/doc/source/whatsnew.rst index f71d88e6..e0d39b09 100644 --- a/doc/source/whatsnew.rst +++ b/doc/source/whatsnew.rst @@ -23,37 +23,3 @@ Reduced Memory Footprint Objects, such as commits, tags, trees and blobs now use 20 byte sha1 signatures internally, reducing their memory demands by 20 bytes per object, allowing you to keep more objects in memory at the same time. The internal caches of tree objects were improved to use less memory as well. - -################## -Upgrading from 0.2 -################## -GitPython 0.2 essentially behaves like GitPython 0.3 with a Repository using the ``GitCmdObjectDB`` instead of the ``GitDB`` as object database backend. Additionally it can be used more conveniently through implicit conversions and provides a feature set strikingly similar to 0.3. - -************************** -Why you should not upgrade -************************** -GitPython 0.3 in most cases will not run faster than GitPython 0.2, the opposite might be the case at it uses the pure python implementation by default. -There have been a few renames which will need additional adjustments in your code. - -Generally, if you only read git repositories, version 0.2 is sufficient and very well performing. - -********************** -Why you should upgrade -********************** -GitPython 0.2 has reached its end of line, and it is unlikely to receive more than contributed patches. 0.3 is the main development branch which will lead into the future. - -GitPython 0.3 provides memory usage optimization and is very flexible in the way it uses to access the object database. With minimal effort, 0.3 will be running as fast as 0.2. It marks the first step of more versions to come, and will improve over time. - -GitPython 0.3 is especially suitable for everyone who needs not only read, but also write access to a git repository. It is optimized to keep the memory consumption as low as possible, especially when handling large data sets. GitPython 0.3 operates on streams, not on possibly huge chunks of data. - - -************** -Guided Upgrade -************** -This guide should help to make the upgrade as painless as possible, hence it points out where to start, and what to look out for. - -* Have a look at https://github.com/gitpython-developers/GitPython/blob/0.3/doc/source/changes.rst -* Start applying the renames, generally the ``utils`` modules are now called ``util``, ``errors`` is called ``exc``. -* Search for occurrences of the ``sha`` property of object instances. A similar value can be obtained through the new ``hexsha`` property. The native sha1 value is the ``binsha`` though. -* Search for code which instantiates objects directly. Their initializer now requires a 20 byte binary Sha1, rev-specs cannot be used anymore. For a similar effect, either convert your hexadecimal shas to binary shas beforehand ( ``binascii.unhexlify`` for instance ), or use higher level functions such as ``Object.new``, ``Repo.commit`` or ``Repo.tree``. The latter ones takes rev-specs and hexadecimal sha1 hashes. - |