JWare/AntXtras Svn4Ant Version 1.1b1, Release Mar 2007 ----------------------------------- This document contains the major Svn4Ant version change notes. For the most recent information, visit the website at http://antxtras.sourceforge.net ------------------------------------------------------------------------------ JWare/Svn4Ant v1.1b1 (Mar-11-2007) major changes since v1.0: => Rebuilt against the SVNKit 1.1.1 release. This means that svn4ant supports the newer subversion working copy format (since subversion 1.4) as well as the file:// protocol for local repositories. By default svn4ant will work according to the setting of the system property 'svnkit.upgradeWC' (or the older 'javasvn.upgradeWC') and the default SVNKit preference. If neither of these properties are set, SVNKit will automatically upgrade working copies it touches to the newer format as well as create new working copies in the newer format. You must set one of the named properties to change this behavior for all SVNKit-dependent applications including svn4ant. If you only want to affect svn4ant's function without setting the system property, you can do one of three things: 1) Set the system property from within your Ant script *before loading* the svn4ant antlib (just after loading AntXtras would be a good time). You can use the AntXtra to do this like: Doing this will only affect operations within that Ant VM from the point of this definition onwards. 2) Set the svn4ant specific "upgrade policy" property according to your preference. As with the system property you should set this property as early in your build iteration as possible. The valid property values are: "keep", "newest", and "default". (Note that "keep" will not update existing working copies, but new checkouts will be in the whatever the newest format that SVNKit supports.) 3) Force svn4ant to only deal with working copies of a specific version by setting the "acceptable WC format" property to your preference. Again, you should set this property as early as possible. The valid property values are: "pre-svn14", "svn14", and "default". => The task now uses the "svnkit.label" string as a marker instead of "javasvn.label". Example: -or- => Outgoing (repository affecting) tasks like and now pay attention to the 'defaultignores' option. This lets you control whether the local subversion client globalignore option is applied to fileset sent to server. Example: => Added a 'leaveconflicts' option to the task to allow you to leave local files that have a conflict with incoming changes untouched. => Fixed to not ping the repository if a local revision is requested from a working copy. This means you no longer have to provide a credential for a working copy only query. => Extended the Svn4Ant credential types to support multiple credentials and using any existing cached client-side credentials. A new type was added; it can hold two or more references. has been extended to support a new "realm" parameter that supercedes the linked URL in determining if its credentials should be presented to the server. The extended credential types allow you to supply SVNKit with credentials for different repositories for operations that might require it (like exports, updates, branches, etc.) The in particular works on Windows where SVNKit cannot read the cached wincrypted credentials stored by other Subversion clients (like TortoiseSVN and the Subclipse plug-in). Example: http://apps.lab/repos/rw svn4ant sshh... http://apps.lab/maven http://docs.lab/licenses ... => Fixed bug in condition and selector: the 'externals' option is now properly interpreted. Now by default [compatibility alert] the condition returns *false* if the named directory is an svn:externals linked directory even if it is also a working copy root in it's own right. This interpretation remains consistent with the original intent of that attribute's default "off" setting. The filter selector now supports its own 'externals' option. => Added two SCM-related components: and . The is an extension of the task and is an extension of the task. Both help you to pin and/or move 'svn:external' references within a project you are copying or moving. In particular, is the svn4ant version of the 'svncopy.pl' script that comes as part of the 'contrib' scripts in the standard subversion distribution. We've documented the most common use cases for these tasks in a separate document: 'Svn4Ant_Branching_UseCases.txt'. => Added convenience presetdefs for the range of property management actions on the task. Please see the Svn4Ant User Guide or the client antlib.xml file for the complete list. => Fixed the task to differentiate 'strict' and 'strict'+'verbose' (as the standard svn command does) for the 'get', 'list', 'revget', and 'revlist' actions. Example: display the names of all repository unversioned properties: Example: display the names and values of all repository unversioned properties: => Fixed bug in when url specified indirectly through credential. The credential url was not used to determine revision. SSMC