- Commit objects now carry the ‘encoding’ information of their message. It wasn’t parsed previously, and defaults to UTF-8
- Commit.create_from_tree now uses a pure-python implementation, mimicing git-commit-tree
Corrected problems with creating bare repositories.
Repo.tree no longer accepts a path argument. Use:
>>> dict(k, o for k, o in tree.items() if k in paths)
Made daemon export a property of Repo. Now you can do this:
>>> exported = repo.daemon_export
>>> repo.daemon_export = True
Allows modifying the project description. Do this:
>>> repo.description = "Foo Bar"
>>> repo.description
'Foo Bar'
Added a read-only property Repo.is_dirty which reflects the status of the working directory.
Added a read-only Repo.active_branch property which returns the name of the currently active branch.
Switched to using a dictionary for Tree contents since you will usually want to access them by name and order is unimportant.
Implemented a dictionary protocol for Tree objects. The following:
child = tree.contents[‘grit’]
becomes:
child = tree[‘grit’]
Made Tree.content_from_string a static method.
Fixed up some urls because I’m a moron
initial release