Jump to: navigation, search

Difference between revisions of "Subversive New and Noteworthy"

m (Usability improvements: typo)
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Subversive New and Noteworthy items
+
'''Also see the New & Noteworthy for:''' [[Subversive New and Noteworthy for Galileo|Galileo]], [[Subversive New and Noteworthy for Helios|Helios]], [[Subversive New and Noteworthy for Indigo|Indigo]]
  
== M4 [29 December 2008] ==
+
== Introduction  ==
  
=== Add synchronize pane to commit panel ===
+
Beside concentrating on plug-in stability, in Subversive for Juno we've introduced a set of important features. There are features that should benefit those who uses SVN in their everyday work and those who uses Subversive plug-in in their products.  
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=245874 245874].
+
While committing resources, resources to commit can be shown in the similar way as in Synchronize view. There's a preference which allows to show resources either in old or new style.
+
  
[[Image:Commit-pane-pref.png]]
+
== SVN 1.7 support  ==
  
Here's how commit pane looks like:
+
Bugs [https://bugs.eclipse.org/bugs/show_bug.cgi?id=361257 361257], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=365627 365627], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=374582 374582] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=372781 372781]. Beside major API changes SVN 1.7 introduces a new working copy format which has no backward compatibility with the previous ones. So, our main goal was to minimize impact of new SVN API support on dependent tools and provide stable and easy ways to convert existing working copies into the SVN 1.7 format.
  
[[Image:Commit-pane.png]]
+
== Latest SVN client libraries included  ==
  
=== Implement/use Team API's introduced in Eclipse 3.2 ===
+
Bugs [https://bugs.eclipse.org/bugs/show_bug.cgi?id=374581 374581], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=375168 375168] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=380075 380075]. There were many issues fixed recently in the SVN support libraries and so, it's reasonable to update Subversive SVN Connectors with the most recent ones.  
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=211251 211251].
+
Starting from 3.2 Eclipse provides support for Logical Model Integration. The logical model integration support defines API that allows logical models to participate in team operations.
+
There was done a lot of work to support new Team API in Subversive, e.g. rework synchronize and merge subscribers and participants, change set changes, actions were re-worked to support logical models etc. There's a preference which allows to switch between old model and new model with logical model support.
+
  
[[Image:Logical-models-pref.png]]
+
== SVN client activity tracking API  ==
  
Here is how new Synchronize view looks like, as you can see there's an ability to switch between different logical models, e.g. in 'Java Workspace' model synchronize view shows java elements such as packages.
+
Bugs [https://bugs.eclipse.org/bugs/show_bug.cgi?id=356023 356023] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=356024 356024]. There were many requests about the ways to intercept a different SVN activities, like committing, updating, registering repository locations etc. After carefuly checking all the requests we've introduced SVN client calls interception API and repository location listener API. When used together they allows to track not just every SVN client function call but even modify its parameters when it's needed. We're really thankful to those who spent their time discussing those API changes together with us: Jc Temp, Eike Stepper, Adrian.
  
[[Image:Logical-models.png]]
+
== UI commit extensions improvements  ==
  
== M6 [18 March 2009] ==
+
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=356025 356025]. IModifiableCommentDialogPanel interface was introduced. It allows to override an initial commit comment prior to opening the commit dialog (special thanks to Jc Temp).
  
=== Add a pre-commit check for files with errors and warnings ===
+
== Smartcard login on Windows (MSCAPI Support)  ==
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=263442 263442].
+
If the resource to commit contains validation errors, e.g. java file has compilation errors, there's a warning message in the top of commit dialog which says about it:
+
  
[[Image:Pre-commit-check.png]]
+
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=351510 351510]. This feature allows to login with smartcards for the SVNKit connector version 1.3.3 and later and was contributed by Markus Oberlassnig (ilogs information logistics GmbH).
  
=== Add ability to create SVN repository ===
+
== New decoration mode for branches and tags  ==
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=263951 263951].
+
This facility provides a probability to create a new repository on local drive. There are two kinds of file system type: File System and Berkley DB which the user can select. There is option to create a repository location for just created repository which uses file:/// scheme (direct repository access). Accessible from 'SVN Repository View' (click on 'New Repository' button).
+
  
Note:
+
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=359650 359650]. There are cases when you use a multi-project layout and your branches and/or tags structure are really complex. In this case it would be better to use new [fullpath] decoration mode, which will display the path starting from branches or tags root and up to the project, excluding project name itself.
''The Create Repository operation is available only for JavaHL SVN Connector. If the user selects SVN Kit connector the action is not enabled.''
+
  
[[Image:Create-repository.png]]
+
== Usability improvements  ==
  
