Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

conda-forge package? #72

Open
keewis opened this issue Nov 25, 2024 · 10 comments
Open

conda-forge package? #72

keewis opened this issue Nov 25, 2024 · 10 comments

Comments

@keewis
Copy link

keewis commented Nov 25, 2024

Would you be interested in maintaining a conda-forge feedstock for h3ronpy?

I'm currently trying to package xdggs, which depends on h3ronpy.

Obviously, I volunteer to help, should you need any.

@kylebarron
Copy link
Contributor

You should be able to follow the conda-forge recipe in https://github.com/conda-forge/arro3-core-feedstock or https://github.com/conda-forge/geoindex-rs-feedstock. Anyone can make the feedstock. You can make a PR like conda-forge/staged-recipes#28081 or conda-forge/staged-recipes#27289 if you want to get the ball rolling. And then you can cc me and potentially add both nmandery and me as recipe maintainers if you'd like

@nmandery
Copy link
Owner

Personally I do not use conda-forge so I am not in a good position to maintain such a package. Contributions are welcome of course.

+1 for Kyles proposal

@keewis
Copy link
Author

keewis commented Nov 27, 2024

Anyone can make the feedstock.

Sure, I just wanted to ask first.

In any case, see conda-forge/staged-recipes#28385. I have zero experience with packaging rust+python packages, so there might still be additional things to do (but at least CI and the linters passed). For example, the h3arrow crate might need its own package?

I've added the two of you as co-maintainers of the recipe, could I ask you to accept (or reject) by posting a comment on that PR?

Finally, I've noticed several potential issues in h3ronpy's pyproject.toml (but again, there might be a good rust+python-specific reason for those that I'm not seeing): there's no requires-python entry (the release summary of 0.22.0 says the lower bound is python=3.9), and there's also no lower bound on numpy in the dependencies.

@keewis
Copy link
Author

keewis commented Dec 9, 2024

the PR is merged, so we now have the package on conda-forge, so we should be able to close this.

As mentioned in the PR, while initially you're not listed as one, feel free to request being added as a maintainer either here or on the feedstock whenever you want, @nmandery.

For the issues in pyproject.toml above, is this something you'd say is common for Rust-based python projects or just an oversight?

@kylebarron
Copy link
Contributor

I think it would be fine (and proper) to add requires-python to the pyproject.toml. I'm not sure what the minimum numpy version would be; I doubt h3ronpy uses any recent numpy features.

@kylebarron
Copy link
Contributor

Perhaps we should add a conda-forge badge to the readme, next to the pypi version badge. And maybe add a line for conda install to the docs? https://h3ronpy.readthedocs.io/en/latest/installation.html

nmandery added a commit that referenced this issue Dec 10, 2024
@nmandery
Copy link
Owner

Thanks everybody for putting work into providing the conda package - I just added the links Kyle suggested.

I probably forgot about the minimum python version in the pyproject.toml - I normally just adjust the Github-Action workflow to build for whatever is the oldest, non-end-of-life, python version.

Regarding the numpy version h3ronpy just uses very basic features which have been in numpy for a long time. No idea what this version would be ;)

@kylebarron
Copy link
Contributor

In this situation when I don't know the most recent breaking change I use, I go back a few years... maybe 3 years? and choose whatever numpy version was released then.

@keewis
Copy link
Author

keewis commented Dec 11, 2024

there's a scientific python-wide spec for recommended versions (which numpy endorsed): SPEC0. According to that, the current lower bound would be numpy>=1.24.

You don't have to follow it, but I think it can serve as a good guideline.

nmandery added a commit that referenced this issue Dec 20, 2024
nmandery added a commit that referenced this issue Dec 20, 2024
@nmandery
Copy link
Owner

Thanks @keewis for pointing this out - I set the package metadata accordingly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants