Skip to content

Commit a7b39b7

Browse files
committed
fix: make CI work
1 parent 00a1f0e commit a7b39b7

File tree

2 files changed

+15
-9
lines changed

2 files changed

+15
-9
lines changed

.github/workflows/check-rust-examples.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,10 +201,10 @@ jobs:
201201
- name: Analyze toolchain requirements
202202
id: analyze
203203
run: |
204-
# Get requirements as JSON
204+
# Get requirements as JSON (script outputs clean JSON to stdout)
205205
REQUIREMENTS=$(uv run python scripts/extract_rust_examples.py \
206206
--list-requirements \
207-
--src-dir src/coding-guidelines 2>/dev/null | tail -n +4)
207+
--src-dir src/coding-guidelines)
208208
209209
# Extract summary info
210210
NEEDS_NIGHTLY=$(echo "$REQUIREMENTS" | jq '.summary.needs_nightly > 0')

scripts/extract_rust_examples.py

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -326,12 +326,13 @@ def extract_rust_examples_from_file(file_path: Path) -> List[RustExample]:
326326
return examples
327327

328328

329-
def extract_all_examples(src_dirs: List[Path]) -> List[RustExample]:
329+
def extract_all_examples(src_dirs: List[Path], quiet: bool = False) -> List[RustExample]:
330330
"""
331331
Extract all Rust examples from all RST files in the given directories.
332332
333333
Args:
334334
src_dirs: List of directories to scan
335+
quiet: If True, suppress progress output
335336
336337
Returns:
337338
List of all RustExample objects found
@@ -341,15 +342,18 @@ def extract_all_examples(src_dirs: List[Path]) -> List[RustExample]:
341342
for src_dir in src_dirs:
342343
rst_files = list(src_dir.glob("**/*.rst"))
343344

344-
print(f"🔍 Scanning {len(rst_files)} RST files in {src_dir}")
345+
if not quiet:
346+
print(f"🔍 Scanning {len(rst_files)} RST files in {src_dir}", file=sys.stderr)
345347

346348
for file_path in rst_files:
347349
file_examples = extract_rust_examples_from_file(file_path)
348350
if file_examples:
349-
print(f" 📄 {file_path.name}: {len(file_examples)} examples")
351+
if not quiet:
352+
print(f" 📄 {file_path.name}: {len(file_examples)} examples", file=sys.stderr)
350353
examples.extend(file_examples)
351354

352-
print(f"\n📊 Total: {len(examples)} examples found")
355+
if not quiet:
356+
print(f"\n📊 Total: {len(examples)} examples found", file=sys.stderr)
353357

354358
return examples
355359

@@ -645,12 +649,14 @@ def main():
645649
prelude = ""
646650
if args.prelude:
647651
prelude = load_prelude(args.prelude)
648-
if prelude:
649-
print(f"📜 Loaded prelude from {args.prelude}")
652+
if prelude and not args.list_requirements:
653+
print(f"📜 Loaded prelude from {args.prelude}", file=sys.stderr)
650654

651655
# Extract examples from all source directories
652656
if args.list or args.extract or args.test or args.list_requirements:
653-
examples = extract_all_examples(validated_src_dirs)
657+
# Use quiet mode for list-requirements to get clean JSON output
658+
quiet = args.list_requirements
659+
examples = extract_all_examples(validated_src_dirs, quiet=quiet)
654660

655661
# Handle --list-requirements
656662
if args.list_requirements:

0 commit comments

Comments
 (0)