robbmcleod / pyfastnoisesimd

Python module wrapping C++ FastNoiseSIMD
BSD 3-Clause "New" or "Revised" License
39 stars 7 forks source link

Conda package on the horizon? #23

Closed jgostick closed 3 years ago

jgostick commented 3 years ago

We develop a 3D image analysis tool for tomography images of porous materials called Porespy. One of our modules has tools for generating images for prototyping and testing functions. We have been struggling with a fast and functional perlin/simplex noise generator which we use the generate a binary image representative of a natural porous material. I found this package today, and am loving it.

Installing your package requires users to have a c-compiler install though, so I'm wondering if you have plans to release a conda package?

robbmcleod commented 3 years ago

It would probably be easier to just build wheels using GitHub Actions. I've recently done this for both numexpr and cpufeature. Will have to see though, because in the past we had issues with the compilers being out-of-date on the CI machines.

jgostick commented 3 years ago

Hmmm. I was thinking of making pyfastnoisesimd a dependency of our package, so when users install porespy, they'd get pyfastnoisesimd as well. As it is now, they get an exception when trying to run our wrapper.

I'm not sure what you mean when you suggest building the wheels. We'd then distribute them with porespy?

robbmcleod commented 3 years ago

No, pip. Compare and contrast:

https://pypi.org/project/numexpr/#files

versus,

https://pypi.org/project/pyfastnoisesimd/#files

jgostick commented 3 years ago

Ah, I see. You were thinking maybe distributing your wheels via pip. That would be nice too.

robbmcleod commented 3 years ago

Artifact can be seen here:

https://github.com/robbmcleod/pyfastnoisesimd/actions/runs/673592516

robbmcleod commented 3 years ago

Wheels are uploaded now:

https://pypi.org/project/pyfastnoisesimd/#files

Let me know if this fills your needs.

jgostick commented 3 years ago

awesome, thanks. This really helps us a lot with distributing porespy, which we're trying to ensure can be installed on a basic windows machine with no compiler. I will now remove the try/except on the import and just add your package to our deps.