Skip to content

Support exclude-newer policies - #905

Open
jezdez wants to merge 7 commits into
conda:mainfrom
jezdez:feature/exclude-newer
Open

Support exclude-newer policies#905
jezdez wants to merge 7 commits into
conda:mainfrom
jezdez:feature/exclude-newer

Conversation

@jezdez

@jezdez jezdez commented Apr 10, 2026

Copy link
Copy Markdown
Member

Description

Implements the conda-libmamba-solver side of conda/conda#15761 by consuming conda's resolved ExcludeNewerPolicy.

The solver declares support for global, channel, and package policies. A global-only policy uses libmambapy 2.9.0 or newer's native exclude_newer_timestamp database setting. Older supported libmambapy versions and scoped policies use the Python repodata filter.

The native path skips serialized .solv caches because libmamba does not apply the cutoff when loading them. It also preserves installed records. Sharded repodata is filtered in Python so indexed_timestamp keeps precedence over the build timestamp.

This requires conda 26.9.0 or newer. The runtime libmambapy dependency remains >=2.0.0,!=2.6.2, with native filtering enabled automatically for libmambapy 2.9.0 or newer. Development and CI require libmambapy 2.9.0 or newer so the native constructor path is covered.

CI is temporarily pinned to jezdez/conda@a5094a3ae2df8d21843d40780278fc2f9eff3e27 until conda/conda#15761 lands.

Part of conda/conda#15759.

Checklist - did you ...

  • Add a file to the news directory (using the template) for the next release's release notes?
  • Add / update necessary tests?
  • Add / update outdated documentation?

@github-project-automation github-project-automation Bot moved this to 🆕 New in 🔎 Review Apr 10, 2026
@conda-bot conda-bot added the cla-signed [bot] added once the contributor has signed the CLA label Apr 10, 2026
@jezdez
jezdez force-pushed the feature/exclude-newer branch 3 times, most recently from c83f07b to 19d6814 Compare April 10, 2026 13:11
@jezdez
jezdez force-pushed the feature/exclude-newer branch from 4ea1409 to 266b91f Compare June 8, 2026 11:11
@jezdez jezdez changed the title Pass context.exclude_newer to libmambapy Database Wire exclude-newer policy into libmambapy Database Jun 8, 2026
@jezdez
jezdez force-pushed the feature/exclude-newer branch from 266b91f to da4c7c4 Compare June 8, 2026 11:14
@jezdez
jezdez force-pushed the feature/exclude-newer branch from 26ae4f6 to 86ede91 Compare July 8, 2026 13:04
@jezdez
jezdez marked this pull request as ready for review July 24, 2026 15:38
@jezdez
jezdez requested a review from a team as a code owner July 24, 2026 15:38
@jezdez
jezdez force-pushed the feature/exclude-newer branch from 93e34bd to 48eed56 Compare August 12, 2026 11:18
@jezdez jezdez changed the title Wire exclude-newer policy into libmambapy Database Support exclude-newer policies Aug 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed [bot] added once the contributor has signed the CLA

Projects

Status: 🆕 New

Development

Successfully merging this pull request may close these issues.

2 participants