#1150547 ITP: python-adjusttext -- adjust label positions for matplotlib

#1150547#5
Date:
2026-10-10 16:39:18 UTC
From:
To:
* Package name    : python-adjusttext
* URL             : https://github.com/Phlya/adjustText
* License         : MIT/X
  Programming Lang: Python
  Description     : adjust label positions for matplotlib

To maintained by the Debian Python team at
https://salsa.debian.org/python-team/packages/python-adjusttext.

#1150547#10
Date:
2026-10-13 04:31:32 UTC
From:
To:
This is an automated message from the Debian DFSG, Licensing & New
Packages Team.

The Debian NEW review of python-adjusttext 1.4.0+ds-1 has been completed.

Decision: ACCEPTED
Reviewer: Andrew McMillan

Review comment:

Hi,

Some issues found during the review which you may wish to resolve.  The use of a valid short name for the licesing of figures/mtcars.csv is probably the only strictly necessary one, to bring the debian/copyright into syntactic correctness.

1. [minor] [licensing] `intersect` in adjustText/__init__.py is adapted from a gist with no licence; permission unverified

 - Files: adjustText/__init__.py (lines 21-32, comment `# Modified from https://gist.github.com/kylemcdonald/...  `); debian/copyright `Files: adjustText/__init__.py` stanza
 - Evidence: The source comment reads `# Modified from https://gist.github.com/kylemcdonald/6132fc1c29fd3767691442ba4bc84018`; debian/copyright itself states `The gist has no license notice; the author's permission remains unverified.` yet the stanza labels the file only `License: Expat and CC-BY-SA-4.0`, which does not cover this function.
 - Problem: A third-party-derived function whose underlying permission has not been confirmed is being redistributed. This is the one place where debian/copyright is accurate but cannot assign a licence; a truthful DD would want the provenance closed before acceptance.
 - Fix: Ask upstream to rewrite the ~12-line segment-intersection helper (trivial, standard algorithm) or obtain/gist-verify a licence, then it stays covered by the file's own Expat grant. Update the stanza Comment when resolved.

2. [important] [licensing] figures/mtcars.csv uses a prose License synopsis, not a copyright-format short name, with garbled text

 - Files: debian/copyright `Files: figures/mtcars.csv` stanza
 - Evidence: `License: considered public domain, used in R distributed with Debian` and `Copyright: 1981 Harold V.  Henderson und Paul F. Vellemandie` with a trailing German sentence fragment (`Appeared in ... von im Juni 1981 the journal Biometrics`).
 - Problem: copyright-format 1.0 requires the License synopsis to be a short name (no spaces); prose here is invalid and no matching License paragraph supplies text. The holder line also mixes German (`und`) and a misspelling (`Vellemandie`). The underlying claim (factual Motor Trend data, effectively public domain, shipped with R) is fine for DFSG.
 - Fix: Use `License: public-domain` (a defined short name) and move the explanation plus a corrected bibligraphic note („Building Multiple Regression Models Interactively“, Biometrics 37(2), 391-411, June 1981, Henderson & Velleman) into the stanza body/Comment.

3. [minor] [packaging] Standards-Version one point behind current

 - Files: `debian/control (line with Standards-Version)`
 - Evidence: `Standards-Version: 4.7.4`; the reviewing system's Debian Policy is 4.7.4.1 (released 2026-03-31).
 - Problem: Initial upload dated October 2026 could trivially claim the current version; stale on day one.
 - Fix: Bump to `4.7.4.1` (no policy changes expected to apply).

4. [minor] [packaging] debian/README.source contradicts the actual source provenance

 - Files: `debian/README.source (opening paragraph)`
 - Evidence: `It includes generated documentation and bundled JavaScript, covered by debian/copyright` and `This revision does not repack the archive or modify upstream code.`
 - Problem: The archive is in fact repacked (`1.4.0+ds`): docs/build and two CSVs are excluded, and the tree and tarball contain no JavaScript and no copyright stanza for any; the text misleads a future maintainer about what was removed and how.
 - Fix: Reword: the 1.4.0 source is the upstream GitHub archive minus the Files-Excluded items (sphinx `docs/build` output and the two unlicensed CSVs), and the package is repacked with the `+ds` suffix.

5. [minor] [packaging] The repack suffix is not removed before versions are compared

 - Files: `debian/watch`
 - Evidence: uscan compares `1.4.0+ds` with upstream's `1.4.0` (status: `only older package available`)
 - Problem: The packaged version carries a repack suffix that `debian/watch` does not remove before comparing, so uscan compares it as it is with upstream's version and never finds them equal.
 - Fix: Remove the suffix for the comparison, with `Dversion-Mangle: auto`


Thanks!

Full review details: https://dfsg-new-queue.debian.org/reviews/python-adjusttext

