Fusion de Ruby on Rails et Merb : quelles implications ?

Les deux infrastructures de développement Ruby ne feront bientôt plus qu'une. Suite à ce mariage, Ruby on Rails devrait gagner en souplesse et en modularité.

Les frameworks de développement Ruby on Rails et Merb, tous deux basés sur le langage Ruby et le modèle MVC (Modèle-Vue-Controleur), vont fusionner. C'est ce qu'ont annoncé les responsables des deux communauté fin décembre. Le rapprochement des deux infrastructures va se faire à l'occasion de la sortie de la version 3.0 Ruby on Rails, dont la première version beta devrait être dévoilée en mai lors de la RailsConf à Las Vegas,  

Moins connu que Ruby on Rails, Merb est également plus récent. Inspiré de Ruby on Rails, ce framework se caractérise par une architecture modulaire, et donc plus souple que son grand frère qui ne bénéficie pas de la même structure de composants.

A la différence de Ruby on Rails qui consolide toutes ses fonctionnalités au sein d'un environnement unique, Merb propose en effet un noyau sur lequel vient s'ajouter des plugins à la demande (plusieurs choix d'ORM...). Ruby on Rails devrait donc gagner en souplesse. En clair, il sera possible de travailler avec les briques de son choix :  DataMapper (ou Sequel), RSpec (ou Shoulda), un moteur de templates…

La fusion devrait apporter d'autres avantages propres à Merb : le code thread-safe, des tests sur l'API publique pour éprouver les plugins (permettant ainsi d'éviter les régressions de version), sans compter les Helpers, Router, etc. Des éléments de l'architecture Merb seront également repris dans Rails en vue d'améliorer la performance du framework.

Alors que Yehuda Katz, leader du projet  Merb, va intégrer l'équipe de développement Rails, les responsables des deux communautés assurent que l'intégration des deux environnements sera transparente pour les utilisateurs.