[svk-devel] svk 2.0.0 is released.

Alexandru Popescu the.mindstorm.mailinglist at gmail.com
Thu Dec 28 12:22:09 EST 2006


On 12/28/06, Chia-Liang Kao <clkao at clkao.org> wrote:
> Hi all,
>
> On behalf of the SVK team, I'm pleased to announce SVK 2.0.0.  This is
> the first major release after 18 months of development since SVK 1.0
> was released in May 2005.  Although we didn't make it by Christmas, we
> hope you had a great holiday and wish you a productive year in 2007
> with new SVK.  The release is available on CPAN:
>
>  file: $CPAN/authors/id/C/CL/CLKAO/SVK-v2.0.0.tar.gz
>  size: 422489 bytes
>   md5: 37ff4acde9f9a0f987bde48b32616ab3
>
> We have been testing the release for daily development and recommend
> upgrading from 1.0, particularly because 2.0 gives more correct
> results on merges in various cases.
>
> The detailed changelogs are at the end.  Here are some of the major new
> features:
>
> * Interactive commits
>
>   You can now use "svk commit --interactive".  svk will work you
>   through each chunk of changes in each file, and let you decide
>   exactly which ones you want to commit.
>
> * Floating checkout
>
>   You can now use "svk checkout --float" to have the checkout metadata
>   stored in the top-level directory of the checkout copy.  This allows
>   you to move the checkout copy around without having to use "svk
>   checkout --relocate".
>
> * View support
>
>   svk's "views" are much like views in databases. You can now set up a
>   "view" that is actually a map to different parts of a
>   repository. You can then check out the "view" and work with it as if
>   it's just an ordinary svk checkout path.
>
>   Please note that this feature is still not recommended for
>   production use, as some commands do not work properly in view
>   checkouts.
>
> * Log filter plugins
>
>   You can now write custom log processing plugins for filtering and
>   displaying log messages; svk ships with several, and others are
>   available on CPAN.  For example, try "svk log --filter 'author
>   clkao'" or "svk log --output stat" (the latter requires
>   SVK::Log::Filter::Stats from CPAN).
>
> * Better copy and rename support across merge.
>
>   This solves the problem described in:
>
>   http://svn.haxx.se/dev/archive-2005-08/0712.shtml
>
> * Pipelined sync support
>
>   You should notice significant sync performance improvements if you
>   have both Subversion 1.4 on the client and the server.
>
> * pullyu
>
>   An utility "pullyu" is included.  It can generate svn dump from a
>   svk mirror for the original repository.
>
> * Startup time improvements
>
> * Many, many bugfixes and tiny features
>
> [Changes for 2.0.0 - 28 Dec, 2006]
>
>   Dependency
>     * Require Subversion 1.3.0
>     * Require App::CLI, UNIVERSAL::require, YAML::Syck, Path::Class,
>       Class::Accessor::Fast, Class::Data::Inheritable
>     * No longer require YAML, Clone, Regexp::Shellish, Date::Parse
>
>   Performance:
>     * Don't load Locale::* modules if the user's language is English
>     * Reduce Data::Hierarchy calls in checkout_delta
>     * SVK::Mirror now uses a separate process to pipeline sync
>     * Use POSIX::strftime for date formatting rather than Date::Parse
>       The log command now runs about 25% faster when generating long
>       logs
>
>   Merge subsystem
>     * Renames and copies can now be merged across branches
>     * svk now tries to use alleged merge result as next merge base,
>       making push more reliable and accurate
>     * Interactive tree conflict resolution
>     * Display the anchor along with THEIR and YOUR during interactive
>       conflict resolution
>     * Use svn:date to find the closest ancestor, not the revision number
>     * use only related node as base if it is one of merge source or
>       destination
>     * When picking base, the immediate merged-from source should take
>       precedence
>     * When doing add-merge on checkout, unschedule the add
>     * Only consider a g-merge to be a change when the merge source and
>       destination paths are the same
>     * Fix a leak in SVK::Editor::Merge in delete_entry
>     * Fix merging a file change or deletion which has been replaced as
>       directory
>
>   Tests:
>     * Test helpers are now in SVK::Test
>     * Don't use the user's .subversion/config during tests
>
>   General
>     * Support view spec as depotpath
>     * Support win32 and keychain auth providers if available
>     * Modularize the MIME type detection code which makes that feature
>       optional
>     * New command: svk ignore
>     * New global option --ignore
>     * svk --version now displays the Subversion bindings version number
>     * Make -r{DATE} consistent with Subversion, by making YYYY-MM-DD be
>       midnight at the beginning of that day
>     * Add the negative number revision support
>     * Make -r HEAD and -r BASE case insensitive
>     * Most svk commands now find peg revision.  -r N PATH at M will find
>       the correct path if PATH at M was copied from somewhere else after N
>     * Fix a bug in replaced copy schedule entries in XD
>
>   svk add
>     * Display " - (bin)" when adding executable files
>
>   svk annotate
>     * Documented --remoterev option
>
>   svk checkout
>     * Support floating checkout
>     * Allow svk co --detach to be applied to multiple checkouts
>     * Fix co --relocate with checkout schedule information
>     * When doing autovivification from URL, release the giant lock and
>       tell user what to do if the sync failed
>
>   svk commit
>     * Support chunk-based interactive commit
>     * Don't suck file into memory on commit
>     * Support --set-revprop
>     * Fix committing single-file checkout
>
>   svk copy
>     * Fix a bug that svk cp A B would die if A has properties
>     * Support -r N@
>     * When trying to copy across mirrors, suggests sm -IB for publish
>     * Cleanup stalled txn after died
>     * Fix "svk cp //path%2Fwith_escape //path/other", which the underlying
>       library was unescaping for us
>     * Make copy work with directory with unknown files
>
>   svk delete
>     * Support --force
>     * On failed rm, report all modified, unknown and scheduled nodes
>       instead of just the first one, and suggests --force
>     * Support rm multiple depotpath
>
>   svk describe
>     * Fix "svk desc 1234@"
>     * Report error immediate if a nonexistent revision is given
>     * Let 'svk desc 456' work even the checkout in . is only at r123
>
>   svk depot
>     * Fix error messages in depot --relocate
>
>   svk diff
>     * Fix svk diff on 0-length file on checkout
>     * Support --non-recursive (-N)
>     * Support --change (-c)
>     * Only show differences from copy source for copied nodes
>       unless -X is specified
>     * Show 'new directory' and copied from in diffs
>     * Fix svk diff depotfile checkoutfile
>     * Fix diff with copies and modified files
>     * Changed diff output for binaries to show file names using local
>
> Enjoy,
>
>
> Cheers,
> CLK


Congrats and thanks to all the team! Looking for the win32 distro :-).

./alex
--
.w( the_mindstorm )p.


More information about the svk-devel mailing list