Skip to content

Conversation

@amundhov
Copy link
Contributor

I'm moving to shiv from a home-grown zipfile packaging script. Really enjoy the simplicity and control of this project, but wanted a way to reuse the logic in main() of cli.py without launching a sub-process or unwrapping the decorations made by click.

This PR factors out the the console commands into its own module and leaves main() as a regular function in cli.py.
python -m shiv and python -m shiv.cli should still reference the click command.

Users may find their scripts breaking if they depended directly on shiv.cli.main, but I see it's been left out of the Shiv API in the documentation. Do let me know if it's a desire to keep main() functionally unchanged (or if the change should be mentioned in the docs) and I'll work around that.

Tests passing on my machine and API docs updated.

Best,
Amund

commands.py for click setup. I've added a motivating example to the docs
for using shiv main() routine direcly from build scripts written in python.
@amundhov
Copy link
Contributor Author

docs check failing due to :option:`--python` which does not resolve. :option:`shiv --python` however, does.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant