2009-10-26 5 views
1

Un client indique que la version de Rails que j'ai installée sur mes serveurs Ubuntu (2.3.4) n'est pas rétrocompatible avec l'ancienne version 2.3.2.Simple Question: Rails 2.3.4 est-il rétrocompatible avec Rails 2.3.2?

Je veux savoir si cela est vrai ou non avant d'essayer d'installer les Rails plus anciens.

+1

Vous pouvez jeter un oeil à cette question connexe: http://stackoverflow.com/questions/1612633/ how-to-support-backward-compatibilité-with-the-changes-to-the-accept-header-hand –

+0

Pourquoi dit-on que ce n'est pas rétrocompatible? –

Répondre

1

la beauté des rubygems. il suffit d'installer les deux versions et de les faire spécifier quelle version dans leur fichier d'environnement problème résolu qui se soucie si son compatible ou non

0

Les nouvelles fonctionnalités ne sont jamais rétrocompatibles.

+0

Oui, mais il peut y avoir des changements incompatibles vers l'arrière entre deux versions différentes. Ce ne sont pas de nouvelles fonctionnalités. C'est le retrait des fonctionnalités (généralement inutilisées). Un exemple concret est ici: http://stackoverflow.com/questions/1612633/how-to-support-backwards-compatibility-with-the-changes-to-the-accept-header-hand –

+0

le problème qui a conduit à la question. – SFEley

0

Eh bien, il est possible que vous utilisez des fonctionnalités qui sont uniquement disponibles sur la version 2.3.4, et donc ils ne sont pas sur la version 2.3.2.

Vérifiez son journal des modifications pour voir les différences.

0

La mise à niveau entre des versions Rails même mineures pose souvent des problèmes avec les anciennes applications. Cela dit, 2.3.4 est la version stable recommandée actuellement, il vaudrait probablement la peine de mordre la balle et de faire fonctionner l'application 2.3.2. Probablement ne prendra pas très longtemps, si vous avez une suite de tests décent.

0

Il y a aussi quelques bogues qui sont introduits. Comme celui-ci j'ai trouvé impliquant named scopes using includes. Qui a été introduit en 2.3.3 et n'a pas été fixé en 2.3.4

0

2.3.2 => 2.3.4 a été la mise à niveau la plus indolore jusqu'à présent pour nous (grande application avec beaucoup de l'héritage, les rails 1.x code).

Le seul major issues we had were with after_initialize vs exists?.

Tout cela varie d'une application à l'autre. Si vous hébergez l'application d'un client, alors vous devriez fournir des gemmes de toutes les versions de rails (elles seront heureusement assises côte à côte (90% du temps)).

Questions connexes