=== Configuration alternative of a diff viewer for MS-WORD documents ===
+
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=356042 356042]. When creating a patch and selecting save "In workspace", the default location of the selection dialog now is the project itself.
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=260236 260236].
+
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=353875 353875]. Now "Replace with Revision..." action allows replace to finish successfully even if there are locked files in case if there are no changes to them (special thanks to Neels Hofmeyr).
User can configure external diff/merge programs used for comparing different revisions of files. User can associate an external diff program to specific file extension or mime type. For example, in order to specify file extension for doc files use .doc. Example of mime-type usage: text/plain. Also user can specify external diff program which will be applied for all files by using an asterisk(*) in extension/mime-type field.
+
Bugs [https://bugs.eclipse.org/bugs/show_bug.cgi?id=364407 364407] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=370072 370072]. Now Subversive allows to solve both: property and content conflicts with the same "Edit Conflicts" action and all the actions related to conflicts handling now are availble in the Team menu too.
 
+
For each file extension/mime-type user can specify following parameters: diff program path, diff program arguments, merge program path, merge program parameters. Diff program settings are applied for compare actions. Merge program settings are applied for Edit Conflicts action. The external program will need to obtain the filenames from the command line, along with any other command line options.  
+
Subversive is supplied with default configuration for file extension associations, default configuration includes paths to script files which allow to run external programs. It includes configuration for following file extensions: doc, docx, xls, xlsx, ppt, pptx, odt, ods.
+
 
+
'''Tip:'''
+
''Default diff handlers provided by Subversive are loaded and can be used only on Microsoft Windows. For other operating systems users can configure their own handlers.''
+
 
+
This is how 'Diff Viewer' properties page looks like:
+
 
+
[[Image:Diff-viewer.png]]
+
 
+
== M7 [05 May 2009] ==
+
 
+
=== Support for files in svn:externals ===
+
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=269155 269155].
+
Since 1.6 version SVN supports for files in svn:externals. If the URL in a svn:externals description refers to a file, it will be added into the working copy as a versioned item.
+
Here's a screenshot which shows file externals in SVN Repositories view:
+
 
+
[[Image:File-externals.png]]
+
 
+
=== Detection of tree conflicts ===
+
Bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=269156 269156].
+
Since 1.6 version SVN recognizes a new kind of conflict, known as a "tree conflict". Such conflicts manifest at the level of directory structure, rather than file content.
+
Subversive detects tree conflicts during update/switch/merge operations and provides additional information about the conflict with the ability to edit it.
+
Resources with tree conflicts have the same decoration as the resources with conflicts at the level of file content. You can edit tree conflicts by right-clicking conflicted resource and calling 'Edit Tree Conflicts' action.
+
This is how 'Edit Tree Conflict' dialog looks like:
+
 
+
[[Image:Tree-conflict.png]]
+
  
 
[[Category:Subversive]]
 
[[Category:Subversive]]

Revision as of 01:05, 19 July 2012

Also see the New & Noteworthy for: Galileo, Helios, Indigo

Introduction

Beside concentrating on plug-in stability, in Subversive for Juno we've introduced a set of important features. There are features that should benefit those who uses SVN in their everyday work and those who uses Subversive plug-in in their products.

SVN 1.7 support

Bugs 361257, 365627, 374582 and 372781. Beside major API changes SVN 1.7 introduces a new working copy format which has no backward compatibility with the previous ones. So, our main goal was to minimize impact of new SVN API support on dependent tools and provide stable and easy ways to convert existing working copies into the SVN 1.7 format.

Latest SVN client libraries included

Bugs 374581, 375168 and 380075. There were many issues fixed recently in the SVN support libraries and so, it's reasonable to update Subversive SVN Connectors with the most recent ones.

SVN client activity tracking API

Bugs 356023 and 356024. There were many requests about the ways to intercept a different SVN activities, like committing, updating, registering repository locations etc. After carefuly checking all the requests we've introduced SVN client calls interception API and repository location listener API. When used together they allows to track not just every SVN client function call but even modify its parameters when it's needed. We're really thankful to those who spent their time discussing those API changes together with us: Jc Temp, Eike Stepper, Adrian.

UI commit extensions improvements

Bug 356025. IModifiableCommentDialogPanel interface was introduced. It allows to override an initial commit comment prior to opening the commit dialog (special thanks to Jc Temp).

Smartcard login on Windows (MSCAPI Support)

Bug 351510. This feature allows to login with smartcards for the SVNKit connector version 1.3.3 and later and was contributed by Markus Oberlassnig (ilogs information logistics GmbH).

New decoration mode for branches and tags

Bug 359650. There are cases when you use a multi-project layout and your branches and/or tags structure are really complex. In this case it would be better to use new [fullpath] decoration mode, which will display the path starting from branches or tags root and up to the project, excluding project name itself.

Usability improvements

Bug 356042. When creating a patch and selecting save "In workspace", the default location of the selection dialog now is the project itself. Bug 353875. Now "Replace with Revision..." action allows replace to finish successfully even if there are locked files in case if there are no changes to them (special thanks to Neels Hofmeyr). Bugs 364407 and 370072. Now Subversive allows to solve both: property and content conflicts with the same "Edit Conflicts" action and all the actions related to conflicts handling now are availble in the Team menu too.