diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 3f0eddb5..a85c5947 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -1,3 +1,9 @@ +# Note: This test file temporarily pins nightly-2023-11-01 instead of the latest nightly, +# because the requirements for an unstable feature changed recently, which causes this +# error on latest nightly: +# +# error[E0658]: use of unstable library feature 'core_io_borrowed_buf' +# name: rustls-ffi permissions: @@ -78,6 +84,8 @@ jobs: persist-credentials: false - name: Install nightly rust toolchain uses: dtolnay/rust-toolchain@nightly + with: + toolchain: nightly-2023-11-01 - name: Configure CMake run: cmake -S . -B build - name: Build, debug configuration @@ -95,6 +103,8 @@ jobs: persist-credentials: false - name: Install nightly rust toolchain uses: dtolnay/rust-toolchain@nightly + with: + toolchain: nightly-2023-11-01 - name: Configure CMake run: cmake -S . -B build - name: Build, release configuration @@ -109,8 +119,10 @@ jobs: - uses: actions/checkout@v4 with: persist-credentials: false - - name: Install nightly rust toolchain + - name: Install stable rust toolchain uses: dtolnay/rust-toolchain@nightly + with: + toolchain: nightly-2023-11-01 - name: Install cbindgen # Pin the installed version of cbindgen so that local usage can be # reliably matched to CI. There can be non-semantic differences in @@ -133,6 +145,8 @@ jobs: - name: Install rust toolchain uses: dtolnay/rust-toolchain@nightly + with: + toolchain: nightly-2023-11-01 - name: cargo doc (all features) run: cargo doc --all-features --no-deps --workspace @@ -150,6 +164,8 @@ jobs: - name: Install rust toolchain uses: dtolnay/rust-toolchain@nightly + with: + toolchain: nightly-2023-11-01 - name: Build client/server binaries run: make target/client target/server diff --git a/README.md b/README.md index a7c8527e..78797113 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,13 @@ to provide the cryptographic primitives. # Build You'll need to [install the Rust toolchain](https://rustup.rs/) (version 1.61 -or above) and a C compiler (`gcc` and `clang` should both work). To build in optimized mode: +or above) and a C compiler (`gcc` and `clang` should both work). + +If you're using the Rust nightly toolchain, note that toolchains after about +2023-11-01 will error due to [the core_io_borrowed_buf feature](https://github.com/rust-lang/rust/issues/117693). +Use a stable toolchain for now, as we work on updating compatibility. + +To build in optimized mode: make