summaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* repo.is_dirty: fixed incorrect check of a dirty working tree, previously it ↵Sebastian Thiel2009-10-211-1/+3
| | | | would compare HEAD against the working tree, not the index which was intended
* touch method improved to open for appending which would not clear the file ↵Sebastian Thiel2009-10-211-1/+1
| | | | and be like an actual touch
* repo.alternates test cheked for correctness and bugfixed - totally mocked ↵Sebastian Thiel2009-10-201-6/+10
| | | | tests bare the risk that things do not work properly outside of the sandbox.
* Added slots to Repo type to be sure we do not accidentally set values on it, ↵Sebastian Thiel2009-10-201-0/+1
| | | | | | and to be more efficient of course ;) TODO: Added info about possible config improvement
* Fixed bare repository handling - bare is now a property to prevent writing itSebastian Thiel2009-10-202-9/+35
|
* Moved specialized methods like dashify, touch and is_git_dir to module to ↵Sebastian Thiel2009-10-204-23/+20
| | | | | | the respective modules that use them fixed repo.daemon_export which did not work anymore due to incorrect touch implementation and wrong property names
* Improved is_dirty including testSebastian Thiel2009-10-201-10/+20
|
* Implemneted IterableLists for refs, commits and remote objects including ↵Sebastian Thiel2009-10-195-8/+47
| | | | simple tests
* commit.count: is an instance method nowSebastian Thiel2009-10-194-29/+43
| | | | | repo: added head , tag and iter_trees methods for completeness changes: headlines now sorted chronologically
* repo.remote method addedSebastian Thiel2009-10-191-0/+14
| | | | CHANGES updated to carry information about remotes and config
* remote: added tests for creation and removal, finishing the remote interfaceSebastian Thiel2009-10-192-1/+5
|
* config: fixed serious issues that would cause it to see initial tabs as ↵Sebastian Thiel2009-10-191-0/+73
| | | | continuation lines - this leads to very incorrect results when parsing git config files. Now the complete reading is overridden to make it work as there was no other way
* Added configuration access including tests to remoteSebastian Thiel2009-10-193-20/+60
| | | | | config: fixed issue that would cause it to abort reading if the file did not exist - this is valid now Test does not work as the configuration parsing does not work as expected - this must be fixed first
* Added remote module and test cases - about to implement remote option handlingSebastian Thiel2009-10-193-0/+217
|
* added initial frame for remote handling- remotes are somewhat related to ↵Sebastian Thiel2009-10-191-28/+18
| | | | either parsing the command output or to reading the repo configuration which would be faster
* added additional testing for the configuration, concurrent access and config ↵Sebastian Thiel2009-10-191-6/+18
| | | | reading, all tests work
* implemented config class as far as necessary, one check is still failingSebastian Thiel2009-10-192-20/+1635
| | | | Added odict module to get an OrderedDict to be used in the config parser, assuring the order of sections and options does not change
* Added frame for configuration reader involving a meta class, decorators and ↵Sebastian Thiel2009-10-183-1/+153
| | | | tests - most of which still has to be filled out
* Improved tagobject message handling by not assuming an empty fourth line anymoreSebastian Thiel2009-10-181-2/+7
|
* diff method now checks for git-diff errrs that can easily occour if the ↵Sebastian Thiel2009-10-181-5/+16
| | | | repository is bare and if there is no index or second tree specified
* DiffIndex implemented including testSebastian Thiel2009-10-181-9/+56
|
* diff: implemented raw diff parsing which appears to be able to handle ↵Sebastian Thiel2009-10-181-9/+53
| | | | possible input types, DiffIndex still requires implementation though
* resolved cyclic inclusion issue by moving the Diffable interface into the ↵Sebastian Thiel2009-10-185-78/+76
| | | | diff module, which probably is the right thing to do anyway
* repo: fixed untracked files function which used git-commit before, it can ↵Sebastian Thiel2009-10-181-1/+1
| | | | open vim to get a message though which makes the program appear to freeze - using git-status now
* implemented diff tests, but will have to move the diff module as it needs to ↵Sebastian Thiel2009-10-181-2/+5
| | | | create objects, whose import would create a dependency cycle
* Removed a few diff-related test cases that fail now as the respective method ↵Sebastian Thiel2009-10-171-0/+1
| | | | is missing - these tests have to be redone in test-diff module accordingly
* added Diffable interface to objects.base, its used by Commit and Tree objects.Sebastian Thiel2009-10-164-62/+92
| | | | Diff class has been prepared to process raw input, but its not yet more than a frame
* Fixed object bug that would cause object ids not to be resolved to sha's as ↵Sebastian Thiel2009-10-163-41/+31
| | | | | | this was assumed - now there is a test for it as well repo: removed diff and commit_diff methods, added 'head' property returning the current head as Reference object
* repo.untracked_files added including testSebastian Thiel2009-10-161-0/+31
|
* Improved archive function by allowing it to directly write to an output ↵Sebastian Thiel2009-10-152-55/+48
| | | | | | stream - previously it would cache everything to memory and try to provide zipping functionality itself gitcmd: allows the output stream to be set explicitly which is mainly useful for archiving operations
* repo: made init and clone methods less specific, previously they wanted to ↵Sebastian Thiel2009-10-151-15/+15
| | | | do it 'barely' only. New method names closely follow the default git command names
* repo.commit_delta_base: removedSebastian Thiel2009-10-152-89/+78
|
* Object can now create objects of the proper type in case one attempts to ↵Sebastian Thiel2009-10-154-7/+19
| | | | create an object directly - this feature is used in several places now, allowing for additional type-checking
* repo: removed commits_between but added a note about how this can be ↵Sebastian Thiel2009-10-151-218/+206
| | | | achieved using the iter_commits method; reorganized methods within the type as a start for more interface changes
* Added Commit.iter_parents to iterate all parentsSebastian Thiel2009-10-153-79/+89
| | | | | Renamed Commit.commits to iter_commits repo: assured proper use of the terms revision ( rev ) and reference ( ref )
* repo: removed a few methods because of redundancy or because it will be ↵Sebastian Thiel2009-10-153-65/+51
| | | | obsolete once the interface overhaul is finished. This commit is just intermediate
* All times are not stored as time_struct, but as simple int to consume less ↵Sebastian Thiel2009-10-154-33/+40
| | | | | | memory time imports cleaned up and mostly removed as they were not required (anymore)
* test_performance: module containing benchmarks to get an idea of the ↵Sebastian Thiel2009-10-151-3/+6
| | | | | | | achieved throughput repo.commits: max_count is None by default moved benchmark-like test from test_commit to test_performance
* tree: now reads tress directly by parsing the binary data, allowing it to ↵Sebastian Thiel2009-10-143-39/+86
| | | | safe possibly hundreds of command calls
* 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