gettext: Distributed Development

1 
1 13.6.1 Avoiding version mismatch in distributed development
1 -----------------------------------------------------------
1 
1    In a project development with multiple developers, there should be a
1 single developer who occasionally - when there is desire to upgrade to a
1 new ‘gettext’ version - runs ‘gettextize’ and performs the changes
1 listed in ⇒Adjusting Files, and then commits his changes to the
1 repository.
1 
1    It is highly recommended that all developers on a project use the
1 same version of GNU ‘gettext’ in the package.  In other words, if a
1 developer runs ‘gettextize’, he should go the whole way, make the
1 necessary remaining changes and commit his changes to the repository.
1 Otherwise the following damages will likely occur:
1 
1    • Apparent version mismatch between developers.  Since some ‘gettext’
1      specific portions in ‘configure.ac’, ‘configure.in’ and
1      ‘Makefile.am’, ‘Makefile.in’ files depend on the ‘gettext’ version,
1      the use of infrastructure files belonging to different ‘gettext’
1      versions can easily lead to build errors.
1 
1    • Hidden version mismatch.  Such version mismatch can also lead to
1      malfunctioning of the package, that may be undiscovered by the
1      developers.  The worst case of hidden version mismatch is that
1      internationalization of the package doesn’t work at all.
1 
1    • Release risks.  All developers implicitly perform constant testing
1      on a package.  This is important in the days and weeks before a
1      release.  If the guy who makes the release tar files uses a
1      different version of GNU ‘gettext’ than the other developers, the
1      distribution will be less well tested than if all had been using
1      the same ‘gettext’ version.  For example, it is possible that a
1      platform specific bug goes undiscovered due to this constellation.
1