RazrFalcon / resvg

An SVG rendering library.
Mozilla Public License 2.0
2.78k stars 223 forks source link

publish precompiled resvg CLI tool to Python Package Index? #506

Closed anthrotype closed 2 years ago

anthrotype commented 2 years ago

Hi,

First a bit of context. We made a tool to build color fonts in various formats, called nanoemoji and this calls the resvg executable to rasterize SVG to PNG. Being a Python application, nanoemoji can be installed along with its dependencies using pip, the standard Python installer. Except for resvg itself, which is not a Python tool.. So I worked on this https://github.com/anthrotype/resvg-wheels -- which is basically a repository whose only purpose is running maturin on Github CI in order to produce python binary packages also known as "wheels", suitable to be published to the Python Package Index and available to be downloaded and installed via the pip installer. This works very well, you can see the packages built on Github here.

Now, I file this issue in order to ask the resvg maintainers if they would be ok if I upload these wheels to the Python Package Index - https://pypi.org/ - so that, e.g. when our users do pip install nanoemoji, the installer will automatically also install the resvg CLI tool along with the other dependencies, and without needing to have the rust toolchain and compile from source (wheels only contain the binaries, plus some metadata and license, and are named in such a way that pip knows which one to install depending on the target platform/architecture etc.).

It's easy, I can do that by running twine upload resvg*.whl. A new PyPI package (I plan to name it resvg-cli, not simply resvg because right now it only contains the executable, no Pythonic API) will then be created, and I would automatically become the owner of that (I can certainly add any of you as co-owner, with rights to publish or yank PyPI releases, etc.). The homepage in the wheel metadata would still point to the upstream resvg project page right here on Github so there would be no confusions as to what is what.

Basically I just wanted to check first with you to make sure you're on board with this, I don't want to simply do it and effectively squat the name "resvg-cli" on the Python Package Index without getting approval first from its maintainers.

I hope this quite verbose post makes sense, let me know if something is not clear. Thanks for this great project.

RazrFalcon commented 2 years ago

Sorry for a delay. Unexpected circumstances.

I don't mind at all as long as it's called resvg-cli. I think having a Python API would be nice in the future. But I don't have immediate plans on implementing it and frankly I have no idea how to.

anthrotype commented 2 years ago

thank you very much! I'll publish it under resvg-cli to avoid any confusions.

anthrotype commented 2 years ago

FYI => https://pypi.org/project/resvg-cli/

thanks!