Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plugin system: transaction action plugins #13795

Open
2 tasks done
jaimergp opened this issue Apr 15, 2024 · 0 comments · May be fixed by #13842
Open
2 tasks done

Plugin system: transaction action plugins #13795

jaimergp opened this issue Apr 15, 2024 · 0 comments · May be fixed by #13842
Labels
plugins pertains to a plugin/subcommand source::contributor created by a frequent contributor type::feature request for a new feature or capability

Comments

@jaimergp
Copy link
Contributor

Checklist

  • I added a descriptive title
  • I searched open requests and couldn't find a duplicate

What is the idea?

Add a plugin hook to allow developing new transaction actions.

Why is this needed?

The transaction system is the natural fit for many post-solve operations that require access to the recently solved environment. I'm seeing this need in conda-pip and conda-checkpoints, for example.

The transaction API is also a natural fit for rollbacks and other operations that affect the disk (like placing files in strategic paths with EXTERNALLY-MANAGED or menuinst shortcuts).

What should happen?

A new transaction plugin hook could be added to classes that inherit the _Action API.

Additional Context

This is similar to post-solves in a way, but not quite. Post-solves run before the transaction is created, don't have rollbacks and are more designed for additional checks, not operations in disk.

@jaimergp jaimergp added type::feature request for a new feature or capability plugins pertains to a plugin/subcommand labels Apr 15, 2024
@travishathaway travishathaway added the source::contributor created by a frequent contributor label Apr 15, 2024
@jaimergp jaimergp linked a pull request Apr 24, 2024 that will close this issue
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
plugins pertains to a plugin/subcommand source::contributor created by a frequent contributor type::feature request for a new feature or capability
Projects
Status: 🆕 New
Development

Successfully merging a pull request may close this issue.

2 participants