Skip to content

Conversation

@FeodorFitsner
Copy link
Contributor

@FeodorFitsner FeodorFitsner commented Jan 17, 2026

Summary by Sourcery

Introduce a separate flet-desktop-light package and make it the default desktop client on Linux while simplifying packaging and dependency handling.

New Features:

  • Add a new flet-desktop-light Python package that reuses the desktop client code but ships a light Flutter desktop build without audio/video components.

Bug Fixes:

  • Ensure Linux installs use the lighter desktop client by default when auto-installing the desktop dependency.

Enhancements:

  • Update optional desktop dependencies so Linux resolves to flet-desktop-light and macOS/Windows continue to use flet-desktop.
  • Adjust CI packaging to build wheels for both flet-desktop and flet-desktop-light from their respective package directories and remove now-unnecessary TOML patching scripts.
  • Extend version-patching logic and workspace configuration to include the new flet-desktop-light package and remove obsolete wheel dependency update tooling.

CI:

  • Modify CI workflow to build and upload wheels for the new flet-desktop-light package alongside the existing flet-desktop wheels.

Documentation:

  • Add a README for the flet-desktop-light package describing its purpose as a desktop client without audio/video components.

Introduces the flet-desktop-light Python package for Linux, updates dependency logic in flet/pyproject.toml to use platform-specific desktop packages, and adjusts pip utility to install the correct desktop package based on OS. Removes obsolete scripts and related workflow steps for patching package names and wheel dependencies.
Included 'flet-desktop-light' in the dependencies list and updated the patch script to handle this new dependency. This ensures that version patching and dependency management now cover 'flet-desktop-light' alongside other Flet packages.
@cloudflare-workers-and-pages
Copy link

Deploying flet-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: 8b7044a
Status: ✅  Deploy successful!
Preview URL: https://04aea13e.flet-docs.pages.dev
Branch Preview URL: https://desktop-light-fix.flet-docs.pages.dev

View logs

Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We've reviewed this pull request using the Sourcery rules engine

@FeodorFitsner FeodorFitsner merged commit 80f0db0 into rive-0-14-0 Jan 17, 2026
41 of 42 checks passed
@FeodorFitsner FeodorFitsner deleted the desktop-light-fix branch January 17, 2026 23:52
FeodorFitsner added a commit that referenced this pull request Jan 18, 2026
* Update Rive plugin to rive_native and upgrade dependencies

Migrates plugin references from rive_common to rive_native across all platforms and updates the Rive package to version 0.14.x. Refactors flet-rive extension and control implementation to use new Rive APIs, ensuring compatibility with the latest plugin changes.

* Update changelogs for 0.80.0 release

Changelog files for multiple Flet Python packages updated to reflect the 0.80.0 release. Unreleased sections replaced with 0.80.0, and redundant version links and dates removed for consistency.

* Add rive_native setup step to macOS CI build

Added a step to run 'dart run rive_native:setup' with verbose and clean options for the macOS platform before building the Flutter macOS app. This ensures rive_native is properly configured during CI builds.

* Add verbose flag to Flutter build in CI workflow

Appends the -v flag to the Flutter build command for Linux in the CI workflow to enable verbose output, aiding in debugging build issues.

* Add conditional Rive client support and macOS setup

Introduces conditional inclusion of the flet_rive package and related imports/extensions for ARM64 builds in CI, using marker comments for easy removal. Adds a Rive Native Setup shell script build phase to the macOS Xcode project to automate platform-specific setup. Updates pubspec.yaml and main.dart to wrap flet_rive references with marker comments for CI script processing.

* Remove verbose flag from Flutter Linux build

The '-v' verbose flag was removed from the Flutter build command in the CI workflow for Linux. Also updated flet-rive changelog for version 0.80.3, noting migration to rive 0.14.0.

* Update Podfile to set PROJECT_ROOT for rive_native

Adds logic to the post_install hook to set the PROJECT_ROOT environment variable and change directory for rive_native shell script build phases. This ensures the build script runs in the correct project root directory.

* Add comment for rive_native setup in Podfile

Added a comment to clarify that rive_native's setup script should run from the project root to ensure pubspec.yaml is found in CI environments.

* Update Linux support note in Rive docs

Clarified that Linux support for Rive animations is limited to x64 architecture in the documentation table.

* Add rive_native setup step to macOS integration tests

Introduces a step to run 'dart run rive_native:setup' with verbose and clean options for the macOS platform before executing integration tests. This ensures the environment is properly configured for the tests.

* Move rive_native setup to dedicated CI step

The rive_native setup command is now run in a separate step before integration tests in the macOS workflow. This improves clarity and ensures the environment is prepared before tests execute.

* Comment out test suites and increase log level

Several test suites in the matrix have been commented out, reducing the number of integration tests run on macOS. The pytest log level was changed from INFO to DEBUG for more detailed output during test execution.

* Add flutter doctor step to CI workflow

Runs 'flutter doctor' before setting up rive_native in the macOS integration tests workflow to ensure Flutter environment is properly configured.

* Update CI to use macos-15 for integration tests

Changed the GitHub Actions workflow to run macOS integration tests on macos-15 instead of macos-14 to ensure compatibility with the latest macOS environment.

* Comment out rive_native setup and adjust pytest log level

The rive_native setup step in the CI workflow has been commented out, and the pytest log level for integration tests has been changed from DEBUG to INFO. This may help reduce log verbosity and address issues related to rive_native setup during macOS integration tests.

* Update macOS CI to use macos-15 and enable more test suites

Changed the build_macos job to run on macos-15 instead of macos-latest in ci.yml. Enabled additional integration test suites in macos-integration-tests.yml by uncommenting them.

* Add `flet-desktop-light` to simplify packaging and fix default install on Linux (#6027)

* Add flet-desktop-light package and update platform dependencies

Introduces the flet-desktop-light Python package for Linux, updates dependency logic in flet/pyproject.toml to use platform-specific desktop packages, and adjusts pip utility to install the correct desktop package based on OS. Removes obsolete scripts and related workflow steps for patching package names and wheel dependencies.

* Add flet-desktop-light to dependencies

Included 'flet-desktop-light' in the dependencies list and updated the patch script to handle this new dependency. This ensures that version patching and dependency management now cover 'flet-desktop-light' alongside other Flet packages.

* Fix table formatting for Linux support note

Replaced space with non-breaking space in the Linux support cell to improve table formatting and readability.
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.

2 participants