Skip to content

Releases: modelon-community/fmi-library

3.0.4

25 Jun 14:59

Choose a tag to compare

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_snprintf third-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.
  • fmi3_import_get_variable_description and fmi3_import_get_alias_variable_description now correctly return empty strings
    for missing descriptions, as stated in the documentation.
  • Added functions fmi3_import_get_variable_has_description and fmi3_import_get_alias_variable_has_description to 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

07 May 12:08

Choose a tag to compare

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

29 Apr 18:37

Choose a tag to compare

3.0.2

  • Restored minizip_printf afer 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

28 Apr 14:12

Choose a tag to compare

3.0.1

  • Resolved reported vulnerability issues:
    • Updated to expat 2.6.4 (from version 2.5.0).
    • Updated to zlib 1.3.1 (from version 1.2.13).
    • Updated to minizip 1.3.1 (from version 1.1).

Full Changelog: 3.0...3.0.1

3.0

22 Apr 16:58

Choose a tag to compare

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_ft definition, was missing fmi3_instance_environment_t.
  • Changed the return of the following functions from fmi3_float32_t to fmi3_float64_t in accordance to bugfix in FMI specification v3.0.2:
    • fmi3_import_get_clock_variable_interval_decimal
    • fmi3_import_get_clock_variable_shift_decimal
    • fmi3_import_get_clock_type_interval_decimal
    • fmi3_import_get_clock_type_shift_decimal

Full Changelog: 3.0a5...3.0

3.0a5

24 Feb 17:36
b6b0a6e

Choose a tag to compare

3.0a5 Pre-release
Pre-release

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_decimal for fmi3GetShiftDecimal.
    • fmi3_import_get_shift_fraction for fmi3GetShiftFraction.
    • fmi3_import_set_shift_decimal for fmiSetShiftDecimal.
    • fmi3_import_set_shift_fraction for fmiSetShiftFraction.

Changes

  • [BREAKING] Removed unused instanceEnvironment and logMessage inputs from fmi3_import_instantiate_* functions.
    • The corresponding CAPI calls use instanceEnvironment and logMessage from fmi3_import_create_dllfmu.

Bug fixes

  • Fixed an issue where enum variables min/max attributes were incorrectly handled as int32, instead of int64.
    • [BREAKING] Changed return types of fmi3_import_get_enum_variable_min and fmi3_import_get_enum_variable_max from int to fmi3_int64_t.
  • For FMI3, added a missing trailing file separator to resourcePath.
  • For FMI3, removed file URI prefix for resourcePath.

Improvements

  • Fixed crash when calling fmi3_import_collect_model_counts and the model contained Binary or Clock variables.

3.0a4

17 Jul 12:59

Choose a tag to compare

3.0a4 Pre-release
Pre-release

3.0a4

Improvements

  • Added include of GNUInstallDirs.

Changes

  • The CMAKE variable CMAKE_INSTALL_PREFIX is now utilized instead of FMILIB_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

06 Dec 18:17

Choose a tag to compare

3.0a3 Pre-release
Pre-release

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_step to fmi3_xml_get_default_experiment_step_size
    • fmi3_import_get_default_experiment_has_step to fmi3_import_get_default_experiment_has_step_size

HTML Documentation

fmi_library_documentation_3.0a3.zip

3.0a2

14 Jul 15:31

Choose a tag to compare

3.0a2 Pre-release
Pre-release

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 named fmi3_import_get_variable_*, some examples are:
    • fmi3_import_get_variability has been changed to fmi3_import_get_variable_variability.
    • fmi3_import_get_causality has been changed to fmi3_import_get_variable_causality.
  • In a similar manner as above, variable related functions of names fmi3_xml_get_* now are named according to fmi3_xml_get_variable_*.

3.0a1

02 Jun 14:42
6cd62cb

Choose a tag to compare

3.0a1 Pre-release
Pre-release

3.0a1

Improvements

  • Added initial support for FMI 3.0. Limitations:
    • XML elements Annotations, TerminalsAndIcons, and BuildConfiguration are not yet supported.
    • Many error checks are missing.

Changes

  • fmi_construct_dll_dir_name and fmi_construct_dll_file_name have been removed.
  • fmi_import_get_dll_path has been removed. Instead use fmi<FMI_VERSION>_import_get_dll_path