Anonymous Access

Anonymous access is now available to all myVersionControl customers on both Subversion and Trac. This is a feature that has been regularly requested by clients and we are very pleased to be able to offer it in the new version of myVersionControl.

Anonymous access to Subversion repositories when activated means that you can now permit public users to browse your code directly without being prompted for a username or password.
In Trac your users will again not be prompted and the system assumes a default user of "Anon". Anonymous privileges in Trac are completely configurable by Administrators so you can make your Trac as open or secure as you wish.

Of course you can choose not to permit anonymous access. The security area in your control panel makes it very easy to configure your resources:

New and improved Trac comes to myVersionControl


Trac was a superb and popular base level project management tool in the previous incarnation of myVersionControl so we have included trac across our new product range at no extra cost.

We have put alot of hard work improving the management of Trac compared to the old version:



Version 0.11.4 - The latest version with all the current features.
Webadmin - Installed by default on all Trac instances.
Control panel - A once click deployment model and management through the control panel.
Administrators - myVersionControl administrators are automatically Trac administrators.
Subversion - Log messages can be used to automatically update Trac.

This is available to all our users now, it is configurable like never before an will take less than 30 seconds to install! In your control panel, navigate to the 'Resources and Hooks' section and choose 'Trac'.

Depending on your needs there are better things out there but they invariably cost money. We are adding support for all the other popular ticket and project management sites out there and will add these features shortly. If you would like to make a suggestion please start a discussion at http://support.myversioncontrol.com

Controlling commit messages

We released our 'commit message' feature today and are looking forward to any comments you may have.

This feature is available to all our paid accounts and gives administrators far more control over what is acceptable in a log message.

Prevent zero length commits
-
No more blank messages in your log! Always always always log your changes! At myVersionControl we like to commit tested functionality in small identifiable blocks. Preaching to the converted I am sure but write your log message while the code is fresh in your mind - the more the better! You will never regret it..

Along with zero length commits we have provided the ability to set minimum lengths of log message. This means that your users cannot get away with just a single character (yes we have seen it!) to bypass the control.

Finally, we have given the option of creating your own custom message. You can put anything you like in there - your support telephone number, the name of the business or just something cheeky! It is up to you!

Gmail filters for your email notifications

The new email notification functions in myVersionControl have just been implimented and all of a sudden the filters in my Gmail account have stopped working. The reason is obvious. Instead of coming from no-reply@myversioncontrol.com, email notifications now come from the user that triggered them. As such, I'm going to have to look for another constant to identify and label these emails with.

Ok - here's what I did, the subject line of all email notifications will look something like this:

Project [projectname] commit r[revision number] - [folder path]

Google lets you group words which must appear together using parentheses, so you can add (project commit) to the Subject field of the Create a Filter page. If you want to make the filter project specific, just add the project name within the brackets too (project coolproject commit).

Email Notifications now live

After our major upgrade in August, we had to disable our hooks and resources section. We're now ready to start releasing features here one by one over the next few days. The first one is email notifications.

When activated, Email Notifications will send an email to users or groups that you specify whenever someone commits to a specified project. We've added in a couple of neat features:

Email to all members of a group
If you've gone to the trouble of setting up groups to make managing user permissions easier, then you'll be pleased to know that you you can manage email rules using these groups.

Temporarily disable Email Notifications
If you need to switch off email notifications for a project for a while, then you can. When you come to re-enable notifications again, all your previous settings are remembered and ready to go.

Notifications come from the user
When a team member commits their code, and I want to ping them a comment via email, it would be nice just to hit reply rather having to hit forward and look up their email address. Well now rather than coming from no-reply@myVersionControl.com, the notification email will come with from the user who committed the change. It wasn't difficult to implement, but it's just a nice little addition that makes our lives that wee bit easier.

Enhanced Security

The previous version of myVersionControl was, by default, low security and required user configuration to fully protect repositories. The latest version of myVersionControl is built around the concept of 'protected by default'. This requires our users to consciously relax security and has caught a number of our users by surprise.

This particularly affected clients who on the old system had zero security set up. In the current version of the new system this will mean, as they have no permitted users on that resource, that they will get a rather unpleasant message telling them they have no access. Additionally a new feature in myVersionControl is the ability to control commit permission so unless a user is set up for this also it will mean that they will be able to update/checkout but committing will result in a rather cryptic 'see your administrator' message!

