Eclipse Subversive SVN Team Provider 2.0

2.0

Description

Subversive is an Eclipse Team Provider for Subversion (SVN). Subversive is Technology sub-project. Release 2.0 will be available as a part of Luna simultaneous release. The goal of this release is to provide compatibility with SVN 1.8 and add features introduced in the latest SVN versions.

API Certification

The project leadership certifies that the APIs in this release are "Eclipse Quality".

Architectural Issues

New Features (since Kepler release)

  • SVN 1.8 support
  • SVN repository management API support
  • Usability improvements

APIs

Architectural Issues

  • Subversive supports Team API introduced in Eclipse 3.0 and Eclipse 3.2




Security Issues

There are no known security issues.

Non-Code Aspects

User documentation

  • Documentation is a part of Subversive distribution and is automatically integrated into Eclipse help
  • Available on site: http://www.eclipse.org/subversive/documentation/index.php

Developer documentation

IP Issues




Usability Details

UI Usability

  • Follow User Interface Guidelines
  • Make Subversive close to CVS as much as possible
  • Use best practices for professional UI: care about controls layout, use input validators, use standard icons, etc.
  • Pursue continuous UI review inside the team
  • Implement usability features suggested by the community

Tool Usability

  • Subversive provides support for all operations available for SVN clients. It means that it can be used as a fully-functional Eclipse SVN client and as a replacement of the original SVN client.
  • Subversive provides a set of unique features that improve usability for developers:
    • Support of repository layouts recommended by Subversion
    • Revision browsing
    • Automatic search of Eclipse projects in the repository
    • Revision graph




End of Life

Since there was a long history of changes in SVN integration API dictated by the changes in SVN functionality, there were inevitably a few of odd things that could make its usage somewhat annoying. So, while working on bug 417768 we've made a lot of changes in order to make SVN API look more uniform, easy to understand and use.

What was changed:

  • ISVNConnector.Depth was moved level up and renamed to SVNDepth
  • repository administration-related APIs were moved to the separate interface ISVNManager
  • ISVNConnector.commit now returns revisions of successfull commits through ISVNProgressMonitor
  • In order to make naming conventions uniform, some methods were renamed:
    • doImport -> importTo
    • doExport -> exportTo
    • logEntries -> listHistoryLog
    • info -> getInfo
    • list -> listEntries
    • getProperties -> listProperties
    • getRevisionProperties -> listRevisionProperties
  • some methods were renamed/deleted due to changes in SVN API in order to better reflect their functions:
    • removeProperty and setProperty were replaced with setPropertyLocal and setPropertyRemote
    • remove was split to removeRemote and removeLocal
    • copy was split to copyRemote and copyLocal
    • move was split to moveRemote and moveLocal
    • merge, diff and diffStatus methods that were receiving two different URLs as their arguments were renamed to mergeTwo, diffTwo and diffStatusTwo accordingly.
  • SVNNotification.NodeLock.isKnownStatus was renamed to SVNNotification.NodeLock.isStatusKnown
  • SVNNotification.NodeStatus.isKnownStatus was renamed to SVNNotification.NodeStatus.isStatusKnown
  • SVNNotification.PerformedAction.isActionKnown was renamed to SVNNotification.PerformedAction.isKnownAction




Standards
  • Subversive requires J2SE 1.6 and Eclipse 4.2 or higher
  • Versions compatible with previous versions of Eclipse are available at the previous project location on polarion.org
  • Subversive supports SVN 1.7 – 1.8 and migration from SVN 1.6 and earlier versions.
Communities
  • Active communication with the community through Mailing lists, Newsgroup, Bugzilla, etc.
  • Active users community: more than 500 downloads per day
  • Project has a Developers and Integrators community and benefits from six integrations with open-source and commercial tools; other integrations are expected
This release is part of Luna