Rails 6 Update- und Support-Optionen
Alle Infos zu Rails 6: Neuerungen dieser Version, Ihre Rails 6 EOL-Version heute und Support-Alternativen zu einem aufwändigen Rails-Update.
![Hintergrundbild Rails LTS](/system/production/images/rails_lts/000/675/images/18bb14a53f94984b3c7aab19de9d1444c7533a9c/Hintergrundbild_Rails_LTS_w1750.png?1728645396)
Jede neue Version von Rails baut auf den Stärken ihrer Vorgänger auf und bietet Entwicklern verbesserte Werkzeuge, höhere Leistung und neue Funktionen, um Webanwendungen effizienter und effektiver zu erstellen.
Ein Rails-Update auf die neueste Version ermöglicht es Entwicklern, von diesen Fortschritten zu profitieren. Zusätzlich ist es aus Sicherheitsgründen ab einer gewissen Zeit unerlässlich, entweder ein Upgrade auf eine neue Version durchzuführen, oder auf andere Art und Weise die Sicherheit der Anwendungen zu garantieren.
Hier erfahren Sie alles zu Rails 6, was EOL (End of Life) in der Rails-Welt bedeutet und wie sie heute ihre veraltete Rails-Version schützen können.
Support-Ende (EOL) Rails 6 ist nicht mehr offiziell unterstützt
Einige kommerzielle Anwendungen laufen aktuell auf Rails 6. Doch Ende 2024 ist der Community-Support für Rails 6 abgelaufen.
Die freiwillige Open-Source-Community stellt seitdem keine Patches für Sicherheitslücken mehr bereit. Dadurch sind Anwendungen auf Basis von Rails 6 anfällig für kritische Sicherheitsrisiken.
Nutzer sollten ein Upgrade auf Rails 7 durchführen, um wieder Community-Support zu erhalten, oder auf eine kommerzielle Support-Option wechseln – beispielsweise Rails LTS.
2013
50+
180+
Das waren die wichtigsten Neuerungen in Rails 6
- Action Mailbox für eingehende E-Mails
Action Mailbox ermöglicht es, eingehende E-Mails an controller-ähnliche Mailboxen zu leiten. Dies erleichtert die Verarbeitung von E-Mails innerhalb der Anwendung, beispielsweise um Support-Tickets oder Kommentare direkt aus E-Mails zu erstellen.
Action Text für Rich-Text-Bearbeitung - Mit Action Text wird die Bearbeitung von Rich-Text-Inhalten direkt in Rails integriert. Es beinhaltet den Trix-Editor, der Formatierungen, Links, Zitate, Listen sowie das Einbetten von Bildern und Galerien unterstützt. Die erstellten Inhalte werden in einem eigenen RichText-Modell gespeichert und können mit Active Record-Modellen verknüpft werden.
- Paralleles Testen für schnellere Testausführung
Rails 6 führt die Möglichkeit ein, Test-Suites parallel auszuführen. Durch die Aufteilung der Tests auf mehrere Prozesse oder Threads wird die Gesamtzeit für das Testen erheblich reduziert, was die Effizienz im Entwicklungsprozess steigert. - Unterstützung für mehrere Datenbanken
Mit Rails 6 wird die native Unterstützung für mehrere Datenbanken eingeführt. Entwickler können nun einfacher zwischen verschiedenen Datenbankverbindungen wechseln und Modelle so konfigurieren, dass sie mit unterschiedlichen Datenquellen interagieren. Dies ist besonders nützlich für Anwendungen, die Daten aus verschiedenen Quellen nutzen oder eine Trennung von Lese- und Schreibvorgängen benötigen. - Standardmäßige Integration von Webpacker
Rails 6 setzt Webpacker als Standard für die Verwaltung von JavaScript ein. Dies erleichtert die Integration moderner JavaScript-Bibliotheken und -Frameworks und fördert eine zeitgemäße Frontend-Entwicklung innerhalb von Rails-Anwendungen. - Neuer Autoloader "Zeitwerk"
Mit Rails 6 wird "Zeitwerk" als neuer Code-Loader eingeführt. Dieser ist effizient, thread-sicher und entspricht den Ruby-Konstanten-Semantiken. Zeitwerk lädt Klassen und Module bei Bedarf automatisch, was die Notwendigkeit von manuellen require-Anweisungen reduziert und die Code-Organisation verbessert.
Herausforderungen bei einem Update von Rails 6
Es gibt gute Gründe, die Unternehmen davon abhalten, auf die neueste Version von Rails zu aktualisieren. Hier sind einige Herausforderungen, auf die Sie bei der Planung Ihres Upgrades stoßen könnten.
- Umfassende Gem-Upgrades sind erforderlich
Alle Gems, die mit Rails integriert sind, müssen auf eine neuere Version aktualisiert werden. Nicht mehr gepflegte Gems müssen durch eine aktuelle Alternative ersetzt werden. - Monkey Patches werden nicht mehr funktionieren
Monkey Patches, die in die internen Abläufe von Rails oder anderen Gems eingreifen, brechen in der Regel nach einem Upgrade. - Upgrades sind schwer umzusetzen
Wenn eine Rails-Anwendung nur geringe Testabdeckung hat, wird das Testen eines Updates zur Herausforderung. Zudem muss die gesamte Feature-Entwicklung während des Upgrades pausieren. - Secrets.yml wird nicht mehr unterstützt
Rails 7 hat die Unterstützung für Secrets entfernt. Alle Secrets müssen auf verschlüsselte Credentials migriert werden. - Neue Handhabung für Frontend-Assets
Rails hat seine Asset-Pipeline dreimal überarbeitet – zuerst mit dem Wechsel zu Sprockets, dann zu Webpacker und schließlich zu Propshaft mit externen Build-Tools (wie esbuild) für JavaScript. - API-Änderungen
Da sich die Rails-API mit jeder Hauptversion weiterentwickelt, wurden verschiedene Klassen, Methoden und Optionen umbenannt oder entfernt. - Webpacker wurde entfernt
Das Webpacker-Gem wurde in Rails 7 entfernt und wird nicht mehr gepflegt. JavaScript-Dateien müssen mit Import-Maps, esbuild oder einem anderen externen Build-Tool verarbeitet werden.
Die Macher von Rails LTS Über makandra
makandra ist das cleverste Team von Rails-Entwicklern, mit dem ich in meiner Karriere gearbeitet habe. Ich war sehr beeindruckt, wie sie sich in eine alte, haarige Codebasis stürzten und sofort damit beginnen konnten, unsere Tests und Zuverlässigkeit zu verbessern, ohne viel Management von uns. Der geschäftliche Nutzen, den wir daraus ziehen konnten, war überwältigend.
Lassen Sie uns über Rails LTS sprechen
Wir beraten Sie gerne, wenn Sie Unterstützung im Umgang mit einer alten Rails-Version benötigen. Ob Sie mit Rails LTS das Upgrade umgehen, oder einen Partner suchen, der Ihre Anwendung erneuert, als Rails-Agentur mit 15+ Jahren Erfahrung sind wir der richtige Partner für Sie.