Install and packaging improvements todo list
See original GitHub issueAfter the latest round of install pain and the recent thread “stop supporting 'setup.py install'
; start requiring 'pip install .'
instead”, it’s time to start fixing a few things. Here’s a list (ticked items are addressed in gh-6895, which is not merged yet):
- unconditionally import
setuptools
(will fix gh-6551) -
error onnot going to fly for now, see this email about issuespython setup.py install
. Provide a switch--force
forpython setup.py install
. Mailing list discussion here - update all install docs
- make it even clearer in big bold letters in the docs that scientific distributions
or things like Homebreware preferred over building from source or evenpip
. - error on
python setup.py upload
(saying"use
twine upload -sinstead"
) - error on
python setup.py upload_docs
- error on
python setup.py easy_install
- error on
python setup.py test
(saying"use
python runtests.pyinstead"
) - remove
setupegg.py
- error on
python setup.py clean
(saying"use
git clean -xdf(or -Xdf ...) instead"
) - change
python setup.py --help
to first show numpy-specific stuff before setuptools help info - figure out a
betterway to test the various methods of installing numpy- install from
sdist
- install via
bdist_wheel
easy_install
(is still triggered viasetup_requires
). Note, direct use ofeasy_install
by users is not supported - meaning it may work but if it doesn’t then don’t expect support (usepip
instead). This can be tested by installing a dummy package that usessetup_requires='numpy'
on TravisCI.- the recommended
pip install .
- in-place builds (
pip install -e
,build_ext
,develop
) - builds with
--config xxx build
followed bypip install .
- with and without
virtualenv
(can make a difference) - what else?
- install from
- when
pip upgrade
is released (should be soon, maybe under a different name, see https://github.com/pypa/pip/pull/3194 and https://github.com/pypa/pip/issues/59), officially change our mind and recommend the use ofinstall_requires
to packages depending on numpy. - figure out what to do about
setup_requires
(pip
won’t support that any time soon) - fix up the metadata. now
sdist
overwrites “author” with “maintainer”. Consider usingsetup.cfg
or a new static metadata format that may materialize soon. - do a check on version numbering correctness (see [https://github.com/numpy/numpy/issues/6431#issuecomment-147112731) and make
np.lib.NumpyVersion
accessible innumpy.version
- figure out what to do with
bdist_egg
,bdist_rpm
,bdist_mpkg
, etc. RPM is probably a valid format to generate, the rest we may want to put behind a--force
flag at least. - do we need to provide a
conda
build recipe? --> EDIT: no, leave this toconda-forge
For interested people needing a bit of context, the Python Packaging User Guide is the authoritative doc about Python packaging in general.
Issue Analytics
- State:
- Created 8 years ago
- Comments:16 (16 by maintainers)
Top Results From Across the Web
57 Best To-do List Apps of 2023 for Personal Task Management
This guide will highlight the Best To-Do List Apps for personal task management in 2023. Each new day, a list of tasks awaits...
Read more >To-Do List - GitLab Docs
Your To-Do List is a chronological list of items waiting for your input. The items are known as to-do items. You can use...
Read more >Packaging improvements that could be funded - GitHub
Packaging improvements that could be funded. This repository holds FUNDABLES.md: the list of tasks that the Packaging Working Group is seeking funding for....
Read more >ToDoList 8.1.14 - Chocolatey Software
ToDoList is software in the category of Task Management, Project Management, Productivity, “Getting Things Done” (GTD), Scheduling, and Collaboration.
Read more >Install Todoist: To-Do List & Tasks on Linux | Snap Store
Prioritize your tasks with priority levels. Track your progress with personalized productivity trends. Integrate your tools like Gmail, Google ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
We still support easy_install (and use it in
doc/Makefile
) even though it hasbeen deprecated
. Should we remove support for it?This is all basically done, let’s close this.