Releases: modelon-community/fmi-library
3.0.4
3.0.4
- Add FMILIB_EXTERNAL_LIBS option to enable external zlib/minizip/expat dependencies
- CMake option FMILIB_FIND_PACKAGE_ZLIB is now obsolete, use FMILIB_SYSTEM_ZLIB instead
- Use
c99_snprintfthird-party dependency only when compiling with MSVC 2015 and lower - Bump minimum cmake version 3.15 and enable compatibility with 4.x.
- Added convenience functionality:
- Checking if a variable has aliases:
fmi3_import_get_variable_has_alias. - Getting description of variable or alias variable via name :
fmi3_import_get_variable_description_by_name. - Getting display unit of variable or alias variable via name :
fmi3_import_get_variable_display_unit_by_name. - Checking if a variable has clocks:
fmi3_import_get_variable_is_clocked. - Checking if a variable is clocked by a clock variable:
fmi3_import_get_variable_is_clocked_by.
- Checking if a variable has aliases:
fmi3_import_get_variable_descriptionandfmi3_import_get_alias_variable_descriptionnow correctly return empty strings
for missing descriptions, as stated in the documentation.- Added functions
fmi3_import_get_variable_has_descriptionandfmi3_import_get_alias_variable_has_descriptionto check if an
(alias) variable has a description. Use this to tell between empty description and no description.
Full Changelog: 3.0.3...3.0.4
3.0.3
Full Changelog: 3.0.2...3.0.3
3.0.3
- Resolved an issue in a test case where a variable was not initialized, causing an error for certain compilers.
3.0.2
3.0.2
- Restored
minizip_printfafer minizip 1.3.1 bump in v3.0.1 to avoid printing to stdout - Fixed various compilation issues for all major platforms
- Add ARM architecture tags
Full Changelog: 3.0.1...3.0.2
3.0.1
3.0.1
- Resolved reported vulnerability issues:
- Updated to
expat2.6.4 (from version 2.5.0). - Updated to
zlib1.3.1 (from version 1.2.13). - Updated to
minizip1.3.1 (from version 1.1).
- Updated to
Full Changelog: 3.0...3.0.1
3.0
This is the first official release with support for FMI 3.0. Please note that support for terminals and icons is still experimental and subject to change.
We would like to thank all users who provided feedback and reported issues during development, your contributions are greatly appreciated.
Below is a list of fixes compared to the most recent release, which was 3.0a5.
Bug fixes
- Fixed
fmi3_clock_update_callback_ftdefinition, was missingfmi3_instance_environment_t. - Changed the return of the following functions from
fmi3_float32_ttofmi3_float64_tin accordance to bugfix in FMI specification v3.0.2:fmi3_import_get_clock_variable_interval_decimalfmi3_import_get_clock_variable_shift_decimalfmi3_import_get_clock_type_interval_decimalfmi3_import_get_clock_type_shift_decimal
Full Changelog: 3.0a5...3.0
3.0a5
3.0a5
This alpha release contains a mix of bug fixes, breaking changes and fixes additional fixes for FMI 3 support. In particular:
Improvements
- Added missing fmi3 import functions for CAPI calls:
fmi3_import_get_shift_decimalforfmi3GetShiftDecimal.fmi3_import_get_shift_fractionforfmi3GetShiftFraction.fmi3_import_set_shift_decimalforfmiSetShiftDecimal.fmi3_import_set_shift_fractionforfmiSetShiftFraction.
Changes
- [BREAKING] Removed unused
instanceEnvironmentandlogMessageinputs fromfmi3_import_instantiate_*functions.- The corresponding CAPI calls use
instanceEnvironmentandlogMessagefromfmi3_import_create_dllfmu.
- The corresponding CAPI calls use
Bug fixes
- Fixed an issue where enum variables min/max attributes were incorrectly handled as
int32, instead ofint64.- [BREAKING] Changed return types of
fmi3_import_get_enum_variable_minandfmi3_import_get_enum_variable_maxfrominttofmi3_int64_t.
- [BREAKING] Changed return types of
- For FMI3, added a missing trailing file separator to
resourcePath. - For FMI3, removed
fileURI prefix forresourcePath.
Improvements
- Fixed crash when calling
fmi3_import_collect_model_countsand the model contained Binary or Clock variables.
3.0a4
3.0a4
Improvements
- Added include of
GNUInstallDirs.
Changes
- The CMAKE variable
CMAKE_INSTALL_PREFIXis now utilized instead ofFMILIB_INSTALL_PREFIX. - Removed the build configuration for CentOS.
- Fixed an issue with parsing very large valueReferences.
- Fixed an incorrect error check that required a start attribute for variables with causality='independent'.
3.0a3
3.0a3
General information:
This release is with respect to FMI 3.0. The vulnerability fixes in this release are currently not planned to be released from 2.4.x.
Improvements
- Improved error handling.
- Attribute buffers are now properly cleared if an element fails to parse.
- Disabled jm_locale_test if locale testing is disabled.
Changes
- Resolved reported vulnerability issues:
- Updated to expat 2.5.0 (from version 2.4.8).
- Updated to zlib 1.2.13 (from version 1.2.6).
- The following functions have been renamed:
fmi3_xml_get_default_experiment_steptofmi3_xml_get_default_experiment_step_sizefmi3_import_get_default_experiment_has_steptofmi3_import_get_default_experiment_has_step_size
HTML Documentation
3.0a2
3.0a2
Improvements
- Minor improvements to build system, documentation and clean-up of obsolete code for FMI 3.0. In general this release contains no significant new user-related improvements compared to 3.0a1.
- Resolved an issue with missing headers in the FMIL installation, see issue #66.
Changes
- Renamed several API methods for consistency between the different FMI versions. Primarily this concerns functions of names
fmi3_import_get_*for retrieving variable properties, these are now namedfmi3_import_get_variable_*, some examples are:fmi3_import_get_variabilityhas been changed tofmi3_import_get_variable_variability.fmi3_import_get_causalityhas been changed tofmi3_import_get_variable_causality.
- In a similar manner as above, variable related functions of names
fmi3_xml_get_*now are named according tofmi3_xml_get_variable_*.
3.0a1
3.0a1
Improvements
- Added initial support for FMI 3.0. Limitations:
- XML elements
Annotations,TerminalsAndIcons, andBuildConfigurationare not yet supported. - Many error checks are missing.
- XML elements
Changes
fmi_construct_dll_dir_nameandfmi_construct_dll_file_namehave been removed.fmi_import_get_dll_pathhas been removed. Instead usefmi<FMI_VERSION>_import_get_dll_path