The JUCE cross-platform C++ framework, with DISTRHO/KXStudio specific changes
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.

625 lines
29KB

  1. == Major JUCE features and updates ==
  2. This file just lists the more notable headline features. For more detailed info
  3. about changes and bugfixes please see the git log and BREAKING-CHANGES.txt.
  4. Version 7.0.7
  5. - Fixed some macOS 14.0 deprecations
  6. - Fixed some issues with VST3 manifest generation
  7. - Fixed a Metal layer rendering issue
  8. - Fixed an issue setting realtime thread priorities
  9. - Fixed a crash in VirtualDesktopWatcher
  10. - Fixed an AUv3 bundling problem
  11. Version 7.0.6
  12. - Added support for VST3 bundles and moduleinfo.json
  13. - Improved message box dismissal
  14. - Improved WebView support
  15. - Updated to the latest VST3 and AAX SDKs
  16. - Fixed some Metal layer rendering issues
  17. - Improved ambisonic support
  18. - Improved machine ID support
  19. - Improved the HighResolutionTimer implementation
  20. Version 7.0.5
  21. - Fixed Windows 7 compatibility
  22. - Fixed dark mode notifications on macOS
  23. - Improved the performance of AudioProcessorGraph
  24. Version 7.0.4
  25. - Improved Metal device handling
  26. - Adopted more C++17 features
  27. - Improved input handling on macOS and iOS
  28. - Fixed a GUI display issue on Linux
  29. - Fixed some compiler warnings
  30. Version 7.0.3
  31. - Added a unique machine ID
  32. - Added new threading classes
  33. - Improved the performance of multiple OpenGL contexts
  34. - Refactored AudioProcessorGraph
  35. - Improved AudioDeviceManager sample rate handling
  36. - Fixed Studio One drawing performance
  37. - Updated the FLAC library
  38. Version 7.0.2
  39. - Fixed accessibility table navigation
  40. - Fixed Android file access on older APIs
  41. - Improved Linux VST3 threading
  42. - Improved ARA integration
  43. Version 7.0.1
  44. - Fixed some Xcode and MSVC compiler warnings
  45. - Improved VST3 bus configuration and channel handling
  46. - Fixed some Metal layer rendering bugs
  47. Version 7.0.0
  48. - Added Audio Random Access (ARA) SDK support
  49. - Added support for authoring and hosting LV2 plug-ins
  50. - Added a default renderer for macOS and iOS
  51. - Added new macOS and iOS rendering options
  52. - Added hardware synchronised drawing on Windows, macOS and iOS
  53. - Updated the Android billing and file access APIs
  54. - Revamped AudioPlayHead functionality
  55. - Improved accessibility support
  56. Version 6.1.6
  57. - Improved the handling of AU multichannel layouts
  58. - Added JUCE_NODISCARD to builder-patten functions
  59. - Added recursion options to DirectoryIterator
  60. - Unified the loading of OpenGL 3.2 core profiles
  61. - Improved macOS full-screen behaviour with non-native titlebars
  62. Version 6.1.5
  63. - Improved the accessibility framework
  64. - Added handling of non-Latin virtual key codes on macOS
  65. - Improved X11 compatibility
  66. - Updated the iOS in-app purchases workflow
  67. - Improved macOS windowing behaviour
  68. - Improved MinGW-w64 compatibility
  69. - Added an MPEKeyboardComponent class
  70. Version 6.1.4
  71. - Restored Projucer project saving behavior
  72. - Fixed a CGImage memory access violation on Monterey
  73. - Improved macOS thread priority management
  74. Version 6.1.3
  75. - Added support for Visual Studio 2022 to the Projucer
  76. - Added support for creating OpenGL 3.2 contexts on Windows
  77. - Added support for plugin hosts to easily retrieve stable parameter IDs
  78. - Added high-resolution image support to DragAndDropContainer
  79. - Added support for a wider range of frame-rates in plugins and hosts
  80. - Made Font and TypefaceCache threadsafe, to allow font rendering on background threads
  81. - Improved FlexBox compatibility with the CSS FlexBox specification
  82. - Improved macOS 12 compatibility, including OpenGL and FileChooser fixes
  83. - Improved accessibility support
  84. Version 6.1.2
  85. - Fixed an OpenGL display refresh rate issue on macOS
  86. - Improved the scaling behaviour of hosted VST3 plug-ins
  87. - Improved accessibility support
  88. Version 6.1.1
  89. - Fixed a CMake installation issue
  90. - Improved parameter value loading after plug-in restarts
  91. - Fixed some problems with multi-line text layouts
  92. - Added a fallback for modal native message boxes on Windows
  93. - Fixed an issue setting OpenGL repaint events
  94. - Improved accessibility support
  95. Version 6.1.0
  96. - Added accessibility support
  97. - Enabled use of VST3 plug-in extensions
  98. - Improved OpenGL function loading
  99. - Updated to C++14
  100. - Added support for macOS Monterey and iOS 15
  101. - Added async versions of all modal functions
  102. - Fixed some VST3 threading issues
  103. - Added cross-platform-compatible VST3 UID hash
  104. - Improved MinGW compatibility
  105. - Fixed some issues with BufferingAudioReader
  106. - Improved TextEditor repainting
  107. - Added support for larger ASIO buffers
  108. - Updated Android Oboe to 1.6.1
  109. - Improved modal dismissing
  110. - Improved assertion handling on macOS ARM
  111. Version 6.0.8
  112. - Fixed a macOS graphics invalidation region issue
  113. - Improved the handling of modal dialog dismissal
  114. - Fixed audio glitching in CoreAudio before microphone permission is granted
  115. - Improved AUv3 resizing and initialisation
  116. - Fixed some string to double conversions
  117. - Improved iOS split view behaviour
  118. - Added Display::safeAreaInserts
  119. - Improved assertion behaviour on macOS ARM
  120. - Multiple resizing and display scaling fixes
  121. - Added more information to audioProcessorChanged callbacks
  122. - Fixed some DSP convolution issues
  123. - Added host detection on macOS ARM
  124. Version 6.0.7
  125. - Fixed a macOS drawing issue
  126. - Updated the DemoRunner bundle ID
  127. Version 6.0.6
  128. - Moved to the new CoreMIDI API on supported platforms
  129. - Added support for the "New Build System" in Xcode
  130. - Made the audio format readers more robust
  131. - Improved the HiResTimer implementation
  132. - Fixed a VST3 program parameter issue
  133. - Updated to Oboe 1.5 on Android
  134. Version 6.0.5
  135. - Added more support for styling PopupMenus
  136. - Fixed some race conditions in the IPC and name named pipe classes
  137. - Implemented multiple FileChooser improvements
  138. - Added compatibility with the latest Android SDK
  139. - Prevented CoreAudio glitches before accepting audio access permissions
  140. - Made reading MIDI and audio files more robust
  141. Version 6.0.4
  142. - Improved the Projucer update mechanism
  143. - Fixed an AUv3 parameter normalisation issue
  144. - Fixed WASAPI exclusive mode sample rate selection bug
  145. - Fixed a Linux build issue when omitting ALSA
  146. Version 6.0.3
  147. - Fixed version numbers in project files
  148. Version 6.0.2
  149. - Added support for macOS 11 and arm64
  150. - Added Windows IAudioClient3 support for low latency audio drivers
  151. - Added Windows and macOS precompiled header support in the Projucer
  152. - Improved accessibility support in the macOS menu bar
  153. - Fixed VST3 hosting for plug-ins requiring persistent DLL loads
  154. - Updated macOS camera capture API
  155. - Improved resave diffs in Projucer project files
  156. - Fixed some Linux JACK issues
  157. Version 6.0.1
  158. - Fixed a bug in the Projucer GUI editor causing existing code to be overwritten
  159. - Updated Android Oboe to 1.4.2
  160. - Bumped default Android Studio gradle and plugin versions to the latest
  161. - Fixed some Android Oboe and OpenSL issues
  162. - Fixed some Doxygen parsing issues
  163. - Fixed MIDI input/output bus enablement in VST3 plug-ins
  164. - Improved Windows Clang compatibility
  165. - Fixed GCC 4.8 and 5.0 compatibility
  166. - Fixed some VST3 build errors and warnings on Linux
  167. - Fixed dynamically loaded X11 library names on Linux
  168. - Fixed Projucer CLion exporter generated CMakeLists.txt
  169. - Fixed drag and drop for non-DPI aware plug-ins on Windows
  170. Version 6.0.0
  171. - Added support for building JUCE projects with CMake
  172. - Revamped the DSP module
  173. - Added VST3 support on Linux
  174. - Added support for the latest webview components on macOS/iOS and Windows
  175. - Removed the sign-in requirement, app reporting and analytics from the Projucer
  176. - Added support for running headlessly on Linux
  177. - Bundled Oboe source in JUCE and made it the default audio device on Android
  178. - Various Oboe stability improvements
  179. - Various Projucer UI improvements
  180. - Added HWNDComponent for embedding native HWNDs on Windows
  181. - Added support for all camera names on macOS
  182. - Added support for building with Clang on Windows
  183. - Modified MidiMessageCollector to preallocate storage
  184. - Modified AudioProcessorGraph to allow extracting nodes
  185. - Refactored the APVTS parameter attachment classes and added a new ParameterAttachment class
  186. - Added IPP FFT implementation
  187. - Added all example plugins as internal nodes in AudioPluginHost project
  188. - Removed JuceHeader requirement from Projucer projects
  189. - Added support for legacy CC output events
  190. - Added MidiBuffer::Iterator class compatible with C++11 range-for
  191. - Added RangedDirectoryIterator class compatible with C++11 range-for
  192. - Provided range-for comaptibility for String class
  193. - Windows and Linux hiDPI scaling improvements
  194. - Various bug-fixes, improvements and documentation updates
  195. Version 5.4.7
  196. - Fixed a macOS focus bug causing Components to not receive mouse events
  197. - Fixed a potential NullPointerException in the Android IAP code
  198. - Fixed an entitlements file generation bug in the Projucer
  199. - Send VST2 audioMasterUpdateDisplay opcode on the message thread to fix some hosts not updating
  200. - Fixed some build errors and warnings when using Clang on Windows
  201. - Changed the default architecture specified in Linux Makefiles generated by the Projucer
  202. Version 5.4.6
  203. - Fixed compatibility with macOS versions below 10.11
  204. - Multiple thread safety improvements
  205. - Added dynamic parameter and parameter group names
  206. - Updated to the latest Android In-App Purchases API
  207. - Improvements to the Windows message queue under high load
  208. - Replaced WaitableEvent internals with std::condition_variable
  209. - Fixed some macOS text alignment issues
  210. Version 5.4.5
  211. - Improved message queue performance on Linux
  212. - Added missing lifecycle callbacks on Android Q
  213. - Refactored the AudioBlock class
  214. - Fixed APVTS parameter update recursion
  215. - Updated Bela code to support latest release
  216. - Fixed issues drawing italicised text on macOS
  217. - Fixed broken back button behaviour on Android
  218. - Added Bluetooth permissions settings needed for iOS 13.0+ to the Projucer
  219. - Replaced select() calls with poll()
  220. - Various bug-fixes, improvements and documentation updates
  221. Version 5.4.4
  222. - Improvements to floating point number printing
  223. - Faster plug-in parameter indexing
  224. - Added support for persisting attachements to MIDI devices
  225. - Refactored Linux event loop handling
  226. - Multiple C++ modernisation improvements to the API
  227. - Added support for macOS 10.15 and iOS 13
  228. - Added support for Visual Studio 2019
  229. - Removed support for Visual Studio 2013
  230. Version 5.4.3
  231. - Added a Visual Studio 2019 exporter to the Projucer
  232. - Added options to configure macOS Hardened Runtime in the Projucer
  233. - Fixed a potential memory corruption when drawing on macOS/iOS
  234. - Fixed file drag and drop for Windows 8
  235. - Multiple DSP module enhancements
  236. - Various bug-fixes, improvements and documentation updates
  237. Version 5.4.2
  238. - Restructured the low-level Android native code
  239. - Added an ADSR envelope class
  240. - AudioProcessorValueTreeState performance improvements
  241. - Improved Xcode 10 support
  242. - Improved VST3 hosting
  243. - Windows hiDPI scaling enhancements
  244. Version 5.4.1
  245. - Fixed a VST2 compilation error in VS2013
  246. - Fixed some live-build compilation errors in the Projucer
  247. - Fixed a bug in the Oversampling class
  248. - Made MPESynthesiserVoice::noteOnTime public
  249. - Fixed some bugs in the Unity plug-in wrapper
  250. - Fixed some VS2015 compiler errors
  251. Version 5.4.0
  252. - macOS Mojave and iOS 12 support
  253. - Windows hiDPI support
  254. - Unity native plug-in support
  255. - Microsoft BLE MIDI support
  256. - Plug-in parameter groups
  257. - Support for production-ready Android OBOE
  258. - Video playback support on Android and iOS
  259. - AudioProcessorValueTreeState improvements
  260. - Support for Android Studio 3.2
  261. - Various bug-fixes, improvements and documentation updates
  262. Version 5.3.2
  263. - Removed the OSX 10.5 and 10.6 deployment target options from the Projucer and enabled more C++11 features across all platforms
  264. - Replaced all usage of ScopedPointer with std::unique_ptr
  265. - Added camera support for iOS and Android
  266. - Fixed some issues using an UndoManager with an AudioProcessorValueTreeState
  267. - Added MIDI input to IAA plug-ins
  268. - Made multiple calls to MidiInput::openDevice share the same underlying win32 MIDI handle
  269. - Added a config flag to juce_audio_processors for enabling LADSPA plugin hosting and enabled it in the AudioPluginHost
  270. - Added a "plug-in can do" callback to the VSTCallbackHandler interface
  271. - Fixed various undefined behavior in SIMDRegister
  272. - Added the methods AudioBlock::copyTo/AudioBlock::copyFrom which facilitate copying to/from an AudioBuffer
  273. - Added a lambda callback to OpenGLGraphicsContextCustomShader to allow custom set-up when the shader is activated
  274. - Fixed a bug causing an unintentional menu item highlight disco party when using a popup menu in a plug-in's UI
  275. - Marked as deprecated: String::empty, var::null, File::nonexistent, ValueTree::invalid and other problematic statically-initialised null values
  276. Version 5.3.1
  277. - Add Android and iOS support to AudioPluginHost
  278. - Added support for Bela in the form of an AudioIODeviceType
  279. - Add bypass support to both hosting and plug-in client code
  280. - Added an isBoolean flag to APVTS parameters
  281. - Re-worked plug-in wrappers to all use new parameter system via LegacyAudioParameter wrapper class
  282. - Fixed an issue where opening the same midi device twice would cause a crash on Windows
  283. - Deprecated MouseInputSource::hasMouseMovedSignificantlySincePressed() and replaced with more descriptive methods
  284. - Added support for relative or special path symbolic links when compressing/uncompressing zip archives and creating/reading files
  285. - Ensured that File::replaceInternal does not fail with ACL errors on Windows
  286. - Merged-in some Ogg-Vorbis security fixes
  287. - Fixed a bug which would prevent a SystemTrayIconComponent from creating a native popup window on macOS
  288. - Various Android and iOS fixes
  289. - Added a "PIP Creator" utility tool to the Projucer
  290. - Added options for setting plugin categories and characteristics with MultiChoicePropertyComponent in the Projucer
  291. - Fixed a Projucer bug where the OSX base SDK version was not being set
  292. - Added a command-line option to use LF as linefeeds rather than CRLF in the Projucer cleanup tools
  293. - Multiple documentation updates
  294. Version 5.3.0
  295. - Added support for Android OBOE (developer preview)
  296. - Updated JUCE's MPE classes to comply with the new MMA-adopted specification
  297. - Multiple documentation updates
  298. - Restructured the examples and extras directories and updated all JUCE examples
  299. - Multiple hosted parameter improvements
  300. - Overhauled the GenericAudioProcessorEditor
  301. - Added support for a subset of the Cockos VST extensions
  302. - Added support for loading VST3 preset files
  303. - Added boolean AudioProcessorParameters
  304. - Added thread safe methods for getting and setting the AudioProcessorValueTreeState state
  305. - Added customisable MacOS icons
  306. Version 5.2.1
  307. - Added native content sharing support for iOS and Android
  308. - Added iOS and Android native file chooser support
  309. - Implemented WebBrowserComponent on Android
  310. - Added SystemStats::getDeviceManufacturer()
  311. - Ensured that JUCE will always use the high-performance audio path on Android if the device supports it
  312. - Added memory warning callbacks on iOS
  313. - Refactored iOSAudioDevice to support multi-channel audio devices and improve the handling of sample rate changes from other apps
  314. - Added SidePanel and BurgerMenu component classes
  315. - Added PushNotifications support on OSX
  316. - Added support for VST3 SDK 3.6.8
  317. - Added support for loading VST3 preset files
  318. - Added higher-order ambisonics support
  319. - Added thread safe methods for getting and setting the AudioProcessorValueTreeState state
  320. - Cleanup and refactoring work on the AudioProcessorGraph and the audio plugin host demo
  321. - Changed the default language standard for new projects from C++11 to C++14 and set all JUCE projects to use C++14
  322. - Made the ScopedPointer interface more compatible with std::unique_ptr
  323. - Changed Windows projects to use dynamic runtime linking by default
  324. - Added lambda callbacks to ListenerList, Slider, Button, Label, ComboBox and TextEditor
  325. - Fixed the live-build engine on Windows
  326. - Multiple DSP module fixes and features
  327. - Multiple threading and undefined behaviour fixes and improvements
  328. - Various graphics optimisations
  329. - Multiple Projucer UI and UX improvements
  330. - Various documentation tweaks and fixes
  331. Version 5.2.0
  332. - Added a CMake exporter to the Projucer
  333. - JUCE analytics module
  334. - Added support for push notifications on iOS and Android
  335. - Added in-app purchase support for macOS
  336. - Added a plugin binary copy step to the Visual Studio exporter
  337. - Added an option to set the debug information format in the Visual Studio exporter
  338. - Added a link-time optimisation option to all exporters
  339. - Added support for adding asm files to Android projects
  340. - Improved the reliability of the Projucer's live-build engine
  341. - Added support for AUv2 Midi Effect plug-in hosting
  342. - Added support for Atmos 7.0.2 and 7.1.2 Surround formats
  343. - Added support for the OGG sub-format inside a WAV file
  344. - Added support for querying the audio hardware on how many overruns/underruns occurred
  345. - Implement Process::hide on mobile platforms
  346. - Added support for multi-touch drag and drop
  347. - Improved the performance of 3D rendering when multiple OpenGL contexts are used at the same time
  348. - Tweaked the rate at which EdgeTable grows its internal storage, to improve performance rendering large and complex paths
  349. Version 5.1.2
  350. - Fixed multiple plugin-resizing bugs
  351. - Added support for AUv3 MIDI and screen size negotiation
  352. - Added support for Xcode 9 and iOS 11
  353. - Added an In-App Purchases module
  354. - Added backwards compatible constexpr support
  355. - Standalone plug-in improvements
  356. - Better .jucer file change monitoring in the Projucer
  357. - Increased the speed of AU parameter lookup
  358. - Improved the Android thread management when dealing with web requests
  359. - Better denormal support
  360. - Plug-in parameters can be explicitly marked as continuous or discrete
  361. - Multiple documentation updates
  362. Version 5.1.1
  363. - Fixed Windows live build engine on Visual Studio 2017
  364. - Fixed a compiler error in juce_MathFunctions.h in Visual Studio 2013
  365. - Fixed a potential crash when using the ProcessorDuplicator
  366. - Fixed a compiler-error in Filter::IIR
  367. - Fixed an issue where the WavFileFormatWriter could not create files with discrete channels
  368. - Fixed an issue where a window which is beneath a hidden window would not receive any clicks on Linux
  369. - Altered the format of BREAKING-CHANGES.txt to display better on GitHub
  370. - Projucer: Fixed an issue in exporter tilde expansion
  371. - Fixed compiler errors when building the DSP module with a static version of FFTW
  372. - Fixed an audio glitch when bypassing the convolution engine
  373. - Fixed an issue where a JUCE VST2 would not correctly report that it supports resizing of it’s plugin editor
  374. - Various documentation tweaks and fixes
  375. Version 5.1.0
  376. - Release of the JUCE DSP module
  377. - Multichannel audio readers and writers
  378. - Plugin editor Hi-DPI scaling support
  379. - Major improvements to Projucer module search paths
  380. - Added Projucer support for iOS app groups
  381. - Added support for AVFoundation and deprecated the use of Quicktime
  382. - Added a new real-time audio thread priority for Android
  383. - Various Projucer UI fixes
  384. - Various documentation fixes
  385. - Various minor improvements and bug fixes
  386. Version 5.0.2
  387. - Improved project save speed in the Projucer
  388. - Added option to save individual exporters in the Projucer
  389. - Added the ability to create custom colour schemes for the Projucer’s code editor
  390. - Minor fixes to JUCE’s SVG parser
  391. - Various bug fixes in the way JUCE handles Hi-DPI monitors
  392. - Improved code browsing in Visual Studio Exports
  393. - Improved the handling of audio device buffer size changes on iOS
  394. - Fixed bug in the Win32 FileChooser dialog when selecting a nonexistent root drive
  395. - Fixed a Projucer crash when saving projects with no targets
  396. - Fixed a bug where Projucer generated Makefiles would not trigger a recompilation when header files had changed
  397. - The standalone plugin target is now compatible with effect plug-ins
  398. - Fixed an issue where it was not possible to use the live build engine on plugin projects
  399. - Improved the way the Projucer’s live-build engine searches for platform headers on Windows
  400. - Fixed an issue where the Projucer would complain about not having internet even if the user had a license
  401. - Fixed a use-after-free in the AUv3 wrapper
  402. - Fixed an issue where the channel layout would not be reported correctly in the AUv3 wrapper
  403. - Fixed a potential memory overrun issue when hosting VST2 plugins with more than eight channels
  404. - Fixed a problem with the Mac main menu bar showing menus in the wrong position
  405. - Various Projucer UI fixes
  406. - Various documentation fixes
  407. - Various minor improvements and bug fixes
  408. Version 5.0.1
  409. - Fixed Windows live build engine on Visual Studio 2017
  410. - Fixed memory-leak in Projucer live build engine
  411. - Fixed an issue where you could not paste your redeem serial number with Cmd+V on macOS
  412. - Fixed an issue where the Projucer would crash on linux due to missing symbols in WebKit
  413. - Minor Projucer UI improvements
  414. - Various minor improvements and bug fixes
  415. Version 5.0.0
  416. - New licensing model
  417. - Projucer UI/UX overhaul
  418. - New look and feel (version 4)
  419. - New standalone plug-in format
  420. - Added support for Visual Studio 2017
  421. - Added support for VST3 SDK 3.6.7
  422. - Added support for Apple Inter-App Audio on iOS
  423. - Various Android stability and performance improvements
  424. - Added support for non-experimental gradle plug-in versions >= 2.2 and Android Studio 2.3
  425. - Added support for closed-source third-party modules
  426. - Added support for Windows 10 Bluetooth LE MIDI devices
  427. - Modernised JUCE codebase to use C++11/14 features
  428. - Added support for Linux embedded platforms
  429. - Added support for WebBrowserComponent on Linux
  430. - Added support for IPv6
  431. - Various minor improvements and bug fixes
  432. - Various documentation improvements
  433. Version 4.3.1
  434. - Added support for iOS download tasks
  435. - Added support for AAX plug-in meters
  436. - Added support for dynamically disabling/enabling sidechains in ProTools
  437. - Re-introduced support for VST3 plug-ins reporting which VST2 plug-in they can replace
  438. - Added withRightX and withBottomY methods to Rectangle
  439. - Added support for windows 10 on screen keyboard
  440. - Added move semantics to AudioBuffer
  441. - Added colour coding scheme to module icons in the Projucer to indicate which type of license a module uses
  442. - Removed all deprecation warnings for macOS Sierra
  443. - Fixed multiple touch, pen and mouse input related bugs on Windows
  444. - Added submenu support to ComboBoxes and simplified the usage of ComboBoxes
  445. - Various minor improvements and bug fixes
  446. - Various documentation improvements
  447. Version 4.3.0
  448. - Added API and examples for ROLI Blocks
  449. - Multiple Projucer live-build UI and diagnostics improvements
  450. - JUCE now supports hosting multi-bus plug-ins
  451. - BufferingAudioSource now supports pre-buffering (useful for offline processing)
  452. - Added microphone permissions switch to Projucer for iOS targets
  453. - Standalone wrappers now correctly save and restore midi settings
  454. - Various performance improvements to BigInteger
  455. - Fixed various FlexBox bugs
  456. - Added a workaround for the broken “Open Recent…” menu on os x
  457. - Various minor improvements and bug fixes
  458. - Various documentation improvements
  459. Version 4.2.4
  460. - Pre-release of live build engine on Windows
  461. - Added FlexBox layout engine
  462. - Removed dependency on external Steinberg SDK when building and/or hosting VST2 plug-ins
  463. - Added support for MIDI network sessions in the iOS simulator
  464. - Added support for symmetric skew to Slider, NormalisableRange and SliderPropertyComponent
  465. - Projucer now asks the user what to do when it detects that the .jucer file was modified outside of the Projucer
  466. - Improved support for Windows 10 touch devices
  467. - Added begin/end iterator methods for ValueTree, for handy range-based-for loops over its children
  468. - Added support for recent mingw-w64 compilers
  469. - Added useful proportional Rectangle utility methods
  470. - Significantly improved the performance of BigInteger
  471. - Added support for expiring licenses to juce_tracktion_marketplace
  472. - Added support for retina mouse cursors on OS X
  473. - Added a new low-quality mode for the CameraDevice
  474. - Added pkg-config support for Linux
  475. - Projucer will now wrap your AAX plug-in in the bundle format expected Pro Tools on Windows
  476. - Multiple bug-fixes for AudioUnit parameter ids
  477. - Fixed a bug where AlertWindows weren’t always on top
  478. - Multiple fixes for web InputStreams
  479. - Various improvements to the live build engine
  480. - Various minor improvements and bug fixes
  481. - Various documentation improvements
  482. Version 4.2.3
  483. - Various VST3 improvements: resizing VST3 windows, plug-in compatibility issues
  484. - Use NSURLSession on newer OS X versions
  485. - Add compatibility for VST 3 SDK update 3.6.6
  486. - Miscellaneous fixes and improvements
  487. Version 4.2.1
  488. - New class CachedValue, for providing easy and efficient access to ValueTree properties
  489. - Reduced audio plug-in binary sizes on OS X and added symbol-stripping option
  490. - Miscellaneous fixes and improvements
  491. Version 4.2
  492. - Added support for AudioUnit v3 on OS X and iOS
  493. - Simplified the JUCE module format. Removed the json module definition files, and made
  494. it easier to manually add modules to projects. The format is fully described in the
  495. document juce/modules/JUCE Module Format.txt
  496. - iOS project support: added custom resource folders, custom xcassets, app capabilities,
  497. and screen orientation settings.
  498. - Deleted the Introjucer.. But don't panic! All of its functionality is now supplied by a
  499. more open-source version of the Projucer. By refactoring the closed-source LLVM compilation
  500. code into a DLL, we've been able to unify the Introjucer and Projucer into a single
  501. open-source project. This will allow everyone to compile the Projucer's IDE themselves, and
  502. having just one app instead of two will make things a lot less confusing!
  503. Version 4.1
  504. - Added multi-bus support for audio plug-in clients
  505. - Added support for MIDI effect plug-ins (AU and AAX).
  506. - Added new example: Network Graphics Demo
  507. Version 4.0.3
  508. - Added MPE (Multidimensional Polyphonic Expression) classes
  509. - Added full support for generating and parsing Midi RPN/NRPN messages
  510. - Made the LinearSmoothedValue class public
  511. - Miscellaneous fixes and minor improvements
  512. Version 4.0.2
  513. - Miscellaneous fixes and house-keeping
  514. Version 4.0.1
  515. - Initial release of the Projucer!
  516. - Full OSC support!
  517. - Android Studio exporting from the Introjucer
  518. - Android-M pro-audio low-latency i/o support
  519. - Bluetooth MIDI device support on iOS and Android
  520. - AudioSampleBuffer refactored into a templated class AudioBuffer, to allow
  521. 32 or 64 bit float support
  522. - Audio plugin and hosting now supports 64-bit data
  523. - Support for force-touch and pen pressure on iOS and Windows
  524. - Added easy sound-file playing methods to AudioDeviceManager
  525. - Many updates to Introjucer
  526. - Many new tutorials and examples
  527. Version 3.3.0
  528. - New functions for Base64 conversion
  529. - New command-line options in the introjucer for trimming whitespace and
  530. replacing tabs in source files
  531. Version 3.2.0
  532. - Major OpenGL performance/stability improvements
  533. - Performance improvements to FloatVectorOperations math functions
  534. - New FloatVectorOperations: abs, min, max, addWithMultiply, clip
  535. - Midi channel pressure support
  536. - New example projects ComponentTutorialExample, SimpleFFTExample,
  537. PluckedStringsDemo
  538. - New class ValueTreeSynchroniser, for remote-syncing multiple
  539. ValueTrees
  540. - HTTPS/SSL support on Linux
  541. - Added methods for degrees to radians conversions
  542. - Added Neon instruction set support for Android targets
  543. - JUCE ValueTree performance improvements
  544. - Linux and Android multi-monitor HiDPI support
  545. - Support the “display=none” attribute in SVG files
  546. - Support for text elements in SVG files
  547. - Added Whirlpool hash class to the cryptography module
  548. - Various improvements for parameter automation in VST, VST-3,
  549. AudioUnits and AAX
  550. - Various improvements to JUCE Synthesiser
  551. - Linux Code::Blocks project support
  552. - Multicast support
  553. - Add support to generate project version numbers from project git tags
  554. - Various updates to example projects
  555. - Stability improvements to re-order and resize code of plug-in windows
  556. - Support for external third-party native libraries on Android
  557. - Introjucer’s auto-update now displays release notes
  558. - Various Introjucer usability improvements
  559. - Support for in-memory fonts on Android
  560. - New FFT class
  561. - WASAPI exclusive mode support
  562. - More C++11 feature support macros
  563. - Performance improvements to XML parsing
  564. - Add compatibility for AAX SDK 2.2.0
  565. - Added parameters to the ValueTree::Listener::valueTreeChildRemoved()
  566. and valueTreeChildOrderChanged() methods to include more info about
  567. exactly what changed
  568. - Over 400 minor changes, bug-fixes, documentation improvements, etc.