void-linux / void-linux/void-packages

xbps-src will accept packages from remote repos as fullfilling dependencies even when they aren't available in srcpkgs/

Open
#31,526 6 comments 0 reactions 1 assignee View on GitHub

@Chocimier is already working on this.

Since Jul 11, 2023.

Stale xbps-src
Dominant language
Shell
Stars
3.4k
Forks
2.8k
Avg merge
2d 5h
Merged PRs (30d)
299

Description

Writing a template to depend on zstd-devel (removed in d481489dae9449f5212f4e2b5fab74e858962242) should fail because srcpkgs/zstd-devel/template doesn't exist. Instead, if it's still available in remote repositories because it hasn't been cleaned up, it will be enough to satisfy the dependency.

An example from adding zstd-devel to depends for kicad-library.

   [target] zstd-devel: found (https://alpha.de.repo.voidlinux.org/current/musl)
   [runtime] kicad-footprints-5.1.10_1: found (https://alpha.de.repo.voidlinux.org/current/musl)
   [runtime] kicad-packages3D-5.1.10_1: found (https://alpha.de.repo.voidlinux.org/current/musl)
   [runtime] kicad-symbols-5.1.10_1: found (https://alpha.de.repo.voidlinux.org/current/musl)
   [runtime] kicad-templates-5.1.10_1: found (https://alpha.de.repo.voidlinux.org/current/musl)

This can lead to issues such as 5898b6cbe0efcf6c129799a0993943fc7128f1a7 (fixed in d0ae88846bf833a5e1171dff6dd44a65c4891466), where a package can be made to depend on another one that's no longer available.

When fixing this, care should be taken to not break virtual packages or others depending on the provides= mechanism (though arguably packages which are providesd by something are valid only in depends).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.