Skip to content

Require hyprland-config 0.9.14 and hyprland-state 0.4.4 - #77

Open
BlueManCZ wants to merge 1 commit into
mainfrom
dep-floors
Open

Require hyprland-config 0.9.14 and hyprland-state 0.4.4#77
BlueManCZ wants to merge 1 commit into
mainfrom
dep-floors

Conversation

@BlueManCZ

Copy link
Copy Markdown
Owner

Floor bump for the two libraries carrying the Lua save fix (hyprland-config#3, hyprland-state#3). hyprmod never hits either bug — it writes its managed file through serialize_any() and edits Lua entrypoints as text, never round-tripping a user's .lua through a Document — so this is hygiene, not a fix.

Nix pins updated to match (tests/test_nix_pins.py enforces it). Hashes were computed by reimplementing the NAR hash the fetcher uses, validated by reproducing the three existing pins byte-for-byte before computing the new ones.

Not bumped

  • hyprland-schema 0.7.0 — deliberately held at 0.6.3, see below.
  • hyprland-monitors 0.8.0 / hyprland-socket 0.12.2 — already at the latest release.
  • pygobject 3.56.3 — patch release with nothing we need; no reason to force an upgrade on distro packagers.

Why hyprland-schema is held back

hyprland_schema.load() matches its bundled keys, which are vX.Y.Z. hyprland-state passes the bare version hyprctl reports, so the lookup misses, falls through to a GitHub fetch that 404s, and lands on OPTIONS_BY_KEY — the bundled latest:

schema 0.6.3:  load("0.55.4") -> MigrationError;  load("v0.55.4") -> 341 options
schema 0.7.0:  bundled latest is v0.56.1 -> 353 options, shadow:color typed gradient

Under 0.6.3 the fallback happens to be v0.55.4, so the accident is invisible. Under 0.7.0 every user not on 0.56 would silently get 0.56's option set and types, plus a doomed network call at startup. Worth fixing in hyprland-schema (accept both spellings) before this floor moves.

Both carry the Lua save fix: Document.save() emitted Hyprlang whatever
the document was read from, and options read from Lua lost their category
prefix on the first edit. hyprmod never hits either path — it writes its
managed file through serialize_any() and edits Lua entrypoints as text —
so this is floor hygiene, not a fix.

hyprland-schema stays at 0.6.3. 0.7.0 bundles the v0.56.1 schema, and
hyprland_schema.load() only matches its own "vX.Y.Z" keys, so the bare
version hyprland-state reads from hyprctl misses, falls through to a
GitHub fetch that 404s, and lands on the bundled latest. Today that
accident yields the right schema; under 0.7.0 every 0.55 user would
silently get 0.56 options and gradient-typed shadow colors.

Signed-off-by: BlueManCZ <ivo97@centrum.cz>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant