Skip to content

Compose host: restore the original API names PythonLauncher / PythonWidget / PythonAppView #105

Closed

Description

@b-re-w

Maintainer: the host API was renamed without reason. The original design (app-template pycomposeui/PythonAppView.android.kt, 2023–24) had:

  • PythonLauncher(content) — starts Python if needed, registers the current composer with the Python runtime, then composes content;
  • PythonWidget(composableName, modifier…, moduleName, content) — composes a named Python composable from a module;
  • PythonAppView(modifier…) — composes the module's App.
    Compose host entry point: a @Composable that draws a Python-declared root and recomposes when it is replaced #18 introduced PythonContent(root) / PythonContent(module, attribute) / withPythonComposer instead. Map the current behaviour onto the original names (PythonAppView = the declarative app root incl. state-held roots; PythonWidget = a named Python composable; PythonLauncher = interpreter start + composer registration wrapper), keep the module separate (python-multiplatform core has no Compose dependency; an app that draws Python UI adds this one dependency). Remove the PythonContent names (rule 7: no compatibility aliases). Update SPEC, docs, pythonx-compose callers.
    Completion: the three names exist with the original signatures' intent; all compose fixtures/E2E use them; no PythonContent left.

Activity

  1. b-re-w commented on Oct 3, 2026

    @b-re-w
    MemberAuthor

    Landed in develop

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions