Skip to content

Commit ff030ff

Browse files
fix(quasar): pin quasar deps to 623bb70 to avoid upstream zeropod 0.3.0 regression
Upstream blueshift-gg/quasar master moved zeropod from 0.2.0 to 0.3.0 in commit 2be2622 (2026-05-09, 'fix(derive): classify const-capacity account Vec fields'). zeropod 0.3.0 auto-generates accessor methods for PodOption<T, PFX=4> fields, which collide with the manual delegate(), close_authority(), mint_authority(), and freeze_authority() impls in quasar's own spl/src/token.rs: error[E0592]: duplicate definitions with name `delegate` --> .../quasar/spl/src/token.rs:16:10 | 16 | #[derive(quasar_lang::__zeropod::ZeroPod)] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ duplicate definitions ... 64 | pub fn delegate(&self) -> Option<&Address> { | ------------------------------------------ other definition The manual accessors carry a comment claiming auto-generated ones do not cover PFX=4 — that assumption became false after the zeropod bump. Every `tokens/**/quasar` project pinning quasar-{lang,spl} to `branch = "master"` therefore fails to compile against current master. Confirmed locally; visible in PR #23's first full-matrix CI run. Pin quasar-lang, quasar-spl, and quasar-metadata to commit 623bb70 (the last good commit on master before the zeropod 0.3.0 bump) across all `basics/**/quasar` and `tokens/**/quasar` Cargo.toml files that pull quasar from `blueshift-gg/quasar`. Same source-id keeps trait impls consistent across quasar crates. Comments updated to explain the rationale and to point at the unpin trigger (upstream zeropod fix). Verified with `cargo check --release --tests` on: - tokens/escrow/quasar - tokens/token-extensions/transfer-fee/quasar - tokens/spl-token-minter/quasar (also uses quasar-metadata) The `basics/**/quasar` projects don't pull quasar-spl so they weren't breaking, but pinning them to the same rev keeps the dep tree consistent across the whole repo and avoids future drift if someone adds an spl-using basic example. Follow-up to PR #23 (the CI workflow fix), which exposed this pre-existing regression by triggering the full-matrix CI run. Note: this PR does NOT add anything to .ghaignore. Hiding failures was explicitly the wrong move; this PR fixes the underlying break instead. Out of scope for this PR: - tokens/token-extensions/transfer-hook/block-list/pinocchio is a WIP port (no pnpm-lock.yaml, no tests/, no build script) and needs a real port rather than a dependency pin. Tracking separately.
1 parent 8abb5d1 commit ff030ff

44 files changed

Lines changed: 339 additions & 75 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

basics/account-data/quasar/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,13 @@ client = []
2222
debug = []
2323

2424
[dependencies]
25-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
25+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
26+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
27+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
28+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
29+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
30+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
31+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2632
solana-instruction = { version = "3.2.0" }
2733

2834
[dev-dependencies]

basics/checking-accounts/quasar/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,13 @@ client = []
2222
debug = []
2323

2424
[dependencies]
25-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
25+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
26+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
27+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
28+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
29+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
30+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
31+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2632
solana-instruction = { version = "3.2.0" }
2733

2834
[dev-dependencies]

basics/close-account/quasar/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,13 @@ client = []
2020
debug = []
2121

2222
[dependencies]
23-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
23+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
24+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
25+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
26+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
27+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
28+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
29+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2430
solana-instruction = { version = "3.2.0" }
2531

2632
[dev-dependencies]

basics/counter/quasar/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,13 @@ client = []
2222
debug = []
2323

2424
[dependencies]
25-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
25+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
26+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
27+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
28+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
29+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
30+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
31+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2632
solana-instruction = { version = "3.2.0" }
2733

2834
[dev-dependencies]

basics/create-account/quasar/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,13 @@ client = []
2222
debug = []
2323

2424
[dependencies]
25-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
25+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
26+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
27+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
28+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
29+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
30+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
31+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2632
solana-instruction = { version = "3.2.0" }
2733

2834
[dev-dependencies]

basics/cross-program-invocation/quasar/hand/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,13 @@ client = []
2121
debug = []
2222

2323
[dependencies]
24-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
24+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
25+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
26+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
27+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
28+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
29+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
30+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2531
solana-instruction = { version = "3.2.0" }
2632

2733
[dev-dependencies]

basics/cross-program-invocation/quasar/lever/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,13 @@ client = []
2121
debug = []
2222

2323
[dependencies]
24-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
24+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
25+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
26+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
27+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
28+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
29+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
30+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2531
solana-instruction = { version = "3.2.0" }
2632

2733
[dev-dependencies]

basics/favorites/quasar/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,13 @@ client = []
2020
debug = []
2121

2222
[dependencies]
23-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
23+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
24+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
25+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
26+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
27+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
28+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
29+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2430
solana-instruction = { version = "3.2.0" }
2531

2632
[dev-dependencies]

basics/hello-solana/quasar/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,13 @@ client = []
2222
debug = []
2323

2424
[dependencies]
25-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar" }
25+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
26+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
27+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
28+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
29+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
30+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
31+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2632
solana-instruction = { version = "3.2.0" }
2733

2834
[dev-dependencies]

basics/pda-rent-payer/quasar/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,13 @@ client = []
2222
debug = []
2323

2424
[dependencies]
25-
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", branch = "master" }
25+
# quasar pin rationale: master HEAD currently fails to compile because zeropod 0.3.x
26+
# auto-generates accessor methods that conflict with hand-written ones in quasar-spl
27+
# (E0592 duplicate definitions for delegate / close_authority / mint_authority /
28+
# freeze_authority). Upstream fix is on the zeropod branch (skip_accessor + bump),
29+
# not yet merged to master. 623bb70 is the last working rev on master before zeropod
30+
# 0.3 was bumped. Unpin (back to branch = "master") once upstream merges the fix.
31+
quasar-lang = { git = "https://github.com/blueshift-gg/quasar", rev = "623bb70" }
2632
solana-instruction = { version = "3.2.0" }
2733

2834
[dev-dependencies]

0 commit comments

Comments
 (0)