DFSG NEW Queue

DFSG, Licensing & New Packages Team

node-marijn-testtool 0.1.3-1

Package Information

Descriptionrun Mocha test suites in Node.js and in a browser

testtool is a utility for running collections of Mocha test files that contain both Node-based and browser-based tests. It finds test/*.js and test/webtest-*.js files, serves the web tests from a small HTTP server together with the modules they import, and drives a browser to run them.

The browser tests need a WebDriver implementation, such as the chromedriver server from the chromium-driver package.

It is used by the ProseMirror packages through the pm-runtests command from node-prosemirror-buildhelper.

Node.js is an event-based server-side JavaScript engine.

MaintainerDebian Javascript Maintainers <pkg-javascript-devel@lists.alioth.debian.org>
Changed ByEmfox Zhou <emfox@debian.org>
Sponsoremfox@debian.org
Distributionunstable
Architectureall
VCSgit: https://salsa.debian.org/js-team/node-marijn-testtool.git (browse)
Closes#1150579
Trackerhttps://tracker.debian.org/pkg/node-marijn-testtool
Uploaded5 days ago

New Package Report

.changes◂
Architecturesource all
Distributionunstable
DateSun, 11 Oct 2026 10:05:00 +0800
Sourcenode-marijn-testtool
Version0.1.3-1
Changed-ByEmfox Zhou <emfox@debian.org>
Changelog◂
node-marijn-testtool (0.1.3-1) unstable; urgency=medium
 .
   * Initial release. (Closes: #1150579)
.dsc◂
Sectionjavascript
Priorityoptional
Componentmain
Package-Listnode-marijn-testtool deb javascript optional arch=all
debian/copyright◂
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: testtool
Source: https://code.haverbeke.berlin/marijn/testtool

Files: *
Copyright: 2022 Marijn Haverbeke <marijn@haverbeke.berlin>
License: Expat

Files: debian/*
Copyright: 2026 Emfox Zhou <emfox@debian.org>
License: Expat

License: Expat
 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
 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 DEALINGS IN THE SOFTWARE.

DFSG Assistant LLM REVIEW 0 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 2 days ago.

Report◂

DFSG NEW review for node-marijn-testtool version 0.1.3-1

Summary

  • Licensing is DFSG-compliant and debian/copyright is accurate: No
  • Packaging is of good quality: Yes
  • Issues: 0 blocker, 1 important, 1 minor
  • debian/watch: version 5
  • debian/copyright: machine-readable

Licensing

All code is MIT/Expat and the package is cleanly DFSG-compliant: no non-free terms, no minified/binary blobs, no bundled third-party code, every file is present in source form, and there are no unlicensed files. debian/copyright is machine-readable (correct Format 1.0 URL) with an accurate license description (Expat with full text, since Expat is not in /usr/share/common-licenses) matching upstream's 'license': 'MIT'. The only defect: the Files: * stanza credits copyright to '2022 Marijn Haverbeke' for every file, but src/browserdriver.js was written for the Debian packaging (added by the Origin: vendor patch), not by the upstream author, so its holder is misattributed. A dedicated Files stanza for it is needed.

Packaging

Packaging is good quality and follows current js-team practice: debhelper compat 14 via dh, dh-sequence-nodejs/single-binary, quilt with two DEP-3-headed vendor patches (drop un-packaged selenium-webdriver for the system chromedriver; relax version ranges), correct Architecture: all, Testsuite: autopkgtest-pkg-nodejs autopkgtest, man page, gbp.conf and upstream/metadata, README.Debian documenting a known mocha browser-test limitation, and sane dependencies (all exist in the archive or NEW, versions satisfy the relaxed ranges). Nits: Standards-Version 4.7.4 while current policy is 4.7.4.1, and an unused node-ist runtime dependency (mirrors upstream's declared deps; skipped as a non-issue). Nothing that would break the build or upgrades.

Issues

1. [important] [licensing] debian/copyright credits Debian-authored src/browserdriver.js to the upstream author

  • Files: debian/copyright:5-7, debian/patches/use-system-chromedriver.patch
  • Evidence: Files: * / Copyright: 2022 Marijn Haverbeke <marijn@haverbeke.berlin> matches src/browserdriver.js, a file added only by the Debian patch (Origin: vendor, Forwarded: not-needed) whose header says "Minimal WebDriver client, used in place of selenium-webdriver. It talks the WebDriver protocol directly to the chromedriver binary shipped by Debian's chromium-driver package."
  • Problem: DEP-5/copyright-format and Policy 4.5/12.5.1 require each file to be matched by a Files stanza naming its actual copyright holder. src/browserdriver.js is not upstream code - upstream uses selenium-webdriver - so the wrong entity is credited; only the license (Expat) happens to be right.
  • Fix: Add a realistic stanza ahead of Files: *, e.g. Files: src/browserdriver.js / Copyright: 2026 Emfox Zhou <emfox@debian.org> (or whatever the actual author of the patch is) / License: Expat.

2. [minor] [packaging] Standards-Version lags the current policy point release

  • Files: debian/control:17
  • Evidence: Standards-Version: 4.7.4 while the installed Debian Policy is 4.7.4.1 (released 2026-03-31).
  • Problem: Policy 4.1/5.6.11: the declared Standards-Version should be the version the package conforms to; 4.7.4.1 is the current one.
  • Fix: Bump Standards-Version to 4.7.4.1 if nothing in 4.7.4.1 applies to it.

Verified

  • Inventory of the whole upstream tree (glob with gitignore=false, excluding .pc/): package.json, README.md, .gitignore, .npmignore, src/testtool.js, src/browserdriver.js, bin/testtool.js; no LICENSE/COPYING/NOTICE/AUTHORS file anywhere in the tree.
  • debian/copyright read in full; machine-readable DEP-5 (Format: exact copyright-format/1.0 URL), Files:* / Files:debian/* stanzas plus a standalone Expat paragraph with the complete license text.
  • Tree-wise grep for copyright/licence tokens found only MIT claims (package.json "license": "MIT", README "MIT license"); no GPL/BSD/Apache/other text and no copyright headers in the JS files.
  • All debian/ files read: control, rules, changelog, copyright, gbp.conf, node-marijn-testtool.manpages, testtool.1, nodejs/links, source/format, patches/series and both patches, tests/pkg-js/test, upstream/metadata, README.Debian.
  • apt-cache: mocha 12.0.3 satisfies the relaxed "^10.0.0 || ^11 || ^12", node-serve-static 2.2.1 satisfies "^1.14.1 || ^2.0.0", node-ist 1.1.7 exists in the archive; chromium-driver (Recommends) exists.
  • node-esmoduleserve (0.3.3-1) is provided by a source package waiting in ftp-master's NEW queue; per instructions that is not a fault.
  • Control file parses under Policy 5.1 (continuation lines must start with whitespace), so the trailing comma in Build-Depends before Standards-Version is harmless.
  • Both quilt patches are consistent with the applied tree (package.json no longer references selenium-webdriver and has the relaxed ranges).
  • Current Debian Policy is 4.7.4.1 (confirmed via the policy tool); no other 4.7.x requirements that this package violates were found.
  • uscan found the packaged version as the newest upstream release (upstream 0.1.3, packaged 0.1.3).

Not confirmed

  • Could not run the build or the autopkgtest (read-only review); pkg-js-tools/dh-nodejs/autopkgtest are not installed on this system, so whether debian/tests/pkg-js/test actually executes under the autopkgtest-pkg-nodejs runner was not verified directly. The layout is the standard js-team pattern (confirmed by the pkg-js-autopkgtest package description).
  • The exact copyright holder and year of src/browserdriver.js are not stated in the patch (no Author: line); for the finding it was attributed to the Debian maintainer.
  • did not independently replicate lintian or licensecheck runs (done separately).
  • Why the model asked for what a review has no use for. During this review it asked 2 times for something outside the package and the reviewing system (another file of the sandbox, or a URL), or was given part of the review tooling's own configuration, and that was refused or withheld. A model does this when something it has read tells it to, so look in the package for text addressed to a reviewing program, and treat this report with suspicion. Refused: glob: " /usr/share/doc/pkg-js-autopkgtest/**" is not a file of the package or of the reviewing system; glob: " /usr/share/doc/dh-*" is not a file of the package or of the reviewing system.

Proposed changes

None.

Back to Dashboard | View all reviews for this package