6 Punkte von GN⁺ 2024-10-08 | 1 Kommentare | Auf WhatsApp teilen
  • Die erste Beta-Version von Ruby on Rails 8 wurde offiziell veröffentlicht
  • Diese Version basiert auf Rails 7.2 und führt neue Funktionen sowie Optimierungen ein, die die Entwicklung mit Rails produktiver und angenehmer machen
  • Wichtige Highlights
    • Integration mit Kamal 2
    • Einführung von Propshaft als neue Standard-Asset-Pipeline
    • Umfassende Verbesserungen in ActiveRecord
    • Ein Upgrade der SQLite-Integration macht es zu einer geeigneten Option für den Produktionseinsatz

Einfaches Deployment mit Kamal 2 und Thruster

  • Mit Kamal 2 und Thruster wird das Deployment von Anwendungen vereinfacht
  • Kamal 2 ermöglicht schnelle und einfache Deployments auf Cloud-VMs, Bare-Metal-Servern oder in VPS-Umgebungen und reduziert damit die Abhängigkeit von Managed-Cloud-Services und PaaS-Plattformen.
  • Mit dem Befehl kamal setup lässt sich mit nur einem Kommando eine produktionsreife Rails-Umgebung auf einer Standard-Linux-Box einrichten.
  • Außerdem bietet die Integration mit Thruster Zero-Downtime-Deployments, HTTP/2-Unterstützung, automatisches SSL über Let's Encrypt, Gzip-Komprimierung sowie einfaches Hosting mehrerer Apps auf einem einzelnen Server.

Vereinfachtes Rails-Deployment mit Solid Adapters

  • Eine der wichtigsten Verbesserungen in Rails 8 ist die Vereinfachung des Deployments, indem die Anzahl zusätzlicher Services reduziert wird, die für die Umsetzung typischer Anforderungen von Webanwendungen nötig sind.
  • Mit SQLite allein lassen sich über drei neue datenbankbasierte Adapter – Solid Cable, Solid Cache und Solid Queue – Job-Queues, Caching und Pub/Sub-Messaging abwickeln.

Produktionsreifes SQLite

  • SQLite wird von einem leichtgewichtigen Entwicklungswerkzeug zu einer zuverlässigen Wahl, die sich auch für den Produktionseinsatz eignet.
  • Dank umfassender Arbeit am SQLite-Adapter und am Ruby-Treiber kann SQLite nun Action Cable, Rails.cache und Active Job effektiv unterstützen.

Eine neue Ära der Asset-Pipeline mit Propshaft

  • Mit Propshaft wird eine neue Standard-Asset-Pipeline eingeführt, die das langjährig genutzte Sprockets-System ersetzt.
  • Propshaft spiegelt einen einfachen und modernen Ansatz für das Asset-Management wider, der auf die Kernanforderungen moderner Entwickler zugeschnitten ist.

Vereinfachte integrierte Authentifizierung

  • Es wird ein Befehl bereitgestellt, mit dem sich ein Authentifizierungssystem mit datenbankbasierten Sessions und Passwort-Zurücksetzung einfach einrichten lässt.
  • Dieser Befehl erzeugt zentrale Dateien wie Modelle, Controller, Mailer und Views, damit sich schnell eine sichere und produktionsreife Authentifizierung aufbauen lässt.

Neuer script-Ordner und Generator

  • Es wird ein neuer script-Ordner eingeführt, in dem einmalige oder allgemeine Skripte wie Datenmigrationen, Bereinigungsaufgaben oder andere Utility-Aufgaben abgelegt werden können.
  • Mit dem neuen Script-Generator lassen sich Skripte einfach erstellen und ausführen.

Verschiedene Verbesserungen in Active Record

  • In Active Record werden wichtige Verbesserungen eingeführt, um die Leistung zu steigern, Migrationen zu vereinfachen, die Fehlerbehebung zu verbessern und komplexe Datenbank-Anwendungsfälle besser zu unterstützen.

Zusammenfassung von GN⁺

  • Rails 8 führt zahlreiche Updates ein, die die Produktivität von Entwicklern erhöhen und modernen Best Practices entsprechen, sodass der Fokus stärker auf dem Bau von Anwendungen statt auf der Bewältigung von Infrastrukturkomplexität liegt
  • Einfaches Deployment mit Kamal und Thruster, modernes Asset-Management mit Propshaft und die Produktionsreife von SQLite gehören zu den wichtigsten Vorteilen von Rails 8

1 Kommentare

 
GN⁺ 2024-10-08
Hacker-News-Kommentare
  • Ruby und Rails erleben derzeit offenbar eine Renaissance

    • Das Buch Programming Ruby erscheint dieses Jahr in einer neuen Ausgabe, die Ruby 3.3 behandelt
    • The Rails Way wird gerade für Rails 8 aktualisiert, und es sollen zwei Begleitbücher erscheinen
    • Bei PragProg ist mit Rails Scales ein neues Buch im Early-Access-Veröffentlichungsprozess
    • Dank YJIT ist Ruby sehr schnell geworden
    • Rails bekommt neue Funktionen für Erfolg in der „mittleren Größenordnung“
    • Ruby hat neue Funktionen wie Data (unveränderliche Structs), Pattern Matching, Fibers und Ractors erhalten
    • Ich habe Ruby zwar seit 2013 nicht mehr verwendet, finde die Möglichkeit einer Rückkehr aber spannend
  • Das größte Problem von Ruby ist nach wie vor die Dokumentation

    • Auf der offiziellen Dokumentationsseite sind alte Bücher und API-Dokumentation vermischt
    • Sprachfunktionen sind unterhalb der API aufgeführt, was verwirrend ist
    • Im Vergleich zur Python-Dokumentation fehlt ein systematisches Inhaltsverzeichnis
  • Ich arbeite an einem Projekt mit Rails und einer auf Microservices basierenden Architektur

    • Es gibt zwar den Trend, monolithische Architekturen zu vermeiden, aber ich schätze den zentralen Mehrwert von Rails sehr
    • Ich liebe es, dass das Rails-Team kontinuierlich Mehrwert schafft und Verbesserungen liefert
  • Rails ist ein Framework, das bei neuen Webprojekten Produktivität und Stabilität bietet

    • Neue Major-Versionen lassen sich bei bestehenden Apps ohne große Umwälzungen einführen
  • Manchmal denke ich, ich hätte vor 10–15 Jahren statt Node.js lieber Ruby/RoR wählen sollen

  • Ich nutze Rails zwar nicht, aber die Solid Adapters sehen cool aus

    • Mit einer einzelnen Datenbank kommt man lange genug aus
    • Für Cache, Pub/Sub, Volltextsuche usw. jeweils die beste Lösung einzusetzen, erhöht die operative Komplexität
  • Ich bin hauptsächlich Go-Entwickler, habe aber mit Erscheinen von Rails 7 begonnen, es für Hobbyprojekte zu nutzen

    • Es macht Spaß, ohne komplexe Frontend-Tools auf Dokku zu deployen
  • Ich habe Rails ein paar Mal ausprobiert, aber Node war leichter zu verstehen

    • Ich suche Einfachheit, und Rails ist das nicht
  • Ich bin Rails-Entwickler mit 20 Jahren Erfahrung und suche eine Vollzeitstelle

    • Mein GitHub-Handle ist dasselbe
  • Ich nutze RoR seit 2008 und es ist immer noch ein starkes und flexibles Framework

    • Man kann große Apps allein und schnell bauen
    • Ich hoffe auf Verbesserungen beim Deployment und nutze derzeit statt Kamal v1 Dokku
    • Ich freue mich auf Kamal 2