We do think that all these changes are essential for myVersionControl and have been widely requested with a host of advantages in addition to security, however we do appreciate that it is a change in working for many of our users. To this end we are delaying switching on enhanced security to Sunday 30th August at 0100 GMT. All clients are respectfully requested to login to their control panel and update access permissions where appropriate before the Sunday switch on. Our support desk is standing by for any questions regarding this over the weekend.

Ok - phase 1 complete

For the past month, all we've been talking about here is the upgrade. Everywhere I looked, there were reminders. My inbox, my desk, my calendar, my dreams, (the occasional nightmare) even my wife was asking how the upgrade was going. Then last weekend, when it was actually time to push the button of no return, a strange calmness came over me. There was none of the franticness I had imagined, there were couple of minor issues, but overall, it all went as smoothly as anyone could have hoped. Here's what we updated:
  • Server infrastructure (don't underestimate the size of that job)
  • Subversion now running V 1.6.3
  • Trac running V 0.11.4
  • MVC Control Panel now on V 2 (hallelujah)
  • Support system now upgraded

So, the first week is nearly over and we haven't had the flood of support tickets we were expecting. There have been a few issues to smooth out, notably with billing (or the lack of it - sorry but that couldn't last forever) and the public site. A handful of users reported some connection issues to begin with, but these were resolved within a few hours.

So now, all thoughts are to the future. We have quite a few goodies in the pipeline including deployment tools and more hooks and integration with third party systems. The feedback we've been getting has been extremely encouraging and I'd urge anyone with an opinion or suggestion to get in touch with us over on our support tender.

Memory leaks and network interfaces

Beta testing is approaching completion now, which is a huge source of relief and excitement at myVersionControl.com. We are currently writing the import scripts which will upgrade all our clients to the latest version of myVersionControl and will be writing to all our clients shortly to inform them of what to expect with the new system.

The new subversion servers are zipping along at high speed now with no reported problems however this was not always the case. Infrequently, when doing long checkouts of repositories with many subdirectories we started receiving the following type of error messages:

svn: REPORT request failed on '/svn/repo/!svn/vcc/default'
svn: REPORT of '/svn/repo/!svn/vcc/default': Could not read chunk delimiter: Secure connection truncated


We are used to subversion 'just working'! So this was a source of great consternation and would prevent us from going live with the new servers. After much research we found that it was down to a memory leak in mod_dav_svn which is the subversion module for Apache. It appears that the 'path based authorisation' feature leaks memory, consuming resources that will eventually take Apache down.

myVersionControl do not use the path based authorisation feature. We prefer the use of post and pre-commit hooks to control access as we have much more control over the process this way. This meant that we could switch off that feature with a simple: "SVNPathAuthz Off" directive in the Apache configuration files.

On a completely different note we recently found out that our new 1and1 servers had been set up with only 10Mb/s connection to the network! Found this out by chance when trying to move large amounts of data between servers and was only posting 1000Kb per second! Forcing the cards using ethtool had no effect so we have left this up to the 1and1 engineers who are on the case as I speak! Just goes to show - take nothing for granted!

Beta Testing of new interface begins

Today we started beta testing of our new interface. 100 accounts were transferred over to the new server architecture this morning and things have been running pretty smoothly so far (touch wood).

Beta testing will last for up to 2 weeks before we begin the (slightly daunting) process of migrating over 5000 users over to the new systems.

Some of the new features beta testers are familiarising themselves with today are:
  • Easier user management
  • Advanced and intuitive permissions configuration
  • Advanced security settings (including individual repository firewalls)
  • Repository activity views and reports
  • In place editing throughout
  • More intuitive UI with better feedback and control
  • Group permissions
  • Easier repository creation including dump and file upload and svnsync
And that's just client side. We are now running a completely new server architecture with better redundancy, replication and load balancing built in.

Anyone interested in getting involved in beta testing, please drop us an email at support@myversioncontrol.com.

Green Servers: Commissioning begins..


We have begun the process of commissioning new servers for the upcoming release of the latest version of the myVersionControl Control panel. The servers are true monsters clustered together with 4 2.xGHz Opteron processors per server and a minimum of 4GB physical memory. It is amazing how far technology has moved on in three years when we bought our first server for myVersionControl. It was a single 3GHz Intel Pentium 4 with only 2GB memory. Amazingly this server continues to work as part of the myVersionControl server family but will finally be given the rest it deserves some time after go-live to make space for something faster!

