Welcome to the SuperCollider 3.13 release!
We now also provide a universal build for both x86_64 and arm64 Apple machines.
Below you can find a more complete list of changes in this version. A big thank you to all developers for your contributions!
Countless improvements to help files and documentation (@elifieldsteel, @JaimeClover, @DoHITB, @jamshark70, @heretogo, @capital-G, @alexhughk, @chris75vie, @forrcaho, @paum3, @avdrd, @wolfgangschaltung, @telephon, @redFrik, @madskjeldgaard, @mxw, @dyfer, @tdug, @mtmccrea, @prko, @mjsyts, @grirgz, @chkworks, @balzss, @hectorgonzalezo, @michelestew, @mttvn, @pearcemerritt, @mlang)
Updates and fixes for the test suite: @telephon in https://github.com/supercollider/supercollider/pull/5304, @telephon in https://github.com/supercollider/supercollider/pull/5676, @jamshark70 in https://github.com/supercollider/supercollider/pull/5666, @elgiano in https://github.com/supercollider/supercollider/pull/5717, @dyfer in https://github.com/supercollider/supercollider/pull/5702, @dyfer in https://github.com/supercollider/supercollider/pull/5738, @dyfer in https://github.com/supercollider/supercollider/pull/5792, @telephon in https://github.com/supercollider/supercollider/pull/5801, @dyfer in https://github.com/supercollider/supercollider/pull/5867, @telephon in https://github.com/supercollider/supercollider/pull/5677, @nuss in https://github.com/supercollider/supercollider/pull/5687 @elgiano in https://github.com/supercollider/supercollider/pull/5716.
Updates and fixes for the automated build system (GitHub Actions): @dyfer in https://github.com/supercollider/supercollider/pull/5845, @dyfer in https://github.com/supercollider/supercollider/pull/5783, @dyfer in https://github.com/supercollider/supercollider/pull/5847, @dyfer in https://github.com/supercollider/supercollider/pull/5875, @dyfer in https://github.com/supercollider/supercollider/pull/5889, @dyfer in https://github.com/supercollider/supercollider/pull/5776.
Universal macOS build for both Intel x86_64 and Apple arm64 CPUs by @dyfer in https://github.com/supercollider/supercollider/pull/5953
Better description in the about dialog for tagged builds by @dyfer in https://github.com/supercollider/supercollider/pull/5697 and https://github.com/supercollider/supercollider/pull/5739
Update sc-el submodule to latest version by @jxa in https://github.com/supercollider/supercollider/pull/5600
The regular release macOS build now supports macOS 10.14 and up (previously supported 10.13). The legacy build is still provided supporting macOS 10.10 and up.
Remove spurious Qt dependencies by @marcan in https://github.com/supercollider/supercollider/pull/4991
Update urls in git submodules to use https by @dyfer in https://github.com/supercollider/supercollider/pull/5694
Fix building on Apple M1 by adding ad hoc code signing by @dyfer in https://github.com/supercollider/supercollider/pull/5650
Build on OpenBSD by @ibz in https://github.com/supercollider/supercollider/pull/5822
Find JACK using cmake's FindPkgConfig by @dvzrv in https://github.com/supercollider/supercollider/pull/5680
Ability to set scrollPosition of QWebView by @paum3 in https://github.com/supercollider/supercollider/pull/5483
Interactive Command line interface on Windows using Readline by @dyfer in https://github.com/supercollider/supercollider/pull/5712
Support for MPEG formats by @dyfer in https://github.com/supercollider/supercollider/pull/5786
Signal -thresh
by @elgiano in https://github.com/supercollider/supercollider/pull/5432
Stretch behaviour in QcRangeSlider by @miriamvoth in https://github.com/supercollider/supercollider/pull/5595
Symbol -isPrefix
by @Brandon-Yip2 in https://github.com/supercollider/supercollider/pull/5708
MIDI realtime message type codes on Linux by @jamshark70 in https://github.com/supercollider/supercollider/pull/5846
RF64 and W64 format recognition by @dyfer in https://github.com/supercollider/supercollider/pull/5877
UdpInPort error reporting by @jamshark70 in https://github.com/supercollider/supercollider/pull/5850
Parsing block arguments by @nilninull in https://github.com/supercollider/supercollider/pull/5522
Support for kitty
and alacritty
Linux terminals by @madskjeldgaard in https://github.com/supercollider/supercollider/pull/5548
NodeProxy -seti
by @nuss in https://github.com/supercollider/supercollider/pull/5640
Converting mixed outputs in NodeProxy
instead of failing by @telephon in https://github.com/supercollider/supercollider/pull/5699
Posthook \synthDefReady
after synthdef is built by @avdrd in https://github.com/supercollider/supercollider/pull/5657
Setting the number of decimal places to SimpleNumber -asTimeString
by @dyfer in https://github.com/supercollider/supercollider/pull/4709
Make it possible to reschedule a Routine, Task or EventStreamPlayer transparently by @jamshark70 in https://github.com/supercollider/supercollider/pull/5038
Handle langPort
startup error descriptively by @jamshark70 in https://github.com/supercollider/supercollider/pull/5158
AppClock -schedAbs
by @telephon in https://github.com/supercollider/supercollider/pull/5851
Vim-like keyshortcuts in HelpBrowser by @paum3 in https://github.com/supercollider/supercollider/pull/5742
Add hooks to the Quark
class by @capital-G and @telephon in https://github.com/supercollider/supercollider/pull/5907
Refactor functionality: connectToServerAddr
by @telephon in https://github.com/supercollider/supercollider/pull/5569
Improve efficiency of calling List -order
by @telephon in https://github.com/supercollider/supercollider/pull/5561
Allow any type of text stream in the FileReader hierarchy by @jamshark70 in https://github.com/supercollider/supercollider/pull/5611
Improve behaviour of error in loadRelative
by @telephon in https://github.com/supercollider/supercollider/pull/5744
The argument name for Spawner -seq
was changed to pattern
by @tdug in https://github.com/supercollider/supercollider/pull/5767
Replace aiff
with wav
as the default value for recHeaderFormat
by @RhnSharma in https://github.com/supercollider/supercollider/pull/5559
Guarantee that SetBuf
gets an array by @telephon in https://github.com/supercollider/supercollider/pull/5743
Delete unused method *findMethod
from ScIDE class by @jamshark70 in https://github.com/supercollider/supercollider/pull/5840
HistoryGui: improve display readability by @adcxyz in https://github.com/supercollider/supercollider/pull/5861
Create only a single server meter by default by @telephon in https://github.com/supercollider/supercollider/pull/5908
QuartzComposerView by @dyfer in https://github.com/supercollider/supercollider/pull/5710
Prevent possible infinite recursion in *initClassTree
by @jamshark70 in https://github.com/supercollider/supercollider/pull/5575
Use named controls in node proxy by @telephon in https://github.com/supercollider/supercollider/pull/5675
Fix implicit specs in synth functions by @adcxyz in https://github.com/supercollider/supercollider/pull/5681
Put protect
in PauseStreams by @jamshark70 in https://github.com/supercollider/supercollider/pull/5626
Fix some filters with node proxy by @telephon in https://github.com/supercollider/supercollider/pull/5679
Handle buffer instance of NdefGui
as argument by @redFrik in https://github.com/supercollider/supercollider/pull/5692
Defer GUI updates in ServerPlusGUI
by @dyfer in https://github.com/supercollider/supercollider/pull/5491
Make envelopes behave like patterns in a pattern proxy by @telephon in https://github.com/supercollider/supercollider/pull/5287
Fix Server.remote
-startAliveThread
by @elgiano in https://github.com/supercollider/supercollider/pull/5715
Exclude QQuartzComposer from headless builds by @elgiano in https://github.com/supercollider/supercollider/pull/5733
Prevent double-firing of cleanup functions in EventStreamCleanup
by @jamshark70 in https://github.com/supercollider/supercollider/pull/5386
Fix cleanup setup for Pmono and PmonoArtic by @eleses in https://github.com/supercollider/supercollider/pull/5027
Escaping of String:openOS
by @elgiano in https://github.com/supercollider/supercollider/pull/5322
Recording in Pbind
by @madredeuz in https://github.com/supercollider/supercollider/pull/5793
Cast sampleRate to Integer in SoundFileView -setData
by @redFrik in https://github.com/supercollider/supercollider/pull/5812
Use embedded specs in Ndef for guis by @adcxyz in https://github.com/supercollider/supercollider/pull/5686
Plotter: update colors, fix grid and axis labels, remove Plotter -gui
method by @mtmccrea in https://github.com/supercollider/supercollider/pull/4511, https://github.com/supercollider/supercollider/pull/5827, https://github.com/supercollider/supercollider/pull/5858. Grid lines and their labels are improved, along with axis labels, which are now settable by their own methods labelX_
and labelY_
. The x-axis label inherits the units of a domainSpec
if it is explicitly set and labelX hasn't already been set
Make sure Plot
color is not converted to array by @telephon in https://github.com/supercollider/supercollider/pull/5849
BinaryOpUGen
optimization for a === b
cases by @smrg-lm in https://github.com/supercollider/supercollider/pull/5427
Remove inline warnings in the class library by @telephon in https://github.com/supercollider/supercollider/pull/5856
Make maxLogins not to exceed 32 in ServerOptions
by @jamshark70 in https://github.com/supercollider/supercollider/pull/5149
Sample alignment with grid lines in Function -plot
by @mtmccrea in https://github.com/supercollider/supercollider/pull/5855
Make subBus
use the same server as receiver by @telephon in https://github.com/supercollider/supercollider/pull/5887
GridLines improvements: fix exponential grids and add spacing control by @dyfer in https://github.com/supercollider/supercollider/pull/5161 and @mtmccrea in https://github.com/supercollider/supercollider/pull/5895, https://github.com/supercollider/supercollider/pull/5942
Expand tilde to users home directory on Windows by @miriamvoth in https://github.com/supercollider/supercollider/pull/5431
Improve Function -flop
implementation that works with string ellipsis and keyword arguments by @telephon in https://github.com/supercollider/supercollider/pull/5499, https://github.com/supercollider/supercollider/pull/5900
Time precision issues with Psync and EventStreamPlayer by @totalgee in https://github.com/supercollider/supercollider/pull/5891
Pattern -record
by @jamiehodge in https://github.com/supercollider/supercollider/pull/5883
Make Rest
accepted by Patterns by @olafklingt in https://github.com/supercollider/supercollider/pull/5882
Buffer *cueSoundFile
: keep path
value by @telephon in https://github.com/supercollider/supercollider/pull/5937
Support for MPEG formats by @dyfer in https://github.com/supercollider/supercollider/pull/5786
Option for LIB_SUFFIX in the CMake build system by @tdug in https://github.com/supercollider/supercollider/pull/5644 and @elgiano in https://github.com/supercollider/supercollider/pull/5728
Error warnings and /fail replies to /d_load and /d_loadDir (scsynth) by @muellmusik in https://github.com/supercollider/supercollider/pull/5244
Make /g_head
always fire an /n_move
reply (scsynth) by @Sciss in https://github.com/supercollider/supercollider/pull/5580
Non-real-time mode in supernova by @Spacechild1 in https://github.com/supercollider/supercollider/pull/5616
Crash when passing audio/control bus mapping to arrayed Group control in supernova by @Spacechild1 in https://github.com/supercollider/supercollider/pull/5617
Possible crash with unit commands by @Spacechild1 in https://github.com/supercollider/supercollider/pull/5610
Use the /error
messages to turn on / off the console printing in supernova by @vitreo12 in https://github.com/supercollider/supercollider/pull/5820
Support for libsndfile
version >= 1.1.0 by @dyfer in https://github.com/supercollider/supercollider/pull/5761
Print plugin API method in supernova by @Spacechild1 in https://github.com/supercollider/supercollider/pull/5874
UdpInPort error reporting by @jamshark70 in https://github.com/supercollider/supercollider/pull/5850
Behavior of .sqrt and .reciprocal operations on the server on Apple M1 CPUs by @dyfer in https://github.com/supercollider/supercollider/pull/5901
OffsetOut_Ctor error in supernova on Windows by @Spacechild1 in https://github.com/supercollider/supercollider/pull/5902
Argument binout
to SpecPcile
by @woolgathering in https://github.com/supercollider/supercollider/pull/5097
Impulse
is now initialized correctly such that:
These are intended and documented behaviors, but which failed previously in certain UGen configurations. Therefore, users may observe changes to the initial state of synth graphs that use Impulse. (Especially triggered UGens.) For details, a list of resolved/changed behavior can be found here.
For more details see https://github.com/supercollider/supercollider/pull/4150 by @mtmccrea
Numerous UGens have been updated so that their initialization sample is set correctly by @mtmccrea: OscUGens
in https://github.com/supercollider/supercollider/pull/5787, Klang
and Klank
in https://github.com/supercollider/supercollider/pull/5817, TWindex
in https://github.com/supercollider/supercollider/pull/5815, Free
and PauseSelf
in https://github.com/supercollider/supercollider/pull/5914, Poll
in https://github.com/supercollider/supercollider/pull/5965.
Integrator
Ctor passes through the first sample only by @jamshark70 in https://github.com/supercollider/supercollider/pull/5352. Prior to v3.13, there was a bug that caused the Integrator to double-count the initial value: the integral of a single 1 followed by endless 0s ends up being 2. Starting with v.3.13, it's 1 as expected.
PanAz
, due to fixing leaks and imprecisions by @elgiano in https://github.com/supercollider/supercollider/pull/4971
Tap
samplerate compensation by @morfant in https://github.com/supercollider/supercollider/pull/5606
Audio rate versions of triggered random ugens by @telephon in https://github.com/supercollider/supercollider/pull/5344
AudioControl
and InFeedback
processing for an extra cycle by @vitreo12 in https://github.com/supercollider/supercollider/pull/5601
Remove RTAlloc exceptions, and review all plugins' RTAlloc/RTFree by @elgiano in https://github.com/supercollider/supercollider/pull/5713