[Numpy-discussion] Numpy wheels: who maintains the builds and who pays for it?

2024-02-22 Thread sean . gillies
Hi folks,

My name is Sean and I'm the author of several GIS packages using Numpy: Fiona, 
Rasterio, and Shapely. I've followed Numpy's trail when it comes to wheel 
building for many years and now I'm seeking advice on how to prioritize 
platforms to support and how to pay for the labor and computing that it takes 
to build wheels and maintain the infrastructure over time. Fiona and Rasterio 
have an order of magnitude more C library dependencies than Numpy, via GDAL 
(https://gdal.org/), which is almost more of an OS than a library.

I found a thread in the archive about adding musllinux wheels, but it wasn't 
clear to me how the work gets done, who does, and how it gets paid for. Does 
NumFOCUS support pay a maintainer to do it? Are Numpy maintainers adding new 
platform builds as part of their day jobs? Are they donating their own time to 
the effort?

Does the Numpy project aspire to provide wheels for all of the top N platforms? 
Is it more than an aspiration? Is support for one or more platforms part of any 
sponsorship agreement? Maybe users and sponsorship cover the cost of building 
wheels and maintenance entirely for Numpy, but it's not so in my case.

I've got so many questions in this vein, and I'm grateful for any answers or 
insights or more discussion. Thanks!
___
NumPy-Discussion mailing list -- numpy-discussion@python.org
To unsubscribe send an email to numpy-discussion-le...@python.org
https://mail.python.org/mailman3/lists/numpy-discussion.python.org/
Member address: arch...@mail-archive.com


[Numpy-discussion] Re: Numpy wheels: who maintains the builds and who pays for it?

2024-04-05 Thread sean . gillies
Hi Ralf,

Thank you very much for the response. I apologize for my delay. I misread the 
subscription defaults for this list and was waiting for something in my inbox.

You mentioned measuring platform usage. How does the project do that? Analysis 
of PyPI download stats?

I feel like rasterio and fiona are in a weird position where making a host of C 
libraries installable via pip is one of their top features (which is why 
projects like rio-xarray and geopandas use them), so that packaging is equally 
large of a concern/cost as maintenance of its code. I'm ever getting requests 
for new platform support from people who don't otherwise engage with the 
projects. They clearly want wheels to use with their specialized CI systems at 
work and that's all. You've given me a lot to think about, and I appreciate it. 

Good luck with the 2.0.0 release! I'm working to be sure that my projects will 
be compatible.

Yours,
Sean

Ralf Gommers wrote:
> On Thu, Feb 22, 2024 at 7:03 PM  wrote:
> > Hi folks,
> > My name is Sean and I'm the author of several GIS packages using Numpy:
> > Fiona, Rasterio, and Shapely.
> > Hi Sean, thanks for this very good question, and for all your work on GIS
> packages.
> > I've followed Numpy's trail when it comes to wheel building for many years
> > and now I'm seeking advice on how to prioritize platforms to support and
> > how to pay for the labor and computing that it takes to build wheels and
> > maintain the infrastructure over time.
> > I'm probably best placed to answer your questions, because I've both been
> involved in NumPy build & packaging for a long time and am responsible for
> overseeing a significant fraction of the funded work on NumPy as well as
> coordinating unrestricted funding coming in (mostly via Tidelift, as you
> can see at https://opencollective.com/numpy). I'll do my best to accurately
> represent the situation for NumPy. Your questions are challenging though,
> so if you want a higher-bandwidth conversation I'd be happy to chat. Or we
> can use part of a community meeting for this, since I imagine other folks
> may be interested in this topic as well.
> > Fiona and Rasterio have an order of magnitude more C library dependencies
> > than Numpy, via GDAL (https://gdal.org/), which is almost more of an OS
> > than a library.
> > Dealing with NumPy's BLAS dependency is already a large amount of work, so
> I don't envy your task. PyPI really isn't well-suited to that many C
> libraries (as I'm sure you know); for a long time the geospatial stack was
> only usable from conda-forge, where packaging is a much easier task. I'm
> not sure that was a terrible situation - there are a couple of domains like
> that where things just get too challenging. So if you want to do something
> much more restricted than NumPy for platforms to support with wheels, that
> seems perfectly okay.
> > I found a thread in the archive about adding musllinux wheels, but it
> > wasn't clear to me how the work gets done, who does, and how it gets paid
> > for.
> > Of all work on NumPy, the funded part has increased steadily. Until ~2016
> that fraction was zero, and now a lot of the heavy lifting is funded work -
> 9 out of 10 of the top 10 committers over the past 1.5 years get paid for
> at least a part of their time spent on NumPy. This is supported in several
> ways (partially documented at https://numpy.org/about, but that's a bit out
> of date):
> 
> 1. a number of grants received over the years, from: Moore and Sloan
> Foundations (>$1M), the Chan Zuckerberg Institute (>$1M), and NASA (~$400k)
> 2. maintainers employed by companies who allow those maintainers to spend
> part of their day job time on NumPy:
> - Quansight (Matti, Nathan, Rohit, Mateusz, Melissa, me)
> - NVIDIA (Sebastian - long-time maintainer, now ~2 years at NVIDIA)
> - Intel (Raghuveer, contributor for several years, just gained commit
> rights)
> - Arm (Chris, contributor for ~1 year, just gained commit rights)
> - I'm not sure if I should list Berkeley here too; folks at Berkeley
> contributed a lot in the past, not sure if that was all grant-funded or if
> there was unrestricted BIDS money to support NumPy.
> 3. unrestricted project funds, obtained from individual and corporate
> (Tidelift (>$100k), Bloomberg ($10k)) donations, which support Sayed's
> Developer in Residence position:
> https://blog.scientific-python.org/numpy/fellowship-program/.
> 4. contracts for work on NumPy from clients of Quansight (and maybe other
> companies, that is hard to know) that aligned with the NumPy project
> roadmap. Noteworthy mentions here for the Sovereign Tech Fund, which
> supported packaging-related work (
> https://www.sovereigntechfund.de/tech/openblas), and the D. E. Shaw group,
> which supported recent work on string ufuncs.
> 
> That said, *funding for packaging work is still quite challenging*. While
> the above is an impressive list of funding, the vast majority of funders do
> care about what 

[Numpy-discussion] Re: What should remain on PyPi

2024-09-03 Thread Sean Gillies
Hi Chuck,

I've got a version of a package on PyPI that requires Numpy 2.0.0rc1 at
build time. Not the best decision in hindsight, but I assumed that Numpy
was the kind of project that wouldn't remove published distributions unless
there were security issues. It had not up today, right? Would it be
possible to restore 2.0.0rc1?

On Tue, Sep 3, 2024 at 9:20 AM Charles R Harris 
wrote:

> Hi All,
>
> I just got through deleting a bunch of pre-releases on PyPi and it
> occurred to me that we should have a policy as to what releases should be
> kept. I think that reproducibility requires that we keep all the major and
> micro versions, but if so, we should make that an official guarantee.
> Perhaps a short NEP? This might even qualify for an SPEC. Thoughts?
>
> Chuck
>

-- 
Sean Gillies
___
NumPy-Discussion mailing list -- numpy-discussion@python.org
To unsubscribe send an email to numpy-discussion-le...@python.org
https://mail.python.org/mailman3/lists/numpy-discussion.python.org/
Member address: arch...@mail-archive.com