[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] Promoting cheeseshop/pypi for game releases?



On 4 February 2017 at 12:43, René Dudfield <renesd@xxxxxxxxx> wrote:
I also kind of hate 10-30 config files in repos.

What would a python package look like with no extra files apart from our code? http://renesd.blogspot.de/2017/02/what-would-python-packaging-zero-look.html Then continued the idea here: http://renesd.blogspot.de/2017/02/python-packaging-zero-part-one.html

The main idea is that you can derive enough information from the python code and the git(or hg) repo.

I also dislike having a load of different boilerplate files in a repo for packaging. This was part of what prompted me to write flit. However, I don't think that it's practical to use absolutely zero config. From your proposals, I don't like getting details out of git - it requires that the code is in a git repo, and it makes things quite brittle.

The minimum working config for flit looks like this:

[metadata]
module = astsearch
author = Thomas Kluyver
author-email = thomas@xxxxxxxxxxxxx
home-page = https://github.com/takluyver/astsearch

It takes the description from the docstring (as in your proposal), and the version number from __version__ in the module. There's a command line tool 'flit init' that prompts you for these values, with defaults that you can accept by pressing enter. It doesn't need setup.py or MANIFEST.in or anything: you could literally have just your module and flit.ini.

I recognise that this is still some boilerplate that may seem redundant to new users, but I think it's ultimately clearer to have these values explicitly associated with the project than to pull them out of a magic hat.

Thomas