SAL broken in 2.1.0

I just updated to Audacity 2.1.0 (32-bit version running on 64-bit Win7), and all of my Nyquist plugins written in SAL are now completely broken.

As an example, I’ve placed the following code in my C:\Program Files (x86)\Audacity\Plug-Ins directory as SalSample.ny:

;nyquist plug-in
;version 3
;type analyze
;name "DarkMorford's SAL Sample"
;action "Analyzing..."
;codetype sal
;debugflags trace

function main()
	return "Hello"

In previous versions of Audacity, this displays a dialog box with the “Hello” text, followed by an empty debug-output dialog. In 2.1.0, however, I get a Nyquist Output window proclaiming “error: unbound variable - DARKMORFORD”, and the main Audacity log offers up “Warning: Nyquist returned NIL”. I don’t get the “Hello” text box at all.

The problem is also reproducible using the Nyquist Prompt effect. If I enter

return "hello"

in the command dialog, I get no pop-up window and the same “Warning: Nyquist returned NIL” message in the Audacity log. This happens regardless of whether or not the “Use legacy (version 3) syntax” box is checked.

Thank you for the report. I have asked about this on our developers mailing list.


This should be fixed now in our source code and 2.1.1-alpha “nightly builds”. Thanks again for the report.


Unfortunately not completely fixed (but mostly fixed). There is one small issue that remains, which is that keywords must be in lower case.
According to the Nyquist manual, SAL should be case insensitive, but due to a bug in the updated Nyquist library this is not entirely true. Nevertheless, the Nyquist manual does recommend that SAL scripts should be written in lower case by convention, so as long as you stick to that convention it will not be a problem. The developer / maintainer of Nyquist is aware of this issue, so when it is fixed “upstream” (in the Nyquist library) then we will be able to update to the fixed version.