Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Upgrade Ruby 3.2.3 -> 3.4.10

Aperta
#885 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
52/100
Tipo di issue
Refactoring
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
docker, rails, ruby
Ambito
backend, devops

Direzione di ricerca

Esamina le sei dichiarazioni di versione elencate nell’issue, insieme a README.md e CLAUDE.md; controlla prima lo stato attuale dell’aggiornamento di Rails in #883 e cerca gli utilizzi di OpenStruct con grep. Rigenera backend/Gemfile.lock con bundle lock, quindi esegui la suite completa e crea l’immagine Docker. Il lavoro è completato quando tutte e sei le versioni di Ruby coincidono e i criteri di accettazione sono soddisfatti, inclusa la conferma del supporto per Heroku.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

type:infrastructure

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.

Lingua principale
Ruby
Stelle
50
Fork
21
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di rubyforgood/Flaredown

Tutte le issue di rubyforgood/Flaredown

Issue simili

Altre issue su Ruby

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.