Is there any reason 'master' has PETSC_VERSION equal to the latest patch
release version,
rather than the first upcoming release version?

Surely, the use of PETSC_VERSION_LT() makes it relatively easy to guard
against API changes in derived software, but it's a bit odd to see
#if PETSC_VERSION_LT(3,5,0)
/* Works for petsc-3.4.x and earlier. */
#else
/* Supposed to work petsc-3.4.x as long as !PETSC_VERSION_RELEASE */
#endif

Besides, master's "version" changes with every patch release.
It might not be of much practical importance, but looks a bit strange, in
my opinion.
At least intuitively, I think of 'master' as a sort of 'release candidate'
for petsc-3.5.0.
Wouldn't it be natural to name it that way?  Is there a technical reason
not to?

Dmitry.

Reply via email to