Retire the thrift advisory acceptance from deny.toml, SECURITY.md and STATUS.md once parquet >= 59 is in the lock
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 25/100
- Issue type
- Documentation
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- rust
- Domain
- documentation, release, security
Research direction
This task is blocked by #40. Once it lands, first run cargo tree -i thrift and confirm thrift is absent from the dependency graph. Then update deny.toml, SECURITY.md, STATUS.md, and the new version's Security section in CHANGELOG.md; verify the listed grep and cargo deny check conditions, and close #4.
Written by the indexing model from the issue text.
Description
Today — the thrift acceptance is written down in three live places, and
SECURITY.md requires all three to agree:
None is silent: they are listed here, in
deny.toml, and inSTATUS.md.
| Where | What |
|---|---|
deny.toml:24-37 |
the fourteen-line reason comment and the { id = "GHSA-2f9f-gq7v-9h6m", … } ignore |
SECURITY.md:53-60 |
the thrift < 0.23.0 bullet under Known, accepted advisories |
STATUS.md:13 |
row 4's note, "thrift CVE-2026-43868 via parquet 58 accepted with reason" |
All three are correct today and must stay. The condition for removing
them is written into deny.toml itself — "remove when parquet >= 59 is in
the lock" — and it is not met:
$ cargo tree -i thrift
thrift v0.17.0
└── parquet v58.4.0
└── datafusion v54.1.0
└── ballista v54.1.0
Why this wants its own issue — #4 is about the vulnerability and #40 is
about the chain bump that fixes it. This is the third thing: the cleanup
that happens after the bump lands, and the one part of it that is purely
mechanical. It is also the part most likely to be dropped, because it comes
at the end of a nine-crate breaking release when the interesting work is
done and everything is green — and dropping it leaves three documents
claiming an accepted vulnerability the engine no longer has, which is worse
than leaving them stale in the other direction.
There is a second reason to write it down. Until RustSec imports the
advisory, cargo deny check emits two warnings on every run —
unknown-advisory and advisory-not-detected — for this entry. Both are
the designed behaviour of a record filed before RustSec caught up (#40 says
so explicitly), but from the outside they read exactly like a dead ignore.
I mistook them for staleness on 2026-09-19 and went to retire the entry
while thrift was still in the graph. One cargo tree -i thrift settles it,
and this issue exists partly so the next person finds that answer attached
to the task rather than rediscovering it.
Fix — once Cargo.lock carries no thrift entry, in one commit:
deny.toml— delete the comment block and the ignore entry.SECURITY.md— delete the thrift bullet. Leave the quick-xml and paste
bullets; they are unrelated and still live.STATUS.md— drop the clause from row 4's note, keeping the rest of the
row intact.- Close #4, whose done-when this completes.
Do not touch CHANGELOG.md:247. That entry records what a released
version shipped with, and it was true when it shipped. The removal belongs
in the new version's Security section as a line saying the acceptance is
gone because parquet 59 dropped thrift — not as an edit to history.
Done when
-
grep -rn 'GHSA-2f9f-gq7v-9h6m\|CVE-2026-43868' . --exclude-dir=target
returns only theCHANGELOG.mdentries for already-released versions. -
cargo deny checkpasses with nounknown-advisoryor
advisory-not-detectedwarning — their absence is the proof the entry
is gone rather than merely unmatched. -
cargo tree -i thriftreports nothing in the graph. - The new version's CHANGELOG has a Security line recording the removal.
- #4 is closed.
Blocked by #40 (the Ballista 55 / DataFusion 55 chain bump). Nothing here
can start before that lands; once it has, this is an hour's work and a good
first contribution.
- Dominant language
- Rust
- Stars
- 1
- Forks
- 2
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 7
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from vyncint/oxidelake
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 57/100
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 38/100
Maintainers usually reply within 1 day
-
Prepare the Ballista 55 / DataFusion 55 / arrow 59 chain bump ahead of the release that fixes thriftOpenenhancement
Difficulty 5/5 Over a week Newbie friendliness 32/100
vyncint/oxidelake#40 · 2 comments ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
Maintainers usually reply within 1 day
All issues in vyncint/oxidelake
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
calcit-lang/caps#16 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
penso/herdr-gpui#934 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Y-ASLant/ElegantClipboard#178 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
linxiv-dev/linXiv#384 · 1 comment ·
Maintainers usually reply within 1 day
-
priority middle
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
KATO-Hiro/AtCoderClans#12945 ·
Maintainers usually reply within 1 day