Improvements
- Update serious_python to
5.0.0.flet buildnow passes each exclude path and cleanup glob to it as a separate option, so paths containing commas are excluded correctly and brace globs such as**/{tests,docs}in acleanup.app_filesorcleanup.package_fileslist work (serious-python#253, #6890) by @FeodorFitsner. - Add
identifiertoSemanticsso native accessibility tools and widget tests can match a stable ID (Androidresource-id, iOSaccessibilityIdentifier, webflt-semantics-identifier) instead of visible labels, plusTester.find_by_semantics_identifier()(#6832) by @mccre110. flet runandft.run()now print a warning with the desktop client's path when they use one from a previousflet buildinbuild/<platform>, so an outdated client that lacks an extension is easy to spot (#6821) by @ndonkoHenri.flet buildandflet debugpass the arguments that follow a--separator to Flutter, e.g.flet build apk -- --obfuscate --split-debug-info=build/symbols, as an alternative to repeating--flutter-build-args(#6879) by @ndonkoHenri.flet packpasses the arguments that follow a--separator to PyInstaller, e.g.flet pack main.py -- --clean, as an alternative to repeating--pyinstaller-build-args(#6879) by @ndonkoHenri.flet testpasses the arguments that follow a--separator to pytest, e.g.flet test -k screenshot -- -x --maxfail=1(#6879) by @ndonkoHenri.
Bug fixes
-
Fix the Android SDK auto-installation failing on Windows (#6522, #6892) by @ndonkoHenri.
-
Fix
InteractiveViewerfailing to render whenalignmentis set (#6744, #6887) by @ndonkoHenri. -
flet-charts: Fix
ScatterChartfailing to render when aScatterChartSpothasx_errorory_errorset. Error ranges are now set with the newChartErrorRangetype and drawn as error bars in the color of their spot (#6885) by @ndonkoHenri. -
Fix iOS apps that use
sqlite3stopping withAssertion failed: (0), function isBulkReadStatementwhen run from Xcode on iOS 18 and later, by turning off Xcode's Thread Performance Checker in the scheme generated byflet build(#5480, #6882) by @ndonkoHenri. -
Fix
Button(icon=...)and other material buttons rendering an error box whencontentis not set. Icon-only buttons now render the icon centered (#6886, #6889) by @FeodorFitsner. -
Fix
flet debug,flet build,flet test,flet emulatorsandflet runrejecting a positional argument typed after an option on Python 3.10, 3.11, 3.12.0-3.12.6 and 3.13.0 -flet debug ios --device-id X my_appfailed withunrecognized arguments: my_app- by backporting the upstreamargparsefix (CPython gh-59317). Also, an app path pointing to a file such asmain.pyis now rejected with a clear error instead of crashing onmain.py/build, and a bad app path fails before the Flutter toolchain is set up (#6840, #6875) by @ndonkoHenri. -
Fix
--android-extract-packageskeeping only the values of its last occurrence when repeated. Like the other list options offlet build, repeating it now adds to the list (#6875) by @ndonkoHenri. -
Fix
--flutter-build-argshanding a value that starts with-to Flet instead of Flutter ---flutter-build-args --verboseturned on Flet's own verbose output - and overridingbuild_argsfrompyproject.tomlwith an empty list. Such an occurrence now fails with a hint to attach the value using=, e.g.--flutter-build-args=--obfuscate(#6879) by @ndonkoHenri. -
Fix
--pyinstaller-build-argshanding a value that starts with-to Flet instead of PyInstaller ---pyinstaller-build-args -yturned on Flet's own-y- or rejecting it as unrecognized. Such an occurrence now fails with a hint to attach the value using=or to pass it after--(#6879) by @ndonkoHenri. -
Fix
flet buildpackaging virtual environments,.git,.fletand other development files into the app. Hidden entries in the app root (a leading., or the hidden attribute on Windows), virtual environments detected bypyvenv.cfg, and__pycache__directories are now excluded by default, and the build prints what was excluded (#6839, #6890) by @FeodorFitsner.Compatibility:
.envand other dot-prefixed files in the app root are no longer packaged. Keep them with--include .envorinclude = [".env"]under[tool.flet.app], or turn default exclusions off with--no-default-excludes/default_excludes = false. Apps built with earlier versions may already contain.venvor.flet. -
Fix an empty list or table under
[tool.flet.<PLATFORM>]falling back to the global[tool.flet]value.app.exclude,source_packages,dev_packages,target_arch,extract_packages,cleanup.app_files,cleanup.package_filesandflutter.build_argsnow treat[]or{}in a platform section as "none for this platform" (#6890) by @FeodorFitsner.
Other changes
- Simplify HTTP request handling in
AuthorizationServiceandGitHubOAuthProviderusing HTTPX client methods and built-in JSON parsing (#6870) by @osamalzabidi.
Full Changelog: v1.0.1...v1.0.2