Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Politica di rilascio di Godot

La politica di rilascio di Godot è in costante evoluzione. Ciò che è descritto di seguito ha lo scopo di dare un'idea generale di cosa aspettarsi, ma quel che accadrà effettivamente dipende dalle scelte dei contributori principali e dalle esigenze della comunità in un determinato momento.

Controllo delle versioni di Godot

Godot segue vagamente il Semantic Versioning con un sistema di versioning major.minor.patch, sebbene con un'interpretazione di ogni termine adattata alla complessità di un motore di gioco:

  • La versione major è incrementata quando si verificano importanti rotture di compatibilità che implicano un significativo lavoro di conversione per spostare i progetti da una versione major all'altra.

    Per esempio, la conversione di progetti Godot da Godot 3.x a Godot 4.0 richiede l'esecuzione del progetto attraverso uno strumento di conversione, e poi l'esecuzione manuale di un certo numero di ulteriori aggiustamenti per ciò che lo strumento non poteva fare automaticamente.

  • La versione minor è incrementata per i rilasci di funzionalità che non rompono la compatibilità in modo importante. Piccole rotture di compatibilità in aree molto specifiche possono accadere nelle versioni minori, ma la stragrande maggioranza dei progetti non dovrebbe essere influenzata o richiedere un significativo lavoro di conversione.

    Questo perché Godot, come motore di gioco, si occupa di molte aree tra le quali il rendering, la fisica e lo scripting. Correggere bug o implementare nuove funzionalità in un area può avvolte richiedere di cambiare il comportamento di una funzionalità, o di modificare l'interfaccia di una classe, anche se il resto dell'API del motore rimane retro compatibile.

Suggerimento

L'aggiornamento a una nuova versione minore è quindi raccomandato a tutti gli utenti, ma è necessario fare alcuni test per assicurarti che il tuo progetto si comporti ancora come previsto.

  • La versione patch viene incrementata per i rilasci di manutenzione che si focalizzano sul correggere bug e problemi di sicurezza, sull'implementare nuovi requisiti per supporto delle piattaforme, e sul backportare miglioramenti di usabilità sicuri. Rilasci patch sono retro compatibili.

    Le versioni patch possono includere nuove funzionalità minori che non hanno impatto sull'API esistente, e perciò non c'è rischio di impattare progetti esistenti.

Suggerimento

Perciò aggiornare a nuove versioni patch è considerato sicuro e altamente consigliato a tutti gli utenti di un ramo stabile.

Chiamiamo major.minor combinazioni di rami stabili. Ogni ramo stabile inizia con un rilascio major.minor (senza lo 0 per patch) ed è poi sviluppato per rilasci di mantenimento in un ramo Git con lo stesso nome (per esempio, aggiornamenti patch per il ramo stabile 4.0 sono sviluppati nel ramo Git 4.0).

Tempistiche di supporto della versione

Stable branches are supported at least until the next stable branch is released and has received its first patch update. In practice, we support stable branches on a best effort basis for as long as they have active users who need maintenance updates.

Ogni volta che viene rilasciata una nuova versione maggiore, rendiamo quella precedente una versione con supporto a lungo termine, e ci impegniamo al massimo per correggere i problemi riscontrati da utenti che non possono trasferire progetti complessi alla nuova versione maggiore. Questo è stato il caso del branch 2.1, ed è il caso del branch 3.x.

In una determinata serie di versioni minori, solo l'ultima riceve il supporto. Se si riscontra un problema utilizzando una versione di patch più vecchia, si prega di aggiornare a quella più recente di quella serie e di eseguire nuovamente il test prima di segnalare un problema su GitHub.

Versione

Data di rilascio

Livello di supporto

Godot 4.7 (master)

Q2/Q3 2026 (stima)

instabile Sviluppo. Riceve nuove funzionalità, miglioramenti dell'usabilità e delle prestazioni, nonché correzioni di bug, durante la fase di sviluppo.

Godot 4.6

Gennaio 2026

supportato Riceve correzioni per bug, per problemi di sicurezza e per abilitare il supporto di piattaforme.

Godot 4.5

Settembre 2025

parziale Riceve solo correzioni per problemi di sicurezza e di supporto di piattaforme.

Godot 4.4

Marzo 2025

eol Non più supportato (ultimo aggiornamento: 4.4.1).

Godot 4.3

Agosto 2024

eol Non più supportata (ultimo aggiornamento: 4.3).

Godot 4.2

Novembre 2023

eol Non più supportata (ultimo aggiornamento: 4.2.2).

Godot 4.1

Luglio 2023

eol Non più supportata (ultimo aggiornamento: 4.1.4).

Godot 4.0

Marzo 2023

eol Non più supportato (ultimo aggiornamento: 4.0.4).

Godot 3.7 (3.x)

Nessuna data prevista per ora

