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

Convert conda-build entrypoints into plugins #4921

Merged
merged 6 commits into from
Jul 17, 2023
Merged

Conversation

kenodegard
Copy link
Contributor

@kenodegard kenodegard commented Jun 28, 2023

Description

Might as well make conda-build into a proper plugin too!

This introduces a new submodule, conda.cli.plugins, where the pluggy hookimpls live. Otherwise minimal changes were made.

This also marks the legacy style plugin interfaces as deprecated, e.g.:

conda-build ...
python -m conda_build.cli.main_build ...

Resolves #4922

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?

@conda-bot conda-bot added the cla-signed [bot] added once the contributor has signed the CLA label Jun 28, 2023
@kenodegard kenodegard self-assigned this Jun 29, 2023
conda_build/cli/plugins.py Outdated Show resolved Hide resolved
conda_build/cli/main_build.py Outdated Show resolved Hide resolved
@kenodegard kenodegard requested a review from jezdez June 29, 2023 17:38
Copy link
Member

@jezdez jezdez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wait, this'll require a run constraint for a newer version of conda!

@kenodegard
Copy link
Contributor Author

@jezdez added but technically not necessary? the old interface is still there and the plugin system is only imported in conda.plugin which is only invoked via the plugin system itself?

@travishathaway
Copy link
Contributor

@kenodegard, I was testing this out locally today, and one thing I noticed is that the commands show up twice on the conda --help page. Once in the conda commands available from other packages: and another time in the ... (legacy).

Is there anything we can do to prevent that? I think that would require a change on the conda side.

@jezdez
Copy link
Member

jezdez commented Jul 17, 2023

@kenodegard, I was testing this out locally today, and one thing I noticed is that the commands show up twice on the conda --help page. Once in the conda commands available from other packages: and another time in the ... (legacy).

Is there anything we can do to prevent that? I think that would require a change on the conda side.

I think we should stop shipping conda-* scripts?

@kenodegard
Copy link
Contributor Author

conda-build's various subcommands will continue to be listed twice until conda is modified to exclude duplicates (probably the correct route?) or the executables are deprecated/removed

while the subcommand displaying twice is noisy its not incorrect (the legacy plugins are still there) and IMO isn't enough to block this PR

@kenodegard kenodegard merged commit 36ec290 into conda:main Jul 17, 2023
21 checks passed
@kenodegard kenodegard deleted the plugins branch July 17, 2023 14:19
@github-actions github-actions bot added the locked [bot] locked due to inactivity label Jul 17, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 17, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
cla-signed [bot] added once the contributor has signed the CLA locked [bot] locked due to inactivity
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

Convert entry-points into plugin style subcommands
4 participants