Frederic de Villamil


, , , , , , ,


Partagez sur Twitter Partagez sur Facebook Partagez sur Google Plus Partagez sur Linkedin Plus

Migration du blog sous Typo pour Ruby on Rails 3.0

typoSi vous lisez ces lignes, c’est que la migration de ce blog sur la branche Rails 3 de Typo s’est passée sans (trop de) problèmes, ce qui est une grande nouvelle quand on regarde le chemin parcouru depuis que Matijs et moi nous sommes mis au travail.

La migration d’une application récente vers Ruby On Rails 3.0 n’est pas toujours évidente, et l’excuse dite des plugins manquants est souvent une fausse bonne raison de passer à côté. Quand il s’agit de faire évoluer une application presque aussi ancienne que Ruby On Rails, qui dut, fut un temps, pallier les manquements du framework et l’absence – bien réelle – de plugins à travers 4 versions majeures, les obstacles rencontrés tournent facilement au cauchemar.

Durant les dernières semaines, nous nous sommes principalement heurtés, par ordre de frustration :

  1. Aux changements de comportements mal documentés de fonctionnalités de Rails existant depuis les toutes premières versions.
  2. Au remplacement de fonctionnalités existantes par des fonctionnalités proches, mais adoptant une toute autre philosophie.
  3. À des suppressions pures et simples de fonctionnalités sur lesquelles nous nous reposions.

Avec le recul, il me semble évident que nous n’aurions jamais réussi cette migration sans une bonne couverture de tests. C’est d’ailleurs la première tâche à laquelle nous nous sommes attelés : faire que rake spec se lance afin de discerner ce qui était du ressort du passage à Rails 3, et ce qui concernait le passage à Rspec 2.

Évidemment, tout cela n’est pas encore sec, et il nous reste pas mal de détails à polir avant de songer à une release digne de ce nom, même si je n’exclus pas une version intermédiaire. Le Typo installer, doit être revu et corrigé afin de prendre en compte le passage des applications Rails à Bundler, et nous souhaitons également ajouter quelques fonctionnalités ici et là.

Stay tuned !