1name: CI 2on: 3 push: 4 branches: 5 - staging 6 - trying 7 8jobs: 9 10 test: 11 name: Test 12 runs-on: ubuntu-latest 13 strategy: 14 matrix: 15 rust: [1.8.0, 1.15.0, 1.20.0, 1.26.0, 1.31.0, stable, beta, nightly] 16 steps: 17 - name: Rust install 18 uses: actions-rs/toolchain@v1 19 with: 20 toolchain: ${{ matrix.rust }} 21 profile: minimal 22 override: true 23 - name: Checkout 24 uses: actions/checkout@v2 25 - name: Build 26 uses: actions-rs/cargo@v1 27 with: 28 command: build 29 - name: Test 30 run: ./ci/test_full.sh 31 32 # i586 presents floating point challenges for lack of SSE/SSE2 33 i586: 34 name: Test (i586) 35 runs-on: ubuntu-latest 36 steps: 37 - name: System install 38 run: | 39 sudo apt-get update 40 sudo apt-get install gcc-multilib 41 - name: Rust install 42 uses: actions-rs/toolchain@v1 43 with: 44 toolchain: stable 45 profile: minimal 46 override: true 47 target: i586-unknown-linux-gnu 48 - name: Checkout 49 uses: actions/checkout@v1 50 - name: Test 51 uses: actions-rs/cargo@v1 52 with: 53 command: test 54 args: --target i586-unknown-linux-gnu --all-features 55 56 # try a target that doesn't have std at all 57 no_std: 58 name: No Std 59 runs-on: ubuntu-latest 60 steps: 61 - name: Rust install 62 uses: actions-rs/toolchain@v1 63 with: 64 toolchain: stable 65 profile: minimal 66 override: true 67 target: thumbv6m-none-eabi 68 - name: Checkout 69 uses: actions/checkout@v1 70 - name: Build 71 uses: actions-rs/cargo@v1 72 with: 73 command: build 74 args: --target thumbv6m-none-eabi --no-default-features --features i128 75 - name: Build (libm) 76 uses: actions-rs/cargo@v1 77 with: 78 command: build 79 args: --target thumbv6m-none-eabi --no-default-features --features libm 80 81 fmt: 82 name: Format 83 runs-on: ubuntu-latest 84 steps: 85 - name: Rust install 86 uses: actions-rs/toolchain@v1 87 with: 88 toolchain: 1.42.0 89 profile: minimal 90 override: true 91 components: rustfmt 92 - name: Checkout 93 uses: actions/checkout@v2 94 - name: Check formatting 95 uses: actions-rs/cargo@v1 96 with: 97 command: fmt 98 args: --all -- --check 99