Sublime Subversion Subscribe to RSS feed

I LOVE this new feature.  I find it to be incredibly useful on a daily basis.  And building tools that you yourself find useful and productive is one of the most rewarding aspects of this business.

Sublime 1.2 ships with a new default home page which is personalized for each user.  It shows a list of active repositories that you have access to, and an activity stream for those repositories.  This makes it very easy to quickly access the repositories you care about, and see exactly who is committing to those repositories – all in one, streamlined view.

New personalized dashboard shows your repositories and latest activity

New personalized dashboard shows your repositories and latest activity

On the left side of the dashboard is a list of any repository that you have access to, which has been committed to in the last 15 days.  This makes it very easy to quickly access repositories that you have access to and it automatically filters out old or unused repositories.

On the right side of the screen is a list of the most recent commits to these active repositories.  This single, unified view lets you easily see which users are committing to the repositories you care about.

In addition, this activity stream is exposed as an RSS feed.  This lets users subscribe to a single RSS feed for all of their repositories without having to subscribe to each individual repository.

All in all we feel that this is a great feature for developers.  It helps everyone easily stay up to date with the activities of their team.

We’re a bit behind releasing 1.2.  We had hoped to release in July and we may still, but if we don’t make it before the end of this week we’ll definitely have it ready to go by August 6th.  In the meantime, here’s another preview into the new features in 1.2.

Those of you using LDAP / Active Directory for authentication will be pleased to know that with 1.2 it will be possible to use AD groups for permission management.  This is accomplished by creating an “LDAP Group” and entering the name of the group in your LDAP directory.  For example, if you wanted to add “Domain Users”, you would simply create a new LDAP group in Sublime named “Domain Users”.  The group membership will be automatically populated based on the users in the Domain Users active directory group.  Sublime will then keep this membership up to date automatically.  So whenever you add new users to the group in active directory, those additions will be automatically picked up by Sublime.

Sublime is also smart enough to only give access to users who you want using Sublime in the first place.  For example, if you have configured Sublime to exclude all users except those in a given OU, Sublime will respect those rules when pulling in users from your AD groups.  So even if a user exists in that group, if they aren’t in the OU you specified they won’t be granted access to Sublime or Subversion.

That’s it for this post.  Next time we’ll talk about the new user dashboard and user RSS feeds – promise!

This is the first post in a series on what’s new in Sublime 1.2. Version 1.2 will be released next month but we’re so excited about the new features that we wanted to get the word out now.

First up: Path-based permissions.

This feature has been requested for some time and is finally making its way into Sublime. In 1.2 a repository owner will be able define unique permissions at different paths within a repository. A common scenario may be to allow all developers read/write access to the trunk, but then lock down the branches or tags folders to lead developers or release managers.

Below, we can see the updated Permission Management interface in Sublime 1.2. On the left we see the repository structure and the red icon overlay indicates that a folder has unique permissions applied. Clicking on that folder we can see, and then manage permissions for that level in the repository.

Assigning path-based permissions in Sublime

Assigning path-based permissions in Sublime

If you make a mistake and would like to remove all unique permissions you can simply click the “Remove these permissions” link in the highlighted area to the right.

Well that’s it for this update. For our next Sublime 1.2 Preview article we will discuss the new personalized Dashboard.

We’ve been working away here on Sublime 1.2 and have a few interesting features to share with you.

First, we’re going to be offering better support for managing your repository organization from within the Sublime web interface. For example, admins will be able to create folders directly within the web interface instead of having to create them from the server.

Second, we’re expanding our RSS support by creating a “My Repositories” feed. This feed will include commit messages to any repository that the subscriber is a committer for making it easy to subscribe to a single feed and automatically stay up to date across all of your projects. We’ll also be allowing RSS feeds to be accessed anonymously (admin configurable) so that they can be accessed easier from external RSS readers or readers that don’t support authentication.

Lastly, we’re expanding the Repository Template functionality to scan your templates for certain tokens and replace them with repository-specific information. For example, if your template includes a visual studio .sln file, you can name this file %name%.sln and it will automatically be renamed with the name of the repository. This works within the contents of your files as well allowing you to set up complete boilerplate project structures.

