From cccaa6ca6c3d3ec4d9a3cbf515f1c1579438d633 Mon Sep 17 00:00:00 2001 From: Andrey Tolstoy Date: Tue, 30 Aug 2022 00:19:13 +0700 Subject: [PATCH] bump module version to 4.0.0 (4003) --- CHANGELOG.md | 57 +++++++++++++++++++++++++ build/release.sh | 2 +- build/version.mk | 4 +- modules/shared/system_module_version.mk | 2 +- system/inc/system_version.h | 6 ++- system/system-versions.md | 1 + 6 files changed, 67 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dd79939f3b..10f11f59a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,60 @@ +## 4.0.0 + +### DEPRECATION + +- [deprecation][gen2] supply secure [#2442](https://github.com/particle-iot/device-os/pull/2442) +- [deprecation] Adds warning to some deprecated API's that will be removed in Device OS 5.x [#2445](https://github.com/particle-iot/device-os/pull/2445) +- [deprecation] PRODUCT_ID macro [#2446](https://github.com/particle-iot/device-os/pull/2446) +- [deprecation] remove setup_done flag and add deprecation notice [#2447](https://github.com/particle-iot/device-os/pull/2447) + +### FEATURES + +- [ota] new API System.updateStatus() [#2344](https://github.com/particle-iot/device-os/pull/2344) +- [esomx] Adds support for new platform esomx [#2443](https://github.com/particle-iot/device-os/pull/2443) [#2459](https://github.com/particle-iot/device-os/pull/2459) [#2505](https://github.com/particle-iot/device-os/pull/2505) [#2495](https://github.com/particle-iot/device-os/pull/2495) +- [gen3] Determine flash part at runtime [#2456](https://github.com/particle-iot/device-os/pull/2456) +- [gen3][quectel] Adds support for BG95-M1, BG95-MF, BG77, and EG91-NAX [#2458](https://github.com/particle-iot/device-os/pull/2458) +- `System.hardwareInfo()` API [#2526](https://github.com/particle-iot/device-os/pull/2526) [#2529](https://github.com/particle-iot/device-os/pull/2529) + +### ENHANCEMENTS + +- [gen3] wifi: add dhcp dns info to wifi config [#2440](https://github.com/particle-iot/device-os/pull/2440) +- [ota] Additional state for firmware update checks [#2344](https://github.com/particle-iot/device-os/pull/2344) +- Use a custom content type with CID packets when resuming the session [#2441](https://github.com/particle-iot/device-os/pull/2441) + +### BUGFIXES + +- [gen3] fixes hardfault during low level USB peripheral initialization under an atomic section [#2448](https://github.com/particle-iot/device-os/pull/2448) +- [gen3] Device unable to enter listening mode with button press [#2451](https://github.com/particle-iot/device-os/pull/2451) +- Return relevant error from control request to enter listening mode [#2419](https://github.com/particle-iot/device-os/pull/2419) +- [gen3] hal: fix power leak on Boron [#2452](https://github.com/particle-iot/device-os/pull/2452) +- [gen3] port newlib stdin/stdout/stderr memory leak workaround [#2467](https://github.com/particle-iot/device-os/pull/2467) +- [gen3] fixes `interrupts()` API: should not clear pending interrupts [#2504](https://github.com/particle-iot/device-os/pull/2504) +- Ensure that RTOS context switch is performed in tight `delay(1)` loops [#2519](https://github.com/particle-iot/device-os/pull/2519) [#2520](https://github.com/particle-iot/device-os/pull/2520) [#2524](https://github.com/particle-iot/device-os/pull/2524) + +### INTERNAL + +- [ci] minor update sc-101315/device-os-manifest [#2449](https://github.com/particle-iot/device-os/pull/2449) +- [ci] chore/ci-less-frequent-cross-platform-build-checks [#2434](https://github.com/particle-iot/device-os/pull/2434) +- [docs] Update dependencies for ARM GCC 10.2.1 [#2431](https://github.com/particle-iot/device-os/pull/2431) +- [gen3] suppress certain reviewed GCC warnings [sc-100940] [#2420](https://github.com/particle-iot/device-os/pull/2420) +- [ci] feature/sc-100324/ci-build-cross-platform [#2418](https://github.com/particle-iot/device-os/pull/2418) +- [test] Wi-Fi resolve test improvements [#2454](https://github.com/particle-iot/device-os/pull/2454) +- [workbench] update-device-os-workbench-manifest-json [#2457](https://github.com/particle-iot/device-os/pull/2457) +- [ci] test-build-system-tune-timeouts [#2455](https://github.com/particle-iot/device-os/pull/2455) +- Allow overriding the platform ID on the GCC platform [#2462](https://github.com/particle-iot/device-os/pull/2462) +- Enable OTA updates on the GCC platform [#2464](https://github.com/particle-iot/device-os/pull/2464) +- Fix GCC platform on some versions of GCC; Fix building of wiring/api tests on CI [#2483](https://github.com/particle-iot/device-os/pull/2483) +- [workbench] Update workbench buildscripts to 1.11.0 [#2465](https://github.com/particle-iot/device-os/pull/2465) +- [workbench] Stop ignoring device os scripts directory [#2471](https://github.com/particle-iot/device-os/pull/2471) +- [workbench] Remove redundant toolchain overrides [#2489](https://github.com/particle-iot/device-os/pull/2489) +- [wifi] Add stubs to allow setting common country code and channel plan in P2 [#2473](https://github.com/particle-iot/device-os/pull/2473) [#2485](https://github.com/particle-iot/device-os/pull/2485) +- [tests] Change PWM pins to better match e-series pinout for E SoM X. Fix other tests [#2463](https://github.com/particle-iot/device-os/pull/2463) +- [tests] Misc changes to tests from 5.x [#2466](https://github.com/particle-iot/device-os/pull/2466) +- [tests][esomx] disable RGB pwm channel(s) when running pwm tests [#2494](https://github.com/particle-iot/device-os/pull/2494) +- Streamline `.bundleignore` between 5.x and 4.x codebases [#2496](https://github.com/particle-iot/device-os/pull/2496) +- branch pattern changes for `test-build-system` [#2510](https://github.com/particle-iot/device-os/pull/2510) +- [test] fixes race condition with `wiring/no_fixture` `TIME_17` [#2514](https://github.com/particle-iot/device-os/pull/2514) + ## 4.0.0-beta.1 > ## :warning: Please note this is an internal release, do not use on production devices! diff --git a/build/release.sh b/build/release.sh index 53470e3c0f..0ab694beca 100755 --- a/build/release.sh +++ b/build/release.sh @@ -1,7 +1,7 @@ #!/bin/bash set -o errexit -o pipefail -o noclobber -o nounset -VERSION=${VERSION:="4.0.0-beta.1"} +VERSION=${VERSION:="4.0.0"} function display_help () { diff --git a/build/version.mk b/build/version.mk index 62e6c78bfc..ee7627c7fc 100755 --- a/build/version.mk +++ b/build/version.mk @@ -1,7 +1,7 @@ -VERSION_STRING = 4.0.0-beta.1 +VERSION_STRING = 4.0.0 # PRODUCT_FIRMWARE_VERSION reported by default # FIXME: Unclear if this is used, PRODUCT_FIRMWARE_VERSION defaults to 65535 every release -VERSION = 4002 +VERSION = 4003 CFLAGS += -DSYSTEM_VERSION_STRING=$(VERSION_STRING) diff --git a/modules/shared/system_module_version.mk b/modules/shared/system_module_version.mk index b7c93a8f82..a13bf37f97 100644 --- a/modules/shared/system_module_version.mk +++ b/modules/shared/system_module_version.mk @@ -1,6 +1,6 @@ # Skip to next 100 every vx.N.x release (e.g. 11 for v0.6.2 to 100 for v0.7.0-rc.1), # Bump by 1 for every prerelease or release with the same vx.N.* base. -COMMON_MODULE_VERSION ?= 4002 +COMMON_MODULE_VERSION ?= 4003 SYSTEM_PART1_MODULE_VERSION ?= $(COMMON_MODULE_VERSION) RELEASE_080_MODULE_VERSION_BASE ?= 300 diff --git a/system/inc/system_version.h b/system/inc/system_version.h index 20ec6dd8e9..0e0b21958c 100644 --- a/system/inc/system_version.h +++ b/system/inc/system_version.h @@ -191,10 +191,13 @@ extern "C" { #define SYSTEM_VERSION_v400ALPHA1 SYSTEM_VERSION_ALPHA(4, 0, 0, 1) #define SYSTEM_VERSION_v400ALPHA2 SYSTEM_VERSION_ALPHA(4, 0, 0, 2) #define SYSTEM_VERSION_v400BETA1 SYSTEM_VERSION_BETA(4, 0, 0, 1) +#define SYSTEM_VERSION_v400 SYSTEM_VERSION_DEFAULT(4, 0, 0) +#define SYSTEM_VERSION SYSTEM_VERSION_v400 + +// These are required for some of the dynalib checks #define SYSTEM_VERSION_v500ALPHA1 SYSTEM_VERSION_ALPHA(5, 0, 0, 1) #define SYSTEM_VERSION_v500ALPHA2 SYSTEM_VERSION_ALPHA(5, 0, 0, 2) #define SYSTEM_VERSION_v500 SYSTEM_VERSION_DEFAULT(5, 0, 0) -#define SYSTEM_VERSION SYSTEM_VERSION_v400BETA1 /** * Previously we would set the least significant byte to 0 for the final release, but to make @@ -350,6 +353,7 @@ extern "C" { #define SYSTEM_VERSION_400ALPHA1 #define SYSTEM_VERSION_400ALPHA2 #define SYSTEM_VERSION_400BETA1 +#define SYSTEM_VERSION_400 typedef struct __attribute__((packed)) SystemVersionInfo { diff --git a/system/system-versions.md b/system/system-versions.md index ee88ec7df2..40d8825cd2 100644 --- a/system/system-versions.md +++ b/system/system-versions.md @@ -157,6 +157,7 @@ | 1100 | 4000 | 4.0.0-alpha.1 | Argon, Boron, B SoM, B5 SoM, Tracker | | 1101 | 4001 | 4.0.0-alpha.2 | Argon, Boron, B SoM, B5 SoM, Tracker, E Som X | | 1101 | 4002 | 4.0.0-beta.1 | Argon, Boron, B SoM, B5 SoM, Tracker, E Som X | +| 1101 | 4003 | 4.0.0 | Argon, Boron, B SoM, B5 SoM, Tracker, E Som X | [1] For 0.8.0-rc.1, The v101 bootloader was also released in the Github releases as v200. Thus the next released bootloader in the 0.8.x line should be v201. As of 4/5/2018: 22 device had v200 bootloaders.