Release dates of 3.x versions:
- 3.1: 2007-10-31
- 3.2: 2008-02-19
- 3.3: 2009-04-30
- 3.4: 2010-07-15
- 3.5: 2012-03-16
- 3.6: 2012-11-28
- 3.7: 2016-03-13
- 3.8: 2016-11-04
- 3.9: 2018-01-13
- 3.10: 2018-11-24
- 3.11: 2020-03-08
- 3.12: 2021-08-02
The 3.12.1 release fixes compatibility with older macOS systems (10.13 and below)
Builds for older macOS systems (#5537)
The 3.12.0 release brings new features, countless bugfixes, as well as project and documentation updates. See the repository for all the changes. A big thank you to all developers for your contributions!
Change log highlights:
Supernova on Windows (#4763)
Bela support (#5295)
macOS Big Sur support (#5298, #5356)
Bigger build matrix add CI jobs to implement platform support RFC (#4906)
Updated portaudio submodule (#4925)
Implement RFC 10: Replace oppressive terminology with more accurate alternatives (#5251, #5424, #5470)
Increase required C++ standard to C++17 (#5396)
Move CI from Travis/AppVeyor to GitHub Actions (#5261, #5273 #5371, #5377)
Run TestSuite in CI (#5332)
Exclude default paths: change from command line parameter to language file flag (#3733)
MIDI realtime messages: Push correct number of values onto the stack (#5200)
Fuzzy equals add fuzzy array comparisons (#4468)
String -runInTerminal
on Windows (#4882)
Provide suggestions on method not found
: (#4866)
Add "lazy equality" |==| operator (#5183)
New class: CondVar (#5436, #5448, #5456)
Various UnitTest fixes (#5461, #5457)
Clip values on hardware out busses (macOS) (5110, #5454)
Supernova bind to the specified address (#5474)
Supernova on macOS: avoid resampling when talking to audio hardware (#4477)
Servers not booting on Windows if some system logs are missing (#5393)
macOS builds include a custom build of libsndfile to support older macOS versions (#5518)
PanAz: initialize amps in Ctor (#4973)
EnvGen fixes (#5217, #4921, #4793)
Classname highlighting before introspection is available (#5438)
We are now providing a "legacy macOS" binary that supports macOS 10.10 and above. It can be found where you normally download SuperCollider (#5190, #5242).
In the help browser, Shift-Enter now evaluates code again! (#4883)
Fixed faulty deployment of macOS app bundle due to bug in Qt utility (#5187, #5230).
Fixed support for Portaudio in build system with CMake 3.18 (#5206).
Fixed support for building shared libscsynth on macOS and Linux (#5215).
General documentation improvements (#5131, #5136, #5137, #5141, #5142, #5173, #5203).
Removed some unused code for old Android support (#4975).
Fixed a bug in Pfindur where the last event of the pattern could become "Rest-less" (#5113).
SynthDesc and SynthDescLib now restore metadata for SynthDefs (#5122).
Fixed an issue in output formatting for UnitTest:assertFloatEquals (#5135).
Pattern:record no longer ignores header and sample formats provided as arguments (#5031).
Pseg:embedInStream now returns 'inval' to match other patterns (#5145).
ProxySpace:copy also rebuilds the ProxySpace to copy referenced objects (#5192).
Supernova now correctly handles /s_getn
with a control name instead of index
(#5182).
This version of SuperCollider now supports Fedora 32 and Ubuntu 20.04. See README.md or the wiki for more information on the full set of platforms and toolchains supported by SuperCollider.
Added support for AArch64 (64-bit ARM) architecture (#5095)
Added support for Qt 5.15 (#4986)
Added support for Boost 1.72 (#4990) and 1.73 (#4983)
Added a new script for maintainers for producing a release tarball (#4837)
Added a new script to help automate the release process (#4987, #5114)
Building sclang with readline now requires ncurses; this is to fix build errors on some Linux systems where libreadline is not fully linked (#4900)
The 'render all help' CMake target no longer includes extensions (#5089)
Changed the disableBufferAliasing argument of the plugin interface's registerUnit() from int to bool (#4710)
Disabled a harmless warning from Boost that caused lots of noise when building on Windows (#4804)
The IDE and sclang GUI components now work better on high-resolution displays on Windows (#4850)
Removed use of deprecated features in examples (#4827)
CI fixes (#4861, #4847, #4920, #4993, #5074, #5076)
Removed unused packaging scripts (#4840)
"Guides" help documents are installed on all non-GUI builds now (#5042)
The make_parser.sh
script in the main repository works again (#5032)
Fixed an issue in one of the internal gen_cmake
tools used in cookiecutter-supercollider-plugin (#5079)
Documentation improvements (#4854, #4838, #4886, #4905, #4868, #4995, #5006, #4888, #4881, #5039, #5023, #5001, #5029, #5028, #5010, #4988, #4923, #5045, #5082, #5078, #5088, #5109, #5093, #5094, #4796, #4792, #4762)
Both servers now do better at explaining what errors like "Exception in World_OpenUDP: unable to bind udp socket" mean (#4863)
supernova now ignores non-scsyndef files when loading synthdefs at startup or with /d_loadDir
(#4917)
Both servers are now built with correct Unicode support under MinGW (#4926)
Both servers now warn about an issue where Windows Defender may delay booting by ~1 minute (#4984)
supernova now uses FFTW as its FFT library on macOS to solve a thread safety issue (#4583)
scsynth now supports non-ASCII device names on the command line on Windows (#4479)
TWindex learned to respond to multiple triggers in a single control block (#5002)
MIDIOut now checks the correct bounds when sending messages (#4652)
WebView:-findText no longer throws an error when used correctly (#4937)
[].mirror.wrapAt
no longer crashes the interpreter (#4935)
Fixed a segfault in the prMatchLangIP primitive (#4927)
Buffer:-getToFloatArray correctly handles a count of -1 now (#4939)
Some dead code was removed (#4934)
Fixed a crash on macOS when calling MIDIIn.connectAll immediately before HID.findAvailable (#5046)
Fixed a build issue on Ubuntu caused by incompatibility with Emacs 25 (#4855)
Added support for completion-at-point-functions and company-mode (#4855)
Plotter learned to allow multiple active plot modes, similar to having multiple active colors (#4459)
The class library's HelpBrowser class learned how to respond to the same keyboard shortcuts as the IDE help browser (#4932)
Quarks prints more helpful error messages for a common error (#4404)
Object:-writeDefFile no longer allows an empty string as an argument (#4953)
Cmd-W now closes GUI windows again on macOS (#4821)
Passing a nil spec to NamedControl no longer overwrites a spec in SynthDef metadata (#4817)
Fixed a deprecation that broke non-GUI builds (#4875)
String:-runInTerminal works again on macOS (#4880)
UnitTest:-assertFloatEquals's formatting was fixed (#4946)
String:-splitext no longer interprets a period in a path component as the start of a file extension (#4960)
When building a UGen graph, SynthDef no longer deletes structures of the form (a + b) + (a + b)
(#5048)
TaskProxy and EventPatternProxy now respect instances' clocks in -play
(#4996)
EventPatternProxy does not prematurely cleanup a faded-in stream in some cases (#5057)
UGen:-composeBinaryOp's return value was fixed (#5000)
ProxySpace.storeOn became more robust (#4316)
View:-font_ now correctly sets the view's Font object (#5107)
SimpleNumber:-asTimeString behaves correctly when the receiver is negative (#4802)
Pfset now correctly cleans up when a subpattern yields nil immediately (#4815)
Silenced some warnings during class library compilation (#4782)
Test suite improvements (#4938, #4962)
Fixed a communication problem between sclang and scide which could cause confusing failures in the help browser (#5015)
Selecting regions in the help browser by clicking on parens works correctly now (#5044)
The IDE no longer contains code that depends on a Quark (#4948)
The IDE correctly transmits non-ASCII characters when queried with Document.text (#4978)
IDE translation files are now correctly included and found in distributions, although there are no translations available so this has no functional effect (#4810, #4811)
New feature - Ableton Link support. See sclang: added
Documentation improvements (#4759, #4732, #4744, #4697, #4326, #4673, #4610, #4515, #4389, #4355, #4333, #4222, #4198, #4144, #4123, #4148, #4140, #4080, #4078, #4057, #4016, #4027, #3925, #3953, #3954, #3912, #3929)
Added NOVA_SIMD build option for cookiecutter based plugin development (#4354)
Moved RPi and BeagleBone README files into the main repository. (#4639)
The way version numbering is handled in the build system has been reformed. This primarily affects building, but also required changes to the class library (see class library: deprecated) (#4706)
scel has been updated (#4712, #4700)
scvim has been updated (#4197)
CONTRIBUTING.md
and DEVELOPING.md
have been updated and moved to the wiki (#4503, #4297, #4028)
README_LINUX.md
has been updated (#4397, #4159)
Templates for issues have been updated (#4271)
Templates for pull requests have been updated (#4272)
macOS builds now require >= 10.10. Documentation and travis builds are updated to reflect this (#4068)
Fixed linking issues for supernova on macOS (#4764)
Fixed build issues when using system boost or yaml-cpp (#4185)
macOS: Added cocoa event loop to scsynth and supernova to allow future work on VST integration (#4499)
Added a missing flag for no buffer aliasing to the plugin interface (#4356)
Replaced a magic number used by the clock (#4714)
supernova now has more deterministic ordering of OSC messages in asynchronous requests (#4460)
Fixed an issue with scsynth and supernova pre-processor directives (fixes issue raised in (#4504)) (#4784)
Fixed issues with clock jitter when using JACK (#4599)
Fixed a bug where Windows would not guard against denormals, which would cause large CPU utilisation (#4504)
Prevented coreaudio from resampling audio stream when using portaudio on macOS (#4477)
Fixed an erroneous include that stopped supernova from compiling in some cases (#4018)
Fixed an issue with the Done flags on EnvGen (#4789)
Fixed an issue with EnvGen gating non-gated envelopes (#4436)
Ableton Link support is here! Check the LinkClock class for more information. (#4331, #4340, #4337)
Add PortAudio bindings to allow listing audio devices on Windows (#4742).
Fixed an issue where TCP connections were not closed properly when recompiling the class library (#4518)
Fixed LanguageConfig
sometimes storing in the wrong location (#4680)
Fixed an number of garbage collection related issues that would sometimes render the interpreter unstable (#4192)
Added Platform.architecture
to allow detection of system architecture (#4524)
Added File.deleteAll
to facilitate the deletion of all files within a given path - to be used for good, not evil (#3921)
Added more flexible ways to modify ControlSpecs related to SynthDef args (#3814)
Added support for listing audio devices on Windows from ServerOptions.inDevices
, ServerOptions.outDevices
and ServerOptions.devices
(#4742)
Added 'composite' event type to default Event prototype (#4441)
Added SequenceableCollection:unixCmdGetStdOut
to capture std output from external programs (#3539)
Added String.parseJSON
and String.parseJSONFile
as an alias around parseYAML
(#3956)
Added debug
method to UnitTest
(#3623)
Improvements to drag functionality with Ndef params (#4093)
Collection:==
optimised to exit early for identity, inherited by subclasses (#3962)
As part of version reforming, Main.versionAtMost
and Main.versionAtLeast
now accept a third argument for the tweak level (e.g. checking for 3.10.4 is now possible) (#4706)
Some UnitTests now print fewer newline characters, and inline warnings have been fixed (#4716)
NodeProxy:set
can now be used with arbitrary objects (#4090)
UnitTest methods are now isolated from each other (#3836)
Increased the maximum number of attempts for TCP connection to server (#4481)
String.scDir
is deprecated (#4374). Please use Platform.resourceDir
instead.
PlotView.plotColors
is deprecated (#4678). Please use plotColor
instead.
As part of version reforming, Main.scVersionPostfix
has been deprecated (#4706). Please use Main.scVersionTweak
instead
Object.asInt
is deprecated (#4089). Please use Object.asInteger
instead.
Breaking change: Fixed an issue with Signal:hammingWindow
using incorrect coefficients. Signal:hammingWindow_old
can be used for previous behaviour (#4324)
Breaking change: Color:asHSV
could sometimes return NaN -- grayscale colors returned NaN hue, and black returned NaN hue and saturation. Zero values are now returned in these cases, as is the standard (#4369)
Fixed an issue where NamedControl would erroneously convert name
to a String in some cases (#4761).
Fixed an issue with copying Ndef (#4690)
Fixed an issue where Document.initAction
would fail to run in some cases (#4582)
Fixed an issue with NodeProxy bundling (#4461)
Fixed a bug in Ndef:asCode
to correctly handle the default fadeTime
(#4721, #4695)
Fixed a bug involving fadeTime and Ndef:copy
(#4701)
Fixed issues with resampling in Plotter
(#4223)
Fixed a duplicate node ID error in NodeProxy:xset
(#4512)
Fixed an issue where changing the number of channels or rate of a NodeProxy
would not free the old bus in time (#4493)
Fixed an issue with Plotter
resampling of domain given fixed Array:series
method (#4510)
Fixed a UnitTest for TestTempoClock
(#4334)
Fixed an issue where typeView
wasn't updated in NdefGUI (#4056)
Fixed an issue where findRegexp
would return incorrectly when given an empty string (#4241)
Fix for Score examples and Platform.defaultTempDir
on OSX (#4221)
Fixed Plotter
domain and superpose behavior (#4082)
Fix FunctionDef:argumentString
handling of varArgs (#4085)
Fixed several issues with SoundFile:cue
behaviour (#3728)
Fixed an issue where Image
would not support a filename as an argument (#3949)
Fixed UnitTests for Event
to reset between tests (#3961)
Fixed an issue where NodeProxy
would use the wrong release shape in some cases (#3776)
Fixed an issue with Menu.insertAction
not invoking properly (#3871)
Fixed an issue with UnitTest
where runAll
could be inherited by individual tests (#4722)
Help Browser now supports executing code regions (#3904)
sc-ide is now built as a static library (#4628)
Improved a number of style issues in the Help Browser (#3881)
Fixed an issue where SCDoc might segfault on deep node trees during tests (#4713)
Fix for an issue on Windows where the IDE would appear to lock during launch in some cases due to an IPC issue between IDE and sclang (#4646)
Fixed an issue with code execution in the Help Browser where comments contained brackets (#4548)
Fixed an issue where copying a theme would crash the IDE if the new theme was not yet saved (#4146)
Fixed a number of deprecations in Qt (#4649)
Fixed a number of rendering warnings from SCDoc (#4265)
Xcode 11 is now supported (#4611).
Minimum supported Boost version is now 1.66.0 (#4611). Boost 1.71 is also now supported (#4612).
supernova would sometimes return malformed /done
OSC messages over TCP due to a concurrency issue. This has been fixed (#4435).
On macOS, Cmd+Q causes a segmentation fault in sclang. This is a regression from old behavior, where Cmd+Q is simply ignored. This has been fixed (#4533).
Fixed a mistake where Recorder
would get its default file extension from server.recHeaderFormat
rather than its own recHeaderFormat
(#4550).
The NodeProxy
filter
role now respects fadeTime
(#4278).
Some sequences of IDE actions involving editor splits (such as removing a split and then recompiling the class library) can lead to an eventual IDE crash. These have been fixed (#4645).
On macOS, Cmd+Q used to quit both the IDE and interpreter, but it regressed and only the interpreter would quit. This has been fixed (#4300).
For people compiling with musl libc, some build errors have been fixed (#4535).
Breaking change: scsynth had a security issue where it listens to 0.0.0.0 by default. For most users, this is undesirable behavior since it allows anyone on your local network to send messages to scsynth! This default has been changed to 127.0.0.1 (#4516). To change it back (e.g. for networked server/client setups), use -B 0.0.0.0
at the command line or server.options.bindAddress = "0.0.0.0"
.
On Windows, scsynth was not able to select separate input and output devices. Since many audio drivers present inputs and outputs as separate devices, this caused major blocking issues for anyone using Windows with an external sound card. This has been fixed (#4475).
Fixed a supernova compilation issue on Boost 1.67 (#4447).
Fixed server hangs happening in plugins employing SequencedCmd (#4456).
Fixed an initialization issue for the trig
input to Convolution2
(#4341).
sclang and the IDE can now be compiled without QtWebEngine -- just set SC_USE_QTWEBENGINE=OFF
at the cmake
stage (#4328).
The mouseWheelAction
of View
erroneously reported xDelta
and yDelta
to be 0 in some cases. This is fixed (#4423).
Fixed incorrect mathematics in SimpleNumber:series
(#4454).
Fixed a harmless but annoying warning in when running HelpBrowser.instance
in sclang without the IDE (#4488).
The -B
command-line flag to scsynth was missing a frontend in ServerOptions
. This has been fixed by introducing ServerOptions:bindAddress
(#4516).
Add Platform.hasQtWebEngine
to query whether sclang was compiled with QtWebEngine support (#4523).
Fix issues when using a regular Buffer
(that is, not a LocalBuf
) for FFT (#4050).
Lots of small issues in Plotter
were fixed, especially related to the domain
and domainSpec
arguments (4082).
When changing the source of an input to a NodeProxy
, discontinuities can happen even when smooth crossfading is requested. This has been fixed (#4296).
ProxyMixer
no longer assumes the ProxySpace
it is using to be the current environment (#4339).
The default recordings directory on Windows was the somewhat redundant My Documents\SuperCollider\SuperCollider\Recordings
. The additional SuperCollider
subdirectory has been removed (#4420).
In Events where strum
is set, the releases of notes was erroneously done in reverse order. This is fixed (#4406).
Fix EnvirGui
always creating a SkipJack
due to incorrect logic concerning the makeSkip
flag (#4376).
SkipJack
would not remove itself properly when stopped by its stopTest. This is fixed (#4376).
Fixed class library compilation issues on Qt-less sclang installations (#4219).
Fixed crashes trying to run multiple IDEs at once, and a related error when attempting to run HelpBrowser:instance
in sclang while an IDE help browser is open (#4267).
On macOS, Cmd+Q in the IDE would quit the interpeter but not the IDE. This is a regression from old behavior where the IDE was quit entirely. This has been fixed (#4300).
Since 3.10, the help browser would execute code twice when selected. This has been fixed (#4390).
Fix footnotes adding unwanted line breaks in SCDoc (#4365).
Due to immature development status and lack of cross-platform compatibility, MainMenu is no longer created by default (#4285). It can be re-enabled by running MainMenu.initBuiltInMenus
(add this to your startup file to permanently re-enable). The API for MainMenu is subject to change in the future.
MainMenu consumes less resources and no longer causes a gradual memory leak (#3870).
Fix SCIDE missing an icon on some Linux desktop environments (#4269).
Fixed incorrect parsing of strings containing \"
and single-quote symbols containing \'
in class library files (#4255).
Fixed language-side issues when using FFT UGens on a regular Buffer rather than a LocalBuf (#4050).
Added TempoClock:isRunning
method (#4254).
Fixed some compiler warnings (#4275, #4274).
Fixed an infinite hang in SerialPort.devices
affecting macOS (#4180).
Fixed ServerOptions
producing eight channels instead of two channels when explicitly setting numOutputBusChannels
or numInputBusChannels
(#4251).
Fixed a build issue on OpenBSD (#4203).
Fixed /b_fill
, which was broken in supernova (#4188).
Fixed incorrect latency compensation in PortAudio driver (#4210).
The CheckBadValues
UGen incorrectly recognized zero as a bad value on Windows. This has been fixed (#4240).
Fixed crtscts
flag in SerialPort.new
, which broke in 3.10 (#4191).
Fixed lack of backgroundImage
support for Slider2D
(#3952).
Fixed incorrect behavior of String:asSecs
(#3819).
0X0
is an illegal hexadecimal literal in sclang, but SCIDE and SCDoc highlighted such strings as if they were correct. They have been updated (#4170).
Fixed weird colors in SCIDE when changing from other themes to the "classic" theme (#4161).
Contributors to this release: adcxyz, bagong, brianlheim, dkmayer, dmorgan-github, dyfer, g-roma, geoffroymontel, gusano, hardiksingh-rathore, htor, jamshark70, jpburstrom, LFSaw, lnihlen, lvm, markwheeler, mhetrick, miczac, muellmusik, nilninull, novadeviator, orbsmiv, patrickdupuis, paum3, prko, redFrik, sbl, scztt, sensestage, shimpe, simonvanderveldt, smiarx, smrg-lm, snappizz, sonoro1234, telephon, tem44, widp, Xon77, and many others.
- FileDialog can hang — currently we are only able to reproduce on KDE, but other OS's could be affected (#3807).
- On Windows and Linux, running code with Ctrl+Enter in the help browser (not the editor) only evaluates the current line (#3989).
- QtWebEngine, a hard dependency of SCLang and SCIDE, is difficult or impossible to install in some environments (#4010). Work is underway to make it an optional component, but this will not happen in time for 3.10.
A NO_X11
option has been added to the build system so that server plugins requiring an X server such as MouseX can be omitted (#3738).
sclang and scide have long been stuck with Qt 5.5 due to Qt dropping QtWebKit for QtWebEngine. They have been upgraded for compatibility with Qt 5.7+. We recommend using the most recent version of Qt. The impacts of this change include:
- sclang and scide now build on Visual Studio 2015 and later. (Previously, Windows users had to obtain the now-ancient Visual Studio 2013.)
- UserView now supports Retina/HiDPI display.
- A somewhat different build process on Linux. See the README.
The minimum required version is now CMake 3.5 instead of CMake 2.8 (#3656).
scel (the emacs package) is now a submodule (#3519).
Many issues with Unicode paths on Windows were fixed in 3.9. A few remaining cases involving sound files remained, and are now fixed (#3720):
- supernova's sound file backend, buffer manager, and plugin loading
- NRT mode in scsynth
/b_read
family of commands in scsynthSoundFileView
in the sclang GUI
Fixed a build failure with the CMake option SYSTEM_YAMLCPP=on
(#3558).
Fixed a misleading deprecation warning when CMAKE_INSTALL_PREFIX
is set to the home directory in Linux (#3613).
Fixed CMAKE_PREFIX_PATH
incorrectly defaulting to /usr/local/
on macOS under some conditions (#4043).
supernova now has latency compensation (#3790).
scsynth's latency compensation had a math error that ended up doubling the latency. It is fixed now (#3790).
For consistency with scsynth, supernova no longer requires the final argument to /b_allocReadChannel
(#3826).
Fixed a missing newline in some of supernova's error messages (#3897).
Fixed errors in supernova's /s_getn
(#3893).
Fix supernova's response to /g_queryTree
so it matches scsynth (#3221).
Fixed clicks in Convolution2L (#3687).
Menus are now supported in the Qt GUI. See help files for Menu
, MenuAction
, ToolBar
, and MainMenu
(#2504).
Added wrappers for over 100 special mathematical functions (gamma function, Bessel functions, elliptic integrals, etc.) from the Boost library (#3672).
SerialPort now works on Windows (#3809).
FileDialog
and Dialog
now support a "path" argument that specifies a default directory when the dialog appears (#3508).
QTreeView
has a new method: setColumnWidth
(#3560).
Breaking change: Float:asString
now always produces a decimal point, so 3.0.asString
is now "3.0"
instead of "3"
(#3585).
Breaking change: The server
argument has changed to target
in Function:asBuffer
, Function:loadToFloatArray
, and Function:plot
, and now allows spawning the plotting synth relative to a group or node rather than just a server (#3088).
Breaking change: File:mkdir
now returns a Boolean indicating whether the operation was successful. Previously, it returned the File object (#3635).
Scrollbars now always appear for ScrollView on Linux an Windows, as a temporary workaround for a very odd dependency on the use of the scroll wheel (#3686).
Removed some unused Qt dependencies from the build system (#3472).
Breaking change: Fixed a long-standing math error in SimpleNumber:expexp
(#3786).
Fixed extreme CPU usage of sclang when built without Qt (#3772).
On Windows, the directory where extensions were installed was accidentally changed in 3.9. It has been reverted (#3751).
Fixed a crash when calling File.copy
when the destination exists (#3633).
Fixed two Array:lace
issues: a crash when any element is an empty array, and an error when no length argument is provided and any element is not an array (#3716).
Fixed conditions where Integer:forBy
can cause sclang to freeze when the step size is 0 or a floating point value with an absolute value less than 1 (#3804).
Fixed some incorrect output in FunctionDef:dumpByteCodes
(#3803).
Fixed Node:release
getting stuck on negative release times, which are now equivalent to 0 (#3741).
Fixed ==
on Signal
objects randomly returning the wrong result (#3970).
UnitTest.passVerbosity
allows changing the verbosity of test failure reports. See the UnitTest
help file for more information (#3615).
Added new UGen methods .snap
and .softRound
(#3429).
Node:query
has a new action
argument, allowing specification of a callback function (#3701).
.degrad
and .raddeg
are now implemented for UGens (#3821).
The default behavior of SerialPort.devices
pattern matching has been improved to match a wider variety of devices on macOS and Linux (#3809).
Internal calls to .interpret
have been removed from Color.fromHexString
and History.unformatTime
, improving both performance and security (#3527).
SerialPort.cleanupAll
is deprecated (#3809).
Providing an integer index for SerialPort.new
is deprecated (#3809).
BufWr.ar
no longer allows its input signals to be control rate, which caused the server to read from garbage memory (#3749).
Buffer:query
returned incorrect results if multiple query messages are sent at once. This has been fixed (#3645).
Fixed fragilities in path joining methods such as +/+
, withTrailingSlash
, and withoutTrailingSlash
(#3634).
Fixed bugs when certain pattern classes are passed in 0 as the number of repeats (#3603).
Fixed Event.addEventType
ignoring the parentEvent
argument (#3736).
Fixed Pkey
being skipped because the default number of repeats is nil
instead of inf
(#3724).
Fixed some harmless but annoying errors about extensions of nonexistent classes when sclang is built without Qt (#3770).
ProxySpace:linkDoc
was broken — switching documents did not actually change ProxySpaces. This is fixed now (#3764).
Recorder:prepareForRecord
produced an error if the recordings path does not exist. It now makes the directory if it doesn't exist (#3788).
Fixed bugs when providing multiple paths in ServerOptions:ugensPluginPath
(#3754).
Fixed HelpBrowser
(the class, not the IDE help browser) being unusable since it didn't trigger rendering of help files when links are clicked (#3832).
Fixed some bugs in EnvGate
: throwing an error when fadeTime
is a constant rather than a UGen input, and i_level
not behaving as documented (#3797).
Fixed occasional hangs when rebooting supernova (#3848).
Fixed confusing user feedback with the "Check for updates" button in the quarks GUI (#3986).
Buffer
methods ensure that the buffer number in outbound OSC messages is an integer (#3907). This fixes errors in supernova, which is stricter than scsynth about the buffer number type.
Fixed confusing user feedback with the "Check for updates" button in the quarks GUI (#3986).
Fixed missing default arguments in fold2
, wrap2
, and excess
methods of Collection
for consistency with SimpleNumber
(#4037).
Fixed incorrect template matching behavior in OSCFunc
and related functionality (#4027).
Fixed "Message 'extension' not understood" preventing Image
from working (#3728).
The IDE has a prettier default theme (#4025). The old theme still exists as "classic."
The IDE now properly highlights scale degree literals like 4s
(#4032).
The IDE has a prettier default theme (#4025). The old theme still exists as "classic."
The IDE now has a unified look across all platforms, and its color scheme adapts to match the editor theme (#3950).
The SCDoc TOC and menubar have been redesigned again (#3831).
Various tweaks to the appearance of the IDE: nicer tabs (#3992), better border colors (#4022).
When starting the IDE, detached docklet sometimes spawn as unresponsive. This has been fixed (#3660).
Syntax colors in the help browser now match the IDE (#3883).
Only one preference window can be open at a time now (#3988).
Fixed tabs reversing in order when restoring a session (#3942).
Contributors to this release: brianlheim, mneilsen, patrickdupuis, telephon
It is now possible to build the project using a system install of yaml-cpp. Previously the SYSTEM_YAMLCPP
CMake option was broken (#3557).
Improvements to documentation on writing and designing classes (#3605).
Fixed a regression from 3.8 to 3.9 that prevented the tilde character from being expanded to the user's home directory during class library compilation (#3646).
Fixed an issue with handling of ranges in RangeSlider:setSpan
and :setDeviation
(#3620).
Fixed a regression in Score
's multichannel expansion from 3.9.1 to 3.9.2 (#3608).
Contributors to this release: adcxyz, brianlheim, davidgranstrom, jamshark70, patrickdupuis, snappizz, telephon, vivid-synth
Improvements to various documentation pages (#3587, #3526)
Fixed CMake configuration errors that prevented successfully building on Windows when the project path contains spaces (#3525).
Fixed PSinGrain growing in amplitude after it was supposed to finish (#3494).
sclang now creates a configuration directory on startup, rather than waiting for it to be created by another action. This step is skipped if sclang is run as a standalone (-a) or if a language config file is specified with the -l option (#3577).
SequenceableCollection:unixCmd
now allows respects PATH
instead of strictly requiring the executable path (#3501).
A new method, Platform:killProcessByID
, was added (#3499).
LanguageConfig:store
throws an error if it fails to write (#3577).
Fixed an off-by-one error in a warning message for Server:clientID_
(#3487).
Event:isRest
now returns true if the event's \isRest
entry is true
. This usage was backported from 3.8 and is deprecated (#3521).
Server
now tries to recover in the case of a lost connection between client and server (#3486).
Fixed an error when producing a Score
containing an Event
with a multichannel timingOffset
(#3544).
The help browser table of contents popout no longer has redundant "table of contents" text (#3576).
Contributors to this release: antonhornquist, aspiers, brianlheim, cappelnord, florian-grond, gusano, jamshark70, patrickdupuis, redFrik, shimpe, telephon
Introduced Guard integration that allows sclang UnitTests to be automatically rerun whenever a file changes (#3369).
Bleeding-edge builds are now uploaded for Windows. See the Windows README for details (#3441).
Debugging information is improved when building a Windows installer package (#3464).
supernova only looked for plugins in a plugins/
subfolder of the provided extensions directory. This has been fixed to be consistent with scsynth (#3433).
Fixed Index
, IndexL
, FoldIndex
, WrapIndex
, IndexInBetween
, and DetectIndex
incorrectly downsampling audio-rate index arguments (#3436).
The GUI class library folders were installed even when building sclang without Qt, resulting in unbound primitives. This has been fixed (#3456).
Some default class library directories had to be manually created. sclang will now create them for you if they don't exist (#3469).
Fixed a Routine not being properly terminated when running CmdPeriod.run
(or hitting an equivalent shortcut) when a Server:plotTree
window is open (#3423).
Fixed LevelIndicator:style_
doing nothing and printing the warning Qt: WARNING: Do not know how to use an instance of class 'Meta_QLevelIndicatorStyle'
(#3398).
Fixed Git.checkForGit
returning nil
(#3445).
The SynthDef compiler optimizes a + b.neg
to a - b
, but other UGens that depend on b.neg
would also be incorrectly removed in some cases. This has been fixed (#3437).
In 3.9.0, the group
key broke in the "grain" event type. This has been fixed (#3483).
New IDE themes have been introduced for the editor and post window: Solarized, Solarized Dark, and Dracula (#3412, #3410).
Set the default font in the IDE for macOS to Monaco, instead of the rather silly non-monospace font that has been the SC default for over a decade (#3404).
Fixed duplicate SCIDE icons in GNOME, and fixed the SCIDE icon looking wrong (#3380).
Fixed SCDoc breaking with page titles containing a single quote character (#3301).
Fixed an error due to lack of input sanitization when trying to open help (Cmd+D/Ctrl+D) or references (Cmd+U/Ctrl+U) on text containing a double quote character (#3277).
We are proud to announce the arrival of SuperCollider 3.9.0! Apologies for being so far behind schedule; we hope the improvements you'll find here will more than make up for it. In 3.9.0, determined contributors have fixed some of SuperCollider's major cross-platform compatibility demons, addressed longstanding issues in the IDE and language, and added new features and bugfixes across the board.
Many thanks to all who contributed to this release: adcxyz, awson, bagong, brianlheim, cappelnord, carlocapocasa, crucialfelix, danstowell, defaultxr, dyfer, elifieldsteel, gagnonlg, ghost, gusano, jamshark70, jd-m, jleben, jmckernon, joshpar, jreus, LFSaw, llloret, LucaDanieli, Magicking, miguel-negrao, muellmusik, patrickdupuis, porres, privong, redFrik, samaaron, scztt, simdax, smoge, smrg-lm, snappizz, telephon, thormagnusson, tiagomoraismorgado88, timsutton, vivid-synth, vividsnow, yurivict, and many more in the SC community who helped in ways other than participation on GitHub.
The IDE server status display turns yellow after a few seconds when opening s.makeGui
. This does not cause any usability issues (#3310).
Only the first pages of the HTML files produced by SCDoc are printed in web browsers (#3395).
The help browser does not remember the last position open in a document when navigating through history, and just jumps to the top of the file (#3396).
Supernova loads plugins from "Extensions/plugins" rather than "Extensions" (#3391).
LevelIndicator.style()
is broken, which leads to confusing warning messages (#3398).
File.copy
crashes the interpreter if the destination file exists (#3401).
On Windows, SerialPort is not available (#1008).
On Windows, Supernova is not available.
On Windows, the command-line sclang interpreter is not available.
scvim has seen numerous enhancements now that an actively maintained fork has been merged in (scvim #11).
SuperCollider can now be built on Windows using the MSYS2 toolchain, thanks in particular to @awson and @bagong. (PortAudio #1, HIDAPI #5, #2473, #2704)
SuperCollider can now be built on FreeBSD, thanks to @shamazmazum and @yurivict (#2834, #2704, HIDAPI #8, #3131).
Detailed documentation on creating macOS standalone applications with SuperCollider has been added, thanks to @adcxyz (#2881).
Support for multiple sclang clients connecting to the same server is greatly improved, thanks to @adcxyz.
A CODE_OF_CONDUCT.md and CONTRIBUTING.md have been added to the repository (#3001).
Higher-resolution raster versions of the SC cube logo have been added to the top-level icons/
directory (#3023), and a retina-friendly .icns
file (#3060).
Breaking change: sc_gcd
in the plugin interface now conforms to gcd(n, 0) == n
instead of gcd(n, 0) == abs(n)
(#2980). This also affects the method SimpleNumber:gcd
.
The macOS plist file now shows the full version number for both the Version String and Shortened Version String (#2487).
A typo in the build system prevented the -msse
compiler flag from being properly set for gcc and clang (#2623). This may fix subnormal number issues in scsynth that some users have been experiencing.
Fixed a fontification break in scel when too many classes are defined (#2508).
Fixed build failures on FreeBSD (#3126), GCC 7 (#3226), and newer versions of Boost (#3227).
scsynth and supernova now support a /version
command, which responds with a message of the form /version.reply program major minor patch branch commit
(#2546, #2598). See the Server Command Reference for full details.
On macOS, if scsynth's input and output devices have mismatched sample rates, an error is thrown and the server does not boot. Setting the number of input channels to 0 (-i 0
on the command line and s.options.numInputBusChannels = 0
in sclang) now bypasses this error (#2610).
Disabled Nagle's algorithm for TCP communication in scsynth (#2613). Nagle's algorithm increases bandwidth at the cost of delay, which is undesirable in the context of SuperCollider. Both supernova and sclang have it turned off.
The /b_read
and /b_readChannel
messages experienced intermittent failures to read sound files, most notably affecting Buffer.cueSoundFile
. This has been fixed (#2793).
A new UGen, Sanitize
, replaces infinities, NaNs, and subnormals with another signal, zero by default (#2561).
The doneAction
argument to DetectSilence can now be modulated (#2379).
UnaryOpUGen now supports the bitwise not operator bitNot
(#2381). It used to simply fail silently.
Breaking change: The application binary interface (ABI) for server plugins has changed (#3129). This has an important impact: plugin binaries compiled for SuperCollider 3.8 will not work with SuperCollider 3.9 and vice versa. Please recompile your plugins.
Breaking change: FOS.ar
with control-rate coefficient inputs incorrectly initialized its coefficients at 0 and ramped to the correct values over the first control period. This has been fixed (#2658). To restore old behavior, multiply each coefficient by Line.ar(0, 1, ControlDur.ir)
.
Donce
, a demand-rate UGen with no identifiable purpose, is deprecated (#2564). It was most likely used in the production of electronic donce music.
A number of UGens were discovered to have serious initialization bugs (#2333) where the UGen would output an initial sample of garbage memory. This can create audio explosions if the buggy UGen's output is fed into certain filter UGens like LPF or Delay1. These bugs have been fixed, affecting:
- BeatTrack
- BeatTrack2
- CoinGate
- Convolution
- Convolution2
- Convolution2L
- Convolution3
- DetectSilence
- DiskIn
- DiskOut
- IFFT
- KeyTrack
- LFGauss
- PartConv
- PV_JensenAndersen
- PV_HainsworthFoote
- RunningSum
- StereoConvolution2L
- Unpack1FFT
Fixed a bug with TGrains
ignoring the amp
parameter (#2809).
Dibrown
no longer ignores the length
argument (#2654).
Pitch
no longer ignores the median
argument (#2953).
Fixed a build error in DiskIOUGens on Windows (#3015).
Fixed AudioControl
outputting garbage data if a bus is mapped to it but nothing is playing to the bus (#3063).
Fixed incorrect math in PanAz.ar
with audio-rate input signal and position (3139).
Regression tests for the sclang lexer, parser, and compiler have been added (#2751). This will make it easier to make fixes to these components in the future.
Breaking change: sclang's nestable multiline comments had some mistakes. In particular, sometimes sclang's lexer would incorrectly process overlapping combinations of /*
and */
, so e.g. */*/
would be interpreted like */ /* */
. This has been fixed (#2625).
The maximum number of MIDI ports has been increased from 16 to 128 (#2494).
The startup post "NumPrimitives = #" is reworded to "Found # primitives" (#3139).
Removed some unhelpful memory addresses from call stack output in error printing (#2951).
Removed some accidentally retained debug posts when the language starts up (#3135).
Fixed help files failing to open on Windows if the user's name contains a non-ASCII character (#2861).
Fixed non-ASCII characters breaking the Visual Studio debugger (#2861).
Fixed a crash in Object:perform
when the selector is an Array whose first element is not a Symbol, e.g. 0.perform([0])
(#2617).
thisProcess.nowExecutingPath
is no longer corrupted by Routine:stop
(#2620).
TextView:selectedString_
now works when the selection size is zero (#2648).
Fixed a crash when a method or class/instance variable is named "none
" (#2638).
Exceptions occurring in primitives no longer print unavoidable error messages even when wrapped in try-catch (#2876).
Fixed a crash when Dictionary:keysValuesArrayDo
is called with nil
as an argument (#2799).
Fixed WebView:onLinkActivated
handler failing to fire (#3003).
Fixed GUI objects failing to display when launched from the action
of unixCmd
(#3009). You will still need { }.defer
, however.
Fixed QImage:getColor
always returning zero for the green channel (#3190).
The UnitTest quark has been incorporated into the main repository (#3168).
Added a rewind
method to CollStream
(#2400).
Added four new class methods to File
for convenience: readAllString
, readAllSignal
, readAllStringHTML
, readAllStringRTF
(#2410).
Pstep
accepts an array as a duration argument (#2511).
Help files originating from extensions now display a plaque for visibility (#2449).
For consistency with other Platform
class methods, Platform.recordingsDir
may be used instead of thisProcess.platform.recordingsDir
(#2877).
SequenceableCollection
has two new instance methods: flatten2
and flatBelow
(#2527). Additionally, flatten
is faster now.
The ~callback
function is now available for all Event
types instead of just "on" events (#2376).
Event types now include a parentEvent
, which provides default values. (#3021).
New aliases for done actions, e.g. Done.freeSelf == 2
, are introduced for better readability (#2616). See the Done
helpfile for details.
A new class, Recorder
, allows recording independently of the Server
object (#2422).
SequenceableCollection:reduce
supports an adverb argument (#2863).
A recordingsDir
method has been added directly to Platform
, which transparently calls thisProcess.platform.recordingsDir
(#2877).
View:-resizeToBounds
, View:-resizeToHint
, and Window:-resizeToHint
were added to make it easier to force Views and Windows to automatically resize (#2865).
Maybe
now supports collection methods at
, atAll
, put
, putAll
, add
, addAll
(#2437).
BusPlug:-play
can now accept a Bus
object (#2845).
Breadcrumb links in helpfiles now have separate links for each node in the hierarchy, and pages with multiple categories have separators between the categories (#2916).
SoundFile:*openWrite
now takes additional parameters (#2926).
Two new instance methods were added to Symbol: isBinaryOp
and isIdentifier
(#2955).
Added three convenience methods: View:resizeToBounds
, View:resizeToHint
, and Window:resizeToHint
(#2865).
Added Collection:asEvent
for easy conversion to an Event
(#2871).
DeprecatedError
now shows you the file path of the deprecated method (#3039).
Added two new methods to SimpleNumber
: snap
and softRound
(#3160).
ReadableNodeIDAllocator
offers a new optional replacement for PowerOfTwoAllocator
that assigns node IDs in a way more readable to humans when working with multiclient setups (#3179).
A new "booted" stage has been added to Server objects that have been booted but
may not be running yet, accessible via Server:hasBooted
and
Server.allBootedServers
(#3275).
Breaking change: Rests in the patterns system have been restructured (#2802). Instead of using the isRest
event property, events are considered rests if one of their properties is a Rest
object. You must use instances of Rest
rather than the rest class itself -- use of Rest
instead of Rest()
is now deprecated.
Breaking change: Fixed Dictionary:==
only comparing the values of the two dictionaries, not the keys (#2737).
Breaking change: Fixed a mistake where Pen.quadCurveTo
used the primitive for a cubic Bézier instead of quadratic (#2553). To restore the old behavior, change Pen.quadCurveTo
to Pen.curveTo
.
Breaking change: The convenience instance methods Env:kr
and Env:ar
had the arguments mul
and add
renamed to levelScale
and levelBias
, since they don't behave like typical mul
and add
arguments (#2866).
Collection:processRest
returns the processed collection rather than the original (#2497).
The maximum number of MIDI ports has been increased (#2494).
Attempting to use a control-rate signal as an input to Hasher.ar
now results in an error (#2589).
The "Cleaning up temp synthdefs..." post message is suppressed if there is nothing to clean up (#2629).
To match Out
and ReplaceOut
, LocalOut
and XOut
now correctly validate their input, checking for a non-zero number of channels (#2659, #2659).
The argument to Pattern:fin
has a default of 1 for consistency with Object:fin
(#2480).
Complex:reciprocal
is faster now (#2890).
Buffer:write
takes floating point arguments, truncating them to integers (#2547).
Conversion methods among collection types has been improved and documented (#2871).
clientID
is now protected from being changed while the server is running
(#3275).
OSCresponder
, OSCresponderNode
, and OSCpathResponder
now emit deprecation messages, and will be removed after at least a year (#2870). Use OSCFunc
or OSCdef
instead.
Speech
is deprecated (#2424), and will be removed in 3.10. The rationale is that its audio output is independent of the server (severely limiting use in compositions), it depends on a proprietary macOS API with no prospect of cross-platform compatibility, and it is too niche to justify inclusion in the core library.
The WiiMote classes (WiiMote
, WiiMoteIRObject
, WiiCalibrationInfo
, WiiMoteGUI
, WiiRemoteGUI
, WiiNunchukGUI
) are deprecated (#2698). They never reached a stable state and have gone unmaintained and unused for years.
AudioIn
is deprecated and will be removed in some future version (#2482). It was provided only for backward compatibility with SC2, so its deprecation is long overdue. Use SoundIn
instead.
SplayZ
has been deprecated for a long time, but it's finally on the "official" deprecation track and will be removed in 3.10 (#2631). Use SplayAz
instead.
TDuty_old
has been deprecated for a long time, but it now emits a warning and will be removed in 3.10 (#2677). Use TDuty
instead.
Watcher
is an old alias for SkipJack
provided for backward compatibility. It is officially deprecated and will be removed in 3.10 (#2700).
Server:recordNode
is deprecated. Use Recorder:recordNode
instead (e.g. s.recorder.recordNode
) (#2422).
The Server.set
class variable is deprecated. Use Server.all
instead (#2422).
SimpleNumber:quantize
is deprecated. Use SimpleNumber:snap
instead (#3160).
Server:userSpecifiedClientID
is deprecated. Use Server:clientID
instead
(#3275).
Removed non-functional stub methods and classes related to Image: the classes ImageFilter and ImageKernel, and the Image instance methods lockFocus, unlockFocus, applyFilters, filters, filteredWith, addFilter, removeFilter, flatten, invert, crop, applyKernel (#2867).
Module
, an unmaintained and unused class for serialization of Synths, has been moved to a quark (#2703).
Removed the openHelpFile
instance methods of Object
, String
, Method
, and Quark
. These methods have been deprecated since 3.8.
Removed String:openTextFile
and Symbol:openTextFile
. Use String:openDocument
and Symbol:openTextFile
instead. These methods have been deprecated since 3.8.
A number of instance methods in Buffer
and Bus
did not properly check to see if the object has already been freed, and would act on buffer #0 or bus #0 (which is especially dangerous for the free
instance method). They now safeguard against this case and throw errors (#2936, #2960, #2993).
The useRanger
option in EnvirGui
broke in 3.7. This has been fixed (#2418).
IdentityDictionary
methods collect
, select
, and reject
retain references to the parent
and proto
objects (#2507).
On Linux, some MIDI methods created method override warnings. These have been silenced (#2717).
The "key" argument to Pn
was not properly set on the first repeat. This has been fixed (#2833).
Fixed errors when using a DragSource inside a CompositeView object (#2804).
Fixed an interpreter crash when defining a SynthDef whose name is too long (#2821). More specifically, the inputs to UnixFILE:putPascalString
and CollStream:putPascalString
are now validated.
Server crashes are better handled by the interpreter (#2453).
The time display and the "start recording", "pause recording", and "stop recording" menu items now cooperate better with running Server:record
, Server:pauseRecording
, and Server:stopRecording
(#2422).
Server:makeGui
and Server:makeWindow
broke in 3.8 — the fields in the windows went blank. They are working again (#2422).
A timing error with NodeProxy:-clear
was fixed (#2845).
SoundFileView
correctly displays its grid and does not draw the grid on top of the selection box (#2872).
The macOS plist file now shows the full version number for both the Version String and Shortened Version String (#2487).
Fixed instances of accidentally silencing error messages caused by neglecting to call Object:primitiveFailed
(#2908).
Patched the possibility of inconsistent TempoClock
state when the tempo is set via setTempoAtSec
(#2078).
Fixed memory spikes when using MIDIFunc.sysex
with a large srcID
(#3005).
Fixed spaces sometimes being rendered as %20
in links in SCDoc (#3033).
Fixed Function:plot
showing an empty graph if the server wasn't booted when the method was invoked (#3047).
Fixed blatant errors in Collection:asAssociations
and Collection:asPairs
where elements were dropped (#3101).
Fixed bugs in NodeProxy
when using external servers (#3103).
History
now outputs a correct timestamp on Windows (#3045).
Fixed Volume control failing to be persistent when rebooting the server (#3125).
Fixed SimpleNumber:asTimeString
producing nonsensical results with the "precision" argument (#3166).
Server:clientID
can now be changed, allowing multiple clients connect to the same server (#3178).
History and HistoryGui have been cleaned up (#3267).
Fixed duplicate node IDs involving Server.initTree
(#3265).
Fixed supernova crashing when too many controls are used (#3196).
Volume
now respects lag time when it is instantiated or destroyed
(#3332).
Entries in the Documents docklet can be reordered, and document tabs will automatically reorder to reflect this (#2555).
"Edit > Preferences > Editor > Display" has a new option that allows replacing tabs with a dropdown whose items are alphabetically ordered (#2555). This makes navigation easier in some performance contexts.
Server actions, which were previously in the "Language" menu, have been moved out to their own "Server" menu (#3049).
Changed "occurrences" to "matches" in the status bar in the Find and Replace features (#2702).
Many minor improvements were made to the look and feel of the documentation (#2944, #2945, #2947, #2948, #2967, #3006, #3022, #3025, #3034, #3175, #3346).
Fixed SCDoc refusing to index any further documents if one document has a malformed copymethod::
command (#3050).
Some Linux systems had unreadable font colors in the autocomplete tooltips. This has been (finally) fixed (#2672).
Fixed a bug where Document:selectedString_
had no effect (#2849).
New tabs are now inserted to the right of the current tab instead of all the way at the end (#3053).
The help browser now has keyboard shortcuts for navigating back and forward (#3056). These shortcuts are OS-dependent and given to us by Qt.
Fixed the "Find in page..." feature in the help viewer skipping every other occurrence (#2903).
Fixed HTML checkboxes appearing in the upper left of the help viewer (#3028).
Fixed the right-click menu for the tabs appearing in the wrong place in macOS (#3042).
3.8.0 (2016-09-23)
- Increase the default number of audio buses from 128 to 1024 #2239 by vivid-synth
- server plugins: Unify panning behavior of granular ugens #2136 by snappizz
- scsynth: commandline option (-B) to bind to specific address #2095 by llloret
- PathName has potentially superfluous methods #1909 by telephon
- class library: sound file view - rename argument startframe -> startFrame to match convention #1684 by telephon
- Add commit to version info #2243 by vivid-synth
- fftlib: remove duplicate defines #2089 by sonoro1234
- SC_fftlib: allow ensurewindow to be called #2008 by sonoro1234
- jack: add metadata support #1951 by ventosus
- reboot of the internal server crashes interpreter #1526 by ceremona
- server plugins: Gendy*: fix initialization bug #2331 by snappizz
- Bug 1355 demand env overshoot #2164 by baconpaul
- Allow audio-rate phasein argument to VOsc #2140 by snappizz
- PartConv avoid using first ir section twice #2015 by sonoro1234
- plugins: do not advance stages before env start #1424 by scztt
- Add supernova to some scsynth-specific docs #2256 by vivid-synth
- build: don't auto-enable supernova if old cmake #2170 by danstowell
- supernova: use c++14 move captures and proper move semantics #2141 by timblechmann
- supernova: relax handling of malformed c_set messages #2113 by timblechmann
- supernova: portaudio_backend changed #elif for #else #1947 by sonoro1234
- supernova: minor improvements #1908 by timblechmann
- remove references to CocoaBridge #2351 by snappizz
- lang: Remove debug message #2250 by gusano
- sclang: Ensure git object is defined for checkout #2216 by scztt
- asStringPerc SCLang Crash #2168 by baconpaul
- Classname as Selector crashes #2166 by baconpaul
- Reimplement match lang ip #1972 by muellmusik
- sclang resolves relative paths in the language configuration file relative to the current working directory #1927 by miguel-negrao
- class library: plot does not specify min and max, so add 'plotAudio' method with -1 .. 1 range #1846 by telephon
- Fix presumed bug in d0f475d (min should be max). Fixes #1842 #1843 by danstowell
- parser doesn't catch backward variable definitions #1514 by telephon
- sclang crashes on 0.exit #1438 by jamshark70
- Crash when using a class name in binop method call syntax #669 by jamshark70
- Fix printing filepath at end of recording #2435 by bagong
- Add default value to second argument in string replace #2433 by bagong
- server: don't set client id on failure #2405 by telephon
- class library: add missing proxy init in Ndef #2387 by telephon
- EnvirGui calls
this.widgets
but has none #2371 by telephon - Topic/deprecating #2370 by crucialfelix
- Make sure Spec is inited before ControlSpec #2346 by antonhornquist
- Handle spaces in SCDoc internal links #2336 by crucialfelix
- Usage of Class.initClassTree(ControlSpec) can remove common mappings #2318 by antonhornquist
- SoundFileView.schelp wrong argument names #2311 by jamshark70
- Add linting and fix classlib indention #2298 by gusano
- class library: TreeView: add alias methods addChild, insertChild, childAt #2260 by snappizz
- Classlib: Quarks: Fix typo in incompatibility message (SC: camel case… #2245 by jamshark70
- Classlib: GUI: asLayoutElement interface for non-Views that work in layouts #2234 by jamshark70
- ServerStatus - watcher notifies the server #2226 by gusano
- class library: server gui updates better #2215 by telephon
- class library: update link when server failed to start #2209 by snappizz
- s.makeGui server window broken in master #2202 by jamshark70
- Classlib: GUI: Support "has-a" GUI objects by calling asView within Layouts #2188 by jamshark70
- Move Spec/Warp etc. out of GUI back into Control #2182 by crucialfelix
- asOSCArgArray : do not expand a string into an array #2133 by telephon
- class library: implement audio rate lag control #2127 by telephon
- cmake needs to install HUT directory on OSX #2116 by sensestage
- class library: streamArg correctly yields #2110 by telephon
- class library: move asOSCArgArray out of backwards_compatibility #2108 by telephon
- class library: fix compatibility of asOSCArgArray #2097 by telephon
- List can't be used in Synth arg list #2096 by jamshark70
- deprecated-3.7: remove it in master? #2038 by danstowell
- Topic/server unresponsive #1935 by crucialfelix
- clean up PathName code #1912 by telephon
- returning nil as UGen graph returns uninformative error #1771 by telephon
- Improve error handling in Server:prepareForRecord #1580 by bagong
- Fix range in Function:plot #1454 by thormagnusson
- Move Spec back into Control #2181 by multivac61
- add News in 3.8 #2365 by snappizz
- help: History: remove use of .speak in examples #2352 by snappizz
- help: SoundFileView: fix argument names #2350 by snappizz
- Add example to LatoocarfianL #2335 by crucialfelix
- Update Pitch.schelp #2334 by crucialfelix
- Revert "Update Ndef.schelp" #2323 by nuss
- move SVG logo from HelpSource/images to icons #2312 by snappizz
- Signal.schelp: small typo fix in play:loop desc #2308 by jaschanarveson
- Fix some anchor links in help #2293 by vivid-synth
- Reference: Server-Command: clarify Wave Fill flags #2288 by jaschanarveson
- help: SC3 vs SC2: add historical note #2287 by snappizz
- help: create help file for ScIDE #2285 by snappizz
- help: VLayout: change QLineLayout to LineLayout #2283 by snappizz
- help: Dialog: expand explanation of openPanel and savePanel #2282 by snappizz
- Add "(NRT)" to the NRT help file title (searchability) #2281 by vivid-synth
- Update Ndef.schelp #2273 by tiagmoraismorgado
- Update MouseX.schelp #2272 by tiagmoraismorgado
- Update MouseButton.schelp #2271 by tiagmoraismorgado
- help: Remove some outdated GUI info #2248 by snappizz
- Add supernova to the list of components #2244 by vivid-synth
- help: add SVG logo to images dir #2235 by snappizz
- Replace use of .send(s) with .add in class examples. #2223 by kisielk
- help: update Document.schelp to match current API #2219 by snappizz
- help: RangeSlider: correct dragging instructions #2210 by snappizz
- examples: replace .send(s) with .add #2208 by snappizz
- PulseDivider.schelp: Fix typo and clarify div #2199 by kisielk
- Pmono.schelp: fix duplicate "the" #2187 by kisielk
- Fix a typo in SynthDef.schelp #2186 by kisielk
- fixing Henon help #2150 by tiagmoraismorgado
- document DelTapWr/DelTapRd/MultiTap delay time caveats #2132 by snappizz
- help: document range better for LFGauss UGen #2121 by telephon
- help: hidfunc, clarify nil on usage and usageID #2104 by llloret
- help fixes for OSCfunc & Env #2087 by miczac
- RecordBuf.schelp: corrected Synthnames for proper playback, lower volume for overdub #2071 by miczac
- AudioIn.schelp: tamed feedback in example, removed "patching" example #2070 by miczac
- Pulse.schelp: added missing .kr method, beautified examples #2069 by miczac
- Helpfile fixing #2061 by LFSaw
- Helpfile fixing #2057 by jreus
- Revert "LFSaw.schelp: Note and example for special initial-phase behaviour" #2056 by miczac
- Klank & DynKlank - better structure for examples #2055 by miczac
- RLPF.schelp: adjust example to avoid exploding filter due to frequency folding when modulated. #2053 by miczac
- Helpfile fixing #2042 by adcxyz
- Added closeWhenDone to .cue #2039 by tapage
- help: minor spell fixes in tutorials area #2004 by llloret
- help: and some more help typos and spell fixes #2003 by llloret
- help: fixed some more typos and spelling #2002 by llloret
- help: Help updates for the Classes directory #1999 by llloret
- Improve "Writing UGens" documentation #1997 by snappizz
- More help documentation updates #1989 by llloret
- help: fixed some typos and spelling #1988 by llloret
- link was wrong #1980 by grirgz
- Document ServerOptions.*devices as OS X only #1949 by snappizz
- Clarified nil argument behavior in OSCdef help #1940 by antonhornquist
- Change title of main help file from "Help" to "SuperCollider [version]" #1928 by snappizz
- MultiTap and DelTapRd/Wr could use a Note in help doc #1883 by mtmccrea
- CocoaBridge seems dead, but examples and doc are still there #1629 by muellmusik
- Update pointer to submodule hidapi #2420 by bagong
- Adjust pointer to hidapi to fix cmp0048 bug breaking build for cmake … #2342 by bagong
- Update pointer to hidapi submodule #2330 by bagong
- HID: various small additions to adjust to developments in hid submodule #2123 by bagong
- Switch to hidapi subomodule in sc org repo #2111 by bagong
- Move Qt primitives out of "common" to fix non-Qt builds #2299 by vivid-synth
- build: fix qt configuration for case-sensitive OS X #2262 by snappizz
- Document Qt >= 5.6 not working in Linux #2206 by snappizz
- QPen - add RenderHints to StringInRect #2019 by gusano
- Adjust Help title for Windows return value of folder #2392 by bagong
- fix link to class file source in scdoc header #2131 by snappizz
- Change "source" to "helpfile source" in scdoc footer #2130 by snappizz
- SCDoc HTML renderer includes literal spaces in links with anchors #1650 by jamshark70
- SCDoc shows getters where there are only setters #837 by muellmusik
- Document cmake dependency for supernova #2207 by snappizz
- Explain /path/to/qt5 in Linux README #2205 by snappizz
- move jackey include dir from server to scsynth #2179 by flv0
- Fix oscpack build fail on various architectures #2174 by danstowell
- Simplify MS Compiler detection to avoid cmake warning #2120 by bagong
- Travis: Update OSX build system and correct omissions #2092 by bagong
- sclang: changed some boost code to std #2091 by llloret
- Switch to portaudio repo in supercollider org #2088 by bagong
- travis: move git key to env, aws fixes #1987 by scztt
- Set correct hash for portaudio submodule #1971 by bagong
- cmake: library locations, hide them from the default listing of user cmake variables #1968 by danstowell
- Add cmake options list to READMEs #1965 by vivid-synth
- Update linux travis recipe #1932 by patrickdupuis
- build: bump GCC version requirement up from 4.7 to 4.8 #1839 by danstowell
- Building master with gcc 4.7 fails due to 'is_trivially_destructible' in SC_PlugIn.hpp #1820 by danstowell
- IDE: Server status bar should send properly formatted /status message (not 'status') #2450 by jamshark70
- Fix Document path sync problems #2222 by jamshark70
- fix #1985 #2102 by miguel-negrao
- scide: update document path also if nil #2098 by telephon
- sc-ide: fix behaviour of right context button when out of tab #2085 by llloret
- sc-ide: middle mouse button closes tab #2083 by llloret
- ide: menu option "Show Quarks" #1867 by miguel-negrao
- Replace built-in scvim with submodule scvim #1991 by danstowell
- Makes Vim support more reliable by sending larger buffers #1930 by mzyzik
- scvim as submodules repo #1921 by blacksound
- Do not allocate all channels reported by Pa_GetDeviceInfo / use memcpy instead of for-loop #1943 by hzulla
- Fixes/alsa midi fixes #1760 by timblechmann
- HID final cleanup, and LID adaption to use similar API #1573 by sensestage
- Fix problem with boost interprocess module on Win #2457 by llloret
- Update Windows Readme #2419 by bagong
- Exception in World_New: boost::interprocess::intermodule_singleton initialization failed #2409 by brachna
- Fix QLocalSocket problem under Windows #2197 by llloret
- Windows exit nicely master #2107 by llloret
- Make MIDI work on Windows (PR for master) #2106 by llloret
- nsis windows for master branch #2103 by llloret
- Make Vista the minimum required Windows version #2017 by llloret
- Make the required version Windows Vista #2016 by llloret
- sclang: Fix to get Object: render to work on Windows #1899 by antonhornquist
- Windows: sclang crashes on executing menu-item "Quit interpreter"/freezes on evaluating 0.exit #1578 by bagong
- Server not shut down on IDE-close #1449 by bagong
- MIDI sysex is not implemented for Windows (SC_PortMIDI.cpp) #1200 by sensestage
- WIP: ide/qtcollider: prototype port to qwebengine #1936 by timblechmann
- quarks: sort list by name #2214 by gusano
- quarks: throw an error when updating without name #2183 by gusano
- Provide compiler flags for armv6l and armv7l and add a few hints for building on RPi and headless #2065 by bagong
- ServerStatus failOSCFunc shouldn't set clientID #2328 by crucialfelix
- class library: server notify dependants correctly #2093 by telephon
- Topic fix server notify #2066 by telephon
- OSC/Trigger functionality broken in master #2058 by miczac
- Problem with matchLangIP primitive: boost seems to give wrong hostname #1950 by muellmusik
- crash on exit, 3.7b #1422 by chriskiefer
- DemandEnvGen overshooting at high curve #1355 by eleses
- scsynth OSC packet size in NRT mode #61 by jleben
- Novacollider/alignment cleanups #1906 by timblechmann
- ide: introspection - use qt's concurrency functionality #1905 by timblechmann
- Novacollider/dll #1904 by timblechmann
- Tab does not work in IDE (on OSX) #1453 by thormagnusson
- Use reader/writer thread for all disk IO (DiskIn / DiskOut ugens, others if applicable) #1381 by scztt
- Add missing proxy init 3.8 #2407 by telephon
- Merge 3.7.2 to master #2177 by crucialfelix
- Update CombC.schelp #2157 by tiagmoraismorgado
- Array2D.schelp: Fix put example #2154 by kisielk
- jitlib: better warnings when Server is not available #2119 by telephon
- Topic/boost 1.61 #2086 by timblechmann
- lang: correctly join resync thread #2079 by timblechmann
- Helpfile-fixing branch, final merge #2076 by LFSaw
- ide: mark scide as able to handle multiple files #2062 by fsateler
- removed method::preferencesAction #2046 by tapage
- fixed naming startframe & aSoundFile #2045 by tapage
- prReadDirectoryFile private, added done as arg #2044 by tapage
- added Pmul arguments name & pattern #2043 by tapage
- LFSaw.schelp: Note and example for special initial-phase behaviour #2041 by miczac
- Emacs and extBuffer.sc #2035 by simdax
- Help: Removed double PlayBuf in doneAction help file #2026 by cappelnord
- Classlib: Add NodeProxy:trace #2020 by jamshark70
- PartConv not working (duplicate impulses) #2014 by sonoro1234
- Server crash when calling play on a not-yet ready Buffer #2005 by patrickdupuis
- Make sure NodeProxy generates unique name. #1994 by blacksound
- class library: node proxy, improve documentation #1986 by telephon
- Osc.sc: fix audio rate TChoose #1979 by miczac
- Osc.sc: fix audio rate TChoose #1974 by miczac
- Readd wrongly removed part of system-boost fix #1970 by bagong
- Merge 3.7 into master #1969 by bagong
- Add CommonTests and CommonTestsGUI to travis #1967 by scztt
- Fix lines and functions with mixed tabs and spaces #1963 by vivid-synth
- Remove unused variable #1960 by patrickdupuis
- error message: wrong path in unsaved file #1953 by telephon
- class library: don't declare variables in an if statement, please. #1925 by telephon
- Add custom.css to help files that don't include it #1920 by snappizz
- Document SynthDef.writeOnce as a legacy method #1918 by snappizz
- Move internal css to scdoc.css #1917 by rygen
- Fix Scope Window Error #1915 by patrickdupuis
- Quarks: fix save method #1897 by jpburstrom
- ide: Add standalone option in settings. #1863 by miguel-negrao
- sclang: introduce unixCmd for array of arguments #1856 by miguel-negrao
- uiugens: correctly terminate input threads #1855 by timblechmann
- supernova: don't delete shared memory data #1854 by timblechmann
- Novacollider/mac #1853 by timblechmann
- class library: HIDMatchers: Add missing if statement #1851 by davidgranstrom
- class library: protect MultiOutUGen from void numChannels #1847 by telephon
- Fixes/for master #1844 by timblechmann
- Topic/rate fallthrough #1835 by telephon
- Novacollider/cmake modernisation #1822 by timblechmann
- LinXFade2 - fix pos slope #1798 by timblechmann
- ide cleanup #1715 by timblechmann
- MultiOutUGen with numchannels less than 1 return an empty array #1686 by telephon
- use c++17-style executors to compile class library #1677 by timblechmann
- scide: improve dark color scheme #1609 by timblechmann
- scide: add qt-creator style shortcut sequence to visualise whitespaces #1607 by timblechmann
- Topic/refactor server status #1547 by telephon
- Enabling multi-touch on Qt widgets (for multi-touch screens) #1533 by scazan
- import boost-1.58 #1528 by timblechmann
- Scide/line number fix #1330 by vdonnefort
- Scide/theme mgmt fix #1297 by vdonnefort
- Made performKeyToDegree much closer to inverse of performDegreeToKey #1164 by triss
3.7.2 (2016-06-03)
This patch release fixes the Windows including MIDI. HID is still not quite working on Windows. Many thanks to: @bagong and @llloret
SC VIM is now a git submodule. This affects mainly developers. VIM support can be installed as per the documentation - nothing has changed in how you use it. We changed this in 3.7.2 as well as on master (3.8 development) so that switching back and forth between branches wouldn't be super annoying.
Fixes:
- Midi not working on Windows #1922
- Windows: opening SC via system registered document types faulty #2022
- HIDdef.element forwards arguments incorrectly #2090
Closed Pull Requests
- midi: make midi work in Windows #2009 (llloret)
- Classlib: Fix HIDdef.element arg list passed to super.element #2105 (jamshark70)
- Fix build on debian, add -fPIC to TLSF target #2031 (danstowell)
- Update linux readme, add missing dependency #2030 (danstowell)
- editor: windows: fix double click when app already open #2029 (llloret)
- nsis: windows: add path information #2028 (llloret)
- Convert scvim to submodule, on 3.7 branch #2025 (danstowell)
- lang: Not wait for keystroke when exiting #2012 (llloret)
- Windows Readme: tiny enhancements #2006 (bagong)
- Make sure NodeProxy generates unique name. #1998 (blacksound)
- Cherry pick telefon's nodeproxy documentation enhancements #1996 (bagong)
3.7.1 (2016-04-10)
Enhancements
- Native FLAC support for scsynth on OS X #1783
- Libsndfile: have cmake prefer homebrew install over bundled version #1870 (bagong)
- OS X Readme: note that Qt 5.5 is required, not Qt 5.6 #1931
- class library: node proxy: improve shape error post #1889 (telephon)
- Server.schelp: fixed description of scsynth method, changed wording, … #1894 (miczac)
Fixes:
-
cmake: fix build when using system boost #1896 (danstowell)
-
Correct accidental msys leftovers in findPortaudio #1941 (bagong)
-
Remove -fstrict-aliasing from the MinGW build to allow using MinGW 4.9.2 #1923 (bagong)
-
Quarks.update("quarkname") does not always update correctly #1895
-
fix #1895 : update Quark by
git pull
andgit checkout master
#1954 (crucialfelix) -
Errors when closing scope window #1878
3.7.0 (2016-03-13)
Enhancements
- New Quarks system using Git #1800
- Qt GUI: TextView's enterInterpretsSelection treats line wrapping like a hard line break #1637
- UnitTest missing documentation #1610
- LinLog function? #1555
- sclang and scserver use the same icon #1548
- help: recent changes for 3.7 documentation #1516
- MIDIFunc does not deal with allNotesOff message #1485
- Tab does not work in IDE (on OSX) #1453
- Feature: IDE preference to disable displaying help pages in the autocomplete popup #1435
- quarks (new) - suggestion - directory.txt use https instead of git protocol. #1397
- quarks (new) - Add a way to update quarks (git pull or delete folder and clone again) #1386
- Use reader/writer thread for all disk IO (DiskIn / DiskOut ugens, others if applicable) #1381
- quarks (new) - canceling git checkout #1376
- help: News in 3.7 #1347
- class library: addition of SimpleController::removeAt #1328
- scsynth ought to print the version number when passed the --version flag #1310
- UGen to report node ID #1212
- incomprehenisble error message with Function-play and empty array #1128
- pattern cleanup shouldn't be passed around #1049
- README file and windows build instructions #1034
- Enhance OSX readme for 3.6.6 #1001
- README_OS_X.txt is overly complex #960
- "Exception when parsing synthdef: corrupted synthdef" - report which synthdef caused the error. #904
- "start coding" window title #898
- Windows: No 64-bit version #853
- toggle dumpOSC via menu entry #848
- default file extension missing #838
- open file dialog: start in last used directory across sessions #805
- recent files: hide no-longer existent files #804
- Faint highlighting on the cursor's line #793
- display volume in server status bar #762
- mouse wheel volume control (server status bar) #760
- post message in post window when sclang quits/crashes #743
- I would like to ask for a ListView.selection_ method. #741
- Autosave #725
- NRT message length limit #714
- problems with PandaboardES and SC #689
- More obvious access to SCIDE help file #682
- get rid of jitter for non time stamped bundles #648
- Popup Index for class file tabs #629
- semicolon ending block evaluation #627
- Missing functionality in Qt: QuartzComposer #624
- Missing functionality in Qt: Checking whether a window is closed #622
- Missing functionality in Qt: SCMenuItem #617
- Missing functionality in Qt: SCImage #616
- Please make ctrl-return behavior configurable WRT execute region #603
- Command like "Balance Parens" from sc.app #602
- Soften, or allow customizing, the bracket-mismatch color #599
- Tab behaviour #593
- scide - help browser window font should be adjustable #587
- hide line numbers #585
- "Start sclang" should be greyed out when language is running #584
- Double-click on a float doesn't select all of it #581
- Hitting Cmd/Ctrl while inertial scrolling causes rapid zoom in / out #568
- find next / previous key binding #555
- If untitled doc from start has not been used close it when first file is opened #553
- Undocking widgets and tabs as proper windows #550
- Move cursor to end of document on down arrow key in last line. #543
- New method to get complete (multiple) item selection from QListView and QTreeView #535
- Several items in the preferences can be set to the same shortcut #516
- language config dialog #515
- bracket auto-paring #513
- A few basic issues concerning the replacement of SCApp by SCIDE #511
- ctrl-click on document icon to open file path #510
- support for editing plain-text files #495
- Method Call Assist: Handy way to insert an argument name for keyword addressing #492
- integrate scdoc into ide #471
- Class method autocompletion and method signatures of view redirect classes #469
- (Future) More sophisticated regexp find/replace #464
- Looking up definition from post window #461
- Request keyboard shortcut to navigate up/down to the next empty line #453
- rtf import of (erroneous) weblinks #448
- Document open/save dialogs: Keyboard shortcut to navigate to the parent folder #445
- Keyboard shortcut to select a code block enclosed in () #444
- Dark-on-light color scheme: orange for ~envVars is too bright #442
- Shortcuts to add and remove /* */ pairs #441
- Add menu command to save all dirty files #439
- make post window scrollback configurable #430
- switch session dialog #429
- case-insensitive search in `open definition' dialog #428
- Documentation dock widget #420
- SC-IDE: Show full path somewhere #413
- autocompletion for literals and brackets #410
- insert key should toggle overwrite mode #407
- Save dialog should provide options for scd and sc #405
- keyboard shortcut for "clear post window" #404
- .sc and .scd links in Help should open in scide #402
- Quick toggle of spaces/tab indentation #400
- Word wrap #399
- Show help and definition don't work on post window #398
- F1 is an awkward keyboard shortcut for help on Macs #397
- Split pane tabs #396
- Provide built-in color schemes #387
- Preview of color settings #386
- show references to symbol #384
- drag/drop support for scide #383
- popup list view to cycle open documents #382
- scide desktop integration #381
- key combinations for commenting/uncommenting #380
- programmatically resize or set a preferences for IDE window placement #376
- server control widget #372
- Instance method auto-completion: group offered methods by name #371
- Method call aid: highlight proper argument when entered "by name" #370
- Integrate help with auto-completion #368
- Do not require a keyword to be selected to lookup implementations or help #364
- Related to 312 and 313: Completion of instance methods by user selection of class #362
- Option to preserve Poll output w/ lower verbosity #350
- Support NRT with no output file, for analysis #349
- [SC-IDE] Document implementation #333
- [SC-IDE] Make OSX Bundle #331
- [SC-IDE] Syntax colorize schelp files #330
- [SC-IDE] Open file by searching for Class or method in a pop up window. #329
- [SC-IDE] save or discard changes on quit per unsaved document #327
- [SC-IDE] Update file view if it is updated by another program #326
- [SC-IDE] Open recent file menu entry. #321
- [SC-IDE] Open multiple files at the same time #318
- [SC-IDE] Visual indicator if file is edited or not #317
- show search-replace results in realtime #316
- Code completion for Class names with hovering dropdown menu. #314
- [SC-IDE] Code completion for Class methods with hovering drop-down menu. #313
- Hovering popup with argument names for class methods #312
- [SC-IDE] Open definition of method #309
- postln with prefix and suffix #306
- .data_ method for QSoundFileView implementation #304
- Proposal for Helpbrowser layout #300
- [Cocoa GUI] allowsReselection flag on SCPopUpMenu #299
- allowsReselection for SC- and Q- listviews and popup menus #298
- Implement focusGainedAction/focusLostAction for QtGUI #295
- HTML doc and web standards #294
- Control over the numeric x-labels in plot2 #293
- Implement focusGainedAction/focusLostAction for CocoaGUI #291
- Dwrand doesn't exist #287
- Send to bus without creating new synths #286
- BinaryOpUGen optimization needs review #284
- Convolution UGens should all use SC_fftlib #276
- Buffer:normalize #275
- test 2 #274
- test #273
- mapping audio buses as synth controls #272
- Getting sound card list with # of ins/outs from scsynth #271
- source code #270
- Post window should have correct window title #269
- Menu Icon request #268
- sources tarball #267
- Windows Port #266
- Topic/release notes 3 7 0 #1791 (crucialfelix)
- Topic/select reject indices #1591 (LFSaw)
- class library: fuzzy equal with relative precision #1587 (telephon)
- Fix range in Function:plot #1454 (thormagnusson)
Fixed bugs:
- scel: Directory change of sclang/scsynth in 3.7-beta1 causing error #1860
- interpreter crashes after server boot when very large scd file is currently open #1823
- SC_SndBuf.h (in master) can't compile on ARM because uses _mm_pause #1819
- OS X: scsynth icon bounces forever in the dock #1804
- supernova compilation error #1794
- MulAddUGens broken #1793
- Evaluate commands (Shift-Enter/Return, Ctrl-Enter/Cmd-Return, menus) work not reliably #1786
- Bad values (nan) from underflow with pow() on Server #1766
- setProperties fails for plots of signals #1762
- Quarks: update fail when missing tag or no new version number #1735
- Quarks.update calls wrong git method #1734
- Typo / wrong cmake function name in CMakeLists.txt #1705
- TwoWayIdentityDictionary.asCompileString misses to include key #1699
- error with soundfileview.schelp #1682
- Quarks on Windows: isPath regex is wrong #1670
- Windows File.existsCaseSensitive does not work for directories #1668
- calling ScIDE prSend from a routine makes the ide unreachable #1657
- EnvGen \cub produces NaNs #1656
- Scale.choose throws error #1653
- d_removed #1648
- Triggering EnvGen with Impulse.ar crashes the server #1642
- DetectSilence won't free if it never encounters nonzero value #1639
- IDE: Colorizer highlights "pi" at the start of a word #1613
- LanguageConfig-includePaths stack overflow #1604
- Removing Application Support/SuperCollider causes SCDoc to crash the interpreter #1589
- supernova tries to set unallocated memory in b_set and b_setn #1588
- failed to read Quark directory listing #1585
- Example code in documentation doesn't play for LocalIn function. Missing Out.ar(0,local); #1563
- OscUGens.cpp omits the required DefineSimpleUnit call for PSinGrain #1556
- MethodOverride.printAll fails on OSX 10.8 #1538
- NRT realloc failure #1537
- useSystemClock breaks the server #1534
- evaluating code in the help browser evaluates code in the document window instead #1532
- Installing Quark with an invalid refspec should throw an error #1531
- FreqScope doesn't work #1527
- reboot of the internal server crashes interpreter #1526
- Scroll view issue in Qt -- no vertical scroll bar #1521
- (regression) Document keyDownActions: discrepancy between global and instance #1512
- Issues with maximized (fullscreen) Qt windows on OS X #1506
- WebView auto-closes when used without explicit parent #1505
- LFPulse UGen gives asymmetrical waveform when duty (width) is 0.5 #1501
- MIDIdef.mtcQuarterFrame #1496
- WebView closes after displaying scrollbar #1489
- MIDIIn.connectAll connects to wrong ports on Linux #1487
- Sclang client crashes on serial port close from data sender #1479
- Quarks: memory corruption(s) #1476
- Windows: New Quarks system: installed Quarks not recognized #1475
- How to complete unload plugins PR? #1473
- Quarks: refix the valueing of isCompatible #1463
- Slider with an increment fires action even when value doesn't change #1460
- Scsynth zombie when quitting scide #1456
- IDE Help popup -> crash #1452
- Quarks windows path error bug #1451
- Error on interpreter startup #1448
- Font.defaultMonoFace/.defaultSansFace/.defaultSerifFace return the same value #1447
- Switching a session causes the IDE to segfault #1430
- Quarks conflicts with case insensitive file systems #1429
- Using Function-try inside an ArrayedCollection.do loop corrupts interpreter #1428
- MIDIFunc.noteOn does not work with floats when Arrays of numbers are passed #1426
- Sclang keeps crashing on recent build (Win) #1405
- Preferences/Editor/Fonts&Colors/Color:Current Line: sample text display doesn't update to the color selected in Text #1403
- icon representation of sclang and scserver: and still jumping #1399
- Blank help window #1395
- ERROR: ScIDE not connected #1390
- scdoc - can't run code from help window. #1385
- GridLayout spanning bug #1383
- Server window should use reasonable default record buffer size #1380
- quarks (new) - installing local quark does not install it's dependencies it only links. #1378
- quarks (new) - dependencies specified with git url and refspec not working ? #1377
- Server Gui volume bug (gitreports.com) #1370
- LanguageConfig.current problems #1369
- same cubic icon with scide and sclang (OS X) #1367
- OSX/IDE: default key for "trigger autocomplete" cmd-space conflicts with spotlight #1365
- IDE: Splits & Tool panels: after closing panel with esc keyboard focus will always move to top left split/pane #1363
- New Quarks: if sclang_config.yaml doesn't exist prior to install of Quark, include-path is not written #1362
- Quarks install on Windows fails in parseQuarkName #1346
- fix travis builds posting to github #1339
- DiskIOUGens zombies #1331
- supernova dont report lateness #1323
- .argumentString fails for Methods with argNames==nil #1320
- Delay1's first output sample is its input, rather than 0 #1313
- Poll ignores initial trigger #1312
- OSCdef:free does not free OSCdef when (srcID != nil) #1306
- GeneralHID documentation misleading #1303
- drag and drop files to expand paths broken #1295
- LinXFade2 pans backward in at least some cases #1294
- Disable tokenizing and auto-indent for schelp documents #1292
- _String_Format primitive eats backslashes #1291
- argumentString includes 'this' for Method #1289
- ide "Open Recent" doesn't update when loading a new session #1287
- MultiSliderView.action_ not triggered by value changes via keyboard #1285
- TRand, TExpRand, TIRand are broken for audio-rate inputs #1278
- UserView with drawFunc loops infinitely when resized by code #1274
- HelpSource is not installed on Linux anymore #1273
- MoreDocument: selectionStart doesn't update upon document changes #1254
- cmake version should be over 2.8.11 for 3.7 #1247
- notes may hang in NodeProxy when using synth def names (symbols) #1246
- "String".newTextWindow complaints #1238
- Primitive '_ScIDE_SetDocSelectionMirror' failed. #1228
- dumpOSC method posts status messages when it shouldn't #1227
- recent build - osx crashes 10.7 #1226
- getting these errors WARNING: Attempted to modify missing Text Mirror for Document #1220
- .post in .onFree() doesn't post. #1219
- help-installation broken - possibly under Linux only #1218
- REPL sometimes doesn't Post #1216
- TGrains & LocalBuf #1204
- linux: MIDI - rescanning MIDI.connectAll does not note new ports without disposing client first #1194
- incorrect plugin directory in cmake: exception in GraphDef_Recv: UGen 'Control' not installed #1181
- BlockSize UGen not working due to typo Blocksize -> BlockSize #1180
- fatal error: tlsf.h: No such file or directory #1176
- help not installed properly (at least under Linux) #1174
- Keyboard-shortcuts that contain right or left arrow are not persistent across sc restart #1170
- Menu-item 'Show Spaces and Docs' confusing #1169
- Pbindef broken when overloading play key #1167
- DiskIn channel limitation #1162
- Document.globalKeyDownAction doesn't apply to new code windows in the IDE #1159
- synth order shouldn't matter for TrigControl #1145
- two Dictionaries merge to an Event #1142
- Crash after launching sc with floating Doc panel #1139
- Qt5 branch in Ubuntu exhibits some seriously weird behavior #1138
- ide toggle "Dump OSC" sticks when recompiling sclang #1136
- Commit f7b708553 breaks Pan2 where a mono NodeProxy is the source #1116
- JitLib: Ndef.play sending stereo output to bus 0 #1114
- Jitlib: Ndef(\y).play(numChannels:2) causes error #1113
- scvim doesn't close down properly #1111
- SynthDescLib send can cause recursive sends #1110
- findAllRegexp seems to be broken #1108
- tcp server<->sclang communication is broken in 3.7 #1099
- setting font in TextView fails #1097
- NdefMixer clips output channel to 99 #1096
- Incorrect window position with multiple displays and negative x value #1090
- NdefMixer bug - calling controlspec on EZText #1083
- keyDown in QtGUI doesn't pass char as indicated for non-printing chars #1081
- Plotter doesn't respond to arrays of nil as minval/maxval as expected #1078
- Function-plot scales each channel separately #1077
- server crashes on control rate input to audio rate DelTapWr #1065
- dumpOSC doesn't post array type chars #1064
- EnvGen releases incorrectly for early gate #1063
- switch called with just one function without var declarations crashes sclang #1056
- sclang EXC_BAD_ACCESS (SIGSEGV) #1051
- Pcollect behaves incorrectly with event as input #1048
- Pcollect behaves incorrectly with event as input #1047
- SplayAz fails when input array has only one element #1045
- SplayAz fails when input is not an array #1044
- multichannel control mapping spill over #1037
- Document title method returns a Symbol - should be a String #1031
- OSX - sclang crashing #1030
- sclang - currently not starting properly on terminal due to new document stuff #1026
- EnvGen releases incorrectly for very very short envelope segments #1023
- 'Host not found' error in 10.9 #1016
- supernova: UIUGens get built but not installed #1010
- Windows - possible fix for if there is no default input or output device on a machine #1009
- dictionary doesn't freeze properly #1007
- .blend outputs array rather than signal in Signal #1004
- long enough function chain causes sclang to output bogus results #999
- Cmd-W doesn't close help window when it is detached and front #996
- scide: Object::connect: No such slot ScIDE::DocumentManager::updateCurrentDocContents(int, int, int) in ../editors/sc-ide/core/doc_manager.cpp:907 #985
- scrolling scide is extremely slow on osx #984
- sc does not build against 10.9 sdk #982
- sclang consumes high CPU when opening a session with multiple files #980
- [ide] help->"how to use the supercollider ide" detaches help browser #976
- NamedControl.new() returns single-element array of Lags when it should return a Lag #973
- NdefGUI and related don't show vol labels in IDE #965
- Primitive error in _ScIDE_SetDocTextMirror called from openDocument #964
- ide document: errors when closing document windows during language init #961
- SC_QT=OFF build flag still needs QT on OSX #959
- dumpOSC is broken #955
- IDE passes wrong Document modifiers to mouseDownAction #952
- scope buffer allocation problem #937
- Programmatically opening help files bug on linux #931
- Sending to a NetAddr with broadcast IP fails #930
- Windows - SCIDE: font-size snaps down in editor pane on preferences save/apply #928
- QView doesn't receive all key down actions #918
- supernova: setting an array onto a control that doesn't exist will set value that does exist #916
- Qt menu's with > 10 items get a scrollbar, and at the same time the view doesn't get wider #915
- BinaryOpUGen 'div' operator: off-by-one and not integer division #907
- SimpleNumber-curvelin broken for negative numbers #902
- switching session: cancel loses unsaved documents and dialog blocks reviewing them #899
- Ramp UGen fails in LTI test #888
- Pitch UGen fails in unit test #884
- prSimpleNumberSeries throws incomprehensible error for bad inputs #882
- uiugens: osx uses deprecated API #880
- A few UGens failing the unit tests #879
- Alias Manager depreated: sc_ResolveIfAlias will have to be rewritten #875
- NodeProxy: multi-channel expansion broken for SynthDefs #872
- git clone --recursive is broken #866
- Windows: No SCIDE-icon #854
- Linux FFT/IFFT: Hann window with hop size 0.25 sounds wrong #851
- SendReply kills server #850
- SuperCollider can't boot on disabling microphone #844
- SendReply.ar crashes the server #841
- chained function application giving strange results #839
- QListView:items_ can crash sclang #835
- menu items in the title bar vanish when detached window comes in focus #829
- ScrollView in Qt - setting visibleOrigin doesn't work unless deferred #823
- SinOsc phase argument fails for values outside +-8pi #815
- Return key before closing bracket: empty line is not always appropriate #814
- Drag-and-drop broken on windows with 'alwaysOnTop' enabled #812
- IDE Config > Editor > Font Settings: Unsetting "Show only monospaced" doesn't return the previously selected font #811
- sclang crashes for some GUI operation involving QTextEngine::itemize() #794
- LocalOut without LocalIn crashes the server #780
- QWindow crash with wrong argument types #770
- s.options.sampleRate_ setter requires boot then reboot to take effect #768
- FreqScope not updating correctly on current development version. #767
- Wrongly reported external document changes #758