supportato Beta. Riceve nuove funzionalità, miglioramenti dell'usabilità e delle prestazioni, nonché correzioni di bug, durante la fase di sviluppo.

Godot 3.6

Settembre 2024

supportato Riceve correzioni per bug, per problemi di sicurezza e per abilitare il supporto di piattaforme.

Godot 3.5

Agosto 2022

eol Non più supportata (ultimo aggiornamento: 3.5.3).

Godot 3.4

Novembre 2021

eol Non più supportato (ultimo aggiornamento: 3.4.5).

Godot 3.3

Aprile 2021

eol Non più supportato (ultimo aggiornamento: 3.3.4).

Godot 3.2

Gennaio 2020

eol Non più supportato (ultimo aggiornamento: 3.2.3).

Godot 3.1

Marzo 2019

eol Non più supportato (ultimo aggiornamento: 3.1.2).

Godot 3.0

Gennaio 2018

eol Non più supportato (ultimo aggiornamento: 3.0.6).

Godot 2.1

Luglio 2016

eol Non più supportato (ultimo aggiornamento: 2.1.6).

Godot 2.0

Febbraio 2016

eol Non più supportato (ultimo aggiornamento: 2.0.4.1).

Godot 1.1

Maggio 2015

eol Non più supportato.

Godot 1.0

Dicembre 2014

eol Non più supportato.

Legenda: supportato Pieno supporto - parziale Supporto parziale - eol Non supportato (end of life) - instabile Versione di sviluppo

Le versioni di Godot pre-release non sono pensate per essere utilizzate in produzione e sono fornite a solo scopo di collaudo.

Vedi anche

Consultare Passare da Godot 3 a Godot 4 per istruzioni sulla migrazione di un progetto da Godot 3.x a 4.x.

Quale versione dovrei usare per un nuovo progetto?

Consigliamo di utilizzare Godot 4.x per i nuovi progetti, poiché la serie Godot 4.x sarà supportata ben oltre la fine degli aggiornamenti della versione 3.x. Un aspetto da tenere presente è che molta documentazione di terze parti non è ancora stata aggiornata per Godot 4.x. Se si deve seguire un tutorial progettato per Godot 3.x, consigliamo di tenere aperto Passare da Godot 3 a Godot 4 in una scheda separata per verificare quali metodi sono stati rinominati (nel caso in cui si verifichi un errore di script tentando di utilizzare un nodo o un metodo specifico che è stato rinominato in Godot 4.x).

Se il proprio progetto richiede una funzionalità mancante nella versione 4.x (ad esempio GLES2/WebGL 1.0), si dovrebbe piuttosto utilizzare Godot 3.x per un nuovo progetto.

Dovrei aggiornare il mio progetto per utilizzare le nuove versioni del motore?

Nota

Aggiornare un software mentre si lavora a un progetto è intrinsecamente rischioso, quindi valuta attentamente se sia una buona idea per il tuo progetto prima di tentare un aggiornamento. Inoltre, effettua backup del progetto o utilizza un controllo versioni per evitare di perdere dati in caso di problemi durante l'aggiornamento.

Detto questo, facciamo del nostro meglio per far sì che le versioni minori e soprattutto le patch siano compatibili con i progetti esistenti.

La raccomandazione generale è di aggiornare il progetto alle nuove versioni di patch, come aggiornare dalla versione 4.0.2 alla 4.0.3. Ciò garantisce la correzione di bug, aggiornamenti di sicurezza e aggiornamenti del supporto di piattaforme (particolarmente importante per le piattaforme mobili). Inoltre, si ottiene supporto continuo, poiché solo l'ultima versione di patch riceve supporto sulle piattaforme ufficiali della comunità.

Per le versioni minori, è opportuno valutare caso per caso se sia opportuno effettuare l'aggiornamento. Ci siamo sforzati notevolmente per rendere il processo di aggiornamento il più fluido possibile, ma nelle versioni minori potrebbero essere presenti alcune modifiche incompatibili, insieme a un rischio maggiore di regressioni. Alcune correzioni incluse nelle versioni minori potrebbero anche modificare il comportamento previsto di una classe, se necessario, per correggere qualche bug. Questo vale in particolare per le classi contrassegnate come sperimentali nella documentazione.

Le versioni maggiori introducono molte nuove funzionalità, ma rimuovono anche funzionalità preesistenti e potrebbero aumentare i requisiti hardware. Inoltre, richiedono molto più lavoro da aggiornare rispetto alle versioni minori. Pertanto, se si è soddisfatti del funzionamento attuale del progetto, consigliamo di utilizzare la versione maggiore con cui è stato iniziato il progetto. Ad esempio, se il progetto è stato iniziato con la versione 3.5, consigliamo di aggiornare alla versione 3.5.2 ed eventualmente alla 3.6 in futuro, ma non alla versione 4.0+, a meno che il progetto non abbia effettivamente bisogno delle nuove funzionalità incluse nella versione 4.0+.

