Skip to content

Commit c67571e

Browse files
committed
Add cargo publish script
1 parent ff16df1 commit c67571e

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

.cargo/publish.sh

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
#!/usr/bin/env bash
2+
3+
# Copyright 2017 The UNIC Project Developers.
4+
#
5+
# See the COPYRIGHT file at the top-level directory of this distribution.
6+
#
7+
# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
8+
# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
9+
# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
10+
# option. This file may not be copied, modified, or distributed
11+
# except according to those terms.
12+
13+
# Since `cargo publish --all` does not exist yet, we use this dumb alternative
14+
# solution for now.
15+
#
16+
# Main downside of this approch is that there are separate `target/`
17+
# directories used for each component, increasing the test and publish process
18+
# time.
19+
20+
set -e
21+
22+
23+
# List of components, in order of dependency
24+
COMPONENTS="
25+
ucd/core/
26+
ucd/utils/
27+
ucd/bidi/
28+
ucd/normal/
29+
ucd/
30+
bidi/
31+
normal/
32+
idna/punycode
33+
idna
34+
"
35+
36+
37+
-() {
38+
cmd="$@"
39+
echo
40+
echo -n " `tput bold; tput setaf 4`Executing`tput sgr0` "
41+
echo "$cmd"
42+
$cmd
43+
}
44+
45+
46+
# Steps
47+
48+
- cargo update --verbose
49+
50+
for component in $COMPONENTS; do
51+
- cargo test --verbose --manifest-path components/$component/Cargo.toml
52+
- cargo publish --verbose --manifest-path components/$component/Cargo.toml || true
53+
done
54+
55+
- cargo publish --verbose

0 commit comments

Comments
 (0)