Review: p4est 2.8.7-1~exp1
Package Information
| Description | Algorithms for Parallel Adaptive Mesh Refinement - development files The p4est software library enables the dynamic management of a collection of adaptive octrees, conveniently called a forest of octrees. p4est is designed to work in parallel and scale to hundreds of thousands of processor cores. This package contains the development files. |
|---|---|
| Maintainer | Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org> |
| Changed By | Matthias Maier <tamiko+DEBIAN@43-1.org> |
| Sponsor | ginggs@debian.org |
| Distribution | experimental |
| Architecture | any |
| VCS | git: https://salsa.debian.org/science-team/p4est.git (browse) |
| Popcon Installs | 72 |
| Binary NEW | Yes (new binary packages of a source already in sid) |
| Tracker | https://tracker.debian.org/pkg/p4est |
| Uploaded | 4 days ago |
New Package Report
.changes
| Source | p4est |
|---|---|
| Version | 2.8.7-1~exp1 |
| Changed-By | Matthias Maier <tamiko+DEBIAN@43-1.org> |
| Architecture | source amd64 |
| Distribution | experimental |
| Date | Sat, 17 Oct 2026 12:40:56 +0000 |
Changelog
p4est (2.8.7-1~exp1) experimental; urgency=medium . * New upstream release * Update debian files and patches
.dsc
| Component | main |
|---|---|
| Package-List | libp4est-2.8 deb libs optional arch=any libp4est-dev deb libdevel optional arch=any libp4est-sc-2.8 deb libs optional arch=any |
| Section | libs |
| Priority | optional |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: p4est Source: https://github.com/cburstedde/p4est Comment: Removed from tarball: doc/*.pdf sc/doc/*.pdf Files: * Copyright: Carsten Burstedde Lucas C. Wilcox Tobin Isaac The University of Texas System License: GPL-2.0+ Files: sc/* Copyright: Carsten Burstedde Michael H. Buselli Wessel Dankers The University of Texas System License: LGPL-2.1+ Files: sc/src/sc_builtin/* sc/src/sc_getopt* sc/src/sc_obstack.c Copyright: 1988 -- 2005 Free Software Foundation License: LGPL-2.1+ Files: debian/* Copyright: Matthias Maier Ansgar Burchardt License: LGPL-2.1+ Files: INSTALL Copyright: 1988 -- 2008 Free Software Foundation License: FSF-Unlimited This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Files: build-aux/git-version-gen sc/build-aux/git-version-gen Copyright: 2007--2008 Free Software Foundation License: GPL-3.0+ Files: build-aux/git2cl sc/build-aux/git2cl Copyright: 2007 Simon Josefsson License: GPL-2.0+ Files: sc/config/ax_prefix_config_h.m4 Copyright: 2014 Reuben Thomas <rrt@sc3d.org> 2008 Guido U. Draheim <guidod@gmx.de> 2008 Marten Svantesson 2008 Gerald Point <Gerald.Point@labri.fr> License: GPL-3.0+ Files: sc/config/ax_split_version.m4 Copyright: 2008 Tom Howard <tomhoward@users.sf.net> License: GNU-All-Permissive-License Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty. Files: sc/config/sc_blas.m4 sc/config/sc_lapack.m4 Copyright: 2004 Sandia Corporation License: LGPL-2.1+ Files: sc/config/sc_c_check_flag.m4 sc/config/sc_c_version.m4 Copyright: 2008 Francesco Salvestrini <salvestrini@users.sourceforge.net> License: GPL-2.0+-with-autoconf-exception This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. . This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Macro Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well. Files: sc/config/sc_lint.m4 Copyright: 2005-2006 Sun Microsystems, Inc. All rights reserved. License: X11 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, provided that the above copyright notice(s) and this permission notice appear in all copies of the Software and that both the above copyright notice(s) and this permission notice appear in supporting documentation. . THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. . Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. License: GPL-2.0+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/> . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". License: GPL-3.0+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. . On Debian systems, the complete text of the GNU General Public License version 3 can be found in "/usr/share/common-licenses/GPL-3". License: LGPL-2.1+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. . On Debian systems, the complete text of the GNU Lesser General Public License can be found in "/usr/share/common-licenses/LGPL-2.1".
DFSG Assistant LLM REVIEW 1 blocker, 2 important, 4 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 days ago.
Proposes a replacement debian/watch:
debian/watch in version 5 format
Report
DFSG NEW review for p4est version 2.8.7-1~exp1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: No - Packaging is of good quality: No
- Issues: 1 blocker, 2 important, 4 minor
- debian/watch: old format (version 4)
- debian/copyright: machine-readable
- Scan before the review: 3 found
Licensing
Every licence found in the tree is free and mutually compatible, but debian/copyright is materially inaccurate. Its Files: sc/* stanza calls the whole sc subtree LGPL-2.1+, although the subtree contains BSD-2-Clause, MIT, zlib and public-domain files whose notices are not reproduced, and it claims GPL-2.0+ for a PDF article for which no licence grant exists. Several stanzas also name files that are no longer in the tree.
Packaging
The package is debhelperised cleanly (compat 13, DEP-3 patches, autopkgtest), but the add_soname patch replaces -version-info with -release 2.8. Libtool then installs only libp4est-2.8.so/libsc-2.8.so, with no libp4est.so/libsc.so link name, so two lines of debian/libp4est-dev.install match nothing and dh_install aborts the build; the .pc files' -lp4est/-lsc and the autopkgtest have no shared link name to resolve.
Issues
1. [blocker] [licensing] debian/copyright describes bundled BSD-2, MIT, zlib and public-domain files as LGPL-2.1+
- Files:
debian/copyright:12-21,sc/src/sc_uint128.c:1-27,sc/src/sc_uint128.h:1-27,sc/src/sc3_mpi_types.h:1-27,sc/iniparser/inistring.c:1-25,sc/iniparser/inistring.h:1-25,sc/iniparser/iniparser.c:1-23,sc/iniparser/dictionary.c,sc/iniparser/LICENSE:1-20,sc/src/sc_puff.c:1-33,sc/src/sc_puff.h:1-23,sc/doc/attic/puff.h:1-23,sc/libb64/LICENSE:1-28,sc/libb64/README:37-41,sc/libb64/b64enc.c:9,sc/test/test_helpers.c:1-24,sc/test/test_mpi_pack.c:1-24,sc/test/test_version.c:1-24,sc/src/sc_builtin/gettimeofday.c:1 - Basis: checked, in the package or with a reference tool
- Evidence: debian/copyright:
Files: sc/*...License: LGPL-2.1+. But:sc_uint128.{c,h},sc3_mpi_types.h,inistring.{c,h},test_helpers.c,test_mpi_pack.c,test_version.csayCopyright (C) 2019/2020 individual authorsfollowed byRedistribution and use in source and binary forms ...(BSD-2-Clause);sc/iniparser/LICENSEstartsCopyright (c) 2000-2011 by Nicolas Devillard./MIT License;sc_puff.hsaysPermission is granted to anyone to use this software for any purpose ...(zlib, Mark Adler);sc/libb64/READMEsaysThis work is released under into the Public Domain;gettimeofday.csays/* public domain: https://stackoverflow.com/a/26085827 */. - Problem: Several files compiled into libsc (sc_uint128.c, sc3_mpi_types.h, inistring.c, iniparser.c, dictionary.c, sc_puff.c) and their installed headers are not LGPL-2.1+ but BSD-2-Clause, MIT, zlib or public domain. Debian Policy 4.5 requires the distribution licences in debian/copyright, and copyright-format 6.7 requires the BSD-2/MIT/zlib notices to be reproduced; none of those licences or texts is present, and the holders Mark Adler and Nicolas Devillard are missing. Every licence is DFSG-free, so the tree is distributable, but the copyright file is wrong.
- Fix: Add Files stanzas for these groups with the correct holders and add stand-alone License paragraphs with the BSD-2-Clause, MIT, Zlib and public-domain texts (the latter two are not in /usr/share/common-licenses), or point to the bundled LICENSE files where that satisfies the notice requirement.
2. [important] [licensing] PDF article in the source has no licence grant and no source
- Files:
doc/2002siamnews/Software_p4est_newstest2.pdf,doc/2002siamnews/README:1-13,debian/copyright:4,debian/copyright:6-11 - Basis: inferred from what was read, not seen directly
- Evidence:
doc/2002siamnews/README:The file Software_p4est_newstest2.pdf contains the final author-approved version of the following article: ... journal = {SIAM News}. debian/copyright saysComment: Removed from tarball: doc/*.pdf sc/doc/*.pdfandFiles: * ... License: GPL-2.0+. - Problem: This is a published journal article in PDF form. Neither the README nor any other file states a licence for it, and its source form is absent, yet
Files: *claims GPL-2.0+ for it. The removal comment's globs do not match this nested path, so the article remains in the source package. Whether the PDF is GPL-licensed cannot be established; at minimum the copyright file does not describe it accurately. - Fix: Either drop the PDF from the source package (Files-Excluded and a repacked tarball, updating the Comment) or add a Files stanza naming its actual copyright holder and licence and, if DFSG 2 is to be met, its source.
3. [important] [packaging] -release 2.8 leaves no libp4est.so/libsc.so, so libp4est-dev.install matches nothing and dh_install aborts
- Files:
debian/patches/add_soname.patch:15-18,debian/patches/add_soname.patch:33-36,debian/libp4est-dev.install:3-4,config/p4est_autotools.pc.in:13,sc/config/sc_autotools.pc.in:11,debian/tests/smoke-test:11 - Basis: checked, in the package or with a reference tool
- Evidence: Patch replaces
-version-info $(SC_SOVERSION)with-release 2.8in both Makefile.am files. Libtool's ltmain.sh:if test -z "$vinfo" && test -n "$release"; then major= ... versuffix= ..., so the only installed name islibp4est-2.8.so/libsc-2.8.so. debian/libp4est-dev.install asks forusr/lib/*/libp4est.soandusr/lib/*/libsc.so; dh_install increments its missing-file counter and ends witherror("missing files, aborting"). - Problem: The dev package's two .so patterns cannot match what libtool now installs, so the build fails in dh_install. Even if it did not, the dev package would not provide the shared linker name, while the .pc files advertise
-lp4est/-lscand the autopkgtest links with-lp4est -lsc; those would resolve only to the static archives, and thelibp4est-2.8.sofile itself is claimed by the runtime package. - Fix: Give the shared library a versioned soname again (restore -version-info with an appropriate current:revision:age), or keep the -release name and add an unversioned symlink in the dev package (dh_link) and install the -release .so there; make the .install and .pc files agree.
4. [minor] [licensing] Several copyright stanzas name files that are not in the tree, leaving real files mismatched
- Files:
debian/copyright:22-24,debian/copyright:57-63,debian/copyright:65-88,debian/copyright:95-109,sc/doc/attic/config/sc_lint.m4:1-27 - Basis: checked, in the package or with a reference tool
- Evidence: Stanzas name
sc/src/sc_obstack.c,sc/config/sc_blas.m4,sc_lapack.m4,sc_c_check_flag.m4,sc_c_version.m4andsc_lint.m4;sc/configcontains none of those names (its files aresc_include.m4,sc_qsort.m4, ...). The actual copies are undersc/doc/attic/config/. - Problem: The stanzas never match, so those attic files fall through to
Files: sc/*and are recorded as LGPL-2.1+, althoughsc_lint.m4is X11 andsc_c_check_flag.m4/sc_c_version.m4are GPL-2.0+ with the Autoconf exception.sc/src/sc_obstack.cdoes not exist at all. - Fix: Point the stanzas at
sc/doc/attic/config/...(or remove them if the attic is not meant to be covered) and drop the non-existentsc/src/sc_obstack.c.
5. [minor] [licensing] git2cl copyright holders are incomplete
- Files:
debian/copyright:52-56,build-aux/git2cl:3-8,sc/build-aux/git2cl:3-8,sc/config/ax_split_version.m4:20-21 - Basis: checked, in the package or with a reference tool
- Evidence:
build-aux/git2clsaysCopyright (C) 2001,2002,2003,2004 Martyn J. PearceandCopyright (C) 1999 Karl Fogel, but debian/copyright lists only2007 Simon Josefsson.sc/config/ax_split_version.m4also hasAdditional copyright (c) 2021 Carsten Burstedde, which is not listed. - Problem: Named copyright holders in file notices are absent from debian/copyright.
- Fix: Add Martyn J. Pearce and Karl Fogel to the git2cl stanza, and the additional ax_split_version holder.
6. [minor] [packaging] do_not_declare_library_dirty.patch lacks a DEP-3 header
- Files:
debian/patches/do_not_declare_library_dirty.patch:1 - Basis: checked, in the package or with a reference tool
- Evidence: The file starts directly with
Index: p4est/build-aux/git-version-gen; it has noDescription:,Author:,Last-Update:orBug:field, unlike the other four patches in the series. - Problem: The patch's purpose and origin are not recorded, which the other patches do provide and which a sponsor expects for a quilt series.
- Fix: Add a DEP-3 header describing the change and its author/date (and why the sc/build-aux copy needs no change).
7. [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
- Read debian/copyright in full; it is machine-readable DEP-5 with the exact required Format URL. Read every file under debian/, including all five patches and the whole series.
- Inventoried the upstream tree and read every LICENSE, COPYING, AUTHORS, FREEBSD and NOTICE file (root, sc/, sc/libb64/, sc/iniparser/, sc/doc/attic/), plus licence headers in src/, test/, example/, config/, cmake/, build-aux/, doc/ and all of sc/.
- The prescan's sc/libb64/LICENSE wording (
commercial or non-commercial) is a public-domain dedication that grants commercial and non-commercial use; it restricts nothing and is DFSG-free. - The prescan's example/mesh/conndebug.p8c is a 1.2 KB p8est connectivity input file read by example/mesh/periodicity3.c and copied by the CMake build; it is demonstration data, not a build artifact, and is covered by
Files: *GPL-2.0+. - The prescan's PDF is reported above. No other PDF, .so, .a, .jar, .class, .pyc, .dll or .exe is in the tree; the only other binaries are the ten PNG images under doc/images/.
- The prescan's missing holders: Mark Adler (zlib puff) and Nicolas Devillard (MIT iniparser) are part of the blocker above; Karl Fogel and Martyn J. Pearce are the minor git2cl issue.
individual authorsin AUTHORS:7/README:7 and the file headers is a generic notice, not a distinct named holder, and doc/author_.txt plus sc/doc/author_.txt grant contributors' code under FreeBSD/BSD-2 or public domain while those files also carry GPL-2+/LGPL-2.1+ headers, so the Files: /sc: licence choice remains valid. - The /usr/share/common-licenses pointers in debian/copyright are to GPL-2, GPL-3 and LGPL-2.1, all existing files.
- Standards-Version 4.7.4 against Policy 4.7.4.1 is current; compat 13 with all needed substvars; debhelper Depends on dh-autoreconf, so dh_autoreconf and autoconf/automake/libtool are available from the Build-Depends; source format 3.0 (quilt); an autopkgtest and upstream metadata are present.
- The other four patches carry DEP-3 headers and modify files present in the tree; the test-removal and soname patches are consistent with the changelog.
- uscan found the packaged version as the newest upstream release (upstream
2.8.7, packaged2.8.7). - Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (GPL-2,GPL-3,LGPL-2.1).
Not confirmed
- No build or autopkgtest was run. The dh_install abort is derived from debian/libp4est-dev.install, add_soname.patch and libtool's ltmain.sh on the reviewing system, not from an observed build.
- The PDF and the PNG images were not opened; their nature and licence were judged from their paths and the accompanying README. No licence statement could be found for the PDF.
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
Template: Github
Dist: https://github.com/cburstedde/p4est
Uploader's response to the LLM review
The uploader was emailed about the review 2 days ago.
Review Information
started — allocated to siretart 2 days ago, started 2 days ago.