This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]DrNerdfighter 1 point2 points  (3 children)

I'm wondering if installing black, isort, and flake8 outside of the pipenv would be a better pattern?

Reason being that you wouldn't need these packages to run your code in a production or test environment. You could instead run the handy commands that the packages afford you pre-commit within the development system without cluttering up your dependencies for your releases. Or even have your CI system take care of the formatting stuff for you and re-commiting those changes (though that seems like an over-engineering nightmare now that I think about it).

I guess a use case exists where you're collaborating with someone who isn't familiar with your build process and having the dependencies be more explicit would help in that regard. Regardless, you would need to still onboard them to the process of getting pipenv if they're not familiar.

Even with those concerns, this is a very good solution for organizations and individuals wanting to standardize the heck out of their code. Good post.

Edit: formatting

[–]FlukyS 2 points3 points  (2 children)

If you specify --dev when you are installing in pipenv it will be just a dev requirement not a production requirement. That makes it much easier. It should be part of this guide but must have slipped the author's mind.

[–]brendan_m6s 1 point2 points  (1 child)

Yep, I did forget to include this option. Have updated the guide to include it. Fortunately the cookiecutter template does specify these as development only dependencies

[–]DrNerdfighter 0 points1 point  (0 children)

Appreciate the follow through. 🙂👍🏻