Sent a pull request to Audacity fixing a crash bug I'd been running into frequently. The cause was an out-of-bounds memmove. Classic C++ areas.
Anyway I got a fucking copilot review on my PR which left two comments, both completely wrong, one of which suggesting I reintroduce the out of bounds memory access. I'm furious!
You know back in my day, we had static analysis tooling that would give you exactly this kind of feedback, except it was correct. Now we have shit which only looks at the vibes of the source text and does no semantic analysis whatsoever, so of course it's just fucking wrong
I spent a couple of hours yesterday getting Audacity building, reproducing and diagnosing the bug, and wrapping my head around the complex logic in this part of the code so that I could implement a correct fix. To have copilot review my work, which I contributed back for free, is just so incredibly disrespectful to my time and effort.
@hailey Not to self promo but we're working on rebasing off Audacity 3.7.4 (without the Muse stuff) and chances are we likely have this bug on our rebase branch. If you want to help us with our rebate efforts we'd be happy! No CLA and AI are involved too!
@gperson will be happy to help you with anything too. Just ask him and he'll help you out the best he can! (That's me writing this too. Hello ππ)
@tenacity @gperson btw I would be interested in contributing some work to move the processing for the spectrogram view off the UI thread to keep the UI snappy and responsive (it currently chugs a bit while h-scrolling with spectrogram on), but since this is a larger piece of work + I see that Tenacity is in the middle of an upstream rebase effort, I wanted to check in first to see what kind of appetite there would be for accepting such a change. Let me know!
@hailey @tenacity I'd say go for it! Just keep in mind that we'd merge it after the rebate is complete, so maybe create the PR once it's all done and then we'll go from there! π
If you'd like to help us out with the rebate effort, you can port our dynamic compressor over. Just that plus the Matroska exporter are what we need left, which I'm handling the exporter right now. (There's also a few other things but these are the major things that need taking care if).
@gperson @hailey @tenacity great to see this, for once things are working as they should:
(1) some "bigh tech" thing behaves in a way that is disgusting and unacceptable
(2) people move away from that awful thing to something better, in this case @Codeberg
π π
(I mean, too often it's like "this big tech thing is truly horrible. Now I'm going to keep using it as if nothing happened".)