Dear Jakob,
On 15/08/2019 12:10, Jakob Schiøtz wrote:
Hi,
We are maintaining the ASE (Atomic Simulation Environment) and GPAW (a Density
Functional Theory code). GPAW depends on ASE, and the development of the two
packages is tightly integrated. In addition, a few other packages depend on
ASE.
We would like to release new versions of ASE + GPAW, also on the 2018b
toolchain (which is the one we use ourselves). That does, however, create a
version conflict according to the Travis CI on github, see
https://github.com/easybuilders/easybuild-easyconfigs/pull/8751
The problem is that one version of GPAW (and a few other packages) depend on
ASE 3.17.0 and this new GPAW depends on ASE 3.18.0. It was my impression that
this could be solved by changing the package suffix, i.e. call the new version
of GPAW GPAW/19.8.1-foss-2018b-ASE-3.18.0-Python-3.6.6 instead of
GPAW/19.8.1-foss-2018b-Python-3.6.6 . However, that does not work and the
Travis CI self test still complains.
Have I misunderstood what I should do, or is this just not possible?
The check we have in Travis is there to avoid accidentally introducing
easyconfigs to the same "toolchain generation" (like 2018b) that are
incompatible with each other.
The intention is that every easyconfig in the 2018b generation is
compatible with every other (with some caveats, for example the Python
version included as a dep which could be 2.x or 3.x).
We do make some explicit exceptions, but then the tests run by Travis
have to be made aware of this; see the logic in
https://github.com/easybuilders/easybuild-easyconfigs/blob/master/test/easyconfigs/easyconfigs.py#L173
.
You could add ASE to list of software (which now has Boost, R, PLUMED,
Lua) for which we allow to use different version as long as that's
clearly indicated in the versionsuffix, see
https://github.com/easybuilders/easybuild-easyconfigs/blob/master/test/easyconfigs/easyconfigs.py#L199
.
If you do so, do that in in a separate commit in the context of a PR
where it's required, for example in PR #8751
regards,
Kenneth