-
Notifications
You must be signed in to change notification settings - Fork 893
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Rework Toolchain model and drop relative file path overrides
Relative path overrides permit a freshly downloaded source tree to execute arbitrary code on any rustup command that executes a binary from the configured toolchain, and its a reasonable tradeoff for us to remove this feature. Absolute path overrides are kept intact - these were added to support users of large monorepo tool systems, and can be kept with reasonable safety. Introduce an interior model for toolchain names which allows the elimination of conditional code for custom vs named vs path based toolchains. Fixes #3130. Finishes the separation of Toolchain vs DistributableToolchain vs CustomToolchain started some time ago. Moves some test support into the src tree in order to keep symbols private and adds a 'test' feature required for self-testing, ensuring that that code doesn't affect production builds. Changes the CI debug builds to use the new test feature and also otel, so that otel doesn't bitrot.
- Loading branch information
1 parent
4b29b79
commit 2c9297d
Showing
73 changed files
with
3,663 additions
and
2,449 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
name: AllFeatures (PR) | ||
|
||
# This is an additional workflow to test building with all feature combinations. | ||
# Unlike our main workflows, this doesn't self-test the rustup install scripts, | ||
# nor run on the rust docker images. This permits a smaller workflow without the | ||
# templating and so on. | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- "*" | ||
- renovate/* | ||
|
||
jobs: | ||
build: | ||
name: Build | ||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
# Might add more targets in future. | ||
target: | ||
- x86_64-unknown-linux-gnu | ||
steps: | ||
- name: Clone repo | ||
uses: actions/checkout@v3 | ||
- name: Install rustup stable | ||
run: rustup toolchain install stable --profile minimal | ||
- name: Install Protoc | ||
uses: arduino/setup-protoc@v1 | ||
with: | ||
version: "3.x" | ||
- name: Set environment variables appropriately for the build | ||
run: | | ||
echo "$HOME/.cargo/bin" >> $GITHUB_PATH | ||
echo "TARGET=${{ matrix.target }}" >> $GITHUB_ENV | ||
- name: Cache Cargo | ||
uses: Swatinem/rust-cache@v2 | ||
- name: Install cargo-all-features | ||
run: cargo install cargo-all-features --git https://github.com/rbtcollins/cargo-all-features.git | ||
- name: Ensure we have our goal target installed | ||
run: | | ||
rustup target install "$TARGET" | ||
- name: Build every combination | ||
run: | | ||
cargo check-all-features --root-only |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.