From 6cd62cb17d3ce1ede404cdae60a26b7453db1600 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Stenstr=C3=B6m?= Date: Fri, 2 Jun 2023 16:22:02 +0200 Subject: [PATCH] Prepare for 3.0a1 (#59) --- FMILIB_Readme.txt | 22 +++++--- RELEASE_NOTES.md | 10 +++- dev/release_procedures/release_procedure.txt | 54 -------------------- 3 files changed, 25 insertions(+), 61 deletions(-) delete mode 100644 dev/release_procedures/release_procedure.txt diff --git a/FMILIB_Readme.txt b/FMILIB_Readme.txt index 2c9b112c..8b3c8318 100644 --- a/FMILIB_Readme.txt +++ b/FMILIB_Readme.txt @@ -8,11 +8,11 @@ \mainpage FMI Library -\version 2.4.1 -\date 15 September 2022 +\version 3.0a1 +\date 2 June 2023 \section Summary FMI library is intended as a foundation for applications interfacing FMUs -(Functional Mockup Units) that follow FMI Standard. This version of the library supports FMI 1.0 and FMI 2.0. +(Functional Mockup Units) that follow FMI Standard. This version of the library supports FMI 1.0, FMI 2.0 and FMI 3.0. See The test codes provided with the library can serve as starting point for the @@ -103,11 +103,21 @@ The following build configuration options are provided: Default: ON\n '\e fmilib_shared' may be used for dynamic linking. -- \b FMILIB_FMI_PLATFORM - FMI platform defines the subdirectory within FMU - where binary is located.\n - The build system will automatically detect win32, win64, linux32, linux64, +- \b FMILIB_FMI1_PLATFORM - Defines the subdirectory within FMU + where binary is located, for FMI1.\n + The build system will automatically detect: win32, win64, linux32, linux64, darwin32, darwin64. +- \b FMILIB_FMI2_PLATFORM - Defines the subdirectory within FMU + where binary is located, for FMI2.\n + The build system will automatically detect: win32, win64, linux32, linux64, + darwin32, darwin64. + +- \b FMILIB_FMI3_PLATFORM - Defines the subdirectory within FMU + where binary is located, for FMI3.\n + The build system will automatically detect: x86-windows, x86_64-windows, + x86-linux, x86_64-linux, x86-darwin, x86_64-darwin. + - \b FMILIB_BUILD_FOR_SHARED_LIBS The static library 'fmilib' can be linked into shared libraries.\n Default: ON\n diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 9d989a18..fcf25a12 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -6,10 +6,18 @@ Note that version 2.1 is the first version with release notes. Please see the co ## NEXT_RELEASE +## 3.0a1 + ### Improvements -- Added work-in-progress for FMI 3. Everything related to FMI 3 should be considered experimental. +- 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_import_get_dll_path`. ## 2.4.1 diff --git a/dev/release_procedures/release_procedure.txt b/dev/release_procedures/release_procedure.txt deleted file mode 100644 index c0034105..00000000 --- a/dev/release_procedures/release_procedure.txt +++ /dev/null @@ -1,54 +0,0 @@ -# FMI Library: release procedure - -This document describes how to release FMI Library - -# Terminology & Definitions - versioning: major.minor.patch - us_priv: private upstream (modelon/fmi-library) - us_public: public upstream (modelon-community/fmi-library) - -# Steps to follow - -- In the following steps, we assume that previous release was 2.0.2 - -1. If 'major' or 'minor' change, then create a new release branch first, - e.g. 3.0.x or 2.1.x -2. If patch version update, just increment patch number (e.g. 2.0.2 -> 2.0.3, - this is described in a later step) - -Create release on us_priv: - 1. create prepare_2.0.3 branch - 2. update version and date in FMILIB_Readme.txt - 3. update RELEASE_NOTES.md - 4. pull request/merge to us_priv/master - 5. merge us_priv/master to us_priv/2.0.x - 6. push to us_priv/2.0.x - 7. verify 2.0.x is green on Jenkins - 8. tag release - - do it on GitHub - - just paste the relase notes for section "Describe this release" - - attach documentation built from Jenkins (if not yet fixed in makefile, download the "html" dir as zip, then rename it: fmi_library_documentation_2.0.3.zip) - -Then synch on us_pub: - 1. push to us_priv/master -> us_pub/master (git checkout master && git pull us_priv master && git push us_public master:master) - 2. push to us_priv/2.0.x -> us_pub/2.0.x (git checkout 2.0.x && git pull us_priv 2.0.x && git push us_public 2.0.x:2.0.x) - 3. since we want to attach binaries (the documentation in zipped format), repeat the same steps on GitHub for creating the tag as for us_priv, but now for us_pub - 4. resolve issues on public FMI Library as necessary - -Publish on Yammer: - -1. modify the template below, and add more text if you feel like it: - -------- - -FMI Library is now released! - -You can find the source and the release notes on our public FMI Library GitHub page: - -NOTE: There are no binaries, this release includes only the source + generated documentation. - -------- - -2. paste the modified template at Yammer's FMI channel, and CC relevant people, such as AID+WEP+OCT team leaders -3. verify that links work in the Yammer post -