{"push_id":697048482,"size":8,"distinct_size":8,"ref":"refs/heads/master","head":"a544e328028db853b734cc0a804e2049664ad2a1","before":"70da706b2d04c530b8dac7b491146f7888f3466b","commits":[{"sha":"21076abd2fed7f05249d5212b94945c9c2c5c76f","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"Run setup.py (instead of just parsing it) to gather more data\n\n* Useful for PyPI packages which determine the parameters to\n  distutils.core.setup() dynamically at runtime, making it\n  impossible to parse them with regexes: Ansible is a case\n  in point, it dynamically generates the data_files parameter.\n  MarkupSafe and simplejson dynamically determine whether an\n  extension is built. paramiko dynamically determines the\n  install_requires parameter. And so on and so forth.\n* For a lot of packages, this feature eliminates the need to\n  manually postprocess generated specfiles.\n* Experimental feature, enable with \"generate --run\".\n* There are multiple bugs in distutils.core.run_setup() which\n  prevent proper execution of setup.py with certain packages.\n  Apply one of the patches attached to Python issue 18970\n  to fix this: http://bugs.python.org/issue18970\n* To demonstrate this feature, add support for data_files\n  parameter to opensuse.spec. Pathnames are changed to rpm\n  macros where possible.\n* Fix pathnames for scripts parameter.","distinct":true,"url":"https://api.github.com/repos/saschpe/py2pack/commits/21076abd2fed7f05249d5212b94945c9c2c5c76f"},{"sha":"8494ee6182a8af573d4a9df58979ef7f728d9d2c","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"Use setuptools instead of distutils in _run_setup_py()\n\nSome parameters to distutils.core.setup() are only supported\nby setuptools and not by distutils, e.g. install_requires.\nSupport for these parameters is monkeypatched into distutils\nby setuptools.\n\nIf distutils is used in _run_setup_py(), these parameters\nwill not be part of the distutils.dist.Distribution object.\nThus, they can only be retrieved by _parse_setup_py() and\nconsequently the parameters cannot be generated dynamically\nat runtime of setup.py.\n\nSwitching to setuptools fixes this and also allows us to\nimprove security by sandboxing extraction of the tarball\nand execution of setup.py.","distinct":true,"url":"https://api.github.com/repos/saschpe/py2pack/commits/8494ee6182a8af573d4a9df58979ef7f728d9d2c"},{"sha":"cf17ee2f1cabb90d70eede00527bf5e3d13519f3","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"Support same set of setup() parameters in parse and run modes\n\nAmend _parse_setup_py() and _run_setup_py() to support the\nexact same set of setup() parameters.","distinct":true,"url":"https://api.github.com/repos/saschpe/py2pack/commits/cf17ee2f1cabb90d70eede00527bf5e3d13519f3"},{"sha":"103f2f6fa73d16cc1e9ef5967b7d0b348c893830","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"Make \"parse\" and \"run\" two separate modes\n\nNeither mode is guaranteed to work but now if one mode\nfails, the user may retry in the other mode. Previously\nparse mode would always be executed even if the user\nhad invoked the program with \"--run\".","distinct":true,"url":"https://api.github.com/repos/saschpe/py2pack/commits/103f2f6fa73d16cc1e9ef5967b7d0b348c893830"},{"sha":"01eb63dd9c928419e131c5f0b51573f6c068de3a","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"Support syntactic variations as per the setuptools spec\n\nSupport all the syntactic variations allowed for install_requires,\nextras_require and data_files parameters.\n\nIt seems to make sense to canonicalize these in __init__.py so that\nthe Jinja2 templates can expect the data to be in a standard form.","distinct":true,"url":"https://api.github.com/repos/saschpe/py2pack/commits/01eb63dd9c928419e131c5f0b51573f6c068de3a"},{"sha":"92c4b32dea2cc20e8cf00a9741484743cc68b933","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"Add support for \"entry_points\" and \"console_scripts\" parameters\n\nFix regex for \"scripts\" parameter in _parse_setup_py to not\nmatch \"console_scripts\".","distinct":true,"url":"https://api.github.com/repos/saschpe/py2pack/commits/92c4b32dea2cc20e8cf00a9741484743cc68b933"},{"sha":"e54017723078ebaf06a77efc1a9a5ec6d3a53bb9","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@wunner.de","name":"Lukas Wunner"},"message":"Quote %doc filenames if they contain shell metacharacters\n\nThis keeps rpmbuild happy.","distinct":true,"url":"https://api.github.com/repos/saschpe/py2pack/commits/e54017723078ebaf06a77efc1a9a5ec6d3a53bb9"},{"sha":"a544e328028db853b734cc0a804e2049664ad2a1","author":{"email":"1a3695e91a0e0b98d953f46e97f8753fb666b339@mailbox.org","name":"Sascha Peilicke"},"message":"Merge pull request #9 from l1k/run_setup_py\n\nRun setup.py (instead of just parsing it) to gather more data","distinct":true,"url":"https://api.github.com/repos/saschpe/py2pack/commits/a544e328028db853b734cc0a804e2049664ad2a1"}]}