Our servers are entrusted to 1and1 and are currently based in Europe with super fast connectivity around the world. If your business has a renewable energy policy (or are a forward thinking personal user) you will be pleased to know that myVersionControl servers are all powered by wind, water and solar power. We are personally very passionate about the environment and are very pleased to be partnering with a similarly inclined supplier.

Blowing away the clouds


Amazon's elastic cloud (EC2) technology is brilliant and used by some online subversion hosts however myVersionControl have no intention of moving your service to Amazon's servers.

At first glance the benefits of the service are compelling, huge redundancy and massively scalable - we can easily see why our competitors have chosen to use the service over old fashioned 'real' servers in datacentres. What EC2 cannot provide at this time is:
  • Provide a cast iron guarantee (SLA) that they will keep the service alive all the time. In fact they reserve the right to switch it off at any time (Amazon terms and conditions 7.1). This means that downtime will be both indeterminable and out of our control. This represents an unacceptable situation for us. Our servers are distributed across datacentres and have multiple redundancy built in to our own design and satisfaction. No-one may switch off our servers without prior authorisation and we are not affected by unknown threats posed by Amazon's other EC2 customers.
  • Amazon cannot guarantee the security of the data they store (Amazon terms and conditions 7.2). Lets be frank here, within our own terms and conditions we have some get outs however you can be sure that we go to extraordinary lengths to keep your data private. All our servers are physically secure, the datacentres we choose for our servers have 24 hour manned security including CCTV, patrolled boundaries and multiple levels of authorisation. Decommissioned servers are also securely disposed of with the data disk receiving 'special attention'. We are both the architect and custodian of our security procedures and have complete control over how we implement this. We believe that we are better placed to police our gates than some unknown entity.
What it all boils down to is that we do not believe that cloud computing yet (and may never) provide the control and reliability that we demand for our clients. Using the cloud would increase profit margins but we believe that real servers in real datacentres that meet our strict vetting requirements represent the best possible solution for our versioncontrol clients and will not be jumping on the cloud computing band wagon!

Record rise in new users



Following last month's announcement of space increases on our 'Personal' and 'Team' products we are very pleased to report a 150% monthly increase in new sign ups, taking our registered users way past the 5000 mark. Buoyed by how well the improvements have been received we are very excited by the next phase, which includes a space increase across the rest of the streamlined product range and the new control panel which is set for release middle of June.

We will release the new system onto a new suite of cutting edge hardware including redundancy, load balancing and clustering bringing the new myVersionControl server count to seven with more in the pipeline. This new architecture will promise even faster response times and greater levels of reliability for all our customers.

Space increases and other changes

As part of the upgrade of myVersionControl with new features, a new control panel and other enhancements we are streamlining the product range and increasing the amount of space. We will be doing this progressively to coincide with the release of the new interface however we have immediately increased the space on our base products:

The free account - now named 'Personal' has had a space increase from 4 MB to 100 MB.
The 50mb account - now named 'Team' has had a space increase from 50 MB to 500 MB

In order to maintain business viability we have put some reasonable restrictions on the numbers of users and projects that each product can accommodate. No paying customer will be adversely affected by this change, if you are currently exceeding the permitted numbers of users and or projects for your package you will not be forced to upgrade.

We are very excited about these changes that are occuring at myVersionControl which will help us continue to innovate and give our customers the very best in service and functionality.

Trailing slashes, Subversion Repositories and Subclipse

Trailing slashes on URLs are a tricky beast. Best practice dictates that when a web url does not have a trailing slash the browser is referring to a file, with the slash we are looking for a directory - see Slash Forward (Some URLS are Better Than Others by Waferbaby). We at myVersionControl are aware of this and as a matter of course rewrite a repository url without a slash to one that includes, for example:

https://company.myversioncontrol.com/subversion/repository1

would be rewritten as:

https://company.myversioncontrol.com/subversion/repository1/

Now it can be argued that 'repository1' is a directory or a file depending on what you consider subversion to be, however from the filesystem's point of view it is most definitely a directory.

It came to our attention recently that there are a minority of SVN clients that were struggling to cope with this trailing slash. For example Subclipse from Tigris would fail spectacularly.

In order to remain compatible with as many clients as possible we have changed our configuration protocols to accept your repository urls with or without the slash. If you have any problems with any other clients then as ever let us know!

Sneak preview of the control panel upgrade

