Replies: 22 comments
|
I have a bit of a last-resort idea in case
|
|
Thanks for your service @est31. I heavily rely on this create, but am lacking subject matter expertise. Is there a suggestion you have for how people like me can help out? |
|
Hey @est31 , I would be interested in helping out with maintenance of the project , could we chat through what potential options could look like |
|
I've done a quite a lot of low-level ALSA stuff in |
|
@roderickvd thanks, that is very impressive experience. I have sent you an invite. Hopefully you can merge PRs now, review them, etc. Do as you deem is best for the project. If you need help with publishing releases, please reach out, but in theory there should be an auto-publish job (which might not work though, idk). I'll be also around to add future maintainers. @git-staus I have responded to the issue you linked: I am currently employed as an full time employee and don't intend to walk on the freelancer OSS maintainer path. I love OSS and will contribute to it in the future, but it is also the case that if I do software engineering all day at work, doing it in OSS projects on top of that is a bit much, so I reduced my involvement. Maybe in the future there might be folks with the right expertise who would be interested in turning this into an income stream. I can help with any coordination needed. @nick42d @robinsingh1 thanks for the gestures! I lack the bandwidth to grow expertise in the areas required for cpal maintenance. Maybe @roderickvd can help. |
|
@est31 thank you for the collaboration invite, which I just accepted. Given the usage of @nick42d if you've got Rust experience up your belt then your assistance would be greatly appreciated in triaging and reviewing issues and PRs. @robinsingh1 I'm not very big on doing 1-on-1 chats. Feel free to chime in here with what you can and would like to do. I notice your profile does not show a lot of GitHub. Everybody's gotta start somewhere, so be clear on what you expect of it. |
|
@est31 I seem unable to (re-) run CI jobs. Could you set me up with the appropriate rights? Thanks! |
Sounds achievable to me, I have a couple of years of Rust experience now with my public projects on here. Please feel free to add me as an optional reviewer on any PRs. I'll caveat this by saying I'm currently studying part time, so my capacity is limited, but it's not zero and I don't see why I shouldn't still try to stay involved. In regards to triaging, as it sounds like your preference is to keep discussion in the open here, so keep an eye out for an issue from me about a tagging strategy for the repo. |
|
Good afternoon! While it seems the door is pretty closed here, I wanted to jump in on this conversation. I've been programming with CPAL for a few years now for a DAW project of mine. While I have plenty of projects done in Rust, I really value the safe-programming that you discussed in your post. Code security, testing, and resilience are really important to me, and I'm consistently working with those topics (Rust, C, Ada, V&V, etc). I understand there was a recent round of maintainership offers, but I wanted to ask if there’s still an opportunity to contribute more actively, whether as a co-maintainer or a contributor to Just let me know if there's any way I can help contribute to this project as well. |
Great, I'll remember to do that. In parallel, feel more than free to go through the backlog and review as you want.
It's appreciated. I've got more than a full-time job myself, as well as a family, so we do what we can, when we can and want to.
👍 So far I don't have full repository access yet, otherwise I'd enable the "Discussions" feature.
Not closed at all, as far as I am concerned. If anything we need more people to sustain and enhance this popular crate.
As above I don't have full repository access to hand out any rights, but yes all help is great. My proposal would be to first go through the backlog of PRs & issues to do some grooming. Resuscitate good PRs that are in there, do cross-platform testing, dust it all off and we go from there. |
|
Sounds great. I'm happy to contribute to this project. I'll start looking through some PR requests, and add what I can there, especially in terms of keeping Thanks for letting me know! |
|
I might be able to help maintain the CoreAudio / Mac side of this. I have quite a bit of interest in cpal for my personal projects and I also try to live by a philosophy geared toward helping others. |
|
Hi maintainers — I'm Kushal (@KushalLukhi). I'd like to volunteer as a maintainer/contributor for this project. I can help with:
Happy to start with PR-based contributions and earn trust progressively. If you're open, please share the preferred onboarding path and first tasks. |
|
Thanks for your offers @gulbrand and @KushalLukhi. Indeed, it'd be great if you could go through the issues and PRs to review them and propose appropriate action. Let's take it from there! |
|
Sorry for being nosy @KushalLukhi, but would you mind providing some kind of indication whether you are an LLM-driven bot or not? |
Sure looks like it |
|
interested in helping maintain cpal. background: systems / low-level C and Linux (networking, sockets, etc). rust is secondary for me but i write and review it. i can test on linux + windows. honest about audio: not an ALSA expert. happy to start with triage, PR review, repros, and cross-platform smoke tests, then take a platform slice once i've earned it. saw you still want more maintainers beyond ALSA. if useful, point me at 1-2 PRs or issues that need eyes first and i'll start there. |
|
@roderickvd thanks. starting with #1287 (and the related #1297) then looking at #1220. will report back with review notes / any windows smoke i can run. |
|
@roderickvd update from the #1287 / #1220 pointers:
still no ASIO interface on this box, so live duplex A/B for #1287 is blocked for me until i set up ASIO4ALL/SDK or borrow hardware. WASAPI PreferRaw runtime smoke also blocked here by a missing gnu linker (dlltool), check-only for now. |
|
I'm interested in becoming a maintainer. My expertise is with Windows audio APIs, most notably ASIO. I initially came here for #1299, but have since gotten hooked on the project, and want to stay around. While cleaning up the issue backlog, I keep wishing I had the ability to assign tags, because delegating this by leaving comments everywhere (as I currently do for closing issues), or by creating lists of URLs (as I did for moving stuff to Q&A) is just not feasible. At my day job I'm somewhat of a specialist for code cleanup and refactorings. Somehow the tasks that most would consider tedious tend to be really zen to me. In my free time I have a special interest in IO latency, which is what first got me into low level audio programming (specifically this deep-dive). |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
A bit of history of cpal
@tomaka has created the
cpallibrary a over decade ago1, as a library to provide an abstraction layer over the different audio backends of the operating systems. In fact, @tomaka is one of the giants on whose shoulders the Rust community is standing, having created multiple projects, many of which have become key libraries for their categories, like rodio, glium, glutin, winit.In 2018 (I think, I don't have precise records), @tomaka has added @mitchmindtree as a co-maintainer. Eventually, in 20192, it was moved into the RustAudio organization. It was due to @tomaka having less time to dedicate for his old projects as he focused on his new job.
A bit of history on me
I have been fascinated with audio since the start of my involvement in Rust. In fact, some of my first projects were an ogg and vorbis decoder (ogg and lewton). A bit after their creation, I have moved the projects to the RustAudio org.
The first PR I merged in cpal was in August 2019, 6bf00f1. Initially @mitchmindtree and me maintained cpal together, but as he stopped maintaining, I was on my own.
Of the projects mentioned above, I've also become maintainer of glium and rodio.
I have a full time job in Rust now that I really love, and it needs a lot of my time. So my situation is similar to the one @tomaka was in.
cpal maintenance now
In fact, I'd say that over the last 2-3 years, I haven't been a good steward of cpal. I've left PRs unreviewed, didn't respond to people making PRs, etc. People became frustrated, closed PRs, etc. And, of course, I'm not paid for cpal, especially not by the folks opening PRs, so they can't expect anything, but their emotions are also justified. I'd become frustrated too if nobody read my PR for months and years. I'm not happy about this, and I'm sorry!
call for maintainers
As explained, the need for a maintainer exists for a longer time already. But today, with the 0.16 release, I want make an explicit public call for maintainers of cpal. Please reach out to me via the rust-lang zulip (est31) or via this github thread.
maintaining cpal
Maintaining cpal is not easy. A lot of people rely on it so the ability to do damage is there. PRs might not contain actually good solutions to a problem. It's very low level code. If you are a single maintainer, you need to be expert for audio libraries for multiple operating systems. Ideally the burden is shared among a group where each person can specialize. In fact, part of why I am not a good maintainer is that I know surprisingly little about them.
On the other hand, positive contributions can also reach a lot of people and improve their software by improving cpal. Maybe some might even be convinced to adopt Rust for their projects.
my future in cpal
Ideally, after a transition period, I'd walk away completely from being a maintainer and hand it over. I sadly don't have the time. If folks prefer to co-maintain with me, that is a possibility as well.
thanks
I want to thank @tomaka for giving life to this amazing library, @mitchmindtree for having been a great maintainer, the contributors, issue reporters, and everyone who chose to adopt cpal for their project.
Footnotes
the first commit is from 2014 ↩
Publish version 0.11.0 #353 from Dec 2019 updated the URL in git, Wayback is still pre-redirect in January 2019 ↩
All reactions