Skip to content

About upgrading social stream

atd edited this page Mar 30, 2012 · 3 revisions

Social Stream follows the versioning scheme of most ruby gems: mayor.minor.patch. For example: version "0.14.3" has "mayor 0", "minor 14", and "patch 3". When do we increase version numbers?

  • Patch number is increased when the next version can be installed safely. Just update you Gemfile, bundle update and ship it! Nothing will be broken.
  • Minor number is increased when something is required to be done with the final application in order to upgrade. This probably means a new migration in any of the components of Social Stream (which, of course, follow the same versioning scheme). rake social_stream:migrations:update will copy missing migrations to your application. These upgrade requirements are always blogged at Social Stream's webpage
  • Mayor number is increased when we reach very significant milestones. The first of them is building a complete teacher-oriented social network for the EU founded GLOBAL excursion project

Upgrade steps and migrations

Old migrations are a burden. They slow the setup of new applications. They also have code that may become obsolete and broken.

Social Stream cleans migrations every 5 minor versions. For example, in version 0.25.0, all the migrations before 0.20.0 are flatten into one. Single migrations live 6 versions at least. A migration that appears in version 0.19.0 will be available until version 0.24.x and will be flattened in version 0.25.0 This means that you have at least 6 minor versions for upgrading your application seamlessly.

If you miss this pace, do not worry. All versions of Social Stream are stored in Rubygems, so you will be able to upgrade through multiples of 5 minor versions until reaching the last version.

Clone this wiki locally