Skip to content

Commit c216dcb

Browse files
authored
Merge branch 'main' into release-2.1.0
2 parents 6766e58 + 9329530 commit c216dcb

3 files changed

Lines changed: 113 additions & 451 deletions

File tree

‎.cargo/audit.toml‎

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,20 @@ ignore = [
2525
# on quick-xml 0.41 or later.
2626
"RUSTSEC-2026-0194",
2727
"RUSTSEC-2026-0195",
28-
# rkyv 0.7.46 out-of-bounds reads on archives containing Rc/Arc.
29-
# Not compiled by this project in any configuration. rkyv is an OPTIONAL
30-
# dependency of rust_decimal (rust_decimal-1.42.1/Cargo.toml: `rkyv =
31-
# ["dep:rkyv"]`), reaching us only via duckdb -> rust_decimal, and duckdb
32-
# does not enable that feature. Verified: `cargo tree --all-features
33-
# --target all -i rkyv` returns no results, while `-i rust_decimal` shows
34-
# rust_decimal -> duckdb -> open-ontologies. cargo audit reads Cargo.lock,
35-
# which records optional dependencies the compiler never sees.
36-
# Unfixable by version bump: the advisory requires >= 0.8.17, but
37-
# rust_decimal requires rkyv "0.7.46", which Cargo reads as at least 0.7.46
38-
# and below 0.8.0, and it has not migrated to the 0.8
39-
# line (it carries a separate rkyv-0_8 dev-dependency). Remove this entry
40-
# once rust_decimal ships a release depending on rkyv 0.8.
41-
"RUSTSEC-2026-0235",
28+
# zip archive-extraction advisories (symlink escape, SUID/SGID bits kept,
29+
# permissions applied through symlinks), all patched only in zip 9.0.0.
30+
# Every one of them is in ZipArchive::extract / ZipStreamReader::extract,
31+
# which write an archive out to disk. The one remaining path to an affected
32+
# zip is calamine 0.30.1 -> zip 4.6.1 (`cargo tree --all-features -i zip`),
33+
# and calamine never extracts: it opens the workbook with ZipArchive::new
34+
# and reads entries into memory with by_name and by_index, and its source
35+
# contains no call to extract or ZipStreamReader. Moving calamine does not
36+
# help yet, because the latest release, 0.36.1, still requires zip "^8.6".
37+
# The other path, duckdb's build-dependency libduckdb-sys, was cleared by
38+
# updating duckdb to 1.10506.1, which requires zip "^9". That same update
39+
# dropped rust_decimal and with it rkyv, so the RUSTSEC-2026-0235 entry
40+
# that stood here is gone. Remove these once calamine depends on zip 9.
41+
"RUSTSEC-2026-0367",
42+
"RUSTSEC-2026-0368",
43+
"RUSTSEC-2026-0369",
4244
]

‎.github/workflows/ci.yml‎

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,13 @@ concurrency:
1414

1515
jobs:
1616
build:
17-
timeout-minutes: 30
17+
# 60, not 30. The Windows leg takes 9 to 14 minutes on a warm cache and 30
18+
# to 35 on a cold or partial one, and the 30-minute ceiling killed it AFTER
19+
# every step had passed: on 16 October 2026 main (run 38943462546) and the
20+
# 2.1.0 release PR were reported cancelled while Build, Test, Clippy and
21+
# Audit were all green and only the rust-cache save was still running.
22+
# The same happened on main on 13 October. A hung job is still caught.
23+
timeout-minutes: 60
1824
runs-on: ${{ matrix.os }}
1925
strategy:
2026
matrix:
@@ -88,6 +94,10 @@ jobs:
8894
- name: Clippy
8995
run: cargo clippy -- -D warnings
9096
- name: Audit
97+
# Linux only. `cargo audit` reads Cargo.lock, which is the same file on
98+
# both legs, so the Windows run reported nothing the Linux run had not,
99+
# and it spent six minutes compiling cargo-audit from source to do it.
100+
if: runner.os == 'Linux'
91101
run: |
92102
# --locked installs cargo-audit with its own published Cargo.lock.
93103
# Without it cargo resolves transitive deps to latest, and

0 commit comments

Comments
 (0)