Y a-t-il un contraire pour le terme «rétroportage»?


20

Si je comprends bien, le terme "rétroportage" est utilisé pour décrire un correctif qui est appliqué dans une future version qui est également porté vers une version précédente. La définition de Wikipédia est la suivante:

Le rétroportage consiste à prendre une certaine modification logicielle (patch) et à l'appliquer à une version plus ancienne du logiciel que celle pour laquelle il a été initialement créé. Il fait partie de l'étape de maintenance d'un processus de développement logiciel ...

Par exemple:

  • Un problème est découvert et corrigé dans la version 2.0. Le même correctif est porté et appliqué à V1.5.

Quel est le terme lorsque cela se fait dans la direction opposée?

  • Le problème est découvert et corrigé dans la V1.5. Le même correctif est porté et appliqué à V2.0.

Le terme "rétroportage" s'appliquerait-il toujours? Ou existe-t-il un terme tel que "Forwardporting" (qui ressemble beaucoup à "Port Forwarding")?


1
Et la "propagation"?
Gill Bates

Réponses:


28

C'est la même chose que le contraire d'une barre oblique inverse. Tout le monde veut appeler ça une barre oblique, mais en réalité c'est juste une "barre oblique". L'opposé du rétroportage est simplement le «portage».


"Portage" est un terme plus général et peut s'appliquer à tout transfert de code, même entre les langues. Dans mon entreprise, nous utilisons le «transfert de transfert» pour le cas spécifique décrit dans cette question.
Marko Topolnik

14

Cela ne se produit généralement pas comme vous le feriez pour résoudre ce problème dans la base de code V2.0 et éventuellement le rétroporter. :) En termes de contrôle de version, cela s'appelle simplement merging.


3
Cela se produit parce que V1.x et V2.x coexistent et sont maintenues en parallèle, chacune sur sa propre branche de maintenance. Un bug de version croisée peut être découvert et corrigé de n'importe quel côté.
Marko Topolnik

3
Si la V1.5 est déjà publiée, mais que la V2.0 sera publiée à l'avenir, vous devez d'abord résoudre le problème dans la V1.5, car cette version est déjà utilisée par les clients et nécessite une correction plus urgente. Ensuite, vous portez le correctif vers V2.0.
user1364368

@ user1364368 La gestion des versions est une préoccupation orthogonale. il est plus logique de corriger le bogue dans la version la plus récente de la base de code car il contient plus d'informations (son historique des modifications est un sur-ensemble de l'historique des modifications de l'ancienne version). pensez-y différemment: ignorez que le changement est lié à un bug. préféreriez-vous toujours introduire des modifications dans une ancienne version? voulez-vous, par exemple, commencer le développement de fonctionnalités dans une ancienne version de la base de code? cela se réduit très rapidement à une stratégie de développement absurde et rétrograde
awdz9nld

@ MartinKällman Le responsable de la base de code (pour V2.0) peut être (en raison des travaux de développement en cours) dans un état qui ne lui permet pas de développer le correctif. Cela peut prendre des jours ou des semaines avant que la tête de la base de code soit à nouveau propre, mais vous ne pouvez pas attendre aussi longtemps pour la correction d'urgence.
user1364368

1

Je suppose que j'utiliserais les termes: pérennité ou, en variante, compatibilité ascendante :

De Wikipedia à l'épreuve du temps :

Preuve d'avenir: L'expression d'épreuvage futur décrit le processus exclusif d'essayer d'anticiper les développements futurs, afin que des mesures puissent être prises pour minimiser les éventuelles conséquences négatives et saisir les opportunités.

Et compatibilité ascendante :

La compatibilité ascendante ou la compatibilité ascendante (parfois confondue avec l'extensibilité) est un concept de compatibilité pour la conception de systèmes, comme par exemple la compatibilité descendante. La compatibilité ascendante vise la capacité d'une conception à accepter gracieusement des entrées destinées à des versions ultérieures d'elle-même.

Ou les deux "pérennisation grâce à la compatibilité ascendante".

Oh le buzzwordry :)


0

Le rétroportage dans la direction opposée n'est que du portage , mais il n'y a aucune raison de le faire dans le contexte que vous décrivez.


0

Je pense que le terme "rétroport" se réfère uniquement à l'action d'apporter une fonctionnalité d'une nouvelle version d'un programme à une ancienne du même programme, pour les avantages de toujours l'utiliser.

Comme vous ne développez pas de nouvelle fonctionnalité sur les anciennes versions fermées, il n'y a pas de rétroportage "inversé" (si vous êtes, par définition, la version n'est pas ancienne).

Ce que vous appelez un "forwardport", corrigeant un problème à la fois dans une ancienne et une nouvelle version, est un simple bugfix ou patch.


-1

Il n'y a pas de terme couramment utilisé pour fusionner un ensemble de modifications d'une ancienne branche de logiciel à une plus récente. Sauf si la dernière branche du logiciel est très instable, la plupart des développeurs développeront des correctifs de bogues sur la dernière branche du logiciel, quelle que soit la version dans laquelle le bogue a été trouvé. Ceci est fait afin de réduire les conflits de fusion depuis la dernière branche du logiciel qui change plus fréquemment que les branches plus anciennes. Tout bogue logiciel signalé par un client est par définition signalé dans une version antérieure à laquelle il est corrigé, car le client n'a pas accès à la dernière branche de votre logiciel.


vrai, sauf si votre client souhaite un correctif MAINTENANT.
Alex R

-1

Je suis venu ici à la recherche d'une réponse parce que j'écris un commentaire de validation pour ce scénario même. Étant donné le manque de jargon réel pour cette situation courante, je vais juste le définir comme "fusionnant les correctifs de production dans la branche dev".

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.