diff --git a/VERSIONS b/VERSIONS index 0cc4912b6..b723d70a9 100644 --- a/VERSIONS +++ b/VERSIONS @@ -2,7 +2,7 @@ ChucK VERSIONS log ------------------ -1.5.4.4 +1.5.4.4 (January 2025) ======= (added) basic @doc functionality for language-defined classes to add inline CKDoc documentation for class definitions and function defintions. @@ -46,6 +46,10 @@ ChucK VERSIONS log } } -------- +======= +(fixed) miniAudicle export and record functionalities; these resulted in + empty WAV file (in 1.5.4.2 and 1.5.4.3), due to updates to garbage collection + policy for UGens. exporting and recording should now work, once again 1.5.4.3 (December 2024) @@ -118,7 +122,7 @@ ChuGL v0.2.5 Release Notes GWindow.keysUp() (added) new RenderPass methods to set the output resolution, msaa sample count,target scene and target camera for rendering -(added) HUD pass to ChuGL's default rendergraph. Can now easily add 2d HUD +garbage collection mechanism for all UGens(added) HUD pass to ChuGL's default rendergraph. Can now easily add 2d HUD overlay to 3D scenes by grucking ggens to GG.hud() (added) examples/basic/hud.ck (fixed) crash caused by ShaderDesc and other internal reference counting diff --git a/src/core/chuck.cpp b/src/core/chuck.cpp index f07455278..347cc2ec5 100644 --- a/src/core/chuck.cpp +++ b/src/core/chuck.cpp @@ -1587,6 +1587,28 @@ void ChucK::poop() +//----------------------------------------------------------------------------- +// name: bind() +// desc: additional native chuck bindings/types (use with extra caution) +//----------------------------------------------------------------------------- +t_CKBOOL ChucK::bind( f_ck_query queryFunc, const std::string & name ) +{ + // check if we have initialized a compiler + if( !compiler() ) + { + // error message + EM_error2( 0, "cannot bind() -- ChucK/compiler is not initialized..." ); + // done + return FALSE; + } + + // perform the bind + return compiler()->bind( queryFunc, name ); +} + + + + //----------------------------------------------------------------------------- // name: setMainThreadHook() // desc: set a function pointer to call from the main thread loop diff --git a/src/core/chuck_def.h b/src/core/chuck_def.h index 31c7260a8..c973e8c79 100644 --- a/src/core/chuck_def.h +++ b/src/core/chuck_def.h @@ -49,7 +49,7 @@ // 1.5.0.0 (ge) | moved to chuck.h for at-a-glance visibility // 1.5.2.0 (ge) | moved to chuck_def.h for chugins headers streamlining //----------------------------------------------------------------------------- -#define CHUCK_VERSION_STRING "1.5.4.4-dev (chai)" +#define CHUCK_VERSION_STRING "1.5.4.5-dev (chai)" //----------------------------------------------------------------------------- diff --git a/src/core/chuck_dl.cpp b/src/core/chuck_dl.cpp index 6cf4264c3..6b95f0147 100644 --- a/src/core/chuck_dl.cpp +++ b/src/core/chuck_dl.cpp @@ -3071,6 +3071,8 @@ Chuck_VM_Shred * CK_DLL_CALL ck_shred_parent( Chuck_VM_Shred * shred ) //----------------------------------------------------------------------------- #if defined(__PLATFORM_WINDOWS__) #include // std::system_category() | 1.5.1.5 +#include // std::replace() | 1.5.4.5 + extern "C" { diff --git a/src/core/chuck_parse.cpp b/src/core/chuck_parse.cpp index 6c821c305..fb2af22b9 100644 --- a/src/core/chuck_parse.cpp +++ b/src/core/chuck_parse.cpp @@ -134,8 +134,8 @@ t_CKBOOL chuck_parse( Chuck_CompileTarget * target ) } else { - CK_FPRINTF_STDERR( "[chuck](parser): (internal) code and FILE descriptor both NULL!\n" ); - CK_FPRINTF_STDERR( "[chuck](parser): |- bailing out...\n" ); + CK_FPRINTF_STDERR( "[chuck](parser): nothing to parse (empty code / file)...\n" ); + CK_FPRINTF_STDERR( "[chuck](parser): |- no action taken\n" ); return FALSE; } diff --git a/src/makefile b/src/makefile index 51c4fd40b..d4dddf324 100644 --- a/src/makefile +++ b/src/makefile @@ -16,7 +16,7 @@ CK_HOST_DIR=host # where to find RtAudio RTAUDIO_DIR=RtAudio # chuck version -CK_VERSION=1.5.4.4-dev +CK_VERSION=1.5.4.5-dev ########################## DEFAULT MAKE TARGET ################################