[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#67960] [PATCH 0/4] Improve the crate importer.
From: |
David Elsing |
Subject: |
[bug#67960] [PATCH 0/4] Improve the crate importer. |
Date: |
Thu, 21 Dec 2023 21:59:02 +0000 |
This patch series contains improvements to the crate importer.
The first patch fixes the memoization in crate-recursive-import.
The second patch allows for including the cargo-development-inputs also in
recursively imported crates by specifying --recursive-dev-dependencies, such
that the tests of all imported crates can be run.
The third patch removes the dependency of a test in tests/crate.scm on an
existing crate in gnu/packages/crates.io.
Sometimes, it can happen that a crate requires a dependency for which only a
yanked version exists, which is addressed in the fourth patch. Instead of
simply failing, I changed the behavior to also import yanked versions if no
non-yanked version exists. Then, they can be used anyway or be manually
patched out from the dependent packages. Their packages obtain a different
package name (including the full version) and a package property marking them
as yanked. The logic to decide which version to use naturally became more
complicated as a result.
David Elsing (4):
gnu: import: Fix memoization in crate-recursive-import.
import: crate: Optionally import dev-dependencies recursively.
tests: Mock find-packages-by-name in crate importer test.
guix: import: Optionally import necessary yanked crates.
doc/guix.texi | 7 +
guix/import/crate.scm | 161 +++++++---
guix/read-print.scm | 1 +
guix/scripts/import/crate.scm | 24 +-
tests/crate.scm | 576 +++++++++++++++++++++++++++++-----
5 files changed, 653 insertions(+), 116 deletions(-)
--
2.41.0
- [bug#67960] [PATCH 0/4] Improve the crate importer.,
David Elsing <=