Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
908¶
Reformat and lint the code with IPT
906¶
Update used sphinx version that is used to build the documentation
902¶
Switch MacOSX CI to Sonoma
Renew signing/notarization certificate on MacOSX, switch from altool to notarytool
Adopt C++17
887¶
Switch to compilation with Visual Studio 17 2022 on Windows
885¶
Change allowed range for JSONXOP_AddValue/I to -2^63 to 2^63 - 2^10 (borders included)
880¶
Add /WM flag to JSONXOP_GetValue
Add optional waveMode argument to JSON_GetWave
875¶
Add JSON_IsValid
872¶
Add utility functions JSON_Load and JSON_Save to load/save JSON data from storage
868¶
Add sanity checks for too big strings for JSONXOP_Dump and JSONXOP_GetValue
850¶
JSONXOP_GetValue/J added. Returns a JSON object from an JSON object at the given path.
Added JSON_SyncJSON utility function.
841¶
Update XOP Generator tool to latest version and all auto-generated sources.
814¶
Fix free wave memory leak when JSONXOP_GetValue could not convert the array data to the requested type. Found with Igor Pro 9 Wave Tracking.
799¶
Better error reporting for free destination waves if the caller can not handle them
794¶
Fix crash in JSONXOP_AddTree when passing an unexpected value for /T like -100
JSONXOP_AddValue now errors out if the wave to add is of type wave reference wave or datafolder reference wave. Previously it did nothing.
Add more tests to cover also nearly all error conditions
766¶
Add support for JSONXOP_AddValue for zero sized waves
763¶
fix for JSON_SetVariable errorneously using integer flag for Inf, -Inf values, resulting in RTE
748¶
fix for JSON_Parse return value on fail
747¶
changed json-functions to preserve the callers RTE state
746¶
fixed Igor help file, such that documentation links work properly and Igor internal linage to operation names and user function names (IP9) works.
742¶
Added¶
Add CI testing on MacOSX Monterey beta 4.
735¶
Changed¶
Change the bundle identifier for notarization on MacOSX, this is now “de.byte-physics.xop.JSON-64”.
723¶
Changed¶
Revised the operation documentation completely. Now with a detailed explanation of every flag, working examples with output and all nitty gritty details.
Added the sphinx-copybutton extension for easier copy and paste of the example code.
Adapted the documentation layout a bit to fit better on larger monitors.
686¶
Fixed¶
The rounding for the flag /S (significance) is now OS-independent
685¶
Changed¶
Use
rtFunctionErrors=1
in procedure file for better error handling
681¶
Changed¶
Compile and test on MacOSX Catalina
Explicitly set the minimum required MacOSX version to 10.10 (the same as Igor Pro 8)
Code sign and notarize the XOP on MacOSX
648¶
Changed¶
Massive performance improvements
632¶
Changed¶
Upgraded to Visual Studio 2019
The C++ JSON library was updated to v3.8.0.
624¶
Fixed¶
Clear lingering runtime errors before any calls to
AbortONRTE
in Igor Pro procedure code
614¶
Changed¶
The C++ JSON library was updated to 6121fc52 (:art: fix indentation, 2020-04-10).
611¶
Changed¶
JSON_Exists now clears any lingering run time errors
555¶
Changed¶
Add documentation for JSON_IGNORE_ERRORS, JSON_UNQUIET defines
Add wrapper functions to set/unset defines
554¶
Fixed¶
documentation of /S flag for JSONXOP_AddValue
552¶
Changed¶
Added /A flag to JSONXOP_Release
551¶
Changed¶
JSONXOP_GetValue has now a /FREE flag
JSONXOP_GetKeys has now a /FREE flag
JSONXOP_GetMaxArraySize has now a /FREE flag
This brings functionality more in line with present Igor operations.
550¶
Changed¶
Wrapper procedures are now threadsafe
549¶
Fixed¶
JSON_GetValue outputs more helpful warning message if an invalid array element for conversion to an igor wave element was encountered.
548¶
Fixed¶
JSON_AddVariable function works with Inf as value
547¶
Fixed¶
Fix signed/unsigned warnings found with clang-tidy
526¶
Fixed¶
Exclude PDB files from download
Preserve PDB files in a separate build artifact
Use sphinx
download
directive for the link to the xop zip fileReduce ctags file by excluding sub-dependencies
Added¶
Wrapper function for JSONXOP_Remove
Add Wrapper Function
JSON_Exists
to test for validjsonID
510¶
Added¶
License information
509¶
Changed¶
Corrected company name in documentation
508¶
Changed¶
Enhance compile flags for MSVC to catch more issues
Add sanitizer support on MacOSX and fix some minor issues
495¶
Changed¶
JSON_Version uses a more general approach to include IgorInfo information.
JSON_GetIgorInfo function added.
494¶
Fixed¶
For JSON functions returning waves a name collision with existing waves with the same name as internally used waves could happen.
490¶
Changed¶
The C++ JSON library was updated to 06ccd43a (Merge pull request #1722 from t-b/fix-int64-min-issue, 2019-09-10).
485¶
Changed¶
JSONXOP_GetValue/L=wave follows the int64/uint64 wave type when parsing a json value
484¶
Changed¶
Code cleanup to make clang-tidy happier
Fixed¶
JSON_GetWave: Fix operation call
Added¶
JSON_GetType: Add wrapper function
Output short message on initialization
432¶
Added¶
/Q to the documentation
Changelog
426¶
Changed¶
Enforce Igor Pro 8 in the procedure file
423¶
Added¶
Defines
JSON_IGNORE_ERRORS
andJSON_UNQUIET
to tweak the defaults of the wrapper functions
422¶
First public release