summaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Refs are now truly dynamic - this costs a little bit of (persistent command) ↵Sebastian Thiel2009-10-141-14/+13
| | | | work, but assures refs behave as expected
* persistent command signature changed to also return the hexsha from a ↵Sebastian Thiel2009-10-143-13/+16
| | | | 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
* test_blob: removed many redundant tests that would fail now as the mock ↵Sebastian Thiel2009-10-144-13/+29
| | | | | | 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
* Implemented git command facility to keep persistent commands for fast object ↵Sebastian Thiel2009-10-141-2/+76
| | | | information retrieval
* test: Added time-consuming test which could also be a benchmark in fact - ↵Sebastian Thiel2009-10-144-5/+5
| | | | | | | 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
* cmd: added option to return the process directly, allowing to read the ↵Sebastian Thiel2009-10-143-27/+53
| | | | | | | 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 )
* added Iterable interface to Ref typeSebastian Thiel2009-10-132-13/+13
|
* renamed find_all to list_all, changed commit to use iterable interface in ↵Sebastian Thiel2009-10-134-50/+58
| | | | preparation for command changes
* Added base for all iteratable objectsSebastian Thiel2009-10-131-0/+38
|
* unified name of utils module, recently it was named util and utils in ↵Sebastian Thiel2009-10-133-2/+2
| | | | different packages
* tree: renamed content_from_string to _from_string to make it private. ↵Sebastian Thiel2009-10-131-2/+2
| | | | Removed tests that were testing that method
* tree: now behaves like a list with string indexing functionality - using a ↵Sebastian Thiel2009-10-122-46/+139
| | | | | | 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
* repo.active_branch now returns a Head object, not a stringSebastian Thiel2009-10-121-13/+25
|
* IndexObjects are now checking their slots to raise a proper error message in ↵Sebastian Thiel2009-10-121-1/+8
| | | | 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
* refs now take repo as first argument and derive from LazyMixin to allow them ↵Sebastian Thiel2009-10-124-78/+68
| | | | | | 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
* renamed from_string and list_from_string to _from_string and ↵Sebastian Thiel2009-10-127-18/+18
| | | | _list_from_string to indicate their new status as private method, adjusted all callers respectively
* Reorganized package structure and cleaned up importsSebastian Thiel2009-10-1213-409/+434
|
* Added remaining tests for new base classes and removed some methods whose ↵Sebastian Thiel2009-10-112-21/+8
| | | | existance was doubtful or unsafe
* Fixed remaining tests to deal with the changesSebastian Thiel2009-10-113-6/+28
| | | | mode is now generally an int compatible to the stat module
* commit: fixed failing commit tests as the mocked git command would always ↵Sebastian Thiel2009-10-114-12/+16
| | | | | | 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
* fixed issue in Ref.name implementation which would not handle components ↵Sebastian Thiel2009-10-112-5/+11
| | | | properly
* lazymixin system now supports per-attribute baking, it is up to the class ↵Sebastian Thiel2009-10-115-143/+113
| | | | 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
* put Tree and Blob onto a new base class suitable to deal with IndexObjectsSebastian Thiel2009-10-113-57/+62
|
* blob tests fixed to deal with changes to the Blob typeSebastian Thiel2009-10-111-3/+3
|
* converted all spaces to tabs ( 4 spaces = 1 tab ) just to allow me and my ↵Sebastian Thiel2009-10-1114-1774/+1774
| | | | editor to work with the files properly. Can convert it back for releaes
* Re-designed the tag testing - it does not use fixtures anymore but ↵Sebastian Thiel2009-10-113-143/+273
| | | | dyamically checks the existance of tags within the repository - it basically tests the interface and checks that expected return types are actually returned
* Intermediate commit: commit,tree and blob objects now derive from object - ↵Sebastian Thiel2009-10-115-40/+96
| | | | 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
* Renamed lazy.py to base.py to have a file for base classes - lazy not yet ↵Sebastian Thiel2009-10-093-2/+2
| | | | changed to allow proper rename tracking
* finished cleaning usage of regular expressions - they are now precompiledSebastian Thiel2009-10-093-9/+4
|
* diff regex are now precompiled on class level, renamed a|b_blob to ↵Sebastian Thiel2009-10-093-66/+98
| | | | | | | 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 )
* deriving NoSuchPathError from OSError as it relates to it very wellSebastian Thiel2009-10-091-1/+1
|
* Blob|Tree: renamed 'name' member to 'path', updated tests and changelog as ↵Sebastian Thiel2009-10-093-17/+17
| | | | it would make existing code incompatible in some places
* Commit._actor method made protected as it is only used by the Commit class ↵Sebastian Thiel2009-10-081-4/+4
| | | | and very specific so it's not suited to be part of the public API
* Merge branch 'doc_enhancements' into fixesSebastian Thiel2009-10-089-84/+243
|\
| * improved repo documentationSebastian Thiel2009-10-081-29/+51
| |
| * Improved head and tag object documentation slightlySebastian Thiel2009-10-083-24/+26
| |
| * Added docs for the error moduleSebastian Thiel2009-10-082-3/+16
| |
| * Added missing information to docstrings of commit and stats moduleSebastian Thiel2009-10-082-21/+88
| |
| * improved git.cmd documentationSebastian Thiel2009-10-081-8/+43
| |
| * Improved documentation on Actor and BlobSebastian Thiel2009-10-082-0/+20
| |
* | Fixed Diff class which used Commits instead of Blobs - as Blobs contain the ↵Sebastian Thiel2009-10-081-14/+41
| | | | | | | | | | | | 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
* | git.git.Git.__init__ takes None as default argument as the execute method ↵Sebastian Thiel2009-10-081-1/+1
| | | | | | | | handles this correctly
* | Fixed git.blob.Blob.blame function which would return the text-per-commit as ↵Sebastian Thiel2009-10-081-1/+1
| | | | | | | | individual characters
* | Merge commit 'JonNordby/master' into integrationSebastian Thiel2009-10-071-0/+6
|\ \ | | | | | | | | | | | | * commit 'JonNordby/master': implemented equality operations on Commit objects
| * | implemented equality operations on Commit objectsJon Nordby2009-06-281-0/+6
| |/
* | fix some docsMartin Marcher2009-10-011-0/+1
| |
* | Merge commit 'refs/merge-requests/1108' of ↵Martin Marcher2009-10-011-1/+1
|\ \ | | | | | | | | | git://gitorious.org/git-python/mainline into integration
| * | Fix parsing for files with whitespaceJeremy Kerr2009-08-051-1/+1
| |/ | | | | | | | | | | | | | | 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>
* | Don't remove blank lines in commit messagesKevin McConnell2009-09-221-1/+1
|/ | | | | | | When parsing the commit messages, preserve any blank lines that are in the message. Signed-off-by: Kevin McConnell <kevin.mcconnell@gmail.com>
* Lots of spring cleaning and added in Sphinx documentation.Michael Trier2009-01-2414-14/+14
|