Skip to content

Extract the embedded Windows installer application into a testable module #25

Closed as not planned

Description

@eimexdev

Part of #9.

Context

scripts/build_installers.py currently embeds the Windows installer application as a large generated Python string. Packaging, UI, process detection, path handling, and installation logic therefore change in one builder file and most installer behavior cannot be imported directly by tests.

Work

  • Move the Windows installer application into a normal source module.
  • Give install results a typed contract rather than a string-keyed dictionary.
  • Share Windows support-path construction instead of duplicating APPDATA handling.
  • Add focused tests for path selection, copying, configuration generation, upgrade replacement, and failure reporting.
  • Keep the produced installer behavior and artifact naming stable.

Acceptance criteria

The installer application is directly importable/testable, build orchestration is smaller, and the current release behavior remains intact.

This is marked post-launch unless smoke testing reveals a blocking installer defect.

Activity

  1. added this to the v0.1.0 public launch milestone on Jul 16, 2026
  2. eimexdev commented on Jul 16, 2026

    @eimexdev
    OwnerAuthor

    This refactor is useful, but it sits beyond the destination of the OpenBeat v0.1.0 public launch map. Wayfinder rules it out of this effort so it cannot appear on the launch frontier. Reopen it as part of a fresh post-launch maintenance effort if the need remains after release.

  3. removed this from the v0.1.0 public launch milestone on Jul 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpost-launchUseful follow-up that does not block launch

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions