Changes for version 0.3.0_1
- New Features:
- Repository has a root_project to represent the idea that in some VCSes, the entire repository can be looked at as one Project.
- Directory has contents_history_recursive, which gives a History for the contents of that directory and the contents of all its directories, etc.
- Optimizations:
- Calling Bzr::Project::history should now be much faster, particularly on large projects.
- Bug Fixes:
- Make the bzr tests work with modern versions of bzr. (Fix the parsing of the --version output.)
- History::union was sorting by revision number instead of by time.
Changes for version 0.2.0_2
- New Features:
- Added Project::head_revision, which returns the revision identifier that represents "head" in the Project.
- You can now specify "revision" to get_file to get a particular revision of that file.
- API Changes:
- Renamed get_commit's "as_of" to "at_or_before", which is more correct English-wise. (Thanks to LTJake on IRC.)
- Optimizations:
- Hg's File::history should now be much faster, as gets the information directly from Hg instead of building it from the Project's History.
- Bug Fixes:
- Sometimes Cvs's File::content was including CVS's header at the end of the content.
- Specifying a value greater than 1 for "debug" in VCI->connect was throwing an error.
- Cvs wasn't dying correctly when a command failed.
Changes for version 0.2.0_1
- New Features:
- Added File::content, which allows you to get the actual raw content of a file at its particular revision.
- Added File::content_size, which allows you to get the size of the file in bytes at its particular revision.
- In addition to specifying a revision ID, you can now specify "time" and "as_of" to Project::get_commit.
- API Changes:
- Project::get_commit now takes named parameters instead of a single positional parameter.
- Project::get_history_by_time no longer has an "at" argument. (Use get_commit(time => 'blah') instead.)
- Svn's FileOrDirectory is now *both* a VCI::Abstract::File and a VCI::Abstract::Directory, instead of being neither.
- Bug Fixes:
- File::is_executable wasn't correctly specified as being Bool.
- Svn should now correctly delete temp files created by Commit::as_diff after build_as_diff returns.
Modules
A generic interface for interacting with various version-control systems.
Represents a single atomic commit to the repository.
Anything that can be committed to a repository.
An object representing a "diff" or "patch" from a Version-Control System
The changes made to a particular file, in a Diff.
A directory in the repository.
A single file in the repository.
Anything that can contain a File or Directory.
The history of a Project, File, Directory, etc.
A particular project in the Repository
A repository where version-controlled items are kept.
Types and Utility Functions used by VCI
The Bazaar implementation of VCI
The CVS implementation of VCI
The Git Implementation of VCI
The Mercurial (aka Hg) implementation of VCI
The Subversion implementation of VCI
Provides
in lib/VCI/VCS/Bzr/Commit.pm
in lib/VCI/VCS/Bzr/Committable.pm
in lib/VCI/VCS/Bzr/Directory.pm
in lib/VCI/VCS/Bzr/File.pm
in lib/VCI/VCS/Bzr/History.pm
in lib/VCI/VCS/Bzr/Project.pm
in lib/VCI/VCS/Bzr/Repository.pm
in lib/VCI/VCS/Cvs/Commit.pm
in lib/VCI/VCS/Cvs/Diff.pm
in lib/VCI/VCS/Cvs/Directory.pm
in lib/VCI/VCS/Cvs/File.pm
in lib/VCI/VCS/Cvs/History.pm
in lib/VCI/VCS/Cvs/Project.pm
in lib/VCI/VCS/Cvs/Repository.pm
in lib/VCI/VCS/Git/Commit.pm
in lib/VCI/VCS/Git/Committable.pm
in lib/VCI/VCS/Git/Diff.pm
in lib/VCI/VCS/Git/Directory.pm
in lib/VCI/VCS/Git/File.pm
in lib/VCI/VCS/Git/History.pm
in lib/VCI/VCS/Git/Project.pm
in lib/VCI/VCS/Git/Repository.pm
in lib/VCI/VCS/Hg/Commit.pm
in lib/VCI/VCS/Hg/Committable.pm
in lib/VCI/VCS/Hg/Diff.pm
in lib/VCI/VCS/Hg/Directory.pm
in lib/VCI/VCS/Hg/File.pm
in lib/VCI/VCS/Hg/History.pm
in lib/VCI/VCS/Hg/Project.pm
in lib/VCI/VCS/Hg/Repository.pm
in lib/VCI/VCS/Svn/Commit.pm
in lib/VCI/VCS/Svn/Committable.pm
in lib/VCI/VCS/Svn/Directory.pm
in lib/VCI/VCS/Svn/File.pm
in lib/VCI/VCS/Svn/FileOrDirectory.pm
in lib/VCI/VCS/Svn/History.pm
in lib/VCI/VCS/Svn/Project.pm
in lib/VCI/VCS/Svn/Repository.pm