Closed petersampsonaudacity closed 2 years ago
Thanks @petersampsonaudacity !
Since we're very close to release, it's possible (likely, I'd say) we'll need to pop this in a patch release
I note that @SteveDaulton's nyquist plugins don't exhibit this behavior - is this something that can be solved by throwing in a line into the nyquist plugins in question?
The plug-ins that still have a Debug button are likely to either be very old (and could probably do with being brought up to date), or relatively new.
Several of Audacity's built-in effects began life as Nyquist plug-ins. Nyquist is an excellent choice for quickly creating prototypes for many kinds of effects. Some of Audacity's current Nyquist plug-ins would be good candidates for implementing in C++ (including the Nyquist Plug-in Installer, Adjustable Fade, Channel Mixer, Delay, and crossfading).
The Debug button is enabled by default in Nyquist plug-ins, which is totally appropriate for prototypes.
The Debug button can easily be disabled, but for very old plug-ins I would strongly recommend updating the code to current standards first, then giving it a full release cycle out in the wild (an opportunity to catch any bugs that may have been missed), and only then disabling the Debug button.
Comments re. plug-ins with Debug buttons:
To disable the debug button just requires the addition of a "header" line:
;debugbutton false
(3rd party plug-ins.)
$debugbutton false
(shipped plug-ins.)
The last two big updates to Audacity's Nyquist library both introduced unexpected issues. The presence of the Debug buttons allowed the problems to be diagnosed and fixed promptly. In the latter case, it would have been easy to write off the issue as user error, had it not been for the debug info.
@SteveDaulton I don't think that a rewrite of effects is in the cards for this release. Given that all nyquist effects have been in for a good while at this point, do you think that just adding the header line would be an acceptable fix to this issue for the time being? In case of a re-write down the line, they can of course be enabled again for a release cycle like you suggested.
It's not my call, but personally I think it's useful to have a visible reminder that (in most cases) the plug-ins that have Debug buttons need some attention. As you say, there's no major problems with any of these effects, so updating them will be low priority and can easily be brushed under the carpet unless there's a visible "nag".
Brushing issues under the rug is always a bad idea. According to Murphy they will always reappear at the least convenient time and bite.
Perhaps the plug-ins that I highlighted could be scheduled for attention (explicitly written into "the plan") so that the task of updating them doesn't get kicked too far into the long grass. Then there wouldn't be a need for the "visible nag".
I made a visible nag for myself which will forevermore live in the feature request spreadsheet, #3547. Let's not nag users, too :)
I doubt that many end users notice or care ;-) but I'm happy for the debug buttons to be hidden now that there's a record.
The simple fix is to just add $debugbutton false
in the top section of each affected plug-in, as shown here: https://wiki.audacityteam.org/wiki/Nyquist_Plug-ins_Reference#header
Bug description
Several EGATS have "Debug" buttons
Effects Spectral edit Parametric EQ Spectral edit Shelves Vocal Reduction and Isolation Vocoder
Generators Rhythm Track Risset Drum
Analyzer Beat Finder
Tools Nyquist Prompt Sample Data Import
Steps to reproduce
Expected behavior
No Debug buttons on any EGATS in released software
Debug buttons really have no place in released software - they make the app look unfinished and buggy (OK, yes all apps are buggy)
They are fine to have if you make a debug build and need them for debugging.
Actual behavior
Note that not only do we have a Debug button but it is placed at the extreme right pushing the important Apply button over leftwards and thus removing/diluting the visual impact of the Apply button. Thus is poor GUI and poor UX
Audacity Version
current master / alpha / nightly build - audacity-win-3.2.0-alpha-20220902+7c9c978-x64-msvc2022
Operating system
Windows and Mac - but suspect all OS
Additional context
Flagging @Tantacrul and @LWinterberg as a UX and design issue