On Sep 15, 2019, at 22:31, Eric F (iEFdev) wrote:

> What would be better (ie good “portiqette”)… Adding subports (keeping the 
> variants), or replacing variants with subports?

Provide only one way for a user to install a feature. Convert variants to 
subports, if appropriate.

Usually if a variant changes names we keep a compatibility variant around for a 
time. For example, if a port provided a variant X which a user may have 
installed, and then we change the variant name to Y, we keep a variant X that's 
marked as requiring variant Y. When the user upgrades their installation, they 
will automatically get the new variant Y (and the old variant X which now does 
nothing). After a sufficient period of time to allow all users to have upgraded 
(we usually recommend one year), the old variant X can be removed.

Converting variants to subports may or may not allow that same easy upgrade 
path to take place. For example, if the new subport has a dependency on the 
main port, you cannot make the old variant depend on the new subport, because 
that would introduce a circular dependency. One possibility in that case is to 
leave a compatibility variant for a time that does nothing but print an error 
message telling the user to install the subport.

Reply via email to