Quando uscirà la prossima versione?

Sebbene i contributori di Godot non abbino scadenze da rispettare, cerchiamo di pubblicare versioni minori con una certa frequenza.

In particolare, dopo il ciclo di rilascio molto lungo per la versione 4.0, stiamo passando a un flusso di sviluppo più veloce, la versione 4.1 è stata rilasciata 4 mesi dopo la 4.0 e la 4.2 è stata rilasciata 4 mesi dopo la 4.1.

Rilasci minori frequenti ci consentiranno di rilasciare nuove funzionalità più rapidamente (eventualmente in forma sperimentale), di ricevere rapidamente il feedback degli utenti e di iterare per migliorare tali funzionalità e la loro usabilità. Allo stesso modo, l'esperienza utente generale sarà migliorata in modo più costante, con un percorso più rapido agli utenti finali.

Le versioni di manutenzione (patch) saranno rilasciate quando necessario con cicli di sviluppo potenzialmente molto brevi, per fornire agli utenti della versione stabile attuale le ultime correzioni di bug per le loro esigenze di produzione.

Al momento non è prevista una data di rilascio per la prossima versione minore di 3.x, la 3.7. L'attuale versione stabile, la 3.6, potrebbe essere l'ultima versione stabile di Godot 3.x. Godot 3.x è supportato con il massimo impegno possibile, purché i collaboratori continuino a mantenerlo.

Quali sono i criteri di compatibilità tra le versioni del motore?

Nota

Questa sezione è pensata per essere utilizzata dai collaboratori per determinare quali modifiche siano sicure per una determinata versione. L'elenco non è esaustivo; descrive solo le situazioni più comuni riscontrate durante lo sviluppo di Godot.

Le seguenti modifiche sono accettabili nelle versioni patch:

  • Correggere un bug in un modo che non abbia un impatto negativo significativo sulla maggior parte dei progetti, come un bug visivo o fisico. Il motore di fisica di Godot non è deterministico, quindi le correzioni di bug sulla fisica non sono considerate una violazione della compatibilità. Se la correzione di un bug ha un impatto negativo che potrebbe avere ripercussioni su molti progetti, dovrebbe essere resa facoltativa (ad esempio, attraverso un'impostazione del progetto o un metodo separato).

  • Aggiungere un nuovo parametro facoltativo a un metodo.

  • Aggiustamenti di portata limitata all'usabilità dell'editor.

Si noti che tendiamo a essere più prudenti con le correzioni che consentiamo in ogni successiva versione di patch. Ad esempio, la versione 4.0.1 potrebbe ricevere correzioni più notevoli rispetto alla 4.0.4.

Le seguenti modifiche sono accettabili nelle versioni minori, ma non nelle versioni di patch:

  • Nuove funzionalità importanti.

  • Rinominare un parametro di un metodo. In C#, i parametri dei metodi si possono passare per nome (ma non in GDScript). Di conseguenza, ciò può causare problemi in alcuni progetti che utilizzano C#.

  • Deprecare un metodo, una variabile membro o una classe. Ciò si ottiene aggiungendo un flag "deprecated" al riferimento classe, il quale sarà mostrato nell'editor. Quando un metodo è contrassegnato come deprecato, è previsto che sia rimosso nella prossima versione maggiore.

  • Cambiamenti che influenzano gli aspetti visivi del tema predefinito del progetto.

  • Le correzioni di bug che modificano significativamente il comportamento o il risultato, con l'obiettivo di soddisfare al meglio le aspettative degli utenti. In confronto, nelle versioni di patch, potremmo preferire mantenere un comportamento buggato in modo da non compromettere i progetti esistenti che probabilmente già dipendono dal bug o utilizzano una soluzione alternativa.

  • Ottimizzazioni delle prestazioni che risultano in cambiamenti visuali.

I seguenti cambiamenti sono considerati incompatibili e si possono effettuare solo in una nuova versione principale:

  • Rinominare o rimuovere un metodo, una variabile membro o una classe.

  • Modificare l'albero di ereditarietà di un nodo facendolo ereditare da una classe diversa.

  • Modificare il valore predefinito di un'impostazione del progetto in una maniera che influisce sui progetti esistenti. Per influire solo sui nuovi progetti, il gestore dei progetti dovrebbe piuttosto scrivere un file project.godot modificato.

Poiché Godot 5.0 non è ancora stato ramificato, al momento sconsigliamo di apportare modifiche di questo tipo che compromettano la compatibilità.

Nota

Quando si modifica la firma di un metodo in qualsiasi modo (inclusa l'aggiunta di un parametro facoltativo), è necessario creare un metodo di compatibilità GDExtension. Questo garantisce che le GDExtension esistenti continuino a funzionare anche nelle versioni di patch e minori, affinché gli utenti non debbano ricompilarle. Consultare Gestione delle interruzioni di compatibilità per ulteriori informazioni.