From 2ef08f43363f82674c5c4483817b5e79bd8ea12d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dietrich=20Kr=C3=B6nke?= Date: Thu, 17 Jun 2021 14:39:27 +0200 Subject: [PATCH] iox-#828 Add section for API changes to Changelog Documenting API breaking changes in the Changelog and give a hint in the PR template. Set the version number to 1.90.0 for the upcoming pre-releases of iceoryx 2.0 --- .github/PULL_REQUEST_TEMPLATE.md | 2 +- CHANGELOG.md | 56 ++++++++++++++++++++++++++++- VERSION | 2 +- cmake/package/package.cmake | 2 +- doc/aspice_swe3_4/CMakeLists.txt | 2 +- iceoryx_binding_c/CMakeLists.txt | 2 +- iceoryx_binding_c/package.xml | 2 +- iceoryx_dds/CMakeLists.txt | 2 +- iceoryx_hoofs/CMakeLists.txt | 2 +- iceoryx_hoofs/package.xml | 2 +- iceoryx_integrationtest/package.xml | 2 +- iceoryx_posh/CMakeLists.txt | 2 +- iceoryx_posh/package.xml | 2 +- tools/introspection/CMakeLists.txt | 2 +- 14 files changed, 68 insertions(+), 14 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 089f52b4808..d4e1cf92fb1 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -2,7 +2,7 @@ 1. [ ] Code follows the coding style of [CONTRIBUTING.md][contributing] 1. [ ] Tests follow the [best practice for testing][testing] -1. [ ] Changelog updated [in the unreleased section][changelog] +1. [ ] Changelog updated [in the unreleased section][changelog] including API breaking changes 1. [ ] Branch follows the naming format (`iox-#123-this-is-a-branch`) 1. [ ] Commits messages are according to this [guideline][commit-guidelines] - [ ] Commit messages have the issue ID (`iox-#123 commit text`) diff --git a/CHANGELOG.md b/CHANGELOG.md index a651c3b1ad4..e71c6a153d4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ [Full Changelog](https://github.com/eclipse-iceoryx/iceoryx/compare/v1.0.1...master) **Features:** + - Enhance posixCall[\#805](https://github.com/eclipse-iceoryx/iceoryx/issues/805) - New chunk available callback for the new C++[\#391](https://github.com/eclipse-iceoryx/iceoryx/issues/391) - Git Hooks on iceoryx[\#486](https://github.com/eclipse-iceoryx/iceoryx/issues/486) @@ -13,11 +14,13 @@ - Axivion analysis on CI[\#409](https://github.com/eclipse-iceoryx/iceoryx/issues/409) **Bugfixes:** + - Fix warnings for gcc-11.1[\#838](https://github.com/eclipse-iceoryx/iceoryx/issues/838) - Incremental builds with the build script are broken[\#821](https://github.com/eclipse-iceoryx/iceoryx/issues/821) - Compile failed because of missing for GCC 11[\#811](https://github.com/eclipse-iceoryx/iceoryx/issues/811) thanks to @homalozoa **Refactoring:** + - Move all tests into an anonymous namespace[\#563](https://github.com/eclipse-iceoryx/iceoryx/issues/563) - Refactor smart_c to use contract by design and expected[\#418](https://github.com/eclipse-iceoryx/iceoryx/issues/418) - PoshRuntime Mock[\#449](https://github.com/eclipse-iceoryx/iceoryx/issues/449) @@ -27,11 +30,62 @@ - Refine quality levels[\#425](https://github.com/eclipse-iceoryx/iceoryx/issues/425) - Clean-up std::terminate usage[\#261](https://github.com/eclipse-iceoryx/iceoryx/issues/261) +**API Breaking Changes:** + +Rename utils to hoofs: + +- in CMake you need now to find and link the package `iceoryx_hoofs` instead of `iceoryx_utils` + +```cmake +# before +find_package(iceoryx_utils REQUIRED) +target_link_libraries(${target} + iceoryx_utils::iceoryx_utils) + +# after +find_package(iceoryx_hoofs REQUIRED) +target_link_libraries(${target} + iceoryx_hoofs::iceoryx_hoofs) +``` + +- the include paths for `iceoryx_utils` are now `iceoryx_hoofs` + +```cpp +// before +#include "iceoryx_utils/cxx/string.hpp" + +// after +#include "iceoryx_hoofs/cxx/string.hpp" +``` + +Enhance posixCall to handle a common case were errnos are ignored just to suppress error logging: + +```cpp +// before +iox::posix::posixCall(unlink)(sockAddrPublisher.sun_path) + .failureReturnValue(ERROR_CODE) + .evaluateWithIgnoredErrnos(ENOENT) + .or_else([](auto& r) { + std::cout << "unlink error " << r.getHumanReadableErrnum() << std::endl; + exit(1); + }); + +// after +iox::posix::posixCall(unlink)(sockAddrPublisher.sun_path) + .failureReturnValue(ERROR_CODE) + .ignoreErrnos(ENOENT) // can be a comma-separated list of errnos + .evaluate() + .or_else([](auto& r) { + std::cout << "unlink error " << r.getHumanReadableErrnum() << std::endl; + exit(1); + }); +``` + ## [v1.0.1](https://github.com/eclipse-iceoryx/iceoryx/tree/v1.0.0) (2021-06-15) [Full Changelog](https://github.com/eclipse-iceoryx/iceoryx/compare/v1.0.0...v1.0.1) -Description: +**Description:** This is the first bugfix release for Eclipse iceoryx 1.0.0. We made minor changes in the documentation and added several patches. Compared to the feature content of the release 1.0.0, the following bug tickets where resolved: diff --git a/VERSION b/VERSION index 227cea21564..82e24bf241e 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.0.0 +1.90.0 diff --git a/cmake/package/package.cmake b/cmake/package/package.cmake index d1173baad54..f7354a98474 100644 --- a/cmake/package/package.cmake +++ b/cmake/package/package.cmake @@ -14,7 +14,7 @@ # # SPDX-License-Identifier: Apache-2.0 cmake_minimum_required(VERSION 3.5) -set(IOX_VERSION_STRING "2.0.0") +set(IOX_VERSION_STRING "1.90.0") project(iceoryx_package VERSION ${IOX_VERSION_STRING}) diff --git a/doc/aspice_swe3_4/CMakeLists.txt b/doc/aspice_swe3_4/CMakeLists.txt index 9b2e2c710d0..93fc7b1c9bf 100644 --- a/doc/aspice_swe3_4/CMakeLists.txt +++ b/doc/aspice_swe3_4/CMakeLists.txt @@ -16,7 +16,7 @@ cmake_minimum_required(VERSION 3.10) -set(IOX_VERSION_STRING "2.0.0") +set(IOX_VERSION_STRING "1.90.0") #find_package(iceoryx_hoofs REQUIRED) diff --git a/iceoryx_binding_c/CMakeLists.txt b/iceoryx_binding_c/CMakeLists.txt index cea767b9f84..f610cc4a4bb 100644 --- a/iceoryx_binding_c/CMakeLists.txt +++ b/iceoryx_binding_c/CMakeLists.txt @@ -16,7 +16,7 @@ # SPDX-License-Identifier: Apache-2.0 cmake_minimum_required(VERSION 3.7) -set(IOX_VERSION_STRING "2.0.0") +set(IOX_VERSION_STRING "1.90.0") diff --git a/iceoryx_binding_c/package.xml b/iceoryx_binding_c/package.xml index 616dd069a9c..f431b40ae39 100644 --- a/iceoryx_binding_c/package.xml +++ b/iceoryx_binding_c/package.xml @@ -2,7 +2,7 @@ iceoryx_binding_c - 2.0.0 + 1.90.0 Eclipse iceoryx inter-process-communication (IPC) middleware C-Language Binding Eclipse Foundation, Inc. Apache 2.0 diff --git a/iceoryx_dds/CMakeLists.txt b/iceoryx_dds/CMakeLists.txt index 3cb99058400..90d1a949dcf 100644 --- a/iceoryx_dds/CMakeLists.txt +++ b/iceoryx_dds/CMakeLists.txt @@ -16,7 +16,7 @@ # SPDX-License-Identifier: Apache-2.0 cmake_minimum_required(VERSION 3.7) -set(IOX_VERSION_STRING "2.0.0") +set(IOX_VERSION_STRING "1.90.0") project(iceoryx_dds VERSION ${IOX_VERSION_STRING}) diff --git a/iceoryx_hoofs/CMakeLists.txt b/iceoryx_hoofs/CMakeLists.txt index 415dc0044fd..9cd22a60104 100644 --- a/iceoryx_hoofs/CMakeLists.txt +++ b/iceoryx_hoofs/CMakeLists.txt @@ -17,7 +17,7 @@ cmake_minimum_required(VERSION 3.5) -set(IOX_VERSION_STRING "2.0.0") +set(IOX_VERSION_STRING "1.90.0") #include("${CMAKE_CURRENT_LIST_DIR}/cmake/IceoryxVersion.cmake") diff --git a/iceoryx_hoofs/package.xml b/iceoryx_hoofs/package.xml index 6a371fca3b3..5d980d2c290 100644 --- a/iceoryx_hoofs/package.xml +++ b/iceoryx_hoofs/package.xml @@ -2,7 +2,7 @@ iceoryx_hoofs - 2.0.0 + 1.90.0 Eclipse iceoryx inter-process-communication (IPC) middleware basic building blocks Eclipse Foundation, Inc. Apache 2.0 diff --git a/iceoryx_integrationtest/package.xml b/iceoryx_integrationtest/package.xml index 314b482503a..75362f81c1f 100644 --- a/iceoryx_integrationtest/package.xml +++ b/iceoryx_integrationtest/package.xml @@ -2,7 +2,7 @@ iceoryx_integrationtest - 2.0.0 + 1.90.0 iceoryx Software Integrationtest Eclipse Foundation, Inc. Apache 2.0 diff --git a/iceoryx_posh/CMakeLists.txt b/iceoryx_posh/CMakeLists.txt index b51473d1d70..2d4218f9a4d 100644 --- a/iceoryx_posh/CMakeLists.txt +++ b/iceoryx_posh/CMakeLists.txt @@ -16,7 +16,7 @@ # SPDX-License-Identifier: Apache-2.0 cmake_minimum_required(VERSION 3.5) -set(IOX_VERSION_STRING "2.0.0") +set(IOX_VERSION_STRING "1.90.0") project(iceoryx_posh VERSION ${IOX_VERSION_STRING}) diff --git a/iceoryx_posh/package.xml b/iceoryx_posh/package.xml index d06c1fb53d0..8a614a6e0af 100644 --- a/iceoryx_posh/package.xml +++ b/iceoryx_posh/package.xml @@ -2,7 +2,7 @@ iceoryx_posh - 2.0.0 + 1.90.0 Eclipse iceoryx inter-process-communication (IPC) middleware Posix Shared Memory Library and middleware daemon (RouDi) Eclipse Foundation, Inc. Apache 2.0 diff --git a/tools/introspection/CMakeLists.txt b/tools/introspection/CMakeLists.txt index c2480f6df33..620fa0bca9c 100644 --- a/tools/introspection/CMakeLists.txt +++ b/tools/introspection/CMakeLists.txt @@ -17,7 +17,7 @@ cmake_minimum_required(VERSION 3.5) -set(IOX_VERSION_STRING "2.0.0") +set(IOX_VERSION_STRING "1.90.0") project(iceoryx_introspection VERSION ${IOX_VERSION_STRING})