flet-cli 0.86.0.dev1__tar.gz → 0.86.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/PKG-INFO +2 -2
  2. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/pyproject.toml +2 -2
  3. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/build.py +1 -1
  4. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/build_base.py +19 -2
  5. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/create.py +2 -0
  6. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/debug.py +2 -0
  7. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/publish.py +10 -3
  8. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/run.py +2 -0
  9. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/test.py +2 -0
  10. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/python_versions.py +1 -1
  11. flet_cli-0.86.1/src/flet_cli/version.py +1 -0
  12. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli.egg-info/PKG-INFO +2 -2
  13. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli.egg-info/requires.txt +1 -1
  14. flet_cli-0.86.0.dev1/src/flet_cli/version.py +0 -1
  15. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/README.md +0 -0
  16. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/setup.cfg +0 -0
  17. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/__pyinstaller/__init__.py +0 -0
  18. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/__pyinstaller/config.py +0 -0
  19. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/__pyinstaller/hook-flet.py +0 -0
  20. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/__pyinstaller/macos_utils.py +0 -0
  21. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/__pyinstaller/rthooks/pyi_rth_localhost_fletd.py +0 -0
  22. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/__pyinstaller/utils.py +0 -0
  23. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/__pyinstaller/win_utils.py +0 -0
  24. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/cli.py +0 -0
  25. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/base.py +0 -0
  26. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/clean.py +0 -0
  27. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/devices.py +0 -0
  28. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/doctor.py +0 -0
  29. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/emulators.py +0 -0
  30. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/flutter_base.py +0 -0
  31. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/mcp.py +0 -0
  32. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/options.py +0 -0
  33. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/pack.py +0 -0
  34. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/serve.py +0 -0
  35. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/commands/test_host.py +0 -0
  36. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/android.py +0 -0
  37. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/android_sdk.py +0 -0
  38. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/cli.py +0 -0
  39. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/distros.py +0 -0
  40. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/flutter.py +0 -0
  41. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/hash_stamp.py +0 -0
  42. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/jdk.py +0 -0
  43. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/linux_deps.py +0 -0
  44. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/merge.py +0 -0
  45. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/plist.py +0 -0
  46. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/processes.py +0 -0
  47. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/project_dependencies.py +0 -0
  48. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/pyodide.py +0 -0
  49. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/pyproject_toml.py +0 -0
  50. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli/utils/template_cache.py +0 -0
  51. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli.egg-info/SOURCES.txt +0 -0
  52. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli.egg-info/dependency_links.txt +0 -0
  53. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli.egg-info/entry_points.txt +0 -0
  54. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/src/flet_cli.egg-info/top_level.txt +0 -0
  55. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/tests/test_clean.py +0 -0
  56. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/tests/test_plist.py +0 -0
  57. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/tests/test_project_dependencies.py +0 -0
  58. {flet_cli-0.86.0.dev1 → flet_cli-0.86.1}/tests/test_python_versions.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flet-cli
3
- Version: 0.86.0.dev1
3
+ Version: 0.86.1
4
4
  Summary: Flet CLI
5
5
  Author-email: "Appveyor Systems Inc." <hello@flet.dev>
6
6
  License-Expression: Apache-2.0
@@ -9,7 +9,7 @@ Project-URL: Repository, https://github.com/flet-dev/flet
9
9
  Project-URL: Documentation, https://flet.dev/docs
10
10
  Requires-Python: >=3.10
11
11
  Description-Content-Type: text/markdown
12
- Requires-Dist: flet==0.86.0.dev1
12
+ Requires-Dist: flet==0.86.1
13
13
  Requires-Dist: watchdog>=4.0.0
14
14
  Requires-Dist: packaging>=25.0
15
15
  Requires-Dist: qrcode>=7.4.2
@@ -1,13 +1,13 @@
1
1
  [project]
2
2
  name = "flet-cli"
3
- version = "0.86.0.dev1"
3
+ version = "0.86.1"
4
4
  description = "Flet CLI"
5
5
  authors = [{ name = "Appveyor Systems Inc.", email = "hello@flet.dev" }]
6
6
  license = "Apache-2.0"
7
7
  readme = "README.md"
8
8
  requires-python = ">=3.10"