#1150547#15
Date:
2026-10-13 05:00:17 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
python-adjusttext, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1150547@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Steffen Moeller <moeller@debian.org> (supplier of updated python-adjusttext package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Sat, 10 Oct 2026 19:31:39 +0200
Source: python-adjusttext
Binary: python3-adjusttext
Architecture: source all
Version: 1.4.0+ds-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Python Team <team+python@tracker.debian.org>
Changed-By: Steffen Moeller <moeller@debian.org>
Description:
 python3-adjusttext - automatic label placement for Matplotlib plots
Closes: 1150547
Changes:
 python-adjusttext (1.4.0+ds-1) unstable; urgency=medium
 .
   * Initial release. (Closes: #1150547)
Checksums-Sha1:
 969ed1c175631e6c385d074f81c0d86882bd5eaa 2198 python-adjusttext_1.4.0+ds-1.dsc
 057bf074d9235ab0acfa5030a55b3a2f8ab13411 2352360 python-adjusttext_1.4.0+ds.orig.tar.xz
 a80ccb65268ba42c7c8f9aec75531950ef39e20a 5820 python-adjusttext_1.4.0+ds-1.debian.tar.xz
 eeedd07365f9f5b7cbaf6d5049e8b2977f6dbd93 10092 python-adjusttext_1.4.0+ds-1_amd64.buildinfo
 4451d97e501ea36632412177cdc8a9312e384984 14872 python3-adjusttext_1.4.0+ds-1_all.deb
Checksums-Sha256:
 316d975a9941957548e7275235a0f8b54e0ad716b5e383f27a4c3470c34d1a91 2198 python-adjusttext_1.4.0+ds-1.dsc
 127c34891cf2ed129dc85a8e90d45d014ed79f6ffc878767a9d56c7445c3e4d8 2352360 python-adjusttext_1.4.0+ds.orig.tar.xz
 216e90c1182ef989a16437858b7c7d340def82252ec115166f1efe184e4a69a8 5820 python-adjusttext_1.4.0+ds-1.debian.tar.xz
 61b4cf0bd9afa535e3423ddd4438339f1bd07620246cb8aab751867e1c078cdd 10092 python-adjusttext_1.4.0+ds-1_amd64.buildinfo
 6a1297cf7420e631de5c6233752045e9d33f27dbe36763d85f29a3d71deb5f5b 14872 python3-adjusttext_1.4.0+ds-1_all.deb
Files:
 ba7c2c71e234c08951969505282376b0 2198 python optional python-adjusttext_1.4.0+ds-1.dsc
 1ddc690531fe72fceea836b87542b528 2352360 python optional python-adjusttext_1.4.0+ds.orig.tar.xz
 50e5db23f79a39ca901a21b558ce62df 5820 python optional python-adjusttext_1.4.0+ds-1.debian.tar.xz
 fc3a7aff79fc06854724e28f42c43cea 10092 python optional python-adjusttext_1.4.0+ds-1_amd64.buildinfo
 01fac77aae4cc8e65422d13a2daf43a4 14872 python optional python3-adjusttext_1.4.0+ds-1_all.deb
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE3z4uQkp+J5wuSwI6ucKa7rL0UKcFAmrKyZAACgkQucKa7rL0
UKfSBw//T1xur0yVn7ABYkbbzHxNHOpVeQwU/1k6BpoHT2H2vNgaLLn6xqugdgQG
G5glI6KkdduwqxO22GmHcVylHy1omLSYu1mPqejG9LE3uUwuY17Pp8dytiVc0v/c
ibEOn7zNLFOaYyA6dyoIThcEjycwOUBpYTyPyoyxr6ySv/1A4Sf0dJmP2fzs6TZc
nRIxx4DopmAaqm1vtRT6++cEQCj/KNxoxr3wWuIsWyIoU/vKMzxYiBDrYk/DOlpW
2CMjwfuSKYIqkPwchexVdxi2LSK/46SXiFD+l/L+Nytjsjp0m9n9WC9FLgf1a6co
OcvjNwWTJd9at/X57upGLmr0ND2vR68Sb0uFF7gIJBWUqwyg3AjG8e7WhqjUqS4E
jqtiZ20RqBLp3a0UuPLJm78l3nzh+OV/quEVF+4/P3+6JUE/6rqps5L3wmXTIQ8E
QlhrzywLp2wWTLBkMUbe7WK9fnopmf5QJ2rHM7WWbg84wbgXKHAMFPW6/n09ORmh
xlb30IjA2K1hWL1cEolIW5gfmr9T1SIXsdgaxiiKB4vWaKoFcSyLUBlbhCDvLMXE
YFJ+lpjzEsHMUFMRu3ioAhREbWEDWcC5YtUU/fHywctZiHXlZeCgF+mNYCf+m9Rg
WUrlB83GyZZaK+olgJnli71ysG1hIoDKN5r5c3jkX4P3fL/EOpg=
=5ZBP
-----END PGP SIGNATURE-----