We always felt that while very useful, templates always came up a little short in truly jump-starting a project because they couldn’t customize the template to the project at hand. We feel that this update will close this gap and provide a significant productivity improvement for Sublime users.

We’ll be posting more on this feature in the future including a full tutorial on how to create repository templates that leverage this functionality.

Stay tuned for more updates on 1.2. We’ve got plenty of other features and improvements we’re adding including:

  • My Repositories view
  • Significant performance improvements
  • Filtered views for the repository browser
  • Active Directory Security Group support
  • and more…

As you may know, last week saw the Subversion Vision Conference in New York City. This wasn’t a large event, rather it was a small meeting of several core members of the Subversion team. Their goal wasn’t marketing, community building, or flag waving, but rather to step back a moment and take a look at where Subversion was headed. And although they didn’t come away with a finalized roadmap or vision statement, it does appear that some good progress was made on mapping out the direction for Subversion.

I think this is great and I’m glad to see the Subversion team taking some time to map out the future. But I do wish we had seen some indication that Subversion may evolve to incorporate some distributed functionality. However, according to Michael Pilato the immediate plan appears to be to “Maintain a centralized approach to version control”.

Considering the composition of the team – most members being from companies such as Collabnet or WANdisco who serve the enterprise – this isn’t exactly surprising. Centralization is still a key concern for enterprise IT organizations who need to maintain tight control on their systems for compliance and governance reasons. But I hate to see the team dismiss different approaches to source control simply because it doesn’t appeal to the enterprise yet.

I think distributed version control systems have some great advantages and not just in the open source space. I think cheap, personal branching and merging is an extremely powerful tool. From personal experience I can tell you that it can completely change your development workflow for the better. My opinion is that anything that stops a developer from committing changes is a bad thing. Your version control system is your safety net – it should be there to support you, not to impose speed bumps.

I’ve watched the rise in popularity of DVCSs over the last few years. Git made the DVCS sexy but they’ve been around for quite a while. Microsoft supporting Mercurial on Codeplex is just one example of DVCSs being taken seriously by very large players.

But even though distributed systems are the hot “new” thing, most organizations – big or small – still place a high value on centralization. As a small business using Subversion, I see the value in having one location with all of our valuable IP. I have one asset to back up, one place to go to find repositories, one place to go to manage access, etc. These are all great arguments for a centralized system but I think there can be a middle ground.

The combination of a centralized version control system supporting distributed working copies could be extremely powerful. Allowing your developers to commit, branch, merge, and revert locally and then pushing changes up to the master repository as appropriate seems like the best of both worlds.

This is where the Git users out there yell at me and tell me that Github already works this way. I’m aware of that and have used it myself. It’s a great workflow – but it’s not ready for the enterprise, or even smaller companies. It will work for some, but not for the majority.

This is where I think the Subversion team can make some serious traction – not just supporting the status quo – but really moving the product forward in a new and exciting way. I think that Subversion is in the unique position of being able to take advantage of the benefits that distributed systems offer while at the same time serving those who care about centralization.

In the coming months I expect that the Subversion team will make their roadmap public and I’m excited to see what’s on it. I really like what I’ve been hearing about the Working Copy changes (no more .svn folders littering my working copy!) and love to see the momentum in the community. Subversion is still hands-down the best source control solution for small, medium and enterprise organizations, but it can always be better. I hope that the core team will consider some of these opportunities when mapping out Subversion’s future.

We have just uploaded our latest tutorial video for Sublime. This video covers subscribing to Subversion Repository RSS Feeds.

As always, please send us your feedback about these videos, or suggest other topics you would like us to cover.

We are planning to release tutorial videos for the following topics next:

  • Managing Repository Permissions
  • Configuring Sublime with LDAP Authentication
  • Creating and Managing Repository Templates

Over the last couple of days we have started posting some short tutorial videos. Initially these videos focus on how to use Sublime but over time we will expand the scope to cover Subversion topics as well.