The redesign and upgrade of the main MVC web control panel is well underway. The focus is largely on usability and creating a framework and structure that will allow us to introduce the new features we are working on like repository browsing and hooks and third party resources management. This would be difficult in the existing structure.

The new site will make fairly extensive use of client side scripting techniques involving numerous Ajax calls, drag and drop and pseudo modal windows. This is all aimed at making the control panel behave more like a console application and to improve the overall usability and configurability of subversion. Non JavaScript enabled browsers will be redirected to the existing control panel until we complete the redesign of the basic accessible version. We also have plans to introduce slimed down versions of the control panel for mobile devices, primarily so administrators can keep an eye on development progress from wherever they are.

The new site is being tested daily in IE 7 & 8, Firefox, Safari, Opera and Chrome. Users of other browsers will be given the opportunity to view the site using the old (well, current for now) control panel.

Release of the new control panel is on schedule for release in the last half of June 2009.

Repository overview showing colour coded repositories, head revision number, time of last commit, last user and size of repository.




Repository detail page, showing label colour chooser (changes colour of heading and some other page assets depending on which page you are on).

Repository detail shows log message, commiter and a count of the files in the changeset. Clicking the number drops down details of the changeset which will ultimately hyperlink to the repository browse/diff feature.

The page also includes and option to stream commit information (useful on active projects with multiple commiters).





Security page. We spent a lot of time on this page trying to make it as intuitive as possible. The screenshot shows two securable resources (Subversion repository and associated Trac instance). Users are added to the root of the resources and their permissions configured from there. We will also be adding the ability to set advanced permissions on folders within your subversion repository. In this case there will be the added dimension of inherited permissions to display.

The screen shot also shows the repository drop down menu allowing quick changing between repositories.

Server Upgrade to Subversion 1.6.1


The latest version of Subversion (1.6.1) is now available on our servers. This provides a number of new features which myVersionControl customers may now take advantage of.

We have not automatically upgraded your repository to the latest version. This is because it may lead to the repository being innaccessible to your older subversion tools. You repository will work fine without upgrading but in order to take advantage of the latest 1.6.1 features you will need to upgrade both your client and repository.

Upgrading your repository is very simple. Go to your project admin page in the control panel, choose a project and select "Project Resources". Choose the upgrade option (see picture) and click Update. You are now upgraded!

New repositories are automatically created as version 1.6.1.

OpenID integration on schedule


For the last 3 weeks we have been working on integrating openID into myVersionControl's authentication systems.

There have been several hurdles to overcome to ensure that the functionality integrates seamlessly and does not interfere with our existing authentication systems. As always, security and privacy of your repositories is of the utmost importance. But I'm pleased to say that we are almost there.

As part of the OpenID integration project, we will also be phasing out the .htaccess authentication method we have been using for control panel access in favour of a more user friendly forms authentication process.

Stop Press
OpenID authentication will be released along with the control panel upgrade which is scheduled for mid to late June 2009.

PayPal subscription payments imminent

We're just putting the finishing touches to the new PayPal subscription engine. This has been on our ToDo list ever since we introduced the 50meg account. We've had numerous emails from subscribers who would rather use a payment service provider like PayPal when dealing with small subscription amounts, rather than using their credit or debit cards.

It was an interesting challenge to integrate PayPal into the current subscription workflow. We needed to be mindful that subscribers could be changing from paying by card to PayPal or vice-versa so obviously we wanted to avoid double charging. myVersionControl accepts payments in 3 currencies (USD, EUR and GBP) so this added an extra level of complexity too.

What we came up with was rather simple in the end. First we have the Account Home page which details your last and next payment, along with your chosen payment method and an option to change it:
The payment details page shows the account you are paying your subscription from, whether that be your PayPal or Debit/Credit card.

You then have an opportunity to add credit or debit card details. If you are just looking to upgrade and stick with PayPal as your subscription method, then any one of the package options on the upgrade tab will take you to the relevant PayPal subscription page.


I want to say a bit on the look and feel of the UI at the moment. It was tempting while putting in the PayPal subscription engine to freshen up these pages - but have you ever heard the expression about putting lipstick on a pig?

We've already embarked on a complete overhaul of the look, feel and functionality of the control panel. It's all part of a wider plan we're working to. So we decided the goal here was to get the engine right so it could be ported to the new interface without too much rework and offer the PayPal subscription functionality in a way that fits with the (dated) UI we have on offer at the moment.

The new PayPal subscription service is due for release on Monday 16th March 2009.