From e3dfbe9eb816befc48ad6cc695c8820a1269aa18 Mon Sep 17 00:00:00 2001 From: Julien Cretin Date: Thu, 27 Apr 2023 15:34:16 +0200 Subject: [PATCH] Add publish script (#131) --- crates/api-macro/CHANGELOG.md | 8 +++- crates/api-macro/Cargo.lock | 2 +- crates/api-macro/Cargo.toml | 4 +- crates/api/CHANGELOG.md | 8 +++- crates/api/Cargo.lock | 4 +- crates/api/Cargo.toml | 4 +- crates/prelude/CHANGELOG.md | 2 +- crates/prelude/Cargo.lock | 4 +- crates/prelude/Cargo.toml | 2 +- crates/runner-host/Cargo.lock | 4 +- crates/runner-nordic/Cargo.lock | 4 +- crates/scheduler/CHANGELOG.md | 2 +- crates/scheduler/Cargo.lock | 4 +- crates/scheduler/Cargo.toml | 2 +- examples/rust/blink/Cargo.lock | 4 +- examples/rust/blink_periodic/Cargo.lock | 4 +- examples/rust/button/Cargo.lock | 4 +- examples/rust/button_abort/Cargo.lock | 4 +- examples/rust/ccm/Cargo.lock | 4 +- examples/rust/ctap/Cargo.lock | 4 +- examples/rust/echo/Cargo.lock | 4 +- examples/rust/gcm_test/Cargo.lock | 4 +- examples/rust/hello/Cargo.lock | 4 +- examples/rust/hsm/Cargo.lock | 4 +- examples/rust/hsm/common/Cargo.lock | 4 +- examples/rust/led/Cargo.lock | 4 +- examples/rust/memory_game/Cargo.lock | 4 +- examples/rust/panic/Cargo.lock | 4 +- examples/rust/rand/Cargo.lock | 4 +- examples/rust/rng_test/Cargo.lock | 4 +- examples/rust/store/Cargo.lock | 4 +- examples/rust/test/Cargo.lock | 4 +- examples/rust/timer_test/Cargo.lock | 4 +- scripts/publish.sh | 57 +++++++++++++++++++++++++ 34 files changed, 126 insertions(+), 61 deletions(-) create mode 100755 scripts/publish.sh diff --git a/crates/api-macro/CHANGELOG.md b/crates/api-macro/CHANGELOG.md index 2a5be7b9..d7252c34 100644 --- a/crates/api-macro/CHANGELOG.md +++ b/crates/api-macro/CHANGELOG.md @@ -1,6 +1,10 @@ # Changelog -## 0.1.2-git +## 0.2.0-git + +### Major + +- Update `wasefire-applet-api-desc` version ### Patch @@ -10,7 +14,7 @@ ### Minor -- Update wasefire-applet-api-desc version +- Update `wasefire-applet-api-desc` version ## 0.1.0 diff --git a/crates/api-macro/Cargo.lock b/crates/api-macro/Cargo.lock index 6a0eabb6..af90234d 100644 --- a/crates/api-macro/Cargo.lock +++ b/crates/api-macro/Cargo.lock @@ -302,7 +302,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/crates/api-macro/Cargo.toml b/crates/api-macro/Cargo.toml index ce725ed7..e0cc3a33 100644 --- a/crates/api-macro/Cargo.toml +++ b/crates/api-macro/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" authors = ["Julien Cretin "] license = "Apache-2.0" publish = true @@ -16,7 +16,7 @@ proc-macro = true [dependencies] proc-macro2 = "1.0.56" -wasefire-applet-api-desc = { version = "0.1.2-git", path = "../api-desc" } +wasefire-applet-api-desc = { version = "=0.1.2-git", path = "../api-desc" } [features] multivalue = ["wasefire-applet-api-desc/multivalue"] diff --git a/crates/api/CHANGELOG.md b/crates/api/CHANGELOG.md index ffad39f1..cd73aac8 100644 --- a/crates/api/CHANGELOG.md +++ b/crates/api/CHANGELOG.md @@ -1,6 +1,10 @@ # Changelog -## 0.1.3-git +## 0.2.0-git + +### Major + +- Update `wasefire-applet-api-macro` version ### Patch @@ -11,7 +15,7 @@ ### Minor -- Update wasefire-applet-api-macro version +- Update `wasefire-applet-api-macro` version - Add test feature panicking on applet API calls ## 0.1.1 diff --git a/crates/api/Cargo.lock b/crates/api/Cargo.lock index 54cfd023..ce0ca044 100644 --- a/crates/api/Cargo.lock +++ b/crates/api/Cargo.lock @@ -317,7 +317,7 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "sealed", "wasefire-applet-api-macro", @@ -337,7 +337,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/crates/api/Cargo.toml b/crates/api/Cargo.toml index efba541c..57ba9f95 100644 --- a/crates/api/Cargo.toml +++ b/crates/api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" authors = ["Julien Cretin "] license = "Apache-2.0" publish = true @@ -13,7 +13,7 @@ categories = ["embedded", "no-std", "wasm"] [dependencies] sealed = { version = "0.4.0", optional = true } -wasefire-applet-api-macro = { version = "0.1.2-git", path = "../api-macro" } +wasefire-applet-api-macro = { version = "0.2.0-git", path = "../api-macro" } [features] # Compiles for host or wasm (choose exactly one). diff --git a/crates/prelude/CHANGELOG.md b/crates/prelude/CHANGELOG.md index 2b4eca53..05fa3ada 100644 --- a/crates/prelude/CHANGELOG.md +++ b/crates/prelude/CHANGELOG.md @@ -31,4 +31,4 @@ ## 0.1.0 - + diff --git a/crates/prelude/Cargo.lock b/crates/prelude/Cargo.lock index 6740cd47..77afd13f 100644 --- a/crates/prelude/Cargo.lock +++ b/crates/prelude/Cargo.lock @@ -348,7 +348,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -367,7 +367,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/crates/prelude/Cargo.toml b/crates/prelude/Cargo.toml index 9c0ad88e..c5479399 100644 --- a/crates/prelude/Cargo.toml +++ b/crates/prelude/Cargo.toml @@ -14,7 +14,7 @@ categories = ["embedded", "no-std", "wasm"] [dependencies] const-default = "1.0.0" rlsf = "0.2.1" -wasefire-applet-api = { version = "0.1.3-git", path = "../api", features = ["wasm"] } +wasefire-applet-api = { version = "0.2.0-git", path = "../api", features = ["wasm"] } [features] multivalue = ["wasefire-applet-api/multivalue"] diff --git a/crates/runner-host/Cargo.lock b/crates/runner-host/Cargo.lock index 108a54e3..11896c68 100644 --- a/crates/runner-host/Cargo.lock +++ b/crates/runner-host/Cargo.lock @@ -871,7 +871,7 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "sealed", "wasefire-applet-api-macro", @@ -891,7 +891,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/crates/runner-nordic/Cargo.lock b/crates/runner-nordic/Cargo.lock index be3ad3d8..350062b3 100644 --- a/crates/runner-nordic/Cargo.lock +++ b/crates/runner-nordic/Cargo.lock @@ -777,7 +777,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "sealed", "wasefire-applet-api-macro", @@ -797,7 +797,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/crates/scheduler/CHANGELOG.md b/crates/scheduler/CHANGELOG.md index e6cfc9b3..a7fdae8b 100644 --- a/crates/scheduler/CHANGELOG.md +++ b/crates/scheduler/CHANGELOG.md @@ -23,4 +23,4 @@ ## 0.1.0 - + diff --git a/crates/scheduler/Cargo.lock b/crates/scheduler/Cargo.lock index 123a1c6d..8f812790 100644 --- a/crates/scheduler/Cargo.lock +++ b/crates/scheduler/Cargo.lock @@ -500,7 +500,7 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "sealed", "wasefire-applet-api-macro", @@ -520,7 +520,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/crates/scheduler/Cargo.toml b/crates/scheduler/Cargo.toml index c1008d89..3a81ee7f 100644 --- a/crates/scheduler/Cargo.toml +++ b/crates/scheduler/Cargo.toml @@ -13,7 +13,7 @@ categories = ["embedded", "no-std", "wasm"] [dependencies] defmt = { version = "0.3.4", optional = true } -wasefire-applet-api = { version = "0.1.3-git", path = "../api", features = ["host"] } +wasefire-applet-api = { version = "0.2.0-git", path = "../api", features = ["host"] } wasefire-board-api = { version = "0.2.0-git", path = "../board" } wasefire-logger = { version = "0.1.2-git", path = "../logger" } wasefire-store = { version = "0.2.0-git", path = "../store" } diff --git a/examples/rust/blink/Cargo.lock b/examples/rust/blink/Cargo.lock index 2997bff0..1bd4c783 100644 --- a/examples/rust/blink/Cargo.lock +++ b/examples/rust/blink/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/blink_periodic/Cargo.lock b/examples/rust/blink_periodic/Cargo.lock index e3a7f4c2..eaaf929a 100644 --- a/examples/rust/blink_periodic/Cargo.lock +++ b/examples/rust/blink_periodic/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/button/Cargo.lock b/examples/rust/button/Cargo.lock index 0d6b9754..e1701ace 100644 --- a/examples/rust/button/Cargo.lock +++ b/examples/rust/button/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/button_abort/Cargo.lock b/examples/rust/button_abort/Cargo.lock index 8297ef64..0b02db0c 100644 --- a/examples/rust/button_abort/Cargo.lock +++ b/examples/rust/button_abort/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/ccm/Cargo.lock b/examples/rust/ccm/Cargo.lock index c973a0b8..dc04667f 100644 --- a/examples/rust/ccm/Cargo.lock +++ b/examples/rust/ccm/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/ctap/Cargo.lock b/examples/rust/ctap/Cargo.lock index 91c5501b..11f1df6f 100644 --- a/examples/rust/ctap/Cargo.lock +++ b/examples/rust/ctap/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/echo/Cargo.lock b/examples/rust/echo/Cargo.lock index 9f364b78..b19a4a5f 100644 --- a/examples/rust/echo/Cargo.lock +++ b/examples/rust/echo/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/gcm_test/Cargo.lock b/examples/rust/gcm_test/Cargo.lock index f78e7d3e..8b83bae8 100644 --- a/examples/rust/gcm_test/Cargo.lock +++ b/examples/rust/gcm_test/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/hello/Cargo.lock b/examples/rust/hello/Cargo.lock index a97af275..06482955 100644 --- a/examples/rust/hello/Cargo.lock +++ b/examples/rust/hello/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/hsm/Cargo.lock b/examples/rust/hsm/Cargo.lock index 48c57204..6d6453c8 100644 --- a/examples/rust/hsm/Cargo.lock +++ b/examples/rust/hsm/Cargo.lock @@ -369,7 +369,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -388,7 +388,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/hsm/common/Cargo.lock b/examples/rust/hsm/common/Cargo.lock index 78cae6b0..faf045b2 100644 --- a/examples/rust/hsm/common/Cargo.lock +++ b/examples/rust/hsm/common/Cargo.lock @@ -376,7 +376,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -395,7 +395,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/led/Cargo.lock b/examples/rust/led/Cargo.lock index 5caeebf7..e0e34cf4 100644 --- a/examples/rust/led/Cargo.lock +++ b/examples/rust/led/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/memory_game/Cargo.lock b/examples/rust/memory_game/Cargo.lock index 159e44f8..46842fb7 100644 --- a/examples/rust/memory_game/Cargo.lock +++ b/examples/rust/memory_game/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/panic/Cargo.lock b/examples/rust/panic/Cargo.lock index b13706c7..871383ad 100644 --- a/examples/rust/panic/Cargo.lock +++ b/examples/rust/panic/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/rand/Cargo.lock b/examples/rust/rand/Cargo.lock index cd391ffe..708d2a72 100644 --- a/examples/rust/rand/Cargo.lock +++ b/examples/rust/rand/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/rng_test/Cargo.lock b/examples/rust/rng_test/Cargo.lock index 586133eb..1351f664 100644 --- a/examples/rust/rng_test/Cargo.lock +++ b/examples/rust/rng_test/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/store/Cargo.lock b/examples/rust/store/Cargo.lock index e8e8e614..1c8a9224 100644 --- a/examples/rust/store/Cargo.lock +++ b/examples/rust/store/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/test/Cargo.lock b/examples/rust/test/Cargo.lock index 35df525a..ba3af8bc 100644 --- a/examples/rust/test/Cargo.lock +++ b/examples/rust/test/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/examples/rust/timer_test/Cargo.lock b/examples/rust/timer_test/Cargo.lock index 0ab4eb17..e481f9d5 100644 --- a/examples/rust/timer_test/Cargo.lock +++ b/examples/rust/timer_test/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api" -version = "0.1.3-git" +version = "0.2.0-git" dependencies = [ "wasefire-applet-api-macro", ] @@ -374,7 +374,7 @@ dependencies = [ [[package]] name = "wasefire-applet-api-macro" -version = "0.1.2-git" +version = "0.2.0-git" dependencies = [ "proc-macro2", "wasefire-applet-api-desc", diff --git a/scripts/publish.sh b/scripts/publish.sh new file mode 100755 index 00000000..c4644672 --- /dev/null +++ b/scripts/publish.sh @@ -0,0 +1,57 @@ +#!/bin/sh +# Copyright 2023 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -e +. scripts/log.sh + +# This script publishes all crates. + +[ -z "$(git status -s)" ] || e "Repository is not clean" + +TOPOLOGICAL_ORDER=( + logger + cli + interpreter + store + api-desc + api-macro + api + prelude + board + scheduler +) + +listed_crates() { + echo "${TOPOLOGICAL_ORDER[@]}" | sed 's/ /\n/g' | sort +} + +published_crates() { + find crates -name CHANGELOG.md -printf '%h\n' | sed 's#^crates/##' | sort +} + +diff <(listed_crates) <(published_crates) \ + || e 'Listed and published crates do not match (see diff above)' + +i "Remove all -git suffixes and commit" +find . \( -name Cargo.toml -or -name Cargo.lock -or -name CHANGELOG.md \) \ + -exec sed -i 's/-git//' {} \; +git commit -aqm'Release all crates' + +for crate in "${TOPOLOGICAL_ORDER[@]}"; do + i "Publish $crate" + ( cd crates/$crate + eval "$(sed -n 's/^cargo check/cargo publish/p;T;q' test.sh)" + ) +done