#1136319 purify: FTBFS with libeigen3-dev 5.0 (major version transition)

#1136319#5
Date:
2026-05-11 20:38:52 UTC
From:
To:
Dear Maintainer,

your package depends on libeigen3-dev. The upstream released a
new major version of this mathematical library, 5.0.0. Some
basic information about new features and changes in this version
can be found here:

https://libeigen.gitlab.io/releases/5.0/

This is a major version change and may require code changes in packages
depending on eigen3. The key breaking changes include:

  - Minimum required C++ standard is now C++14
  - Changes in the build system integration
  - Some API name changes

purify FTBFS with libeigen3-dev 5.0.1. The full build log is available at:

https://debusine.debian.net/debian/developers-gladk-eigen3/artifact/3760899/

Here is the most probably relevant part of the failing build log:
    ===========================================

/build/reproducible-path/purify-5.0.1/cpp/purify/../purify/IndexMapping.h: In function ‘purify::Sparse<typename T0::Scalar> purify::compress_outer(const T0&)’:
/build/reproducible-path/purify-5.0.1/cpp/purify/../purify/IndexMapping.h:91:17: error: ‘MappedSparseMatrix’ is not a member of ‘Eigen’; did you mean ‘SparseMatrix’? [-Wtemplate-body]
   91 |   return Eigen::MappedSparseMatrix<typename T0::Scalar, Eigen::RowMajor,
      |                 ^~~~~~~~~~~~~~~~~~
      |                 SparseMatrix
/build/reproducible-path/purify-5.0.1/cpp/purify/../purify/IndexMapping.h:91:55: error: expected ‘(’ before ‘,’ token [-Wtemplate-body]
   91 |   return Eigen::MappedSparseMatrix<typename T0::Scalar, Eigen::RowMajor,
      |                                                       ^
      |                                                       (
/build/reproducible-path/purify-5.0.1/cpp/purify/../purify/IndexMapping.h:92:79: error: expected ‘(’ before ‘>’ token [-Wtemplate-body]
   92 |                                    typename Sparse<typename T0::Scalar>::Index>(
      |                                                                               ^
      |                                                                               (

    ===========================================
libeigen3-dev_5.0.1-1 is available in experimental.

When this package version lands into unstable (probably at the beginning
of June 2026), this bug will be increased in severity to serious.

Thanks,

Anton