WiX v4 registry, environment, shortcuts, icons and removals #27

Closed
opened 2026-10-14 11:54:05 -05:00 by jeff · 1 comment
Owner

Part of #23

What to build

The rest of M1's element set in WiX v4: RegistryKey, RegistryValue and MultiStringValue, Environment, Shortcut, Icon, CreateFolder, RemoveFolder and RemoveFile, with v4's attribute changes. The preprocessor's sys.BUILDARCHSHORT and sys.WIXMAJORVERSION work in v4 sources.

Acceptance criteria

  • Each element as the WiX schema reference documents it, with what v4 removed refused by name.
  • $(sys.BUILDARCHSHORT) is X86, X64 or A64, and $(sys.WIXMAJORVERSION) is 4.
  • v4 twins of the registry, shortcuts and upgrade fixtures pass end to end, with their .registry and .installed checks.
  • The README, CONTRIBUTING, the glossary and the fuzz corpus describe and cover WiX v4.

Blocked by

Part of #23 ## What to build The rest of M1's element set in WiX v4: `RegistryKey`, `RegistryValue` and `MultiStringValue`, `Environment`, `Shortcut`, `Icon`, `CreateFolder`, `RemoveFolder` and `RemoveFile`, with v4's attribute changes. The preprocessor's `sys.BUILDARCHSHORT` and `sys.WIXMAJORVERSION` work in v4 sources. ## Acceptance criteria - [ ] Each element as the WiX schema reference documents it, with what v4 removed refused by name. - [ ] `$(sys.BUILDARCHSHORT)` is `X86`, `X64` or `A64`, and `$(sys.WIXMAJORVERSION)` is `4`. - [ ] v4 twins of the registry, shortcuts and upgrade fixtures pass end to end, with their `.registry` and `.installed` checks. - [ ] The README, CONTRIBUTING, the glossary and the fuzz corpus describe and cover WiX v4. ## Blocked by - #26
Author
Owner

Done in 31e85de, green in CI run 22.

  • Registry, environment, shortcuts, icons, created folders and removals follow v4's attributes: MultiStringValue's Value, a Shortcut's default Directory and Target, Subdirectory and WorkingSubdirectory, and optional Ids made by zixl.
  • sys.BUILDARCHSHORT and sys.WIXMAJORVERSION work in v4 sources.
  • registry4, shortcuts4 and upgrade4 pass against their twins, and upgrade.sh also runs on upgrade4.
  • The fuzz corpus and the reader's round trip cover the v4 fixtures.
  • The fuzzer found an older crash, a File with no Source; it's fixed in 26e1082, with the input kept as a regression.
Done in 31e85de, green in CI run 22. - Registry, environment, shortcuts, icons, created folders and removals follow v4's attributes: MultiStringValue's Value, a Shortcut's default Directory and Target, Subdirectory and WorkingSubdirectory, and optional Ids made by zixl. - `sys.BUILDARCHSHORT` and `sys.WIXMAJORVERSION` work in v4 sources. - registry4, shortcuts4 and upgrade4 pass against their twins, and `upgrade.sh` also runs on upgrade4. - The fuzz corpus and the reader's round trip cover the v4 fixtures. - The fuzzer found an older crash, a File with no Source; it's fixed in 26e1082, with the input kept as a regression.
jeff closed this issue 2026-10-14 13:12:02 -05:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
jeff/zixl#27
No description provided.