aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2009-10-14Refs are now truly dynamic - this costs a little bit of (persistent command) ↵Sebastian Thiel
work, but assures refs behave as expected
2009-10-14persistent command signature changed to also return the hexsha from a ↵Sebastian Thiel
possible input ref - the objects pointed to by refs are now baked on demand - perhaps it should change to always be re-retrieved using a property as it is relatively fast - this way refs can always be cached
2009-10-14test_blob: removed many redundant tests that would fail now as the mock ↵Sebastian Thiel
cannot handle the complexity of the command backend All objects but Tree now use the persistent command to read their object information - Trees get binary data and would need their own pretty-printing or they need to parse the data themselves which is my favorite
2009-10-14Implemented git command facility to keep persistent commands for fast object ↵Sebastian Thiel
information retrieval
2009-10-14test: Added time-consuming test which could also be a benchmark in fact - ↵Sebastian Thiel
currently it cause hundreds of command invocations which is slow Fixed issue with trees not properly initialized with their default mode _set_cache_: some objects checked whether the attribute was within their __slots__ although it should have been accessed through its class
2009-10-14cmd: added option to return the process directly, allowing to read the ↵Sebastian Thiel
output directly from the output stream commit: now reads commit information directly from the output stream of the process by implementing its iterator method repo: removed log method as it was redundant ( equal to the commits method )
2009-10-13added Iterable interface to Ref typeSebastian Thiel
2009-10-13renamed find_all to list_all, changed commit to use iterable interface in ↵Sebastian Thiel
preparation for command changes
2009-10-13Added base for all iteratable objectsSebastian Thiel
2009-10-13unified name of utils module, recently it was named util and utils in ↵Sebastian Thiel
different packages
2009-10-13tree: renamed content_from_string to _from_string to make it private. ↵Sebastian Thiel
Removed tests that were testing that method
2009-10-12tree: now behaves like a list with string indexing functionality - using a ↵Sebastian Thiel
dict as cache is a problem as the tree is ordered, added blobs, trees and traverse method repo: remove blob function as blobs are created directly or iterated - primitve types should not clutter the repo interface
2009-10-12repo.active_branch now returns a Head object, not a stringSebastian Thiel
2009-10-12IndexObjects are now checking their slots to raise a proper error message in ↵Sebastian Thiel
case someone tries to access an unset path or mode - this information cannot be retrieved afterwards as IndexObject information is kept in the object that pointed at them. To find this information, one would have to search all objects which is not feasible
2009-10-12refs now take repo as first argument and derive from LazyMixin to allow them ↵Sebastian Thiel
to dynamically retrieve their objects Improved way commits are returned by refs as they now use the path to be sure they always point to the ref even if it changes - previously it would use the sha intead so it would not update after being cached on the ref object
2009-10-12renamed from_string and list_from_string to _from_string and ↵Sebastian Thiel
_list_from_string to indicate their new status as private method, adjusted all callers respectively
2009-10-12Reorganized package structure and cleaned up importsSebastian Thiel
2009-10-11Added remaining tests for new base classes and removed some methods whose ↵Sebastian Thiel
existance was doubtful or unsafe
2009-10-11Fixed remaining tests to deal with the changesSebastian Thiel
mode is now generally an int compatible to the stat module
2009-10-11commit: fixed failing commit tests as the mocked git command would always ↵Sebastian Thiel
return the same thing which does not work anymore - re-implemented it in a more dynamic manner, but in the end tests will have to be revised anyway Added slots to Diff and Stats type respectively
2009-10-11fixed issue in Ref.name implementation which would not handle components ↵Sebastian Thiel
properly
2009-10-11lazymixin system now supports per-attribute baking, it is up to the class ↵Sebastian Thiel
whether it bakes more. This also leads to more efficient use of memory as values are only cached and set when required - the baking system does not require an own tracking variable anymore, and values are only to be cached once - then python will natively find the cache without involving any additional overhead. This works by using __getattr__ instead of __get_attribute__ which would always be called
2009-10-11put Tree and Blob onto a new base class suitable to deal with IndexObjectsSebastian Thiel
2009-10-11blob tests fixed to deal with changes to the Blob typeSebastian Thiel
2009-10-11converted all spaces to tabs ( 4 spaces = 1 tab ) just to allow me and my ↵Sebastian Thiel
editor to work with the files properly. Can convert it back for releaes
2009-10-11Re-designed the tag testing - it does not use fixtures anymore but ↵Sebastian Thiel
dyamically checks the existance of tags within the repository - it basically tests the interface and checks that expected return types are actually returned
2009-10-11Intermediate commit: commit,tree and blob objects now derive from object - ↵Sebastian Thiel
test is in place which still fails on purpose. Need to integrate tags which can be objects or just a special form of a ref
2009-10-09Renamed lazy.py to base.py to have a file for base classes - lazy not yet ↵Sebastian Thiel
changed to allow proper rename tracking
2009-10-09finished cleaning usage of regular expressions - they are now precompiledSebastian Thiel
2009-10-09diff regex are now precompiled on class level, renamed a|b_blob to ↵Sebastian Thiel
a|b_blob_id as it better reflects the actual value actor regex now precompiled on class level blob regex now precompiled on class level; made blame method more readable and faster although it can still be improved by making assumptions about the blame format and by reading the git command stream directly ( which is a general issue right now )
2009-10-09deriving NoSuchPathError from OSError as it relates to it very wellSebastian Thiel
2009-10-09Blob|Tree: renamed 'name' member to 'path', updated tests and changelog as ↵Sebastian Thiel
it would make existing code incompatible in some places
2009-10-08Commit._actor method made protected as it is only used by the Commit class ↵Sebastian Thiel
and very specific so it's not suited to be part of the public API
2009-10-08Merge branch 'doc_enhancements' into fixesSebastian Thiel
2009-10-08improved repo documentationSebastian Thiel
2009-10-08Improved head and tag object documentation slightlySebastian Thiel
2009-10-08Added docs for the error moduleSebastian Thiel
2009-10-08Fixed Diff class which used Commits instead of Blobs - as Blobs contain the ↵Sebastian Thiel
path ( in the 'name' member variable ), the a|b_path members of Diff have been removed. Tests were adjusted and run Diff docs have been updated to provide a little more information on specifics cases
2009-10-08Added missing information to docstrings of commit and stats moduleSebastian Thiel
2009-10-08improved git.cmd documentationSebastian Thiel
2009-10-08Improved documentation on Actor and BlobSebastian Thiel
2009-10-08git.git.Git.__init__ takes None as default argument as the execute method ↵Sebastian Thiel
handles this correctly
2009-10-08Fixed git.blob.Blob.blame function which would return the text-per-commit as ↵Sebastian Thiel
individual characters
2009-10-07Merge commit 'JonNordby/master' into integrationSebastian Thiel
* commit 'JonNordby/master': implemented equality operations on Commit objects
2009-10-01fix some docsMartin Marcher
2009-10-01Merge commit 'refs/merge-requests/1108' of ↵Martin Marcher
git://gitorious.org/git-python/mainline into integration
2009-09-22Don't remove blank lines in commit messagesKevin McConnell
When parsing the commit messages, preserve any blank lines that are in the message. Signed-off-by: Kevin McConnell <kevin.mcconnell@gmail.com>
2009-08-05Fix parsing for files with whitespaceJeremy Kerr
Currently, the Tree object won't include any files that contain whitespace. split(c, 4) can return a 5-tuple, but we want a 4-tuple instead. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
2009-06-28implemented equality operations on Commit objectsJon Nordby
2009-01-24Lots of spring cleaning and added in Sphinx documentation.Michael Trier