Sortie de Ruby on Rails 3.1.0

Posté par (page perso) . Modéré par patrick_g. Licence CC by-sa
28
1
sept.
2011
Ruby

Ruby on Rails est un framework de développement web agile, sous licence MIT. Après 8 releases candidates, la version 3.1.0 est sortie aujourd'hui.

Les nouveautés sont nombreuses mais les plus importantes sont :

  • jQuery est devenu le framework javascript par défaut (à la place de Prototype) ;
  • L'Asset Pipeline permet de gérer la compilation, la minification et la gestion des dépendances pour les feuilles de style et le fichiers javascript ;
  • Sass et CoffeeScript sont maintenant proposés par défaut ;
  • Les migrations SQL ont été revues (plus simples à écrire mais également plus de possibilités offertes) ;
  • Les réponses peuvent être envoyées en plusieurs morceaux (HTTP streaming), ce qui peut être utilisé pour optimiser le temps de chargement des pages ;
  • La documentation de l'API utilise maintenant SDoc.

Note : il est prévu que LinuxFr.org passe rapidement à cette version.

  • # Railscast

    Posté par (page perso) . Évalué à 10.

    Parce que c'est plus impressionnant en vrai :
    - HTTP Streaming ou comment afficher le contenu au fur et à mesure.
    - CofeeScript ou comment écrire du Javascript avec les bonnes idées de Ruby.
    - Sass, le CSS avec des variables, des imbrications à plusieurs niveaux, …
    - Et comme mis dans la dépêche, un lien vers les Railscast sur Rails 3.1

    « En fait, le monde du libre, c’est souvent un peu comme le parti socialiste en France » Troll

    • [^] # Re: Railscast

      Posté par . Évalué à 4.

      J'ai du mal à voir la différence entre Sass et lesscss.

      De ce que j'ai pu voir seul le fait que sass est basé sur l'indentation et lesscss des accolades différencie ces deux "compilateur de CSS". Il y en a t il d'autres ?

      D'ailleurs le fait de se baser sur l'indentation n'est pas forcément une bonne idée dans ce cas en effet Lesscss peut être compilé du coté client en javascript, du coup il peut bénéficier des optimiseurs à la google qui vont retirer les espaces et retour à la ligne superflu.

      En tout cas c'est une très bonne chose d'avoir intégré ce genre de bibliothèque parce qu'avoir des variables et des mixin en CSS c'est vraiment très agréable.

      Les logiciels sous licence GPL forcent leurs utilisateurs à respecter la GPL (et oui, l'eau, ça mouille).

      • [^] # Re: Railscast

        Posté par (page perso) . Évalué à -1.

        D'ailleurs le fait de se baser sur l'indentation n'est pas forcément une bonne idée dans ce cas en effet Lesscss peut être compilé du coté client en javascript, du coup il peut bénéficier des optimiseurs à la google qui vont retirer les espaces et retour à la ligne superflu.

        ça ne change rien puisque le source indenté est transformé en CSS, c'est après que tu appliques une phase de compression.

      • [^] # Re: Railscast

        Posté par (page perso) . Évalué à 4.

        J'ai du mal à voir la différence entre Sass et lesscss.

        Normal, il y en a très peu ;-)
        Disons juste que sass est le défaut dans Rails 3.1 et qu'il est peut être un peu plus complet. Et sass est plus populaire dans le monde Ruby/Rails alors que Less fait plus parti du monde Node.js (syndrome du NIH à mon avis).

        De ce que j'ai pu voir seul le fait que sass est basé sur l'indentation et lesscss des accolades différencie ces deux "compilateur de CSS".

        En fait, sass a deux syntaxes :

        • la syntaxe "sass" basé sur l'indentation, plus concise
        • la syntaxe "scss", qui est un sur-ensemble de CSS et donc basé sur des accolades.

        Un des avantages de la syntaxe "scss" est que l'on peut renommer un fichier CSS classique en .scss pour faire le convertir. Il n'y a pas besoin de passer par un outil externe comme c'est le cas avec la syntaxe "sass" classique.

        Lesscss peut être compilé du coté client en javascript

        Oui, mais c'est généralement une mauvaise idée car ça ralentit le temps de chargement de la page en forçant le navigateur a chargé un fichier JS avant la feuille de style. Je déconseille de faire ça en production mais ça peut être pratique pendant le développement.

        En tout cas c'est une très bonne chose d'avoir intégré ce genre de bibliothèque parce qu'avoir des variables et des mixin en CSS c'est vraiment très agréable.

        Oui, je ne comprends pas que ça ne soit toujours pas fourni de base en CSS. Ça me paraît être un besoin tellement basique que je ne vois pas de bonnes raisons pour que ça ne fasse pas parti du standard.

        Bref, Sass et Less, c'est bien, mangez-en !

        • [^] # Re: Railscast

          Posté par . Évalué à 3.

          En fait, sass a deux syntaxes :

          • la syntaxe "sass" basé sur l'indentation, plus concise
          • la syntaxe "scss", qui est un sur-ensemble de CSS et donc basé sur des accolades.

          C'est cool ça.

          Oui, mais c'est généralement une mauvaise idée car ça ralentit le temps de chargement de la page en forçant le navigateur a chargé un fichier JS avant la feuille de style. Je déconseille de faire ça en production mais ça peut être pratique pendant le développement.

          Je comprends. Il n'y a pas un moyen de mettre le résultat en cache pour le navigateur ? (ou de le faire enregistrer avec la persistance HTML5) Comme ça le surcoût n'est effectué qu'une seule fois.

          Oui, je ne comprends pas que ça ne soit toujours pas fourni de base en CSS. Ça me paraît être un besoin tellement basique que je ne vois pas de bonnes raisons pour que ça ne fasse pas parti du standard.

          Je présume qu'il n'y a pas encore selon eux de standard qui se dégage (il y a aussi blueprint qui est très différent).

          Les logiciels sous licence GPL forcent leurs utilisateurs à respecter la GPL (et oui, l'eau, ça mouille).

  • # ... et les Engines

    Posté par . Évalué à 5.

    Une autre avancée significative concerne l'intégration du travail de Piotr Sarnacki sur les Engines (et le reloading il me semble). En Rails 2.3 il existait un plugin "Engines" qui permettait d'avoir un système de plugins dans son appli (avec pour les plugins la possibilité de surcharger automatiquement des vues, de proposer leurs propres migrations, leurs propres assets, etc.). Mais ce plugin n'a jamais été compatible Rails 3.0, et il n'y avait aucune solution de remplacement alors.

    Plus d'infos :
    - http://railscasts.com/episodes/277-mountable-engines
    - http://piotrsarnacki.com/2010/09/14/mountable-engines/

    • [^] # Re: ... et les Engines

      Posté par (page perso) . Évalué à 5.

      Les engines existaient déjà dans Rails 3.0 mais c'est vrai que ça a bien avancé avec le travail de Piotr Sarnacki et que j'aurais pu citer ça dans la dépêche.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.