Was ist neu in Rails 5.1: Zum einen besseres JavaScript

Ruby on Rails, das erfahrene serverseitige Webframework, spielt in einem Upgrade, das kürzlich auf eine erste Beta-Version umgestellt wurde, gut mit JavaScript.

Rails 5.1 bietet mehrere Verbesserungen, einschließlich Verschlüsselung, Systemtests und Verwaltung von JavaScript-Abhängigkeiten von NPM über den neuen Yarn-Paketmanager von Facebook.

Durch die Verwaltung von JavaScript-Abhängigkeiten über Yarn können sich Benutzer auf Bibliotheken wie React via NPM verlassen. Assets werden in einer Pipeline verfügbar gemacht, und der binstub bin / yarn wird verwendet, um diese Abhängigkeiten hinzuzufügen. Entwickler, die mit Version 5.1 arbeiten, können JavaScript auch mithilfe des Webpack-Modulbündlers über ein Webpacker-Juwel kompilieren. In Rails 5.1 wird jQuery jedoch als Standardabhängigkeit gelöscht. Mit dem Umschreiben des unauffälligen Skriptadapters von Rails-UJS zur Verwendung von Vanille-JavaScript wird diese Abhängigkeit nicht mehr benötigt.

Rails 5.1 bietet außerdem eine Funktion zur Verwaltung verschlüsselter Geheimnisse. Eine verschlüsselte Geheimdatei wird mithilfe der Funktion bin / Rails Secrets: Setup eingerichtet, die einen Hauptschlüssel generiert, der außerhalb des Repositorys gespeichert werden kann, während Entwickler Produktionsgeheimnisse festschreiben können.

Für Systemtests enthält Rails 5.1 einen Wrapping der Capybara Ruby-Bibliothek für Anwendungstests. Es ist für den Chrome-Browser vorkonfiguriert und mit fehlerhaften Screenshots erweitert. Die Funktion für parametrisierte Mailer bietet die Möglichkeit, Mailer mit verfügbaren Parametern anzurufen, bevor eine Aktion aufgerufen wird. Rails 5.1 vereinfacht die Formularerstellung, indem zwei Hierarchien form_forund form_tagmit vereinheitlicht werden form_with. Eine Funktion für gerichtete Routen ermöglicht die Deklaration programmatischer Routen, die Ruby verwenden können, um Funktionen abhängig von Parametern auszuführen.

"Wir hatten im Laufe der Jahre eine stürmische, vielleicht sogar umstrittene Beziehung zu JavaScript. Aber diese Zeit ist vorbei", heißt es in einem Bulletin zu 5.1.0, das von dhh verfasst wurde, der vermutlich Rails-Gründer David Heinemeier Hansson ist. Das Bulletin betont, dass sich JavaScript in den letzten Jahren mit dem Aufkommen von ECMAScript 6 und Tools wie Yarn und Webpack "immens verbessert" hat.