dune-istl 2.11.0-2
Package Information
| Description | toolbox for solving PDEs -- iterative solvers (development files) DUNE, the Distributed and Unified Numerics Environment is a modular toolbox for solving partial differential equations (PDEs) with grid-based methods. It supports the easy implementation of methods like Finite Elements (FE), Finite Volumes (FV), and also Finite Differences (FD). This package contains the development files for the iterative solver template library. |
|---|---|
| Maintainer | Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org> |
| Changed By | Ansgar <ansgar@debian.org> |
| Sponsor | ansgar@debian.org |
| Distribution | experimental |
| Architecture | any all |
| VCS | git: https://salsa.debian.org/science-team/dune-istl.git (browse) |
| Popcon Installs | 71 |
| Binary NEW | Yes (new binary packages of a source already in sid) |
| Tracker | https://tracker.debian.org/pkg/dune-istl |
| Uploaded | 4 hours ago |
New Package Report
.changes
| Distribution | experimental |
|---|---|
| Date | Sat, 31 Oct 2026 09:43:42 +0100 |
| Source | dune-istl |
| Version | 2.11.0-2 |
| Changed-By | Ansgar <ansgar@debian.org> |
| Architecture | all amd64 source |
Changelog
dune-istl (2.11.0-2) experimental; urgency=medium . * Add Python bindings.
.dsc
| Section | libdevel |
|---|---|
| Priority | optional |
| Component | main |
| Package-List | libdune-istl-dev deb libdevel optional arch=any libdune-istl-doc deb doc optional arch=all python3-dune-istl deb python optional arch=any |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: dune-istl Source: https://www.dune-project.org/dev/downloadgit/ Files: * Copyright: 2014--2016 Marco Agnese 2025 Tobias Meyer Andersen 2003--2013 Peter Bastian 2020 Jean Benezech 2004--2025 Markus Blatt 2022 Eduardo Bueno 2022 Samuel Burbulla 2014--2023 Ansgar Burchardt 2004--2005 Adrian Burri 2017--2018 Matthew Collins 2008--2024 Andreas Dedner 2018--2022 Nils-Arne Dreier 2003--2023 Christian Engwer 2005--2019 Jorrit Fahlke 2008--2017 Bernd Flemisch 2017--2020 Janick Gerstenberger 2005--2025 Carsten Gräser 2015--2020 Felix Gruber 2012--2025 Christoph Grüninger 2016--2020 René Heß 2018 Claus-Justus Heine 2016--2019 Stephan Hilb 2018--2024 Lasse Hinrichsen 2012--2013 Olaf Ippisch 2018--2024 Patrick Jaap 2013--2019 Dominic Kempf 2015 Emmanouil Kiagias 2004--2025 Robert Klöfkorn 2016--2025 Timo Koch 2007 Sreejith Pulloor Kuttanikkad 2013--2016 Arne Morten Kvarving 2009--2013 Andreas Lauser 2012--2017 Tobias Malkmus 2007--2009 Sven Marnach 2013 René Milk 2024 Alexander Müller 2013--2019 Steffen Müthing 2016 Maikel Nadolski 2003--2005 Thimo Neubauer 2010--2012 Rebecca Neumann 2008--2018 Martin Nolte 2012--2015 Andreas Nüßing 2013--2014 Marian Piatkowski 2011--2016 Elias Pipping 2013 Jurgis Pods 2018--2025 Simon Praetorius 2009 Atgeirr Rasmussen 2018--2022 Lukas Renelt 2021--2025 Santiago Ospina De Los Ríos 2008--2013 Uli Sack 2004--2025 Oliver Sander 2015--2019 Linus Seelinger 2013 Bård Skaflestad 2018 Mathis Springwald 2023 Jakob Torben 2006--2010 Martin Weiser 2019--2020 Kilian Weishaupt 2015 Sebastian Westerheide 2011--2012 Matthias Wohlmuth 2014--2016 Jonathan Youett License: GPL-2 with DUNE exception Files: debian/* Copyright: 2011-2020, Ansgar <ansgar@debian.org> 2021, Patrick Jaap 2022-2026, Equinor ASA License: GPL-2 with DUNE exception License: GPL-2 with DUNE exception The DUNE library and headers are licensed under version 2 of the GNU General Public License, with a special exception for linking and compiling against DUNE, the so-called "runtime exception." The license is intended to be similar to the GNU Lesser General Public License, which by itself isn't suitable for a template library. . The exact wording of the exception reads as follows: . As a special exception, you may use the DUNE library without restriction. Specifically, if other files instantiate templates or use macros or inline functions from one or more of the DUNE source files, or you compile one or more of the DUNE source files and link them with other files to produce an executable, this does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License. . This license clones the one of the libstdc++ library. . On Debian systems, the full text of the GNU General Public License version 2 can be found in the file `/usr/share/common-licenses/GPL-2'.
DFSG Assistant LLM REVIEW 1 blocker, 1 important, 1 minor
This is an LLM based review using a Debian Inference based workflow. It was not written by a member of the DFSG team and has not been checked by one. It is not a decision on the package: it may be wrong, and it may have missed things.
Reviewed 3 hours ago.
Proposes a replacement debian/watch:
debian/watch in version 5 format
Report
DFSG NEW review for dune-istl version 2.11.0-2
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: No - Packaging is of good quality: Yes
- Issues: 1 blocker, 1 important, 1 minor
- debian/watch: old format (version 4)
- debian/copyright: machine-readable
- Scan before the review: nothing found
Licensing
The tree is uniformly licensed GPL-2 (only) with the DUNE runtime exception, expressed by REUSE-style SPDX-License-Identifier: LicenseRef-GPL-2.0-only-with-DUNE-exception headers, and that licence is DFSG-free and compatible with the GPL-2 the packaging uses; no file is unlicensed and no third-party code is vendored. debian/copyright is DEP-5 and its two stanzas and short name are structurally correct, but it does not describe the licence accurately in two places: it omits two of the holders that upstream's LICENSE.md/COPYING name, and it quotes an older wording of the DUNE exception that exists nowhere in the source.
Packaging
Modern, minimal packaging of a header-only template library: debhelper compat 13 with dh and the CMake buildsystem, arch and indep builds separated (tests only in the arch build), an empty patch series, autopkgtests covering both the C++ headers and the Python JIT use, Vcs-* and upstream metadata, a correct three-way binary split, Rules-Requires-Root: no, and a changelog whose newest entry correctly targets experimental above unstable's 2.11.0-1. Standards-Version 4.7.0 is current against Policy 4.7.4.1. The build and test dependencies named are all satisfiable from the archive (libdune-common-dev 2.11.0-4 and python3-dune-common 2.11.0-4 are present).
Issues
1. [blocker] [licensing] debian/copyright omits the holders Lisa Julia Nebel and Vaishnavi Sanchi named in LICENSE.md and COPYING
- Files:
debian/copyright (Files: * Copyright list, lines 6-66); LICENSE.md:41,54; COPYING:41,54 - Basis: checked, in the package or with a reference tool
- Evidence: Upstream's holder list has
2023--2024 Lisa Julia Nebeland2023 Vaishnavi Sanchi; the Files: * Copyright list in debian/copyright has neither name (grep forNebelandSanchimatches only LICENSE.md and COPYING). The per-file notices areSPDX-FileCopyrightText: Copyright © DUNE Project contributors, see file LICENSE.md in module root, so LICENSE.md is the authoritative list of holders for the whole tree. - Problem: Every file in the source points at LICENSE.md for its holders; a machine-readable copyright that leaves two of them out does not describe the copyright of those files, which is the thing the DFSG and Policy 12.5 require it to do.
- Fix: Add
2023--2024 Lisa Julia Nebeland2023 Vaishnavi Sanchito the Files: * Copyright list (alphabetically, after Maikel Nadolski / before Uli Sack).
2. [important] [licensing] debian/copyright quotes an older, different wording of the DUNE exception than the one the source is licensed under
- Files:
debian/copyright:85-91; LICENSE.md:74-81; LICENSES/LicenseRef-GPL-2.0-only-with-DUNE-exception.txt:9-16 - Basis: checked, in the package or with a reference tool
- Evidence: debian/copyright says
The exact wording of the exception reads as follows:thenAs a special exception, you may use the DUNE library without restriction.Upstream's text in both LICENSE.md and LICENSES/LicenseRef-GPL-2.0-only-with-DUNE-exception.txt readsAs a special exception, you may use the DUNE source files as part of a software library or application without restriction.A grep foryou may use the DUNEmatches upstream only in those two files, with the longer grant. - Problem: The copyright file presents as the exact licence text wording that the upstream release no longer uses; the quoted grant is broader than the one actually given (
use the DUNE libraryversususe the DUNE source files as part of a software library or application), so the file misstates the terms of the licence it is meant to describe. - Fix: Replace the quoted exception paragraph with the current text from LICENSE.md verbatim.
3. [minor] [packaging] debian/watch is in the old version 4 format
- Files:
debian/watch - Basis: found by the review tooling's own checks
- Evidence:
version=4 - Problem: Version 5 is the current format of
debian/watch. - Fix: Convert it to version 5; a mechanical conversion is under Proposed changes.
Verified
- Prescan holder report: the
DUNE Project contributors, see file LICENSE.md in module rootnotice is not a separate holder but a pointer to LICENSE.md's holder list; all ~199 files carrying it (CHANGELOG.md:2, CMakeLists.txt:1, README.md:2, cmake/modules/FindSuperLU.cmake, dune/istl/bcrsmatrix.hh, dune/istl/paamg/amg.hh, dune/python/test/bcrsmatrix.py, ...) are covered by the two reported gaps only, i.e. debian/copyright reproduces that list except for Nebel and Sanchi. - Licence uniformity: grep for
SPDX-License-Identifier,GNU Lesser,Apache License,Mozilla Public,public domain,All rights reserved,Redistribution and use,Permission is hereby grantedover the whole tree finds onlyLicenseRef-GPL-2.0-only-with-DUNE-exception; grep forCopyright (C) <year>style individual notices over dune/, python/, cmake/, doc/ and src/ finds none, so there is no file under another licence and no second copyright entity hiding in individual headers. - LICENSE.md, COPYING and LICENSES/LicenseRef-GPL-2.0-only-with-DUNE-exception.txt are the same GPL-2 text with the DUNE linking exception; GPL-2 is in /usr/share/common-licenses, which the copyright file cites correctly.
- No vendored third-party code: dune/istl/cholmod.hh, superlu.hh, superlufunctions.hh, spqr.hh and eigenvalue/arpackpp.hh are DUNE wrappers whose
#include <cholmod.h>/#include <supermatrix.h>sit behind#if HAVE_SUITESPARSE_CHOLMOD/#if HAVE_SUPERLU; SuiteSparse, SuperLU and ARPACK++ are external Build-Depends, not copied in. - doc/blockstructure.eps is a figure for the manual (doc/istl.tex), has its own REUSE sidecar doc/blockstructure.eps.license with the same copyright/licence lines, and is original artwork, not a built file; the documentation package is built from doc/istl.tex and the doxygen input in this tree.
- doc/istl.bib is a BibTeX bibliography (latin-1, hence not valid UTF-8) with a
@Comment SPDX-...header; bibliographic data under the project licence, not a licence problem. - dune/istl/paamg/test/gr_30_30.mm is a 900x900 MatrixMarket test matrix carrying the project's SPDX header; test data for the AMG tests, not a built artefact.
- dune/istl/test/solverfactorytest.cc.in is a configure_file template with the real test source present, not generated code without input.
- dune/istl/solvers.hh:121 and :417 credit algorithms to
the SUMO libraryandRonald Kriemanns BiCG-STAB implementation from Sumoin comments; these are provenance notes, not separate copyright notices, and the tree's single project-wide holder list governs. - Packaging files read in full: control, rules, changelog (all 414 lines), source/format (3.0 quilt), clean, not-installed, both .install files, gbp.conf, salsa-ci.yml, upstream/metadata, tests/control, tests/basic, tests/python-jit, empty patches/series.
- The orig tarball's file list matches the unpacked tree (no files silently dropped, so no Files-Excluded is needed); the .dsc's Build-Depends and version agree with debian/control and debian/changelog.
- debian/tests/control uses the specification's
Tests:field withDepends:andRestrictions:; the python-jit test's compiler/cmake/make come in through python3-dune-common's Depends, and python3-venv is listed explicitly. - debhelper compat 13 with dh;
override_dh_auto_test-arch/-indepare valid dh suffixed overrides, and the empty indep override is right because the indep build only produces documentation. - libdune-istl-dev is Multi-Arch: foreign; I did not treat this as a fault, since Debian's other header-only -dev packages (e.g. libboost-dev) are foreign too despite depending on Multi-Arch: same dev packages.
- uscan found the packaged version as the newest upstream release (upstream
2.11.0, packaged2.11.0). - Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (GPL-2).
Not confirmed
- debian/rules includes /usr/share/dune/dune-debian.mk and dune-debian-python.mk, which come from dune-common and are not installed on this reviewing system, so I could not check how ${dune:doc:Built-Using} is produced, what DUNE_DEBIAN_AUTO_TEST runs, or how the Python module reaches python3-dune-istl (there is no debian/python3-dune-istl.install). A build would show whether dh_missing leaves the cmake-installed python module unassigned.
- The installed generated header dune-istl-config.hh encodes build-time SUPERLU_INT_TYPE (config.h.cmake, FindSuperLU.cmake); if Debian's SuperLU uses a different int_t on some architecture, that file differs per architecture and libdune-istl-dev's
Multi-Arch: foreignwould be wrong. I could not check SuperLU's int_t per architecture.
Proposed: debian/watch in version 5 format
debian/watch is in an old format. This is the conversion made by uscan --update-watchfile, which has not been run against the upstream site: some defaults differ in version 5, so test it with uscan --report before use.
Version: 5
Source: https://gitlab.dune-project.org/core/@PACKAGE@/tags?sort=updated_desc
Matching-Pattern: -/archive/v?\d[\d.]+/@PACKAGE@-@ANY_VERSION@@ARCHIVE_EXT@
Searchmode: plain
Update-Script: uupdate
Uploader's response to the LLM review
Waiting for the uploader's response until , because the review found serious issues.