rust-console-0.15 0.15.11+ds-1
Package Information
| Description | Terminal and console abstraction for Rust - Rust source code Source code for Debianized Rust crate "console" |
|---|---|
| Maintainer | Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> |
| Changed By | Blair Nyktas <ncts@debian.org> |
| Distribution | unstable |
| Architecture | any |
| VCS | git: https://salsa.debian.org/rust-team/debcargo-conf.git [src/console-0.15] (browse) |
| Tracker | https://tracker.debian.org/pkg/rust-console-0.15 |
| Uploaded | 3 hours ago |
New Package Report
.changes
| Version | 0.15.11+ds-1 |
|---|---|
| Changed-By | Blair Nyktas <ncts@debian.org> |
| Architecture | amd64 source |
| Distribution | unstable |
| Source | rust-console-0.15 |
Changelog
rust-console-0.15 (0.15.11+ds-1) unstable; urgency=medium . * Branch out console 0.15 for transition
.dsc
| Package-List | librust-console-0.15-dev deb rust optional arch=any |
|---|---|
| Section | rust |
| Priority | optional |
| Component | main |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: console Upstream-Contact: Armin Ronacher <armin.ronacher@active-4.com> Files: * Copyright: 2017-2023 Armin Ronacher <armin.ronacher@active-4.com> License: MIT Files: debian/* Copyright: 2018-2023 Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> 2018-2022 Paride Legovini <paride@debian.org> License: MIT License: MIT 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, 0 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 1 hour ago.
Report
DFSG NEW review for rust-console-0.15 version 0.15.11+ds-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: Yes - Packaging is of good quality: Yes
- Issues: 0 blocker, 0 important, 1 minor
- debian/watch: version 5
- debian/copyright: machine-readable
- Scan before the review: nothing found
Licensing
The whole tree is MIT: LICENSE carries the upstream MIT text ('Copyright (c) 2017 Armin Ronacher'), Cargo.toml and Cargo.toml.orig declare license = "MIT", and no file carries any other notice or attribution. debian/copyright is DEP-5, with Files: * (Armin Ronacher) and a later Files: debian/* stanza, and the full MIT text as a stand-alone paragraph, so every file is matched and no licence text outside /usr/share/common-licenses is left out. The pre-scan's holder check found no holder that is missing. There is no non-free wording, no built file without its source, and no vendored third-party code.
Packaging
Stock debcargo output, correct for a semver-suffixed branch: compat 13 with dh-sequence-cargo, Build-Depends-Arch marked <!nocheck> (right at compat 13), binary Depends, Provides and the Replaces/Breaks on librust-console-dev (<< 0.15.12~) covering the 0.15.11-1 already in the archive, six autopkgtest variants, Vcs-* and upstream/metadata present, Standards-Version 4.7.4 against Policy 4.7.4.1, and no Priority field (Policy now prefers it omitted). Every patch is applied and does something needed: the windows dependencies, the bench target and proptest's break-dead-code feature are absent from Debian, and dev-dependencies are not needed at build time because dh-cargo's test step runs cargo build and its configure step deletes Cargo.lock. The one defect is housekeeping: debcargo's overlay hint file was shipped instead of being merged and deleted.
Issues
minor packaging 1. debcargo's overlay hint ships in the source package with FIXME/UNKNOWN-LICENSE placeholders instead of being merged and deleted ◂
- Files:
debian/copyright.debcargo.hint - Basis: checked, in the package or with a reference tool
- Evidence:
Copyright: FIXME (overlay) UNKNOWN-YEARS Armin Ronacher <armin.ronacher@active-4.com>andLicense: UNKNOWN-LICENSE; FIXME (overlay), with its own commentFIXME (overlay): These notices are extracted from files. Please review them before uploading to the archive.; the file is inside rust-console-0.15_0.15.11+ds-1.debian.tar.xz. - Problem: This is debcargo's generator output, not a copyright file. It says the licence of LICENSE is UNKNOWN, contradicting debian/copyright and LICENSE itself (MIT), and its own comments say it is to be reviewed and fixed before upload. Because it lives in debian/ it ships in the .dsc's debian.tar.xz, so the archive would carry two disagreeing copyright files, one naming upstream years and debian/* holders that debian/copyright has already superseded. The debcargo workflow is to fold it into debian/copyright and remove it.
- Fix: Delete debian/copyright.debcargo.hint; nothing in it is still needed, since debian/copyright already has
Files: *with the MIT text andFiles: debian/*.
Verified ◂
- Pre-scan: it listed no files. Its author check over the 27 scanned files reported 'every holder found is named in debian/copyright'; the only holder anywhere in the tree is Armin Ronacher (LICENSE:3), which
Files: *names. - Licensing, whole tree read or listed: src/ (lib, term, unix_term, utils, ansi, kb, common_term, wasm_term, windows_term/mod.rs, windows_term/colors.rs), benches/ansi_parser.rs, scripts/wasmtime-wrapper.sh, .cargo/config.toml, .github/ (dependabot.yml and ci/clippy/minver/rustfmt workflows), tests/data/sample_zellij_session.log, Makefile, README.md, CHANGELOG.md, .gitignore, .cargo_vcs_info.json, Cargo.toml, Cargo.toml.orig, Cargo.lock. A grep for copyright/Copyright/©/SPDX/Licensed under/Permission is hereby granted/GNU/Apache/Mozilla/public domain/All rights reserved across the tree matches only LICENSE and the two copyright files; no file has an SPDX tag or a per-file notice.
- src/windows_term/colors.rs and src/windows_term/mod.rs: console's own code, with only doc URLs to docs.microsoft.com and windows_sys imports, no copied-code attribution; windows-sys and encode_unicode are removed by remove-windows.diff, but the code is under #[cfg(windows)] and is not compiled on any Debian architecture.
- benches/ansi_parser.rs: hand-written source, not a built binary; it uses criterion, and remove-benches.patch removes its [[bench]] target, so it is never compiled (Cargo.toml has autobenches = false and no [[bench]]); it remains in the registry copy as an unused file.
- tests/data/sample_zellij_session.log: test data, a captured zellij terminal session read by the test in src/ansi.rs and by the bench, not a built or generated artefact; MIT under
Files: *. - Cargo.lock and .cargo_vcs_info.json: generated by cargo package/crates.io, shipped by upstream and covered by
Files: *; Cargo.lock is deleted by dh-cargo before the build (rm_files("Cargo.lock") in sub configure of /usr/share/perl5/Debian/Debhelper/Buildsystem/cargo.pm), so it cannot pin versions Debian lacks. - Patches: all five in debian/patches/series are applied (.pc present for each). They carry no DEP-3 headers, but the series is debcargo-generated and each name and body states its purpose; fix-tests-unicode-width-0.1.13.diff only touches the body of
#[test] fn test_text_width(it returns early when the width is 21 with ansi-parsing off, the value unicode-width 0.2 now yields), so no library behaviour changes. - Dependencies all resolve in the archive: librust-unicode-width-dev 0.2.2-1 provides librust-unicode-width-0.2+default-dev, librust-once-cell-dev 1.21.4-1 provides librust-once-cell-1+default-dev, librust-proptest-dev 1.11.0-2 provides the +bit-set and +std feature packages used by debian/tests/control, librust-regex-dev 1.13.1-1 provides librust-regex-1+default-dev, and dh-cargo 34 provides dh-sequence-cargo. proptest 1.11.0 has no break-dead-code feature, which is what remove-break-dead-code.diff removes.
- Transition relationships: the archive's librust-console-dev is 0.15.11-1 (from rust-console 0.15.11) and 0.16.6+ds-1 (from rust-console, shipping console-0.16.6); this branch ships console-0.15.11 under librust-console-0.15-dev, so
Replaces/Breaks: librust-console-dev (<< 0.15.12~)covers the old 0.15 package and does not touch the 0.16 one. - Policy: Standards-Version 4.7.4 against Policy 4.7.4.1 (first two components match, not an issue). The missing Priority field in debian/control is correct: Policy A10.3 (4.7.3) no longer recommends it in source control. compat 13 with
dh $@ --buildsystem cargois fine, and ${misc:Depends} is present. - Autopkgtest: six Test-Commands in debian/tests/control cover all-features, default, ansi-parsing, unicode-width, windows-console-colors and no-features; four carry
Architecture: !riscv64. - Source package layout: the orig tarball contains no examples/ (matching
Files-Excluded: examples/**in the hint andexcludesin debian/debcargo.toml), and the unpacked tree has no file the orig tarball lacks apart from the applied patches and debian/. - uscan found the packaged version as the newest upstream release (upstream
0.15.11, packaged0.15.11+ds).
Not confirmed ◂
- Whether the branch
src/console-0.15named in Vcs-Git exists in debcargo-conf (no network access). - Why four of the six autopkgtest variants carry
Architecture: !riscv64; the package documents no reason and debcargo.toml does not generate that restriction, so it was added by hand. - Why the model asked for what a review has no use for. During this review it asked once 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:
read: "xd://policy:1-40" is not a file of the package or of the reviewing system.
Proposed changes ◂
None.
Uploader's response to the LLM review
The uploader was emailed about the review 1 hour ago.