Skip to content

ASP-based solver: use edge properties for reused specs#39508

Merged
tgamblin merged 1 commit intospack:developfrom
alalazo:solver/use-virtual-annotation-on-edges
Aug 22, 2023
Merged

ASP-based solver: use edge properties for reused specs#39508
tgamblin merged 1 commit intospack:developfrom
alalazo:solver/use-virtual-annotation-on-edges

Conversation

@alalazo
Copy link
Copy Markdown
Member

@alalazo alalazo commented Aug 18, 2023

Since #34821 we are annotating virtual dependencies on DAG edges, and reconstructing virtuals in memory when we read a concrete spec from previous formats.

Therefore, we can remove a TODO in asp.py, and rely on "virtual_on_edge" facts to be imposed.

Since spack#34821 we are annotating virtual dependencies on
DAG edges, and reconstructing virtuals in mempry when
we read a concrete spec from previous formats.

Therefore, we can remove a TODO in asp.py, and rely on
"virtual_on_edge" facts to be imposed.
@spackbot-app spackbot-app bot added core PR affects Spack core functionality dependencies stand-alone-tests Stand-alone (or smoke) tests for installed packages tests General test capability(ies) labels Aug 18, 2023
@alalazo
Copy link
Copy Markdown
Member Author

alalazo commented Aug 18, 2023

@eugeneswalker This was introduced as part of #36990 to fix both #36847 and #34108, but we didn't add regression tests due to the complexity required for that (install / create a buildcache + delete a package from known repo + refresh repo caches etc).

I tried to confirm manually (by locally installing a few packages and then removing providers they use from builtin) that this PR doesn't introduce regressions, but it would be good if you can confirm this works for you too.

@alalazo
Copy link
Copy Markdown
Member Author

alalazo commented Aug 18, 2023

@spackbot run pipeline

@spackbot-app
Copy link
Copy Markdown

spackbot-app bot commented Aug 18, 2023

I've started that pipeline for you!

@eugeneswalker
Copy link
Copy Markdown
Contributor

I tried to confirm manually (by locally installing a few packages and then removing providers they use from builtin) that this PR doesn't introduce regressions, but it would be good if you can confirm this works for you too.

I tested this against the types of issues we saw with #36847 and #34108 and I can't detect any regression! Thanks!

@tgamblin
Copy link
Copy Markdown
Member

Ok, with @eugeneswalker's test and the work done in 9140e44 to reconstruct virtuals from old format specs, I think we're good here.

@tgamblin tgamblin merged commit 9ae1317 into spack:develop Aug 22, 2023
@alalazo alalazo deleted the solver/use-virtual-annotation-on-edges branch August 22, 2023 19:11
mpokorny pushed a commit to mpokorny/spack that referenced this pull request Sep 18, 2023
Since spack#34821 we are annotating virtual dependencies on
DAG edges, and reconstructing virtuals in memory when
we read a concrete spec from previous formats.

Therefore, we can remove a TODO in asp.py, and rely on
"virtual_on_edge" facts to be imposed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core PR affects Spack core functionality dependencies stand-alone-tests Stand-alone (or smoke) tests for installed packages tests General test capability(ies)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants