Skip to content

Commit 4aa9d34

Browse files
committed
Merge remote-tracking branch 'upstream/master'
2 parents 4f6e954 + fe1388d commit 4aa9d34

File tree

102 files changed

+2928
-4914
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

102 files changed

+2928
-4914
lines changed

.github/workflows/build-and-test.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ env:
1111
RUST_LOG: "trace"
1212

1313
jobs:
14-
buid-test-check:
14+
build-test-check:
1515
strategy:
1616
matrix:
1717
platform:
@@ -21,6 +21,9 @@ jobs:
2121
runs-on: ${{ matrix.platform }}
2222

2323
steps:
24+
- if: ${{ matrix.platform == 'ubuntu-latest' }}
25+
name: Free Disk Space (Ubuntu)
26+
uses: jlumbroso/free-disk-space@main
2427
- uses: actions/checkout@v4
2528
- uses: Swatinem/rust-cache@v2
2629
- if: ${{ runner.os == 'Windows' }}

.github/workflows/build-msrv.yml

Lines changed: 50 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ env:
1111
RUST_LOG: "trace"
1212

1313
jobs:
14-
buid-test-check:
14+
shadowsocks-rust:
1515
strategy:
1616
matrix:
1717
platform:
@@ -28,12 +28,58 @@ jobs:
2828
- name: Install Rust
2929
run: |
3030
rustup set profile minimal
31-
rustup toolchain install 1.74
32-
rustup default 1.74
33-
rustup override set 1.74
31+
rustup toolchain install 1.80
32+
rustup default 1.80
33+
rustup override set 1.80
3434
- name: Build with All Features Enabled (Unix)
3535
if: ${{ runner.os == 'Linux' || runner.os == 'macOS' }}
3636
run: cargo build --verbose --features "full-extra local-flow-stat utility-url-outline"
3737
- name: Build with All Features Enabled (Windows)
3838
if: ${{ runner.os == 'Windows' }}
3939
run: cargo build --verbose --features "full-extra local-flow-stat utility-url-outline winservice"
40+
41+
shadowsocks-service:
42+
strategy:
43+
matrix:
44+
platform:
45+
- ubuntu-latest
46+
- windows-latest
47+
- macos-latest
48+
runs-on: ${{ matrix.platform }}
49+
50+
steps:
51+
- uses: actions/checkout@v4
52+
- uses: Swatinem/rust-cache@v2
53+
- if: ${{ runner.os == 'Windows' }}
54+
uses: ilammy/setup-nasm@v1
55+
- name: Install Rust
56+
run: |
57+
rustup set profile minimal
58+
rustup toolchain install 1.80
59+
rustup default 1.80
60+
rustup override set 1.80
61+
- name: Build with All Features Enabled
62+
run: cargo build --manifest-path crates/shadowsocks-service/Cargo.toml --verbose --features "full dns-over-tls dns-over-https dns-over-h3 local-dns local-flow-stat local-http-rustls local-tun local-fake-dns local-online-config stream-cipher aead-cipher-extra aead-cipher-2022 aead-cipher-2022-extra security-replay-attack-detect"
63+
64+
shadowsocks:
65+
strategy:
66+
matrix:
67+
platform:
68+
- ubuntu-latest
69+
- windows-latest
70+
- macos-latest
71+
runs-on: ${{ matrix.platform }}
72+
73+
steps:
74+
- uses: actions/checkout@v4
75+
- uses: Swatinem/rust-cache@v2
76+
- if: ${{ runner.os == 'Windows' }}
77+
uses: ilammy/setup-nasm@v1
78+
- name: Install Rust
79+
run: |
80+
rustup set profile minimal
81+
rustup toolchain install 1.77
82+
rustup default 1.77
83+
rustup override set 1.77
84+
- name: Build with All Features Enabled
85+
run: cargo build --manifest-path crates/shadowsocks/Cargo.toml --verbose --features "stream-cipher aead-cipher-extra aead-cipher-2022 aead-cipher-2022-extra security-replay-attack-detect"

.github/workflows/build-nightly-release.yml

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,28 +15,35 @@ jobs:
1515
strategy:
1616
fail-fast: false
1717
matrix:
18-
target:
19-
- x86_64-unknown-linux-musl
20-
- aarch64-unknown-linux-musl
18+
platform:
19+
- target: x86_64-unknown-linux-musl
20+
toolchain: stable
21+
- target: aarch64-unknown-linux-musl
22+
toolchain: stable
23+
- target: mips-unknown-linux-gnu
24+
toolchain: nightly
25+
- target: mipsel-unknown-linux-gnu
26+
toolchain: nightly
27+
- target: mips64el-unknown-linux-gnuabi64
28+
toolchain: nightly
2129

2230
steps:
2331
- uses: actions/checkout@v4
2432

2533
- name: Install Rust
2634
run: |
2735
rustup set profile minimal
28-
rustup toolchain install stable
29-
rustup default stable
30-
rustup override set stable
31-
rustup target add --toolchain stable ${{ matrix.target }}
36+
rustup toolchain install ${{ matrix.platform.toolchain }}
37+
rustup default ${{ matrix.platform.toolchain }}
38+
rustup override set ${{ matrix.platform.toolchain }}
3239
3340
- name: Install cross
3441
run: cargo install cross
3542

36-
- name: Build ${{ matrix.target }}
43+
- name: Build ${{ matrix.platform.target }}
3744
timeout-minutes: 120
3845
run: |
39-
compile_target=${{ matrix.target }}
46+
compile_target=${{ matrix.platform.target }}
4047
4148
compile_features="-f full"
4249
@@ -49,15 +56,18 @@ jobs:
4956
if [[ "$?" == "0" ]]; then
5057
compile_compress="-u"
5158
fi
59+
60+
compile_nightly="-n"
61+
compile_features="-Z build-std=std,panic_abort,proc_macro"
5262
fi
5363
5464
cd build
55-
./build-release -t ${{ matrix.target }} $compile_features $compile_compress
65+
./build-release -t ${{ matrix.platform.target }} $compile_features $compile_compress $compile_nightly $compile_features
5666
5767
- name: Upload Artifacts
5868
uses: actions/upload-artifact@v4
5969
with:
60-
name: ${{ matrix.target }}
70+
name: ${{ matrix.platform.target }}
6171
path: build/release/*
6272

6373
build-unix:

.github/workflows/build-release.yml

Lines changed: 58 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,38 +21,73 @@ jobs:
2121
strategy:
2222
fail-fast: false
2323
matrix:
24-
target:
25-
- i686-unknown-linux-musl
26-
- x86_64-pc-windows-gnu
27-
- x86_64-unknown-linux-gnu
28-
- x86_64-unknown-linux-musl
29-
- armv7-unknown-linux-musleabihf
30-
- armv7-unknown-linux-gnueabihf
31-
- arm-unknown-linux-gnueabi
32-
- arm-unknown-linux-gnueabihf
33-
- arm-unknown-linux-musleabi
34-
- arm-unknown-linux-musleabihf
35-
- aarch64-unknown-linux-gnu
36-
- aarch64-unknown-linux-musl
24+
platform:
25+
- target: i686-unknown-linux-musl
26+
toolchain: stable
27+
- target: x86_64-pc-windows-gnu
28+
toolchain: stable
29+
- target: x86_64-unknown-linux-gnu
30+
toolchain: stable
31+
- target: x86_64-unknown-linux-musl
32+
toolchain: stable
33+
- target: armv7-unknown-linux-musleabihf
34+
toolchain: stable
35+
- target: armv7-unknown-linux-gnueabihf
36+
toolchain: stable
37+
- target: arm-unknown-linux-gnueabi
38+
toolchain: stable
39+
- target: arm-unknown-linux-gnueabihf
40+
toolchain: stable
41+
- target: arm-unknown-linux-musleabi
42+
toolchain: stable
43+
- target: arm-unknown-linux-musleabihf
44+
toolchain: stable
45+
- target: aarch64-unknown-linux-gnu
46+
toolchain: stable
47+
- target: aarch64-unknown-linux-musl
48+
toolchain: stable
49+
- target: mips-unknown-linux-gnu
50+
toolchain: nightly
51+
# cross mips-*-musl images are disabled
52+
# - target: mips-unknown-linux-musl
53+
# toolchain: nightly
54+
- target: mipsel-unknown-linux-gnu
55+
toolchain: nightly
56+
# - target: mipsel-unknown-linux-musl
57+
# toolchain: nightly
58+
# FIXME: ring doesn't support mips64 CPU
59+
# - target: mips64-unknown-linux-gnuabi64
60+
# toolchain: nightly
61+
# - target: mips64-unknown-linux-muslabi64
62+
# toolchain: nightly
63+
- target: mips64el-unknown-linux-gnuabi64
64+
toolchain: nightly
65+
# FIXME: Link Error.
66+
# = note: mips64el-linux-muslsf-gcc: error: crt1.o: No such file or directory
67+
# mips64el-linux-muslsf-gcc: error: crti.o: No such file or directory
68+
# mips64el-linux-muslsf-gcc: error: crtbegin.o: No such file or directory
69+
# mips64el-linux-muslsf-gcc: error: crtend.o: No such file or directory
70+
# mips64el-linux-muslsf-gcc: error: crtn.o: No such file or directory
71+
# - target: mips64el-unknown-linux-muslabi64
72+
# toolchain: nightly
3773

3874
steps:
3975
- uses: actions/checkout@v4
4076

4177
- name: Install Rust
4278
run: |
4379
rustup set profile minimal
44-
rustup toolchain install stable
45-
rustup default stable
46-
rustup override set stable
47-
rustup target add --toolchain stable ${{ matrix.target }}
80+
rustup toolchain install ${{ matrix.platform.toolchain }}
81+
rustup default ${{ matrix.platform.toolchain }}
82+
rustup override set ${{ matrix.platform.toolchain }}
4883
4984
- name: Install cross
5085
run: cargo install cross
5186

52-
- name: Build ${{ matrix.target }}
87+
- name: Build ${{ matrix.platform.target }}
5388
timeout-minutes: 120
5489
run: |
55-
compile_target=${{ matrix.target }}
90+
compile_target=${{ matrix.platform.target }}
5691
5792
compile_features="-f full"
5893
@@ -65,10 +100,13 @@ jobs:
65100
if [[ "$?" == "0" ]]; then
66101
compile_compress="-u"
67102
fi
103+
104+
compile_nightly="-n"
105+
compile_features="-Z build-std=std,panic_abort,proc_macro"
68106
fi
69107
70108
cd build
71-
./build-release -t ${{ matrix.target }} $compile_features $compile_compress
109+
./build-release -t ${{ matrix.platform.target }} $compile_features $compile_compress $compile_nightly $compile_features
72110
73111
- name: Upload Github Assets
74112
uses: softprops/action-gh-release@v2

.github/workflows/deny-check.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Cargo Deny Check
2+
on: [push, pull_request]
3+
jobs:
4+
cargo-deny:
5+
runs-on: ubuntu-latest
6+
strategy:
7+
matrix:
8+
checks:
9+
- advisories
10+
- bans licenses sources
11+
12+
# Prevent sudden announcement of a new advisory from failing ci:
13+
continue-on-error: ${{ matrix.checks == 'advisories' }}
14+
15+
steps:
16+
- uses: actions/checkout@v4
17+
- uses: EmbarkStudios/cargo-deny-action@v2
18+
with:
19+
command: check ${{ matrix.checks }}

0 commit comments

Comments
 (0)