hbldh / hitherdither

Dithering algorithms for arbitrary palettes in PIL
MIT License
206 stars 21 forks source link

Upload Library to Pypi. #9

Open tatarize opened 3 years ago

tatarize commented 3 years ago

This should be available via pypi.

Without an easy dependency option, I would have just lifted the needed code but, it's a bit of a labyrinth in that needed functions are found bouncing around init files etc. Needs to be easier than just writing the functions myself.

makew0rld commented 3 years ago

You can vendor the code until it's uploaded, just download it and put it in a subfolder of your project. If you don't plan on publishing your project to PyPI yourself, you can also install it as a git dependency, with pip or Poetry.

hbldh commented 3 years ago

I am sorry, but I have never intended for this package to be uploaded to PyPI. It is a creation of curiosity, without any regard to decent user interfaces and it never got past "work in progress" status. It contains a lot of dubious design decisions, non-optimized code, possibly erroneous code and is generally not something I would upload to PyPI and consider maintaining.

But as said, it should be possible to install directly from the GitHub repo:

pip install git+https://github.com/hbldh/hitherdither.git#egg=hitherdither

I have not tried this myself with this package, but I think it should work.

tatarize commented 3 years ago

Yeah, I was hoping for a, maybe slower, easier couple functions. My project is uploaded to pypi but I can't really upload this without taking the namespace and having it registered under my username. Maybe there's way to add version uploading rights but I'm not sure.

Just adding it as a folder would work, though it's seemingly a lot of files for something I'd expect one file implement and I'm not a big fan of functions hiding places like init files. My need for other dithering isn't pressing, but it would be nice to offer them.

It does seem like a bit more streamlined api and fewer randomish files and it would be rather sleek, drop in code which is more what I was looking for.

tatarize commented 3 years ago

I would expect to be able import a dither function or a function that accepts a type of dither and have a single drop-in file that would implement that stuff (even non-optimized) and have it do the work. PyDither (https://github.com/Utkarsh-Deshmukh/image-dithering-python) is about right for the API but the imports are cv2 which is basically a non-starter.

I might have to code something up from scratch, I don't really need anything other than a few basic dithers to 1 bit. But, this looks pretty nice and might be worth sprucing up.