linfa icon indicating copy to clipboard operation
linfa copied to clipboard

Maintainership Discussion

Open quietlychris opened this issue 11 months ago • 8 comments

The Rust-ML organization and in particular, the flagship project linfa, saw quite a bit of activity a few years ago which has slowly dwindled as core maintainers have moved onto other focuses in both their personal and professional lives. This has led to a backlog of both issues and pull requests.

This is not exclusive to linfa, and has also become a topic of discussion (with successfully renewed activity) in the n-dimensional linear algebra library that linfa relies upon, ndarray. However, linfa itself is still one of the most comprehensive classical machine learning libraries available in the Rust ecosystem, with a strong base in terms of both features and code quality.

I'd like to begin a discussion to see if any members of the Rust or machine learning/scientific computing community might be interested in taking on a maintainership role for the linfa project and/or Rust-ML org at large (we technically have things like a Github Pages, Zulip and Discord community set up as well). I think the only "requirements" for this role would be an interest in the linfa project/machine learning and some reasonable level of demonstrated good-faith participation in the open source Rust community. If that makes sense, I'm happy to expand this call into other channels like the Rust Users Forum, Discord, "This Week in Rust", etc.

Thoughts?

@relf @bytesnake @YuhanLiin

quietlychris avatar Jan 05 '25 03:01 quietlychris

Thanks, @quietlychris, for bringing this up. I'm definitely interested in helping with linfa maintenance. linfa has fallen a bit behind (see issues like https://github.com/rust-ml/linfa/issues/353), and I would like to get a maintainer role to keep it up to date, especially wrt the ndarray ecosystem, to the best of my ability.

Currently, the ndarray ecosystem is awaiting a new release of ndarray-linalg compatible with ndarray 0.16. Hopefully, it will be released soon, after which linfa will need a new release.

relf avatar Jan 06 '25 10:01 relf

That would be great :) I think you should have updated privileges for everything (at least on Github and Zulip) now, but let me know if anything doesn't work!

quietlychris avatar Jan 06 '25 15:01 quietlychris

I don't know what the current state of ndarray-linalg is, but linfa-linalg has already been updated to support ndaaray 0.16

YuhanLiin avatar Jan 06 '25 16:01 YuhanLiin

Yes! @YuhanLiin, thanks to all the work you've done we have the option to drop ndarray-linalg if it is no longer maintained. But it seems that it could continue, at least in the short term, according to https://github.com/rust-ndarray/ndarray-linalg/issues/381#issuecomment-2336634469

relf avatar Jan 06 '25 17:01 relf

TBF linfa-linalg is in a similar position in the sense that I'm not actively contributing to it either, outside of fixes. The good thing is that linfa-linalg is technically under rust-ml, so it can be maintained by the whole org.

YuhanLiin avatar Jan 06 '25 18:01 YuhanLiin

Thank you, @quietlychris and @relf for taking care of linfa's maintenance. I'm OOTL for quite some time -- I think around two years now -- and currently do not have spare mental cycles to support much, but I'm very happy to see the continued effort to make the Rust ecosystem more sci-comp friendly.

bytesnake avatar Jan 07 '25 09:01 bytesnake

I'm interested in contributing to Gaussian processes with an approximation technique - either RLCM (https://www.tandfonline.com/doi/full/10.1080/01621459.2021.1919122) or the general Vecchia approximation (https://www.jstor.org/stable/26997951).

As I'm just getting started - I'm wondering if there is a contributing guide or standard. For example, limitations on dependencies, ndarray or unsafe usage, etc. Thank you!

kyle-messier avatar Mar 21 '25 14:03 kyle-messier

I am quite interested to maintain the rust-ml particularly linfa and linfa-linalg.

maxprogrammer007 avatar May 20 '25 17:05 maxprogrammer007