Closed has2k1 closed 1 year ago
I've merged #46 and released version 3.3.1 based on that. I'm a bit out of date on Python packaging (this package was originally made over 10 years ago!) so I'm going to brush up and see about updating to a more recent packaging design.
pyopensci has a comprehensive python packaging guide with a relevant page on how to use pyproject.toml.
I've released version 3.3.3 with pyproject.toml
based setup, hopefully this takes care of things for you. Thanks for the pointer! For my own future reference these are the pages I found most useful:
Immediate Problem
palettable
requiressetuptools
as a runtime dependency but it is not listed in the official release. This was fixed in https://github.com/jiffyclub/palettable/commit/b20cdca13647941deaaa2c4b15cdb9c56b234add, was not released.Up to now, this issue has effectively been masked by at-least one of:
setuptools
when they are created. This is not a standard requirement.palettable
may also have includedsetuptools
as a runtime dependency.The "new" packaging & installation standards (e.g PEP 518, PEP 621) have now been around long enough that installation tools & other packages have started to strictly adhere to them. That means fewer chances of
setuptools
being installed in the user environment.Larger Problem
palettable
vendors ez_setup as a way to sidestepsetuptools
during installation, yetsetuptools
is a runtime dependency! Juggling build/installation time and runtime dependencies is best done in a standards compliant way.ez_setup
predates these standards and may contribute to or mask other installation problems.Solution Possible immediate solution: Make a release. Better immediate solution: Consider PR https://github.com/jiffyclub/palettable/pull/46, remove
setuptools
as a runtime dependency and make a release. Final solution: Move to a standard installation process.