Please let us know if these videos are helpful and if you have any suggestions on features to cover or ways we can improve them.

Sublime 1.1 Available Now!

Sublime 1.1 has been released and is available for download now!  Current users of Sublime 1.0 can download 1.1 and upgrade their server for free.  Please see the upgrade instructions for details on upgrading your server.

Below are the new features added in Sublime 1.1:

* Repository RSS Feeds
Each repository exposes an RSS feed for repository commits.  Repository RSS
feeds contain the same information included in repository email notifications
such as commit message, date, changes, and author.
* Event Log RSS Feed
For server administrators, the Sublime event log is now exposed as an RSS feed.
This allows administrators to see errors or backup notifications as they occur
without having to check the event log or Sublime web interface.
* Disable Repository Folders
If you do not plan on organizing repositories into folders, or your Subversion
server doesn’t support a folder structure (i.e. Apache) you may now disable
repository folders in the Sublime interface.  When disabled, the repository
list page will no longer display the folder hierarchy, and users won’t be
prompted to choose a folder when creating new repositories.
* Support for SMTP Servers requiring SSL (e.g. Google Apps)
When configuring email settings for the server, administrators can specify
that the server requires a secure connection.  This is required for some
email servers such as Google Apps.
  • Repository RSS Feeds
    Each repository exposes an RSS feed for repository commits.  Repository RSS feeds contain the same information included in repository email notifications such as commit message, date, changes, and author.
  • Event Log RSS Feed
    For server administrators, the Sublime event log is now exposed as an RSS feed. This allows administrators to see errors or backup notifications as they occur without having to check the event log or Sublime web interface.
  • Disable Repository Folders
    If you do not plan on organizing repositories into folders, or your Subversion server doesn’t support a folder structure (i.e. Apache) you may now disable repository folders in the Sublime interface.  When disabled, the repository list page will no longer display the folder hierarchy, and users won’t be prompted to choose a folder when creating new repositories.
  • Support for SMTP Servers requiring SSL (e.g. Google Apps)
    When configuring email settings for the server, administrators can specify that the server requires a secure connection.  This is required for some email servers such as Google Apps.

For a complete list of changes and bug fixes in 1.1, please see the release notes.

Sublime 1.1 Nearing Completion

Apologies for the radio silence recently.  While finishing up Sublime 1.1 we decided to completely re-write the Sublime installer.  We had been using an off-the-shelf product for our installer which worked okay initially.  However, after digging into more of the details we decided to switch to the excellent open-source Wix installer.  While we believe this is a good long term decision, it did add quite a bit of development time to 1.1.  We’re working the last bugs out of the installer now and should have 1.1 released soon.

So what’s new in 1.1?  Well the biggest new feature is RSS Feeds.  With Sublime 1.1, each repository will expose an RSS feed of the commit history.  This can be a great alternative to email-based commit notifications.  Each item in the RSS feed will show the time of the commit, the author, the commit message, and the list of changed files.

In addition to repository RSS feeds we added an RSS feed for administrators.  This feed will contain important information about the server such as the success or failure of repository backups, information about new users or repositories created, etc.

We’ve been using both of these features on our internal servers for a couple of months and really like them.  Hopefully you will two.

In addition to those features we’ve included a number of minor enhancements and bugfixes including:

  • Turn On/Off Repository folder hierarchy.  This allows administrators to specify whether repositories will be created in a folder hierarchy or a flat list.
  • Better support for non-English Subversion servers
  • UI bug fixes including better paging support for repositories with a large number of commits
  • Email notifications enabled by default for new repositories

Thanks to all of you who have sent us feedback and suggestions.  Once 1.1 is released we’ll post our plans for 1.2.  Remember, 1.x releases of Sublime are free upgrades to anybody who has purchased a Sublime license.

Subversion graduates from incubation!

The Board of the Apahce Software Foundation (ASF) has voted to approve the graduation of Subversion from incubation.  Subversion is now a full-fledged ASF project.  This is just one more step in the life of Subversion and one that will hopefully encourage greater community involvement and innovation.