Review: tzint 1.3-1
Package Information
| Description | Tcl extension to libzint, a barcode encoding library supporting over 50 symbologies including Code 128, Data Matrix, USPS OneCode, EAN-128, UPC/EAN, ITF, QR Code, Code 16k, PDF417, MicroPDF417, LOGMARS, Maxicode, GS1 DataBar, Aztec, Composite Symbols and more |
|---|---|
| Maintainer | Massimo Manghi <mxmanghi@apache.org> |
| Changed By | Massimo Manghi <mxmanghi@apache.org> |
| Sponsor | sgolovan@debian.org |
| Distribution | unstable |
| Architecture | any |
| Closes | #1144446 |
| Tracker | https://tracker.debian.org/pkg/tzint |
| Uploaded | 1 month, 1 day ago |
New Package Report
.changes
| Date | Sun, 23 Aug 2026 13:25:32 +0000 |
|---|---|
| Source | tzint |
| Version | 1.3-1 |
| Changed-By | Massimo Manghi <mxmanghi@apache.org> |
| Architecture | source amd64 |
| Distribution | unstable |
Changelog
tzint (1.3-1) unstable; urgency=medium . * Initial release. (Closes: #1144446)
.dsc
| Section | libs |
|---|---|
| Priority | optional |
| Component | main |
| Package-List | tcl-tzint deb libs optional arch=any |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: tzint
Source: https://fossil.sowaswie.de/tzint
Upstream-Contact: Alexander Schöpe <a.schoepe@mxbo.de>
Copyright: Copyright (C) 2014-2019 Alexander Schoepe, Bochum, DE, <alx.tcl@sowaswie.de>
Joerg Mehring, Bochum, DE, <j.mehring@bjmehring.de>
License: BSD-3
Files: *
Copyright: Copyright (C) 2014-2019 Alexander Schoepe, Bochum, DE, <alx.tcl@sowaswie.de>
License: BSD-3
Files: license.terms
Copyright: Copyright (C) 2014-2019 Alexander Schoepe, Bochum, DE, <alx.tcl@sowaswie.de>
Joerg Mehring, Bochum, DE, <j.mehring@bjmehring.de>
License: tzint-license-terms
Files: doc/tzint.n
Copyright: Copyright (C) 2014 Alexander Schoepe, Bochum, DE, <schoepe@users.sourceforge.net>
Copyright (C) 2009 Robin Stuart <robin@zint.org.uk>
License: BSD-3
Files: generic/library.c
generic/bmp.c
generic/reedsol.h
generic/ps.c
generic/code49.c
generic/raster.c
generic/aztec.c
generic/gridmtx.c
generic/code1.c
generic/common.h
generic/dmatrix.c
generic/qr.c
generic/gs1.c
generic/eci.c
generic/gs1.h
generic/zint.h
generic/eci.h
generic/reedsol.c
generic/pcx.c
generic/png.c
generic/gif.c
generic/svg.c
Copyright: Copyright (C) 2009-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/pcx.h
generic/emf.h
generic/tif.h
Copyright: Copyright (C) 2016-2024 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/reedsol_logs.h
generic/channel_precalcs.h
Copyright: Copyright (C) 2020-2022 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/filemem.c
generic/filemem.h
Copyright: Copyright (C) 2023-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/pdf417_trace.h
generic/bc412.c
Copyright: Copyright (C) 2022-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/dxfilmedge.c
Copyright: Copyright (C) 2024-2025 Antoine Merino <antoine.merino.dev@gmail.com>
License: BSD-3
Files: generic/aztec.h
generic/composite.h
generic/maxicode.h
Copyright: Copyright (C) 2008-2024 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/raster_font.h
Copyright: Copyright (C) 2008-2023 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/mailmark.c
generic/plessey.c
generic/code.c
generic/2of5.c
generic/code11.c
generic/common.c
generic/2of5inter.c
generic/codabar.c
generic/large.c
generic/code128.c
generic/postal.c
generic/upcean.c
generic/telepen.c
generic/auspost.c
generic/code128_based.c
generic/channel.c
generic/large.h
generic/2of5inter_based.c
generic/rss.c
generic/code16k.c
generic/composite.c
generic/medical.c
Copyright: Copyright (C) 2008-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/pdf417.c
generic/pdf417.h
generic/pdf417_tabs.h
Copyright: Portions Copyright (C) 2004 Grandzebu
Copyright (C) 2008-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/gbk.h
Copyright: Copyright (C) 2022 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/gs1_lint.h
generic/tif_lzw.h
generic/dmatrix_trace.h
generic/eci_sb.h
generic/zintconfig.h
generic/iso4217.h
Copyright: Copyright (C) 2021-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/tif.c
generic/emf.c
Copyright: Copyright (C) 2016-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/tzint.c
Copyright: Copyright (C) 2014-2026 Alexander Schoepe, Bochum, DE, <alx.tcl(at)sowaswie.de>
License: BSD-3
Files: generic/ksx1001.h
generic/zfiletypes.h
generic/big5.h
generic/iso3166.h
Copyright: Copyright (C) 2021-2022 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/rss.h
Copyright: Copyright (C) 2007-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/bmp.h
generic/code1.h
generic/dmatrix.h
Copyright: Copyright (C) 2009-2024 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/qr.h
Copyright: Copyright (C) 2006 Kentaro Fukuchi <fukuchi@megaui.net>
Copyright (C) 2008-2024 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/output.c
generic/ultra.c
generic/code128.h
generic/output.h
Copyright: Copyright (C) 2020-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/code49.h
generic/gb2312.h
generic/gridmtx.h
generic/sjis.h
Copyright: Copyright (C) 2009-2022 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/dotcode.c
Copyright: Copyright (C) 2017-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/general_field.c
generic/general_field.h
Copyright: Copyright (C) 2019-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/maxicode.c
Copyright: Copyright (C) 2010-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/vector.c
Copyright: Copyright (C) 2018-2025 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/gb18030.h
Copyright: Copyright (C) 2016-2022 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/imail.c
Copyright: Copyright (C) 2016-2022 Robin Stuart <rstuart114@gmail.com>
Copyright (C) 2006 United States Postal Service */
License: BSD-3
Files: generic/fonts/upcean_ttf.h
generic/fonts/upcean_woff2.h
generic/fonts/normal_ttf.h
generic/fonts/normal_woff2.h
Copyright: Copyright (C) 2023 Robin Stuart <rstuart114@gmail.com>
License: BSD-3
Files: generic/hanxin.h
Copyright: Copyright (C) 2016 Zoe Stuart
Copyright (c) Project Nayuki. (MIT License)
License: BSD-3
Files: generic/codablock.c
Copyright: Copyright (C) 2016-2025 Harald Oehlmann
License: BSD-3
Files: debian/*
Copyright: Copyright (C) Massimo Manghi <mxmanghi@apache.org>
License: Apache-2.0
Files: tclconfig/install-sh
Copyright: Copyright (C) 1994 X Consortium
License: X-Consortium
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, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
.
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. IN NO EVENT SHALL THE
X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
.
Except as contained in this notice, the name of the X Consortium shall not
be used in advertising or otherwise to promote the sale, use or other deal-
ings in this Software without prior written authorization from the X Consor-
tium.
.
FSF changes to this file are in the public domain.
License: Apache-2.0
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
.
http://www.apache.org/licenses/LICENSE-2.0
.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Copyright (C) 2002-2010 The Apache Software Foundation
.
On Debian systems, the complete text of the Apache version 2.0 license
can be found in "/usr/share/common-licenses/Apache-2.0".
License: tzint-license-terms
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
.
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. Neither the name of the project nor the names of its contributors may be used
to endorse or promote products derived from this software without specific
prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
License: GPL-2
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.
.
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'.
License: BSD-3
Copyright 2014-2019 Alexander Schoepe, Bochum, DE, <alx.tcl@sowaswie.de>
.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
.
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation and/or
other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
DFSG Assistant LLM REVIEW 3 blocker, 5 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 21 days ago.
Report
DFSG NEW review for tzint version 1.3-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: No - Packaging is of good quality: No
- Issues: 3 blocker, 5 important, 1 minor
- debian/watch: version 5
- debian/copyright: machine-readable
- Scan before the review: 6 found
Licensing
The code is free: BSD-3-Clause for tzint and the bundled libzint backend, permissive licences for the embedded OCR-B/Arimo font data and the Tcl/Tk build files, and no non-free terms. debian/copyright is DEP-5 but substantially inaccurate: its catch-all Files: */BSD-3 stanza swallows the Tcl/Tk-licensed build machinery, the Autoconf-generated configure, and the Apache-2.0 Arimo font headers, and it records neither those licence texts nor the many third-party holders inside the generic/* sources (Nayuki, Hoehrmann, Leffler/SGI, BSI/AIM, ImageMagick, Kennard/Andrews & Arnold, Stefan Schmidt, Terry Burton).
Packaging
The packaging has a build-breaking debian/clean entry, a dependency on a binary package that does not exist (libzint), no runtime dependency on a Tcl interpreter, and compiles against the bundled libzint 2.16 header while linking Debian's libzint 2.15. The patches are DEP-3, the compat level and hardening are fine, and the changelog is sane.
Issues
blocker licensing 1. Tcl/Tk-licensed build files and Autoconf-generated configure are declared BSD-3 and their holders are missing ◂
- Files:
debian/copyright:9-11,tclconfig/license.terms:1,tclconfig/tcl.m4:6-7,Makefile.in:9-10,win/makefile.vc:15-19,win/rules.vc:15-17,win/nmakehlp.c:7-8,tests/all.tcl:7-8,configure:6-8,aclocal.m4:1-5,doc/man.macros - Basis: checked, in the package or with a reference tool
- Evidence:
Files: */License: BSD-3covers these files; buttclconfig/license.terms:1readsThis software is copyrighted by the Regents of the University of California, Sun Microsystems, Inc., Scriptics Corporation, ActiveState Corporation and other parties.,Makefile.in:9# Copyright (c) 1999 Scriptics Corporation.,tclconfig/tcl.m4:6# Copyright (c) 1999-2000 Ajuba Solutions.,win/makefile.vc:15-19Sun/Ajuba/ActiveState/David Gravereaux/Pat Thoyts,win/rules.vc:17Ashok P. Nadkarni,tests/all.tcl:7ScripticsAll rights reserved., andconfigure:6Copyright (C) 1992-1996, 1998-2017, 2020-2026 Free Software FoundationwithThis configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it.The stand-aloneLicense: GPL-2paragraph (with the Autoconf exception) is defined but no Files stanza refers to it. - Problem: The Tcl/Tk licence and the Autoconf/FSF terms are not BSD-3: the Tcl/Tk licence permits modification but requires the copyright notices to be retained and is not in /usr/share/common-licenses, so its text must be reproduced.
debian/copyrighttherefore names the wrong licence for a large part of the source and omits the holders Scriptics, ActiveState, Sun, Ajuba, Gravereaux, Thoyts, Nadkarni and the FSF that the prescan flagged. - Fix: Drop these from
Files: *: add aFiles:stanza for tclconfig/tcl.m4, tclconfig/license.terms, Makefile.in, win/*, tests/all.tcl and doc/man.macros with the holders and a stand-alone Tcl/Tk licence paragraph containing the text of tclconfig/license.terms; add a stanza for configure and aclocal.m4 under GPL-2+ with the Autoconf exception (the existing GPL-2 paragraph already has it).
blocker licensing 2. Arimo font data in generic/fonts/normal_{ttf,woff2}.h is Apache-2.0 (Steve Matteson), declared BSD-3 ◂
- Files:
generic/fonts/normal_ttf.h:35-54,generic/fonts/normal_woff2.h:37-56,debian/copyright:271-276 - Basis: checked, in the package or with a reference tool
- Evidence:
normal_ttf.h:36Copyright 2013 Steve Matteson, thenLicensed under the Apache License, Version 2.0and/* SPDX-License-Identifier: Apache-2.0 */. debian/copyright's stanza for all four font headers has onlyCopyright: Copyright (C) 2023 Robin Stuart <rstuart114@gmail.com>andLicense: BSD-3. - Problem: The embedded Arimo TrueType/WOFF2 data is Apache-2.0 from a different holder; the file's SPDX tag and notice say so. The stanza understates the holder and misstates the licence, and Apache-2.0's own notice/attribution requirements apply to the embedded font.
- Fix: Split the font stanzas: put normal_ttf.h and normal_woff2.h under
Copyright: 2013 Steve MattesonwithLicense: Apache-2.0(full text already in the file's License paragraph); keep upcean_ttf.h/upcean_woff2.h as BSD-3/Robin Stuart plus the OCR-B provenance note.
blocker licensing 3. Third-party code inside generic/*.c and *.h is uncredited and, for tif_lzw.h, under a different licence ◂
- Files:
generic/tif_lzw.h:43-63,generic/qr.c:217-222,generic/qr.h:5,generic/gridmtx.c:128-129,generic/hanxin.c:354-355,generic/composite.c:33-46,generic/composite.c:811,generic/channel.c:78-91,generic/pcx.c:127-128,generic/common.c:687-702,generic/dmatrix.c:11-12 - Basis: checked, in the package or with a reference tool
- Evidence:
tif_lzw.h:46Copyright (c) 1988-1997 Sam Leffler/Copyright (c) 1991-1997 Silicon Graphics, Inc.followed by the libtiff permission notice;qr.c:221Copyright (c) Project Nayuki. (MIT License);composite.c:33The functions "getBit", "init928" and "encode928" are copyright BSIwith the BSI permission text,:811Copyright (c) 2004-2019 Terry Burton);channel.c:78Copyright (c) AIM 1997,:90Copyright (c) 2004-2020 Terry Burton (MIT/X-Consortium license);pcx.c:128Copyright 1999-2020 ImageMagick Studio LLC;common.c:688Copyright (c) 2008-2009 Bjoern Hoehrmann(MIT);dmatrix.c:11-12Adrian Kennard, Andrews & Arnold Ltd/(c) 2006 Stefan Schmidt. - Problem: These notices are exactly the ones the prescan lists as holders missing from debian/copyright. All files are attributed to Robin Stuart alone under BSD-3, which is wrong for tif_lzw.h (libtiff/MIT-style notice, not BSD-3-Clause) and omits the MIT, AIM and libtiff notices whose copyright lines the licences require to be reproduced. The hanxin.h stanza even claims
Project Nayuki. (MIT License)for a file that contains none of it while hanxin.c, which does, has no stanza. - Fix: Add the holders to the relevant Files stanzas and add stand-alone licence paragraphs for the libtiff notice (tif_lzw.h) and MIT (Hoehrmann, Nayuki as used in qr.c/qr.h/gridmtx.c/hanxin.c), together with the BSI/AIM and BWIPP notes for composite.c and channel.c; correct the hanxin.h stanza and give hanxin.c its own.
important packaging 4. debian/clean deletes the shipped configure script, and nothing regenerates it ◂
- Files:
debian/clean:1,debian/rules:24-33,debian/control:3 - Basis: checked, in the package or with a reference tool
- Evidence:
debian/cleanline 1 isconfigure;debian/rulesoverridesdh_auto_configureto calldh_auto_configure --builddir=..., and neither rules nor Build-Depends (debhelper-compat (=13), tcl8.6-dev, tcl9.0-dev, libzint-dev, libpng-dev, tcl-dev) has dh_autoreconf/autoconf, whileconfigure(generated by Autoconf 2.73) is the only configure script shipped. - Problem:
dh_cleanremoves every path listed in debian/clean, so after the clean stage./configureno longer exists; dh_auto_configure then has nothing to run. The tree cannot be built a second time, and dpkg-buildpackage cleans first. Upstream ships the generated script, so deleting it serves no purpose. - Fix: Remove the
configureline from debian/clean (keep build/, autom4te.cache/ and doc/*.3tcl), or add dh-autoreconf/autoconf to Build-Depends and run autoreconf; deleting the shipped script alone is not viable.
important packaging 5. Depends on non-existent binary package libzint ◂
- Files:
debian/control:11 - Basis: checked, in the package or with a reference tool
- Evidence:
Depends: ${shlibs:Depends}, ${misc:Depends}, libzint. apt-cache finds no binary packagelibzintand nothing providing it; the archive's library islibzint2.15(source zint 2.15.0-2), which${shlibs:Depends}already adds because the extension links with-lzintadded by debian/patches/restrict-to-tzint-c.patch. - Problem: The binary is uninstallable: apt/dpkg cannot satisfy
libzint, and the explicit unversioned dependency is also redundant. This is a plainly wrong name for an existing package, not one that might still appear in NEW. - Fix: Delete
libzintfrom Depends and rely on ${shlibs:Depends}, or namelibzint2.15explicitly if a manual pin is wanted.
important packaging 6. No runtime dependency on a Tcl interpreter; tcltk-depends cannot add one ◂
- Files:
debian/control:11,debian/rules:21-23 - Basis: checked, in the package or with a reference tool
- Evidence:
override_dh_gencontrol: tcltk-dependsruns the dependency generator, but control's Depends has no${tcl:Depends}/${tclXY:Depends}substvar and /usr/bin/tcltk-depends only rewrites substvars present in the package's relationship fields. The extension uses stubs (generic/tzint.c:1013Tcl_InitStubs(interp, "8.5-10", 0)) and TEA links the static stub archive, so${shlibs:Depends}yields no tcl library either. Comparable package tcl-tclreadline:Depends: ..., tcl (>= 8.6.0-2) | tcl8.6 | tcl9.0. - Problem:
apt install tcl-tzintpulls in no interpreter, so the installed /usr/lib/tcltk//tzint1.3 package has nothing to be loaded by; the tcltk-depends call in rules is a no-op. - Fix: Add
tcl (>= 8.6.0-2) | tcl8.6 | tcl9.0to Depends (matching the two builds), or declare${tcl:Depends}and let tcltk-depends fill it.
important packaging 7. Compiled against the bundled libzint 2.16 header while linked against Debian's libzint 2.15 ◂
- Files:
generic/tzint.c:47-48,generic/zintconfig.h:37-40,debian/patches/restrict-to-tzint-c.patch,debian/control:3 - Basis: inferred from what was read, not seen directly
- Evidence:
tzint.c:47#include "zint.h"(quoted include, so the compiler takesgeneric/zint.hbeside it),zintconfig.h:38ZINT_VERSION_MINOR 16, while Build-Depends useslibzint-dev, whose archive version is 2.15.0-2. The patch removes only the backend sources;TEA_ADD_INCLUDES([])leaves the include path untouched. - Problem: The extension is compiled against the 2.16.0 structures/enums but run against libzint 2.15, which the patch deliberately links to. Any struct or enum divergence between the versions turns into wrong results or memory corruption at runtime rather than a build error, and the tarball carries a whole libzint 2.16 backend the binary does not use.
- Fix: Build against the system headers (drop the bundled generic/zint.h and zintconfig.h from the include path, by patch or repack) so the interface matches libzint-dev, or require a libzint version that provides 2.16.
important packaging 8. uscan reports a warning for debian/watch ◂
-
Files:
debian/watch -
Basis: found by the review tooling's own checks
-
Evidence:
In debian/watch no matching files for watch source https://fossil.sowaswie.de/tzint/uv/download.html -
Problem: uscan must run without errors or warnings and find the upstream releases.
-
Fix: Correct
debian/watchso thatuscan --reportruns cleanly.
minor packaging 9. Description synopsis spans four lines ◂
- Files:
debian/control:13-18 - Basis: checked, in the package or with a reference tool
- Evidence:
Description: Tcl extension to libzint, a barcode encoding library supportingfollowed by continuation linesover 50 symbologies including ..., forming a multi-line synopsis. - Problem: Policy 3.4.1 (and 5.6.13) requires the synopsis to be a single line under 80 characters; as written the extended description is one long paragraph and there is no proper synopsis.
- Fix: Make the first line a single short synopsis, e.g.
Description: Tcl extension for the Zint barcode library, and put the rest after a.separator line.
Verified ◂
- Read debian/copyright in full, plus license.terms, LICENSE.zint, tclconfig/license.terms, tclconfig/tcl.m4, Makefile.in, README, configure.ac and the head of every file the prescan named.
- generic/raster_font.h:438 and 447: the 'non-commercial use only' wording is quoted history from Norbert Schwarz's OCR-B Metafont sources, immediately followed by
He ... has since released it for unrestricted use and distributionandyou may freely use, modify, and/or distribute any of these files or the resulting fonts, without limitation. Free; the font tables are the editable source form consumed by the build. - generic/fonts/upcean_ttf.h and generic/fonts/upcean_woff2.h: the flagged wording at lines 44/53 of each is the same OCR-B provenance quote, preceded by the file's BSD-3-Clause notice and
SPDX-License-Identifier: BSD-3-Clause; these hold the OCR-B font as a byte array (TrueType and WOFF2 of the same font), not a built artefact with absent source. Free. - generic/fonts/normal_ttf.h and generic/fonts/normal_woff2.h: the flagged wording at line 37 of each is the same OCR-B quote; both files additionally embed the Arimo font under
Copyright 2013 Steve Matteson/ Apache-2.0, which debian/copyright gets wrong (reported above). - generic/composite.c:33-46 and generic/channel.c:78-91: the BSI/AIM wording restricts reproduction of the standards' text but expressly permits
free use, in the course of implementing the standard, and AIM states the symbology isentirely in the public domain and free of all use restrictions. Not a DFSG restriction on the code; Debian's libzint ships the same notices. - generic/*.c/.h: each carries
SPDX-License-Identifier: BSD-3-Clauseor the 3-clause text; codablock.c is Harald Oehlmann under BSD-3 as declared; pdf417.c Grandzebu and imail.c United States Postal Service are declared in debian/copyright. - LICENSE.zint records the 2013 relicensing of the zint backend to BSD-3; it is a provenance statement, not an extra restriction.
- tclconfig/install-sh matches its declared X-Consortium stanza, including the FSF public-domain sentence.
- debian/patches/*: four patches, all with DEP-3 Description/Author/Forwarded/Last-Update headers; they drop the embedded libzint from the build, stop installing empty include/bin dirs, silence unused-parameter warnings, and rename the man page to section 3tcl.
- Binary artefacts: qr_symbol.png, code128.png, code128i.png and composite_symbol.png are sample barcode images generated by the program, not built sources; the ttf/woff2 data in generic/fonts is the source form the build embeds; no .jar/.class/.so/.pyc/firmware in the tree.
- /usr/bin/tcltk-depends is installed by tcl-dev (present in Build-Depends), so the command in debian/rules exists.
- Build-Depends tcl8.6-dev, tcl9.0-dev, libzint-dev, libpng-dev and tcl-dev all exist in the archive; Standards-Version 4.7.4 is current against Policy 4.7.4.1.
- debian/changelog: 1.3-1 to unstable closing #1144446; debian/source/format is 3.0 (quilt); there is no debian/tests, so no autopkgtest is claimed.
- Did not read .pc/ (and there is no debian/cargo-checksum.json).
- Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (Apache-2.0,GPL-2).
Not confirmed ◂
- Whether libzint 2.15's struct zint_symbol differs from the bundled 2.16 header, and so whether linking the 2.16-compiled tzint.c against libzint2.15 causes wrong offsets. libzint-dev is not installed on the reviewing system, so a comparison with /usr/include/zint.h was impossible; a build plus a run of the encode tests against 2.15 would show it.
- Whether tests/ runs at all in a build: dh_auto_test is not overridden and the two overridden configure steps create no Makefile in the source root, so the suite may be skipped.
Proposed changes ◂
None.
Uploader's response to the LLM review
The uploader rejected this upload in response to the review.
Review Information
rejected — allocated to dfsg-uploader 19 days ago, started 19 days ago, completed 19 days ago.
Final Comment
The uploader rejected this upload in response to the automated (LLM) review of it, so that they can fix the problems it found and upload again.