Upgrade Ruby 3.2.3 -> 3.4.10
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 52/100
Piste de recherche
Examinez les six déclarations de version listées dans l’issue, ainsi que README.md et CLAUDE.md ; vérifiez d’abord l’état actuel de la mise à niveau de Rails dans #883 et recherchez les utilisations de OpenStruct avec grep. Régénérez backend/Gemfile.lock avec bundle lock, puis exécutez la suite complète et construisez l’image Docker. Le travail est terminé lorsque les six versions de Ruby concordent et que les critères d’acceptation sont remplis, y compris la confirmation de la prise en charge de Heroku.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Why
Ruby 3.2 reached end of life on 2026-04-01. 3.4 is the only branch in normal maintenance that Rails 7.2/8.x officially supports.
This lands after Rails 7.2 rather than before, because Rails 7.1 does not officially support Ruby 3.4 (that starts at 7.2.2 / 8.0.1). Doing the framework bump first removes the constraint and makes an intermediate stop at 3.3.12 unnecessary.
Trade-off worth stating: this keeps the app on EOL Ruby until this issue lands. If that is unacceptable, split into 3.2 -> 3.3.12 early (3.3 is supported by both Rails 7.1 and 7.2) and 3.3 -> 3.4 here.
Scope — six files must move together
/.ruby-version 3.2.3 -> 3.4.10
/.tool-versions ruby 3.2.3 -> ruby 3.4.10
/backend/.ruby-version 3.2.3 -> 3.4.10
/backend/Gemfile ruby "3.2.3" -> ruby "3.4.10"
/backend/Dockerfile FROM ruby:3.2.3 -> FROM ruby:3.4.10
/backend/Gemfile.lock RUBY VERSION (regenerate: bundle lock)
Plus docs: README.md, CLAUDE.md.
Trap: .ruby-version exists at the repo root and in backend/, and CI reads both — the erb-lint job resolves the root one while standardrb, rspec and brakeman resolve backend/. Bump both in the same commit. (The prep issue makes erb-lint consistent with the others, which reduces but does not remove this.)
Notes
Ruby 3.4 extracted several stdlibs to bundled gems. Checked the current lockfile: base64, bigdecimal, drb, mutex_m, logger, benchmark, csv, stringio are all already explicit entries. The one gap is ostruct, which Mongoid 9.1 adds as an explicit runtime dep. Worth a grep -rn "OpenStruct" app/ lib/ to confirm nothing else reaches for it.
Also confirm the Heroku stack supports 3.4 before deploying; the version is picked up from the Gemfile.
Acceptance criteria
- Full suite green
- Docker image builds
- All six version declarations consistent
Blocked by
#883 (Rails 7.2). Blocks #886.
Part of the Ruby + Rails upgrade sequence. Ruby 3.2 reached end of life on 2026-04-01 and the backend is on Rails 7.1; the goal is Ruby 3.4.10 and Rails 8.1, in steps that each keep CI green and are independently deployable.
- Langage dominant
- Ruby
- Étoiles
- 50
- Forks
- 21
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de rubyforgood/Flaredown
-
Four API faults found while backfilling coverage, documented but unfixedPeut-être pris @suttondemlong l’a pris il y a 50 jours. Ouvertelanguage:ruby type:bug
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
rubyforgood/Flaredown#913 · 1 commentaire ·
-
Coverage is measured differently locally and on CI, hiding 68 untested app filesPeut-être pris @suttondemlong l’a pris il y a 51 jours. Ouvertelanguage:ruby type:bug
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
rubyforgood/Flaredown#911 · 1 commentaire ·
-
Enable the Mongoid 9 defaultsOuvertetype:infrastructure
Difficulté 3/5 1-2 jours Accessibilité débutants 76/100
rubyforgood/Flaredown#904 ·
-
Upgrade Rails 8.0 -> 8.1Ouvertetype:infrastructure
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
rubyforgood/Flaredown#888 ·
-
type:infrastructure
Difficulté 4/5 3-5 jours Accessibilité débutants 38/100
rubyforgood/Flaredown#887 ·
Toutes les issues de rubyforgood/Flaredown
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
greenelab/lab-website-template#357 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
open-feature/ruby-sdk-contrib#283 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
shakacode/react_on_rails#5295 ·
Les mainteneurs répondent en général sous 1 jour
-
account: profile bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 5 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
hotwired/turbo-rails#792 · 1 commentaire ·