Review: rust-nostr-memory 0.45.2-1
Package Information
| Description | Nostr in-memory events database implementation - Rust source code Source code for Debianized Rust crate "nostr-memory" |
|---|---|
| Maintainer | Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> |
| Changed By | Ying-Chun Liu (PaulLiu) <paulliu@debian.org> |
| Sponsor | paulliu@debian.org |
| Distribution | unstable |
| Architecture | any |
| VCS | git: https://salsa.debian.org/rust-team/debcargo-conf.git [src/nostr-memory] (browse) |
| Tracker | https://tracker.debian.org/pkg/rust-nostr-memory |
| Uploaded | 2 hours ago |
New Package Report
.changes
| Source | rust-nostr-memory |
|---|---|
| Version | 0.45.2-1 |
| Changed-By | Ying-Chun Liu (PaulLiu) <paulliu@debian.org> |
| Architecture | amd64 source |
| Distribution | unstable |
| Date | Fri, 13 Nov 2026 15:08:34 +0000 |
Changelog
rust-nostr-memory (0.45.2-1) unstable; urgency=medium . * Package nostr-memory 0.45.2 from crates.io using debcargo 2.8.4
.dsc
| Package-List | librust-nostr-memory-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: nostr-memory Upstream-Contact: Yuki Kishimoto <yukikishimoto@protonmail.com> Nostr Dev Kit Developers Source: https://github.com/nostrdevkit/nostr.git Files: * Copyright: 2022-2023 Yuki Kishimoto <yukikishimoto@protonmail.com> 2023-2026 Nostr Dev Kit Developers License: MIT Files: debian/* Copyright: 2026 Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> 2026 Ying-Chun Liu (PaulLiu) <paulliu@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 2 hours ago.
Report
DFSG NEW review for rust-nostr-memory version 0.45.2-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 source is MIT: LICENSE carries the MIT text with the two upstream holders, Cargo.toml declares license = "MIT", and no file in the tree carries a different notice. debian/copyright is DEP-5 with a matching Files: * stanza naming both holders, a debian/* stanza, and the full MIT text, so no pointer to /usr/share/common-licenses is needed. No third-party or vendored code, no binary or built files, and no Files-Excluded needed.
Packaging
Standard, clean debcargo output: compat 13 with dh-sequence-cargo, correct Architecture any / Multi-Arch same / Provides / Breaks: rustc (<< 1.85.0~), current Standards-Version 4.7.4, DEP-14 Vcs-* fields, sane changelog, and the <!nocheck> marking of the Build-Depends-Arch entries is right for a source-only -dev package because dh-cargo compiles the crate only in dh_auto_test. The one fault is the autopkgtest: all three stanzas build the test target, which cannot compile because it imports a crate the shipped manifest does not depend on.
Issues
minor packaging 1. All three autopkgtest stanzas build a test target that cannot compile, so they can never pass ◂
-
Files:
debian/tests/control:1-14,src/lib.rs:168-170,Cargo.toml:66 -
Basis: checked, in the package or with a reference tool
-
Evidence:
Test-Command: /usr/share/cargo/bin/cargo-auto-test nostr-memory 0.45.2 --all-targets --all-features Restrictions: allow-stderr, flakyand in
src/lib.rs: ```
#[cfg(test)]
mod tests {
use nostr_database_test_suite::database_unit_tests;while the shipped manifest ends with an empty `[dev-dependencies]` (`Cargo.toml:66`). -
Problem:
--all-targetsmakescargo testcompilesrc/lib.rs's#[cfg(test)] mod tests, which importsnostr_database_test_suite. That crate is a workspace-only path dependency that was stripped when the crate was published to crates.io, so it is not in the crate's[dev-dependencies]and does not exist in Debian: the import is an E0432/E0433 error, andimpl Deref for TestDatabaseis E0405 becauseDerefis not in scope./usr/share/cargo/bin/cargo-auto-testswallows only E0463+E0465 and E0554 failures, so it reports these.Restrictions: flakydoes not make a compile error pass, anddebian/debcargo.tomlitself records that the target cannot be built (test_is_broken = true), so the three stanzas fail on every autopkgtest run and the package will not migrate to testing. -
Fix: Remove the three stanzas until the test suite can build, or change them to
cargo-auto-test nostr-memory 0.45.2without--all-targets(which only compiles the library), or add a DEP-3 patch that drops the broken#[cfg(test)] mod testsand forward it upstream.
Verified
- Whole tree read (11 upstream files):
LICENSEis the MIT text,Cargo.tomlhaslicense = "MIT", and grepping the tree forCopyright,(C),©,SPDX-License-Identifier,Licensed under,Permission is hereby granted,GNU General Public License,GNU Lesser,Apache License,Mozilla Public,public domain,All rights reservedfound hits only inLICENSEanddebian/*; the foursrc/*.rsfiles carry no notice of their own. - Prescan author check: every holder it found is named in
debian/copyright—2022-2023 Yuki Kishimotoand2023-present Nostr Dev Kit DevelopersinLICENSEare both inFiles: *(the2023-2026there versus2023-presentis year drift, not a missing holder). Files: *is the only stanza matching upstream files andFiles: debian/*follows it, so it overrides fordebian/; nothing was removed from the crates.io tarball, so noFiles-Excludedis needed, anddebian/copyrightincludes the full MIT text rather than pointing at /usr/share/common-licenses.debian/copyright.debcargo.hintis debcargo's hint file: itsFIXME (overlay)placeholders are resolved in the realdebian/copyright, it is covered byFiles: debian/*, and it is installed nowhere.- The prescan listed no built files, minified code, PDFs, images or non-free wording, and none are in the tree;
Cargo.lockand.cargo_vcs_info.jsonare generated data covered byFiles: *. There are no LICENSE/COPYING/NOTICE/AUTHORS files in subdirectories and no vendored third-party code. <!nocheck>on every Build-Depends-Arch entry is correct for this source-only -dev package: dh-cargo'ssub build(/usr/share/perl5/Debian/Debhelper/Buildsystem/cargo.pm) only copies sources for a lib package, and the crate is compiled solely bycargo build/cargo testinsub test, i.e. indh_auto_test, which compat 13 skips undernocheck.debian/rules'soverride_dh_auto_test: dh_auto_test -- test --all || trueis the workaround fortest_is_broken = trueindebian/debcargo.toml, whose comment explains the broken test target; because dh-cargo compiles the crate in the test step, this does mean the build does not verify compilation itself.- Standards-Version 4.7.4 matches Policy 4.7.4.1's first two components and is current;
debhelper-compat (= 13)withdh-sequence-cargois right, and${misc:Depends}is present (not required at compat 13). librust-tokio+sync-dev (>= 1.37)is satisfied: the virtual package is provided by librust-tokio-dev 1.53.2-1 with that version.debian/changelog:0.45.2-1,unstable, urgency medium, and Fri, 13 Nov 2026 is that date's weekday; DEP-14 Vcs-Git/Vcs-Browser with[src/nostr-memory],Section: rust,Multi-Arch: same, the Provides list andBreaks: rustc (<< 1.85.0~)are debcargo's standard form.debian/source/formatis3.0 (quilt)with nodebian/patches, so nothing to review there;debian/watchleft to the separate uscan check.- uscan found the packaged version as the newest upstream release (upstream
0.45.2, packaged0.45.2).
Not confirmed
librust-btreecap-0.1+default-dev,librust-nostr-0.45+std-devandlibrust-nostr-database-0.45-devare in neither the package lists (as of 2026-11-13) nor the NEW queue, so nothing in the tool's lists satisfies those Build-Depends-Arch/Depends entries; they may have been accepted since, and the build would stop immediately if they were not.- Whether
flakyis a restriction the installed autopkgtest recognises could not be checked: autopkgtest is not installed on the reviewing system and the copy of the autopkgtest spec in Policy 4.7.4.1 is an older one that does not define it. Either way the stanzas cannot pass for the reason given in the issue.
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 0 hours ago, started 0 hours ago, completed 0 hours 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.
The uploader said:
I'll write my own test.