mirror of
https://github.com/RustPython/RustPython.git
synced 2026-06-02 19:39:49 +09:00
Optimize CI cache usage (#6707)
* Make whats_left.py compile with same settings as before * Add --no-default-features to scripts/whats_left.py * Build RustPython with no default features * Retrigger CI
This commit is contained in:
10
.github/workflows/ci.yaml
vendored
10
.github/workflows/ci.yaml
vendored
@@ -422,8 +422,14 @@ jobs:
|
||||
run: |
|
||||
target/release/rustpython -m venv testvenv
|
||||
testvenv/bin/rustpython -m pip install wheel
|
||||
- name: Check whats_left is not broken
|
||||
run: python -I scripts/whats_left.py
|
||||
- if: runner.os != 'macOS'
|
||||
name: Check whats_left is not broken
|
||||
shell: bash
|
||||
run: python -I scripts/whats_left.py --no-default-features --features "$(sed -e 's/--[^ ]*//g' <<< "${{ env.CARGO_ARGS }}" | tr -d '[:space:]'),threading,jit"
|
||||
- if: runner.os == 'macOS' # TODO fix jit on macOS
|
||||
name: Check whats_left is not broken (macOS)
|
||||
shell: bash
|
||||
run: python -I scripts/whats_left.py --no-default-features --features "$(sed -e 's/--[^ ]*//g' <<< "${{ env.CARGO_ARGS }}" | tr -d '[:space:]'),threading" # no jit on macOS for now
|
||||
|
||||
lint:
|
||||
name: Check Rust code with clippy
|
||||
|
||||
@@ -60,6 +60,11 @@ def parse_args():
|
||||
action="store_true",
|
||||
help="print output as JSON (instead of line by line)",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--no-default-features",
|
||||
action="store_true",
|
||||
help="disable default features when building RustPython",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--features",
|
||||
action="store",
|
||||
@@ -441,19 +446,23 @@ with open(GENERATED_FILE, "w", encoding="utf-8") as f:
|
||||
f.write(output + "\n")
|
||||
|
||||
|
||||
subprocess.run(
|
||||
["cargo", "build", "--release", f"--features={args.features}"], check=True
|
||||
)
|
||||
cargo_build_command = ["cargo", "build", "--release"]
|
||||
if args.no_default_features:
|
||||
cargo_build_command.append("--no-default-features")
|
||||
if args.features:
|
||||
cargo_build_command.extend(["--features", args.features])
|
||||
|
||||
subprocess.run(cargo_build_command, check=True)
|
||||
|
||||
cargo_run_command = ["cargo", "run", "--release"]
|
||||
if args.no_default_features:
|
||||
cargo_run_command.append("--no-default-features")
|
||||
if args.features:
|
||||
cargo_run_command.extend(["--features", args.features])
|
||||
cargo_run_command.extend(["-q", "--", GENERATED_FILE])
|
||||
|
||||
result = subprocess.run(
|
||||
[
|
||||
"cargo",
|
||||
"run",
|
||||
"--release",
|
||||
f"--features={args.features}",
|
||||
"-q",
|
||||
"--",
|
||||
GENERATED_FILE,
|
||||
],
|
||||
cargo_run_command,
|
||||
env={**os.environ.copy(), "RUSTPYTHONPATH": "Lib"},
|
||||
text=True,
|
||||
capture_output=True,
|
||||
|
||||
Reference in New Issue
Block a user