pypa / packaging.python.org

Python Packaging User Guide
http://packaging.python.org
1.39k stars 801 forks source link

Consider `hatch` as potential comprehensive PyPI publication toolchain #375

Open ofek opened 6 years ago

ofek commented 6 years ago

Would a tutorial for https://github.com/ofek/hatch be accepted? It defaults to user installs and the workflow is a bit more beginner friendly due to the reduced surface of pip it exposes.

ncoghlan commented 6 years ago

I think it would definitely make sense to reference hatch from the proposed discussion in https://github.com/pypa/python-packaging-user-guide/issues/367

However, from my own experience using cookiecutter templates, I think they're too overwhelming for newcomers - while they're great if your aim is to create high quality publishable libraries and tools, they cover too much ground and too many new concepts for folks that are just needing to get some dependencies installed in order to work through a tutorial or some data analysis locally (it's similar to the reason why Software Carpentry ended up taking unit testing out of their bootcamp curriculum - automated testing of your automation is confusing when you're still being introduced to the general concept of automating your work in the first place).

ncoghlan commented 6 years ago

In writing up https://github.com/pypa/python-packaging-user-guide/issues/367#issuecomment-327184373, it also occurred to me that hatch potentially fills the niche of "comprehensive PyPI publishing toolchain", just as pipenv fills the niche of "comprehensive PyPI consumption toolchain".

ofek commented 6 years ago

Actually project creation doesn't require configuration, but that was hard to tell initially. I have since uncluttered the readme https://github.com/ofek/hatch#usage

theacodes commented 6 years ago

@ofek I will happily accept a guide on using hatch.

guides are focused on accomplishing a specific task and can assume some level of pre-requisite knowledge. These are similar to tutorials, but have a narrow and clear focus and can provide lots of caveats and additional information as needed. They may also discuss multiple approaches to accomplishing the task.

I will leave this bug open to track adding the guide, but hopefully someone other than me will volunteer to write it. :)

ofek commented 6 years ago

@jonparrott Thanks! I'll work on this soon.

ncoghlan commented 6 years ago

I've included a link to hatch as part of the new dependency management tutorial in https://github.com/pypa/python-packaging-user-guide/pull/402