summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Added SymbolicReference and HEAD type to better represent these special ↵Sebastian Thiel2009-10-229-154/+239
| | | | | | | | types of references and allow special handling Head.reset now is an instance method of HEAD type Concatenated all reference specific tests into test_refs started to fix tests breaking now because of changed interface
* Merge branch 'index' into improvementsSebastian Thiel2009-10-2210-99/+457
|\ | | | | | | | | | | | | | | | | * index: Index: Is now diffable and appears to properly implement diffing against other items as well as the working tree default index writing now writes the index of the current repository in a fashion comparable to the native implementation Added test for ConcurrentWriteOperation utils: Added LockFile including test Index now behaves more like the default index if no explicit stream is given. It will lazily read its data on first access
| * Index: Is now diffable and appears to properly implement diffing against ↵Sebastian Thiel2009-10-227-21/+152
| | | | | | | | | | | | | | other items as well as the working tree Diff.Diffable: added callback allowing superclasses to preprocess diff arguments Diff.Diff: added eq, ne and hash methods, string methods would be nice
| * default index writing now writes the index of the current repository in a ↵Sebastian Thiel2009-10-223-9/+32
| | | | | | | | fashion comparable to the native implementation
| * Added test for ConcurrentWriteOperationSebastian Thiel2009-10-222-2/+54
| |
| * utils: Added LockFile including testSebastian Thiel2009-10-223-69/+205
| | | | | | | | | | GitConfigFile is now derived from LockFile using its capabilities Implemented ConcurrentWriteOperation, test is yet to be done
| * Index now behaves more like the default index if no explicit stream is ↵Sebastian Thiel2009-10-222-9/+25
|/ | | | given. It will lazily read its data on first access
* Added reset method to Head - its a class method due to the very general ↵Sebastian Thiel2009-10-224-14/+67
| | | | nature of the command. Yet I don't really like the way you have to call it as repo has to be ṕassed as first arg
* Merge branch 'testsystem' into improvementsSebastian Thiel2009-10-2216-135/+246
|\ | | | | | | | | | | | | | | * testsystem: Adjusted all remaining test suites to use the new TestBase class where appropriate Fixed decorator issue that would cause a function to be passed even though there is a default argument. This feels inconsistent as the 'argument passer' wrapper function can be called with a function or a string as first argument depending on whether the client code was explicitly passing an argument or not. That ... sucks. Now test for that case specifically and fail with a proper assertion error. I don't like it, but what can I do ... . Implemented decorators, tests pass at least Added frame for new Repo handling and some neat decorators, including tests that test whether the testing framework does what it should
| * Adjusted all remaining test suites to use the new TestBase class where ↵Sebastian Thiel2009-10-2211-112/+88
| | | | | | | | appropriate
| * Fixed decorator issue that would cause a function to be passed even though ↵Sebastian Thiel2009-10-223-18/+22
| | | | | | | | | | | | there is a default argument. This feels inconsistent as the 'argument passer' wrapper function can be called with a function or a string as first argument depending on whether the client code was explicitly passing an argument or not. That ... sucks. Now test for that case specifically and fail with a proper assertion error. I don't like it, but what can I do ... . Remote tests adjusted to use rw repositories instead. More tests to follow, and many api methods are to be implemented now these things can be tested properly.
| * Implemented decorators, tests pass at leastSebastian Thiel2009-10-222-27/+45
| |
| * Added frame for new Repo handling and some neat decorators, including tests ↵Sebastian Thiel2009-10-224-9/+122
|/ | | | that test whether the testing framework does what it should
* Updated CHANGES file to indicate addition of index classSebastian Thiel2009-10-221-0/+5
|
* git cmd fix: After removing the with_raw_output flag, I actually did the ↵Sebastian Thiel2009-10-221-2/+2
| | | | wrong thing by _not_ stripping the final newline at the end of all git commands we use. This is the default now which cannot be changed - perhaps its wrong to remove it, but in way you'd always want the final newline stripped unless you get data directly, but there are better ways to do that ( blob.data, blob.data_stream, blob.stream_data )
* Merge branch 'index' into improvementsSebastian Thiel2009-10-2210-22/+703
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * index: Removed index test marker for custom commits as this boils down to a good way to add files to the index/remove them and make commits which are possibly customized with custom parents index writing now creates a sha on the content making it possible to write valid indices after manually removing or altering entriesgst Implemented merge/resolve handling , but realized that index writing is not yet working properly as it is sha1 checked as well. This explains what my 20 byte 'extension_data' actually is ;) index: Added write_tree method including test index.iter_blobs method added including tests ( which have been improved generally for more coverage ) tree.traverse: Added prune functionality - previously the predciate did both, pruning and preventing to return items Improved testing of index against trees, tests succeed with next commit Initial version of merge including tests for one-way, two-way and tree-way merge index writing added including simple test, improved docs of IndexEntry improved IndexEntry type and added test for parsing of the stage Improved tuple access of EntryIndex class including test, stage and type access still needs to be decoded though Added initial version of the index reading from file - IndexEntry interface is to be improved though, writing needs to be implemented as well Added frame for index implementation and testing
| * Removed index test marker for custom commits as this boils down to a good ↵Sebastian Thiel2009-10-221-4/+2
| | | | | | | | way to add files to the index/remove them and make commits which are possibly customized with custom parents
| * index writing now creates a sha on the content making it possible to write ↵Sebastian Thiel2009-10-223-4/+79
| | | | | | | | valid indices after manually removing or altering entriesgst
| * Implemented merge/resolve handling , but realized that index writing is not ↵Sebastian Thiel2009-10-222-9/+84
| | | | | | | | yet working properly as it is sha1 checked as well. This explains what my 20 byte 'extension_data' actually is ;)
| * index: Added write_tree method including testSebastian Thiel2009-10-213-18/+55
| |
| * index.iter_blobs method added including tests ( which have been improved ↵Sebastian Thiel2009-10-212-12/+71
| | | | | | | | generally for more coverage )
| * tree.traverse: Added prune functionality - previously the predciate did ↵Sebastian Thiel2009-10-213-9/+22
| | | | | | | | both, pruning and preventing to return items
| * Improved testing of index against trees, tests succeed with next commitSebastian Thiel2009-10-213-5/+20
| |
| * Initial version of merge including tests for one-way, two-way and tree-way mergeSebastian Thiel2009-10-213-5/+101
| |
| * index writing added including simple test, improved docs of IndexEntrySebastian Thiel2009-10-212-27/+135
| |
| * improved IndexEntry type and added test for parsing of the stageSebastian Thiel2009-10-203-9/+13
| |
| * Improved tuple access of EntryIndex class including test, stage and type ↵Sebastian Thiel2009-10-203-5/+70
| | | | | | | | access still needs to be decoded though
| * Added initial version of the index reading from file - IndexEntry interface ↵Sebastian Thiel2009-10-203-2/+102
| | | | | | | | is to be improved though, writing needs to be implemented as well
| * Added frame for index implementation and testingSebastian Thiel2009-10-204-1/+37
| |
* | Stream_data streams data to a given output stream most efficiently with a ↵Sebastian Thiel2009-10-223-3/+23
| | | | | | | | | | | | | | | | | | | | | | low memory footprint. Still, the git-cat-file command keeps all data in an interal buffer instead of streaming it directly. This is a git design issue though, and will be hard to address without some proper git-hacking. Conflicts: lib/git/cmd.py
* | Git.cmd: removed with_raw_output optionSebastian Thiel2009-10-224-35/+40
| | | | | | | | | | repo.archive: made it work with new way of custom output streams added test for repo.archive which was missing for some reason
* | added Object.data_stream property allowing to stream object data ↵Sebastian Thiel2009-10-225-0/+48
| | | | | | | | directly.Considering the implementation of the git commnd which temporarily keeps it in a cache, it doesnt make a huge diffence as the data is kept in memory while streaming. Only good thing is that it is in a different process so python will never see it if done properly
* | remote: Added fetch, pull, push methods to the interface to make these ↵Sebastian Thiel2009-10-215-5/+82
| | | | | | | | operations more convenient, like repo.remotes.origin.fetch
* | remote.refs now returns an IterableList allowing easier access to the ↵Sebastian Thiel2009-10-211-2/+2
| | | | | | | | remotes, and conforming it to the way repo returns its references as well
* | diff: added test to be sure index-vs-working copy diffs are solved properlySebastian Thiel2009-10-211-0/+3
| |
* | repo.is_dirty: fixed incorrect check of a dirty working tree, previously it ↵Sebastian Thiel2009-10-212-1/+10
| | | | | | | | 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-203-16/+24
| | | | 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-202-0/+8
| | | | | | 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-206-19/+50
|
* Moved specialized methods like dashify, touch and is_git_dir to module to ↵Sebastian Thiel2009-10-206-32/+27
| | | | | | 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-204-24/+32
|
* Implemneted IterableLists for refs, commits and remote objects including ↵Sebastian Thiel2009-10-1911-10/+56
| | | | simple tests
* Added TODO file to keep track of tasks and in case someone wants to help ↵Sebastian Thiel2009-10-191-0/+57
| | | | here and there ;)
* commit.count: is an instance method nowSebastian Thiel2009-10-197-65/+103
| | | | | repo: added head , tag and iter_trees methods for completeness changes: headlines now sorted chronologically
* repo.remote method addedSebastian Thiel2009-10-193-0/+28
| | | | CHANGES updated to carry information about remotes and config
* Merge branch 'remotes' into improvementsSebastian Thiel2009-10-197-31/+446
|\ | | | | | | | | | | | | | | | | | | * remotes: remote: added tests for creation and removal, finishing the remote interface remote: base tests succeed now config: fixed serious issues that would cause it to see initial tabs as 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 remote Added remote module and test cases - about to implement remote option handling added initial frame for remote handling- remotes are somewhat related to either parsing the command output or to reading the repo configuration which would be faster
| * remote: added tests for creation and removal, finishing the remote interfaceSebastian Thiel2009-10-193-3/+22
| |
| * remote: base tests succeed nowSebastian Thiel2009-10-191-1/+6
| |
| * config: fixed serious issues that would cause it to see initial tabs as ↵Sebastian Thiel2009-10-192-0/+75
| | | | | | | | 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