You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CHANGELOG.md 12KB

5 years ago
5 years ago
5 years ago
7 years ago
7 years ago
7 years ago
7 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241
  1. #### Preface
  2. In this document, Mod is Ctrl on Windows/Linux and Cmd on Mac.
  3. ### 2.0.0 (in development)
  4. - Add port tooltips with name, voltage, and list of connected ports.
  5. - Evaluate mathematical expressions (such as `1+2*3`) in parameter context menu fields.
  6. - Add module whitelist to Module Browser.
  7. - Restructure engine to no longer use an "engine thread".
  8. - Improve engine performance and latency by no longer requiring thread synchronization between the engine thread and audio thread. The engine now runs directly on the audio thread.
  9. - Add support for multiple simultaneous audio devices.
  10. - Add "Primary module" context menu item to VCV Audio modules to select which audio device clocks the engine.
  11. - Allow other modules such as VCV Recorder to be the primary module, to render audio faster than real-time.
  12. - Remove "Real-time priority" menu item, since the thread priority is now managed elsewhere (RtAudio, etc).
  13. - Replace module disabling with bypassing, which directly routes certain inputs to outputs if specified by the plugin.
  14. - Duplicate cables patched to inputs when a module is duplicated.
  15. - Add module tags to module context menu.
  16. - Add module manual URL (if plugin developer supplies it) to module context menu item.
  17. - Add quick access to user module patches from `<Rack user dir>/presets/<plugin slug>/<module slug>` to module context menu.
  18. - Add infinity and NaN protection to cables, so they won't propagate non-finite values from badly behaving modules.
  19. - Add basic headless support with the `-h` flag.
  20. - Add multiple knob modes: scaled linear, absolute rotary, and relative rotary.
  21. - Add "knobLinearSensitivity" property to settings.
  22. - Add timestamps to MIDI messages.
  23. - Allow sending and receiving SysEx messages through MIDI drivers.
  24. - Add ability to scroll the rack and other scroll containers using the left mouse button.
  25. - Core
  26. - Add red clip lights to VCV Audio-8/16 when signal reaches beyond ±10V.
  27. - API
  28. - Add `Module::configInput()` and `Module::configOutput()` for adding names to ports.
  29. - Replace `ParamWidget::paramQuantity` with `ParamWidget::getParamQuantity()`.
  30. - Add `.modules[].manualUrl` to plugin manifest schema.
  31. - Add `appendAudioMenu()` and `appendMidiMenu()` so plugin developers can develop custom audio/MIDI interfaces without adding an `AudioWidget/MidiWidget` to their panel.
  32. - Use MIDI timestamps in MIDI-CV, MIDI-CC, MIDI-Gate, and MIDI-Map to improve overall timing and drastically reduce clock jitter.
  33. ### 1.1.6 (2019-11-04)
  34. - Add ability for plugins to use LuaJIT on Mac.
  35. - Fix normal random number generator possibly returning -infinity.
  36. - Core
  37. - MIDI-Map: Don't move param until the first MIDI CC command is sent.
  38. - API
  39. - Remove support for namespaced `rack::APP`, `rack::DEBUG`, etc macros. Use namespace-less `APP`, `DEBUG`, etc instead.
  40. - Add `dsp::IIRFilter`.
  41. ### 1.1.5 (2019-09-29)
  42. - Swap order of tags and brands in Module Browser.
  43. - Add View > Frame rate menu bar item.
  44. - Hide menu and scrollbars when fullscreen.
  45. - Add key command (F3) for engine CPU meter.
  46. - Add numpad key commands.
  47. - Automatically unzip update on Mac.
  48. - Stop worker threads when engine is paused to save CPU.
  49. - Core
  50. - Disable smoothing for MIDI CC buttons in MIDI-Map.
  51. - Fix sustain pedal release bug when using polyphonic mode in MIDI-CV.
  52. - API
  53. - Add libsamplerate library.
  54. ### 1.1.4 (2019-08-22)
  55. - Fix parameter smoothing of MIDI-Map.
  56. - Sort modules within plugin in the Module Browser according to plugin rather than alphabetically.
  57. - Fix bug where knobs sometimes jump while dragging.
  58. - Reimplement CPU meter to measure thread runtime, not real time.
  59. - Fix crashes when deleting/duplicating modules while dragging modules/cables in certain cases.
  60. - API
  61. - Add `dsp::BiquadFilter`.
  62. - Add `dsp/approx.hpp` with approximate math functions.
  63. - Add `simd::tan()`, `atan()`, and `atan2()`.
  64. - Add `string::toBase64()` and `fromBase64()`.
  65. ### 1.1.3 (2019-07-23)
  66. - Include root certificate bundle for libcurl on all OS's.
  67. - Revert to OpenSSL from Schannel on Windows.
  68. - Bundle unsigned Fundamental package on Mac.
  69. ### 1.1.2 (2019-07-20)
  70. - Add app notarization on Mac, which removes the "Apple cannot check for malicious software" message on launch.
  71. - Write stack trace to log.txt and display dialog box when Rack crashes.
  72. - Re-enable JACK MIDI driver on Linux.
  73. - Fix scroll speed for mice and trackpads on Mac.
  74. - Fix undo history bug when dragging patch file to the Rack window.
  75. - Fix crash when pasting presets to an empty rack space with Mod-V.
  76. - Fix module expanders being assigned incorrectly when loading presets.
  77. - Add check for duplicate port IDs for modules.
  78. ### 1.1.1 (2019-07-01)
  79. - Add auto-updating on Windows when Help > Update VCV Rack is clicked.
  80. - Fix extension filters in open/save dialog box on Windows.
  81. - Fix expanders not attaching when force-dragging modules.
  82. ### 1.1.0 (2019-06-27)
  83. - Request microphone access on Mac to prevent Mac 10.14+ from blocking audio input.
  84. - Clear filters in Module Browser when backspace is pressed while the search field is empty.
  85. - Add Mod-0 key command to set zoom to 100%.
  86. - Emulate middle-click with Ctrl-shift-click on Mac.
  87. - Fix MIDI receiving in Bridge MIDI driver.
  88. - Fix opening/saving UTF-8 filenames on Windows.
  89. - Fix bug where cable ID's were not being set in .vcv patches.
  90. - Plugin API
  91. - Add `string::absolutePath()`.
  92. - Use namespace for Core plugin to avoid name clashes.
  93. ### 1.0.0 (2019-06-19)
  94. - Add polyphonic cables.
  95. - Add multithreading to engine.
  96. - Add undo/redo history.
  97. - Add module expander support.
  98. - Add parameter labels, units, and descriptions.
  99. - Add parameter tooltips for quickly viewing parameter values.
  100. - Add parameter context menu for entering numerical values, unmapping, etc.
  101. - Change parameter initialization to double-click.
  102. - Add ability to Mod-click on an input port to clone the existing cable.
  103. - Add module "force" dragging when holding Mod.
  104. - Add ability to disable modules with a context menu item and key command Mod-E.
  105. - Add sample rates up to 768,000 Hz (16 x 48,000 Hz).
  106. - Overhaul Module Browser with visual previews of modules.
  107. - Add plugin info sub-menu to module context menu with links to manual, website, source code, etc.
  108. - Add factory presets to module context menu if plugin supplies a folder of presets.
  109. - Add default template patch.
  110. - Add menu item to save the current patch as the template.
  111. - Add "frameRateLimit" and "frameRateSync" for setting maximum screen refresh rate and to toggle vertical sync.
  112. - Add "autosavePeriod" for setting the frequency of autosaves in seconds.
  113. - Add textual menu bar, rearranged menu items, removed icons.
  114. - Make CPU timer display microseconds and percentage instead of millisamples.
  115. - Add engine real-time priority setting.
  116. - Make rack infinite in all four directions.
  117. - Add bus board graphic to rack.
  118. - Add key command Mod-`-` and Mod-`=`, or Mod-scroll, for zooming the rack.
  119. - Fix draw order of cable plugs and wires.
  120. - Make Gamepad MIDI driver generate MIDI CC instead of MIDI notes for buttons.
  121. - Add Numpad keyboard MIDI device.
  122. - Fix Unicode user directories on Windows.
  123. - Add ability to change cable colors in `settings.json`.
  124. - Add `-p X` flag for dumping a screenshot of each available module.
  125. - Allow user to see changelogs of plugins before updating their plugin library.
  126. - Allow user to update individual plugins.
  127. - Core
  128. - Add Audio-16 with 16/16 inputs/outputs.
  129. - Add CV-MIDI, CV-CC, and CV-Gate for sending MIDI to external devices.
  130. - Add MIDI-Map for mapping MIDI CC parameters directly to Rack parameters.
  131. - Add polyphony to MIDI-CV.
  132. - Add MPE mode to MIDI-CV.
  133. - Add "Panic" button to all MIDI modules to reset performance state.
  134. - Plugin API
  135. - Add [`helper.py`](helper.py) for creating and manipulating plugins with the command-line.
  136. - Add [`simd.hpp`](include/dsp/simd.hpp) for generically handling arithmetic and math functions for vectors of floats, accelerated with SSE.
  137. - Add `dsp::VuMeter2`.
  138. - Add `dsp::Timer` and `dsp::Counter`.
  139. - Overhaul event system with many new events.
  140. - etc. See more at https://vcvrack.com/manual/Migrate1.html.
  141. - Licenses
  142. - Relicense Rack to GPLv3 with the VCV Rack Non-Commercial Plugin License Exception and a commercial licensing option.
  143. - Collect all license statements into new [LICENSE.md](LICENSE.md) file.
  144. - License Core panel graphics under CC BY-NC-ND 4.0.
  145. ### 0.6.2 (2018-07-13)
  146. - Add module presets.
  147. - Add [command line arguments](https://vcvrack.com/manual/Installing.html#command-line-usage) for setting Rack directories.
  148. - Improve UI/engine communication stability.
  149. - [VCV Bridge](https://vcvrack.com/manual/Bridge.html) 0.6.2
  150. - Add VST FX plugin.
  151. ### 0.6.1 (2018-06-17)
  152. - Add gamepad MIDI driver.
  153. - Add computer keyboard MIDI driver.
  154. - Add JACK support on Linux.
  155. - Add velocity mode to MIDI-Trig.
  156. - Add MIDI multiplexing so multiple MIDI modules can use the same MIDI device on Windows.
  157. - Make Module Browser layout more compact.
  158. - Add power meter.
  159. - Add icons to toolbar.
  160. - [VCV Bridge](https://vcvrack.com/manual/Bridge.html) 0.6.1
  161. - Replace VST effect plugin with VST instrument plugin with audio inputs.
  162. - Add MIDI support.
  163. - Add DAW transport and clock.
  164. ### 0.6.0 (2018-03-29)
  165. - Release [*VCV Bridge*](https://vcvrack.com/manual/Bridge.html) for interfacing Rack with your DAW.
  166. - VST/AU effect plugins (Mac and 32/64-bit Windows) for using Rack as a send/return on a DAW track.
  167. - Enables future VSTi/AU instrument plugins with MIDI and DAW clock transport to be added in a later Rack 0.6.* update.
  168. - Updated [*Plugin Manager*](https://vcvrack.com/plugins.html) to handle open-source plugins.
  169. - Potentially all plugins can be added with help from the [VCV Community](https://github.com/VCVRack/community/issues/248).
  170. - New *Module Browser* for adding modules to the rack.
  171. - Launch by right-clicking on the rack or pressing <enter>.
  172. - Add "favorite" modules by clicking on the star button.
  173. - Navigate modules with arrow keys or mouse.
  174. - Redesign [Core](https://vcvrack.com/manual/Core.html) modules.
  175. - Access to audio channels beyond the first 8 inputs/outputs.
  176. - Improve AUDIO stability.
  177. - Add retrigger output to MIDI-1.
  178. - Merged MIDI clock module with MIDI-1.
  179. - Fix MIDI-4 sustain pedal in polyphonic modes.
  180. - Improve sample rate conversion performance, is disabled entirely when not needed.
  181. - Patch cable colors are saved to patch files.
  182. - Add highlighting for active patch cables when hovering mouse over port.
  183. - Add shadows to knobs and ports.
  184. - Add File > "Disconnect cables".
  185. - Release [Rack SDK](https://github.com/VCVRack/Rack/issues/258#issuecomment-376293898) for compiling plugins without compiling Rack.
  186. ### 0.5.1 (2017-12-19)
  187. - Add Plugin Manager support.
  188. - Fix metadata panel in the Add Module window.
  189. ### 0.5.0 (2017-11-21)
  190. - Add zoom scaling from 25% to 200%.
  191. - Automatically scroll when dragging cables to the edge of the screen.
  192. - Add Quad MIDI-to-CV Interface, CC-to-CV, Clock-to-CV, and Trigger-to-CV MIDI interfaces.
  193. - Improve support for ASIO, WASAPI, DirectSound, Core Audio, and ALSA audio drivers.
  194. - New module browser with search and tags.
  195. - Enhanced LED emulation in graphics engine.
  196. - File > New attempts to load "template.vcv" in the "Documents/Rack" folder if it exists.
  197. ### 0.4.0 (2017-10-13)
  198. - Cables can now stack on output ports.
  199. - Add sub-menus for each plugin, includes optional plugin metadata like URLs.
  200. - Add MIDI CC-to-CV Interface, updated MIDI-to-CV Interface.
  201. - Add new scrolling methods: middle-click-and-drag, shift-scroll, and arrow keys.
  202. - Add engine pausing in sample rate menu.
  203. - Add resizable blank to Core.
  204. - Add LEDs on plugs.
  205. - Support for AMD Phenom II processors.
  206. - Use self-contained Mac app bundle, no need for a Rack folder.
  207. ### 0.3.2 (2017-09-25)
  208. - Add key commands.
  209. - Fix "invisible knobs/ports" rendering bug for ~2010 Macs.
  210. - Add "allowCursorLock" to settings.json (set to "false" for touch screen support).
  211. - Fix 100% CPU issue when no audio device is selected.
  212. - Add vector scaling panels.
  213. ### 0.3.1 (2017-09-13)
  214. - Fix Windows open dialog current working directory graphics problem.
  215. - Mod-C/Mod-V to copy/paste from text and password fields.
  216. - Automatically remember settings and login token between launches.
  217. - Remove .zip after downloading and extracting plugin.
  218. - Mod-click to right click on Mac.
  219. - Fix menu "flicker" when menu cannot fit in window.
  220. - tweaks to Fundamental and Audible Instruments plugins.
  221. ### 0.3.0 (2017-09-10)
  222. - Knobcon public Beta release.