9
9
  dependencies = [
10
- "flet==0.86.0.dev1",
10
+ "flet==0.86.1",
11
11
  "watchdog >=4.0.0",
12
12
  "packaging >=25.0",
13
13
  "qrcode >=7.4.2",
@@ -17,7 +17,7 @@ class Command(BaseBuildCommand):
17
17
  Android (APK/AAB), and iOS (IPA and simulator .app), with a wide range of
18
18
  customization options for metadata, assets, splash screens, and signing.
19
19
 
20
- Detailed guide with usage examples: https://flet.dev/docs/publish
20
+ Detailed usage guide: https://flet.dev/docs/publish
21
21
  """
22
22
 
23
23
  def __init__(self, parser: argparse.ArgumentParser) -> None:
@@ -428,7 +428,8 @@ class BaseBuildCommand(BaseFlutterCommand):
428
428
  dest="web_renderer",
429
429
  type=str.lower,
430
430
  choices=["auto", "canvaskit", "skwasm"],
431
- help="Flutter web renderer to use (web only) [env: FLET_WEB_RENDERER=]",
431
+ help="Flutter web renderer to use (web only), default: canvaskit "
432
+ "[env: FLET_WEB_RENDERER=]",
432
433
  )
433
434
  parser.add_argument(
434
435
  "--route-url-strategy",
@@ -1289,10 +1290,15 @@ class BaseBuildCommand(BaseFlutterCommand):
1289
1290
  or self.get_pyproject("tool.flet.web.route_url_strategy")
1290
1291
  or "path"
1291
1292
  ),
1293
+ # "canvaskit" (dart2js), not "auto": with "auto" Chromium browsers
1294
+ # select the dart2wasm/skwasm build, where every JS <-> Dart byte
1295
+ # buffer crossing pays a WasmGC boundary conversion instead of a
1296
+ # memcpy. Pyodide apps stream bytes constantly (protocol frames,
1297
+ # DataChannels) — measured ~6-7x slower frame display vs canvaskit.
1292
1298
  "web_renderer": (
1293
1299
  self.options.web_renderer
1294
1300
  or self.get_pyproject("tool.flet.web.renderer")
1295
- or "auto"
1301
+ or "canvaskit"
1296
1302
  ),
1297
1303
  "pwa_background_color": (
1298
1304
  self.options.pwa_background_color
@@ -1589,6 +1595,17 @@ class BaseBuildCommand(BaseFlutterCommand):
1589
1595
  }
1590
1596
  }
1591
1597
 
1598
+ # Only the web (Pyodide) build loads the packaged app as a Flutter
1599
+ # asset; on native platforms serious_python places it inside the
1600
+ # bundle, and a missing app/app.zip asset would fail the build.
1601
+ if self.config_platform == "web":
1602
+ if pubspec is None:
1603
+ pubspec = self.load_yaml(self.pubspec_path)
1604
+ assets = pubspec.setdefault("flutter", {}).setdefault("assets", [])
1605
+ for asset in ["app/app.zip", "app/app.zip.hash"]:
1606
+ if asset not in assets:
1607
+ assets.append(asset)
1608
+
1592
1609
  if pubspec is not None:
1593
1610
  self.save_yaml(self.pubspec_path, pubspec)
1594
1611
 
@@ -24,6 +24,8 @@ class Command(BaseCommand):
24
24
  Create a new Flet project using a predefined template.
25
25
  It sets up the initial directory structure, metadata,
26
26
  and required files to help you get started quickly.
27
+
28
+ Detailed guide with usage examples: https://flet.dev/docs/getting-started/create-flet-app
27
29
  """
28
30
 
29
31
  def add_arguments(self, parser: argparse.ArgumentParser) -> None:
@@ -12,6 +12,8 @@ from flet_cli.commands.build_base import BaseBuildCommand, console, verbose2_sty
12
12
  class Command(BaseBuildCommand):
13
13
  """
14
14
  Run a Flet Python app in debug mode on a specified platform (desktop, web, mobile).
15
+
16
+ Detailed usage guide: https://flet.dev/blog/flet-debug-the-new-cli-for-testing-flet-apps-on-mobile-devices
15
17
  """
16
18
 
17
19
  def __init__(self, parser: argparse.ArgumentParser) -> None:
@@ -24,6 +24,8 @@ from flet_cli.utils.python_versions import (
24
24
  class Command(BaseCommand):
25
25
  """
26
26
  Compile and package a Flet app as a standalone static web application.
27
+
28
+ Detailed usage guide: https://flet.dev/docs/publish/web/static-website
27
29
  """
28
30
 
29
31
  def add_arguments(self, parser: argparse.ArgumentParser) -> None:
@@ -111,8 +113,9 @@ class Command(BaseCommand):
111
113
  dest="web_renderer",
112
114
  type=str.lower,
113
115
  choices=["auto", "canvaskit", "skwasm"],
114
- default="auto",
115
- help="Flutter web renderer to use [env: FLET_WEB_RENDERER=]",
116
+ default=None,
117
+ help="Flutter web renderer to use, default: canvaskit "
118
+ "[env: FLET_WEB_RENDERER=]",
116
119
  )
117
120
  parser.add_argument(
118
121
  "--route-url-strategy",
@@ -352,10 +355,14 @@ class Command(BaseCommand):
352
355
  pyodide_pre=options.pre,
353
356
  pyodide_script_path=str(script_path),
354
357
  pyodide_version=python_release.pyodide,
358
+ # "canvaskit" default for the same reason as `flet build web`:
359
+ # "auto" puts Chromium on dart2wasm/skwasm, whose JS <-> Dart
360
+ # typed-data boundary costs are a large per-frame tax for
361
+ # byte-streaming Pyodide apps.
355
362
  web_renderer=WebRenderer(
356
363
  options.web_renderer
357
364
  or get_pyproject("tool.flet.web.renderer")
358
- or "auto"
365
+ or "canvaskit"
359
366
  ),
360
367
  route_url_strategy=RouteUrlStrategy(
361
368
  options.route_url_strategy
@@ -28,6 +28,8 @@ from flet_cli.utils.pyproject_toml import load_pyproject_toml
28
28
  class Command(BaseCommand):
29
29
  """
30
30
  Run a Flet application in hot reload mode.
31
+
32
+ Detailed usage guide: https://flet.dev/docs/getting-started/running-app
31
33
  """
32
34
 
33
35
  def add_arguments(self, parser: argparse.ArgumentParser) -> None:
@@ -104,6 +104,8 @@ class Command(BaseBuildCommand):
104
104
  `flet build`, in test mode) so the app runs on-device with embedded Python,
105
105
  then runs pytest. Tests in the `tests/` directory drive the app through the
106
106
  `flet_app` fixture (find controls by key, tap, take/assert screenshots).
107
+
108
+ Detailed usage guide: https://flet.dev/docs/getting-started/integration-testing
107
109
  """
108
110
 
109
111
  def __init__(self, parser: argparse.ArgumentParser) -> None:
@@ -28,7 +28,7 @@ from flet_cli.utils.template_cache import get_cache_root
28
28
  # python-build release this flet pins. Keep in sync with serious_python's
29
29
  # `pythonReleaseDate` (lib/src/python_versions.dart) — both should track the
30
30
  # same python-build release.
31
- PYTHON_BUILD_RELEASE_DATE = "20260701"
31
+ PYTHON_BUILD_RELEASE_DATE = "20260714"
32
32
 
33
33
  RELEASE_DATE_ENV = "FLET_PYTHON_BUILD_RELEASE_DATE"
34
34
  MANIFEST_PATH_ENV = "FLET_PYTHON_BUILD_MANIFEST"
@@ -0,0 +1 @@
1
+ version = "0.86.1"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flet-cli
3
- Version: 0.86.0.dev1
3
+ Version: 0.86.1
4
4
  Summary: Flet CLI
5
5
  Author-email: "Appveyor Systems Inc." <hello@flet.dev>
6
6
  License-Expression: Apache-2.0
@@ -9,7 +9,7 @@ Project-URL: Repository, https://github.com/flet-dev/flet
9
9
  Project-URL: Documentation, https://flet.dev/docs
10
10
  Requires-Python: >=3.10
11
11
  Description-Content-Type: text/markdown
12
- Requires-Dist: flet==0.86.0.dev1
12
+ Requires-Dist: flet==0.86.1
13
13
  Requires-Dist: watchdog>=4.0.0
14
14
  Requires-Dist: packaging>=25.0
15
15
  Requires-Dist: qrcode>=7.4.2
@@ -1,4 +1,4 @@
1
- flet==0.86.0.dev1
1
+ flet==0.86.1
2
2
  watchdog>=4.0.0
3
3
  packaging>=25.0
4
4
  qrcode>=7.4.2
@@ -1 +0,0 @@
1
- version = "0.86.0.dev1"
File without changes
File without changes