Review: rust-recursive 0.1.1-1
Package Information
| Description | recursions in Rust secured from stack overflows - Rust source code Rust has a problematic relationship with recursive functions, because functions that recurse deeply can overflow the stack, crashing your program. This crate makes it easy to remedy this problem by marking (indirectly) recursive functions as such: use recursive::recursive; #[recursive] fn sum(nums: &[u64]) -> u64 { if let Some((head, tail)) = nums.split_first() { head + sum(tail) } else { 0 } } The way this prevents stack overflows is by checking the size of the remaining stack at the start of each call to your function. If this size is under a boundary set by set_minimum_stack_size (by default 128 KiB), a new stack is allocated and execution continues on that stack. This new stack’s size is set using set_stack_allocation_size, which is 2 MiB by default. This crate works by wrapping your function body in a call to stacker::maybe_grow. If this crate is not flexible enough for your needs consider using stacker directly yourself. Source code for Debianized Rust crate "recursive" |
|---|---|
| Maintainer | Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> |
| Changed By | Steffen Moeller <moeller@debian.org> |
| Sponsor | moeller@debian.org |
| Distribution | unstable |
| Architecture | any |
| VCS | git: https://salsa.debian.org/rust-team/debcargo-conf.git [src/recursive] (browse) |
| Closes | #1147488 |
| Tracker | https://tracker.debian.org/pkg/rust-recursive |
| Uploaded | 8 days ago |
New Package Report
.changes
| Changed-By | Steffen Moeller |
|---|---|
| Architecture | source amd64 |
| Distribution | unstable |
| Date | Sat, 12 Sep 2026 13:02:04 +0200 |
| Source | rust-recursive |
| Version | 0.1.1-1 |
Changelog
rust-recursive (0.1.1-1) unstable; urgency=medium . * Initial upload (Closes: #1147488) * Package recursive 0.1.1 from crates.io using debcargo 2.8.4
.dsc
| Section | rust |
|---|---|
| Priority | optional |
| Component | main |
| Package-List | librust-recursive-dev deb rust optional arch=any |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: recursive Upstream-Contact: Orson Peters <orsonpeters@gmail.com> Source: https://github.com/orlp/recursive Files: * Copyright: 2024 Orson R. L. Peters <orsonpeters@gmail.com> License: MIT Files: debian/* Copyright: 2026 Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> 2026 Steffen Moeller <moeller@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.
Review Information
accepted — allocated to eamanu 8 days ago, started 8 days ago, completed 8 days ago.
Final Comment
Thanks for your contributions to Debian!
Please improve the source package description
Public Notes
licensecheck
Command: licensecheck -r --deb-machine .
Exit code: 0
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: FIXME
Upstream-Contact: FIXME
Source: FIXME
Disclaimer: Autogenerated by licensecheck
Files: ./.cargo_vcs_info.json
./Cargo.toml
./Cargo.toml.orig
./debian/cargo-checksum.json
./debian/changelog
./debian/control
./debian/debcargo.toml
./debian/rules
./debian/source/format
./debian/tests/control
./debian/upstream/metadata
./debian/watch
./src/lib.rs
./tests/test.rs
Copyright: NONE
License: UNKNOWN
FIXME
Files: ./README.md
Copyright: NONE
License: Expat
FIXME
Files: ./debian/copyright
Copyright: 2024, Orson R. L. Peters <orsonpeters@gmail.com>
2026, Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
License: Expat
FIXME
Files: ./debian/copyright.debcargo.hint
Copyright: FIXME (overlay) UNKNOWN-YEARS Orson Peters <orsonpeters@gmail.com>
License: Expat
FIXME
Files: ./LICENSE
Copyright: 2024, Orson R. L. Peters
License: Expat
FIXME
debian/copyright check
Command: cme check dpkg-copyright
Exit code: 0
Warning in 'Files:"*" License short_name': value is "MIT". There are many versions of the MIT license. Please use Expat instead, when it matches. See L<Debian copyright format|https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/#license-specification> and L<wikipedia|https://en.wikipedia.org/wiki/MIT_License#Various_versions>for details.
Offending value: 'MIT'
Warning in 'Files:"debian/*" License short_name': value is "MIT". There are many versions of the MIT license. Please use Expat instead, when it matches. See L<Debian copyright format|https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/#license-specification> and L<wikipedia|https://en.wikipedia.org/wiki/MIT_License#Various_versions>for details.
Offending value: 'MIT'
you can try 'cme fix dpkg-copyright' to fix the warnings shown above
licenserecon
Command: licenserecon
Exit code: 0
en: Versions: licenserecon '17.0' licensecheck '3.3.9-1'
Parsing Source Tree ....
Reading d/copyright ....
Running licensecheck ....
No significant differences found
Look for SPDX
Command: grep -r -B1 'SPDX-'
Exit code: 1
(no output)
Lintian
Command: lintian -i -I -v --pedantic
Exit code: 0
N:
I: librust-recursive-dev: package-contains-documentation-outside-usr-share-doc [usr/share/cargo/registry/recursive-0.1.1/LICENSE]
N:
N: This package ships a documentation file outside /usr/share/doc
N: Documentation files are normally installed inside /usr/share/doc.
N:
N: If this file doesn't describe the contents or purpose of the directory it
N: is in, please consider moving this file to /usr/share/doc/ or maybe even
N: removing it. If this file does describe the contents or purpose of the
N: directory it is in, please add a lintian override.
N:
N: Visibility: info
N: Show-Always: no
N: Check: documentation
N:
N: Screen: python/egg/metadata
N: Advocates: "Scott Kitterman" <debian@kitterman.com>
N: Reason: The folders XXX.dist-info/ and XXX.egg-info/ hold metadata for
N: Python modules. Those files are not documentation even though
N: some of their names carry the .txt file extension.
N:
N: Python modules can be both public and private.
N:
N: Read more in
N: https://www.python.org/dev/peps/pep-0427/#the-dist-info-directory,
N: https://www.python.org/dev/peps/pep-0376/#id16,
N: https://www.python.org/dev/peps/pep-0610/,
N: https://www.python.org/dev/peps/pep-0639/,
N: https://setuptools.pypa.io/en/latest/deprecated/python_eggs.html,
N: and Bug#1003913.
N:
N:
I: librust-recursive-dev: package-contains-documentation-outside-usr-share-doc [usr/share/cargo/registry/recursive-0.1.1/README.md]
N:
I: rust-recursive source: upstream-metadata-missing-bug-tracking [debian/upstream/metadata]
N:
N: The DEP 12 metadata file does not specify any upstream bug tracking
N: information (ie. the Bug-Database or Bug-Submit fields are missing).
N:
N: The upstream metadata can be found in the source package in the file
N: debian/upstream/metadata.
N:
N: Please refer to https://dep-team.pages.debian.net/deps/dep12/ for details.
N:
N: Visibility: info
N: Show-Always: no
N: Check: debian/upstream/metadata
N:
N:
P: rust-recursive source: package-uses-old-debhelper-compat-version 13
N:
N: This package uses a debhelper compatibility level that is no longer
N: recommended. Please consider using the recommended level.
N:
N: For most packages, the best way to set the compatibility level is to
N: specify debhelper-compat (= X) as a Build-Depends in debian/control. You
N: can also use the debian/compat file or export DH_COMPAT in debian/rules.
N:
N: If no level is selected debhelper defaults to level 1, which is
N: deprecated.
N:
N: Please refer to the debhelper(7) manual page for details.
N:
N: Visibility: pedantic
N: Show-Always: no
N: Check: debhelper
N:
duck
Command: duck
Exit code: 0
(no output)
look for copyright
Command: egrep -R -i copyright
Exit code: 0
LICENSE:Copyright 2024, Orson R. L. Peters
LICENSE:The above copyright notice and this permission notice shall be included in all
LICENSE:COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
debian/copyright.debcargo.hint:Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
debian/copyright.debcargo.hint:Copyright: FIXME (overlay) UNKNOWN-YEARS Orson Peters <orsonpeters@gmail.com>
debian/copyright.debcargo.hint: FIXME (overlay): Since upstream copyright years are not available in
debian/copyright.debcargo.hint:Copyright: 2024, Orson R. L. Peters
debian/copyright.debcargo.hint:Copyright:
debian/copyright.debcargo.hint: The above copyright notice and this permission notice shall be included in all
debian/copyright.debcargo.hint: AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
debian/copyright:Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
debian/copyright:Copyright:
debian/copyright:Copyright:
debian/copyright: The above copyright notice and this permission notice shall be included in all
debian/copyright: AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
look for license
Command: egrep -R -i license
Exit code: 0
Cargo.toml.orig:license = "MIT"
Cargo.toml:license = "MIT"
LICENSE:use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
debian/copyright.debcargo.hint:License: MIT
debian/copyright.debcargo.hint:Files: LICENSE
debian/copyright.debcargo.hint:License: UNKNOWN-LICENSE; FIXME (overlay)
debian/copyright.debcargo.hint:License: MIT
debian/copyright.debcargo.hint:License: MIT
debian/copyright.debcargo.hint: to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
debian/copyright:License: MIT
debian/copyright:License: MIT
debian/copyright:License: MIT
debian/copyright: to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
README.md:## License
README.md:`recursive` is licensed under the MIT license.
Author check: rust-recursive 0.1.1-1
Scanned 7 files. 3 author(s) declared in debian/copyright.
All source-file authors appear in debian/copyright.
License check: rust-recursive 0.1.1-1
Archive component: main
COMPATIBLE:
- MIT