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

Add a first-class command line interface #41

Closed
browniebroke opened this issue May 14, 2020 · 0 comments · Fixed by #55
Closed

Add a first-class command line interface #41

browniebroke opened this issue May 14, 2020 · 0 comments · Fixed by #55
Labels
enhancement New feature or request

Comments

@browniebroke
Copy link
Owner

Description

The current usage requires to setup libCST and invoke the Django Codemod commands from it.

It would be nicer if users could have a first class CLI specific to the use case of upgrading Django.

Examples of usages I've thoyght of, which I think would be nice:

# Run all codemods to jump from 2.2 to 3.1
django_codemod --from 2.2 [--to] 3.1

# Run all codemods to jump from the current installed version to 3.1
django_codemod [--to] 3.1

# Run just codemods for 3.1
django_codemod --only 3.1

# Run a specific modifier
django_codemod --mod django.shortcuts.render_to_response

The CLI should call libCST under the hood, without the end user having to worry about implementation detail.

@browniebroke browniebroke added this to the 1.0 milestone May 14, 2020
@browniebroke browniebroke added the enhancement New feature or request label May 14, 2020
@browniebroke browniebroke changed the title Add a real CLI Add a first-class command line interface May 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant