fix(deps): update dependency flet to v0.85.3#301
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
161cff8 to
3d69e1b
Compare
3d69e1b to
0d09135
Compare
27db268 to
d36e3fa
Compare
2a73911 to
e7a0249
Compare
e7a0249 to
d4e625c
Compare
b8cc975 to
0ce3ead
Compare
cfef1d1 to
74d98f3
Compare
74d98f3 to
4bb03c8
Compare
1a1574a to
0599f18
Compare
0599f18 to
1a18781
Compare
1a18781 to
bcd5866
Compare
b9a0f6a to
1d1ff85
Compare
6462220 to
0a627d0
Compare
0a627d0 to
eefa592
Compare
eefa592 to
eaf0d24
Compare
1fc20ce to
2fe18b1
Compare
2fe18b1 to
8912c06
Compare
2c15c10 to
b91c29c
Compare
b91c29c to
2499748
Compare
807830a to
617f01c
Compare
b0d196d to
ee48459
Compare
ee48459 to
55f3e85
Compare
55f3e85 to
13fc06b
Compare
13fc06b to
f7c9cb4
Compare
f7c9cb4 to
93eb1a7
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==0.27.6→==0.85.3Release Notes
flet-dev/flet (flet)
v0.85.3Compare Source
Improvements
[tool.flet.android.permission]values to be TOML inline tables in addition to booleans — eachkey = "value"entry adds anandroid:<key>="<value>"attribute to the generated<uses-permission>element, unlocking modifiers likeandroid:maxSdkVersionandandroid:usesPermissionFlagsthat real-world Android permissions (e.g. Bluetooth LE) require. The boolean form and the--android-permissionsCLI flag are unchanged; a non-empty inline table is always emitted, an empty table ({}) is treated asfalse, and invalid value types fail the build with a clear error (#6550, #6551) by @FeodorFitsner.[tool.flet.android.provider]for declaring custom<provider>entries in the generatedAndroidManifest.xml. Each table key is the provider'sandroid:name; entries becomeandroid:<key>="<value>"attributes on the generated element. A reservedmeta_datasub-table emits nested<meta-data>children (scalar values render asandroid:value="…"; inline-table values render asandroid:<k>="<v>"soandroid:resource="@​xml/…"works).false/{}skip the entry;trueand invalid value types fail the build with a clear error. The built-inandroidx.core.content.FileProviderblock is unchanged (#6556, #6559) by @FeodorFitsner.flet build webtemplate from0.27.5to0.27.7(includesmicropip0.9.0) (#6549) by @FeodorFitsner.web/canvaskit/build artifacts (canvaskit.js/.wasm/.symbolsand thechromium/andskwasm/skwasm_stvariants) from theflet build webtemplate — these are produced by the Flutter web build and should not have been committed into the cookiecutter template (#6549) by @FeodorFitsner.flet-build-template.zipacross builds. The build template is bound to an exact Flet version and is immutable, so on everyflet build/flet debugafter the first, the CLI now uses a previously-downloaded zip from$FLET_CACHE_DIR/build-template/v<flet-version>/(defaulting to~/.flet/cache/build-template/v<flet-version>/) instead of re-fetching it via cookiecutter. The CLI also exportsFLET_CACHE_DIRinto the child Gradle process, soserious_python_android>= 1.0.1 lands its Python dist tarballs (python-android-dart-<py>-<abi>.tar.gz) in the same cache root by default — fixing the multi-minute "Creating app shell" /downloadDistArchive_*delay on every Android debug build. Custom--templateURLs and the local-dev template path are unchanged (#6555, #6558) by @FeodorFitsner.serious_pythondependency from1.0.0to1.0.1so Android builds pick up the new persistent Python-tarball cache + conditional-GET revalidation introduced inserious_python1.0.1 (#6558) by @FeodorFitsner.Bug fixes
flet.Router's defaulton_view_popnavigating to the wrong URL when anoutlet=Truelayout sits between two views inmanage_views=Truemode. Popping such a view now targets the previous view entry's resolved URL — skipping outlet layouts and componentless grouping routes — instead ofchain[-2], which could equal the current view's URL and strand the page route, making the next navigation to it a no-op (#6533) by @FeodorFitsner.flet-audio.Audio.play()/seek()timing out when replaying after playback had completed: under the defaultReleaseMode.RELEASEthe source is freed on completion and is now re-prepared on replay (#6536, #6538) by @ndonkoHenri.ft.run(view=ft.AppView.FLET_APP_HIDDEN)briefly flashing the native window in the top-left corner during Windows desktop startup. The Windows runner now respectsFLET_HIDE_WINDOW_ON_STARTand skips the first-frameShow()call so the window stays hidden untilpage.window.visible = True, matching the Linux desktop behavior; the same fix is applied to theflet build windowstemplate runner so generated apps behave consistently. On Linux, pre-show window placement actions (page.window.center(),page.window.alignment) are now deferred until the window first becomes visible to avoid an analogous flash, and the window'sfocusedstate is preserved when aprevent_closehandler cancels a close attempt (#5897, #5914, #6527) by @ihmily.v0.85.2Compare Source
New features
Route(modal=True)toflet.Routerfor fullscreen-dialog modal overlays that don't replace the underlying view stack — closing the modal pops it without rebuilding the views underneath. Two flavours by placement: top-level modals are global (the base stack is rebuilt from the Router's last non-modal location), nested-child modals are local (the base stack is the chain above the modal in the route tree, so deep-link works from URL alone) (#6516) by @FeodorFitsner.Route(recursive=True)toflet.Routerso a route can match itself as its own descendant — oneViewper consumed URL segment, ideal for tree-shaped URLs of unbounded depth (/folder/a/b/cproduces a 4-View stack; back-swipe walks one segment at a time). Non-recursive children are tried before self-recursion at every depth, so a specific sibling (e.g.example/:gp*) wins over the recursive:slugwithout duplicating it at every level (#6516) by @FeodorFitsner.Improvements
flet.Router's defaulton_view_popnow navigates to the matched chain's parent (chain[-2].resolved_path) instead ofviews[-2].route, which is robust against apps that share aView.routevalue between sibling tab roots to suppress switch transitions. Apps that install their ownpage.on_view_popbeforepage.render_views()still take precedence. Each sub-chain (base + modal) renders with its ownLocationInfo, sois_route_active(...)inside a base view sees the base URL while a global modal is open over it (#6516) by @FeodorFitsner.Bug fixes
sessionStorage-cloned_flet_session_id.REGISTER_CLIENTnow rejects session reuse when the existing session still has a liveconnection, allocating a fresh session for the second tab while preserving legitimate single-tab reconnect after refresh or network blip (whereconnectionis alreadyNone) (#6512, #6513) by @ihmily.v0.85.1Compare Source
Bug fixes
TooltipTheme.decorationso it applies to controls usingft.Tooltip(...)when the tooltip does not explicitly setdecorationorbgcolor(#6432, #6482) by @ndonkoHenri.flet-geolocator.Geolocatorreliability on web and desktop:get_last_known_position()no longer crashes withTypeError: argument after ** must be a mapping, not NoneTypeand now returnsOptional[GeolocatorPosition];get_current_position()no longer hangs forever on web (Dart-side workaround for the upstreamgeolocator_web4.1.3inMicroseconds/inMillisecondstimeout typo) and uses sensible web defaults (time_limit: 30s,maximum_age: 5m); the previously-droppedconfigurationargument now actually reachesgetCurrentPositionon the Dart side; the position stream is gated behind a registeredon_position_change/on_errorhandler (with cancel-on-update to prevent leaks); and platform exceptions (LocationServiceDisabledException,PermissionDeniedException,PermissionDefinitionsNotFoundException,PermissionRequestInProgressException,PositionUpdateException,TimeoutException) are now translated into actionable error messages and surfaced to Python asRuntimeErrorwithout the defaultException:prefix (#6487) by @FeodorFitsner.flet'soauthlib/httpxdeps not actually excluding those packages under Pyodide: theflet build webpackage platform has been renamed fromPyodidetoEmscriptento matchplatform.system()inside the Pyodide runtime, and the markers now useplatform_system != 'Emscripten', so the exclusion works both viaflet buildand a directmicropip.install("flet")in a Pyodide REPL. Requiresserious_python>= 1.0.0, which is now pinned in theflet buildtemplate (#6492) by @FeodorFitsner.v0.85.0Compare Source
New features
flet-video;Video.take_screenshot()for capturing video frames; andVideo.on_position_change/Video.on_duration_changeevents (#6463) by @ndonkoHenri.ft.Routercomponent for@ft.componentapps with nested routes, layout routes with outlets, dynamic segments, optional segments, splats, custom regex constraints, data loaders, active link detection, authentication patterns, andmanage_views=Truemode for view-stack navigation with swipe-back gestures andAppBarback button on mobile (#6406) by @FeodorFitsner.ft.use_dialog()hook for declarative dialog management from within@ft.componentfunctions, with frozen-diff reactive updates and automatic open/close lifecycle (#6335) by @FeodorFitsner.scrollable,pin_leading_to_top, andpin_trailing_to_bottomproperties toNavigationRailfor scrollable content with optional pinned leading/trailing controls (#1923, #6356) by @ndonkoHenri.ResponsiveRowfor responsive layouts whose content exceeds the available height (#2590, #6417) by @ndonkoHenri.issuesproperty toCodeEditor(along withIssueandIssueTypetypes) for displaying code analysis error markers in the gutter, with analysis performed on the Python side (#6407) by @FeodorFitsner.Page.pop_views_until()to pop multiple views and return a result to the destination view (#6326, #6347) by @brunobrown.NavigationDrawerDestination.labelaccept custom controls and addNavigationDrawerTheme.icon_theme(#6379, #6395) by @ndonkoHenri.local_positionandglobal_positiontoDragTargetEventfor target-relative and global pointer coordinates (#6387, #6401) by @ndonkoHenri.AudioRecorder, includingon_streamchunks and direct upload support viaAudioRecorderUploadSettings(#5858, #6423) by @ndonkoHenri.Page.theme_animation_stylefor customizing the duration and curve of the theme cross-fade betweenthemeanddark_theme(or disabling it withAnimationStyle.no_animation()), exposing Flutter'sMaterialApp.themeAnimationStyle(#6476) by @FeodorFitsner.Breaking changes
margin,padding,border, andborder_radiushelper functions (all(),symmetric(),only(),horizontal(),vertical()) in favor of the correspondingMargin,Padding,Border, andBorderRadiusclassmethods (#6425) by @ndonkoHenri.Deprecations
DragTargetEvent.x,DragTargetEvent.y, andDragTargetEvent.offset; uselocal_positionfor target-relative coordinates orglobal_positionfor global coordinates instead. These APIs are scheduled for removal in0.88.0(#6387, #6401) by @ndonkoHenri.Video.show_controls; setVideo.controlstoNoneto hide controls. This API is scheduled for removal in0.88.0(#6463) by @ndonkoHenri.Video.playlist_add()andVideo.playlist_remove(); mutateVideo.playlistdirectly with list methods such asappend()andpop(). These APIs are scheduled for removal in0.88.0(#6463) by @ndonkoHenri.Bug fixes
@valuedataclass objects so they keep the nearest control parent/page context, and restore optional structured properties that are cleared toNoneand later set again (#6463) by @ndonkoHenri.PageandViewvertical centering when scrolling is enabled, including hidden scrollbars, so short content remains centered in the viewport (#6446, #6450) by @ndonkoHenri.flet_video.Videocontrols by linkingmedia_kitvideo apps against mimalloc in run and build flows (#6164, #6416) by @ndonkoHenri.flet buildandflet publishdependency parsing forproject.dependenciesand Poetry constraints with</<=, and add coverage for normalized requirement handling (#6332, #6340) by @td3447.CodeEditorbackground not filling the entire area whenexpand=True(#6407) by @FeodorFitsner.ResponsiveRowwith an explicit error, treat child controls withcol=0as hidden, and clarifyContainerexpansion behavior whenalignmentis set (#1951, #3805, #5209, #6354) by @ndonkoHenri.find_platform_imageselecting incompatible icon formats (e.g..icnson Windows) by ranking glob results per target platform (#6381) by @HG-ha.page.window.destroy()taking several seconds to close Windows desktop apps whenprevent_closeis enabled (#5459, #6428) by @ndonkoHenri.Page.show_drawer(),close_drawer(), and root/top view accessors (appbar,drawer,navigation_bar,controls, ...) failing withTypeErrorunderPage.render_views()by unwrapping component-wrapped views and normalizing single-view returns (#6413, #6414) by @FeodorFitsner.auto_scrollon scrollable controls silently doing nothing unlessscrollwas also explicitly set (#6397, #6404) by @ndonkoHenri.index.htmlwith a200 OKfor missing asset files; requests for paths with a file extension other than.htmlnow return a proper404, while route-like paths still fall back toindex.htmlfor SPA routing (#6425) by @ndonkoHenri.Lottiefailing to load local asset files on Windows desktop (and unreliably on other desktop platforms), so animations referenced bysrc="file.json"from the app'sassets/directory now display correctly (#6386, #6426) by @ndonkoHenri.Page.on_resizeandPage.on_media_changenot firing after mobile orientation changes (#6457, #6423) by @ndonkoHenri.flet packdesktop packaging so Windows and Linux bundles include the expected client archive, and Windows taskbar pins point to the packed app instead of the cachedflet.exe(#5151, #6403) by @ndonkoHenri.flet buildtemplate: inherit fromPlatform.environmentand useputIfAbsentfor FLET_* variables so pre-set system env vars are not overwritten (#6394) by @Bahtya.NavigationBarDestination.selected_iconrendering wrongly when provided as anIconcontrol (#6460, #6468) by @ndonkoHenri.#c00,#fc00) rendering as invisible by expanding them to their full 6/8-digit forms (#6419, #6421) by @ndonkoHenri.LineChartEvent.spotsreturning undecoded MessagePack extension values instead ofLineChartEventSpotobjects (#6443, #6468) by @ndonkoHenri.LineChart(and other charts) silently dropping customChartAxisLabelentries whosevaluematched a tick only after floating-point rounding (e.g.0.1,0.2,0.3) by switching label lookup to a tolerance-based comparison scaled to the axis interval (#6445, #6459) by @KangZhaoKui.src(e.g.Image(src="/images/foo.svg")) breaking on web when the app is mounted at a non-root URL, passdata:/blob:URIs through the asset resolver unchanged, preserve origin-relative semantics whenassets_diris unset, and add awindow.flet.assetsDirJS-interop bridge so embedding hosts can supplyassets_dirto the top-levelFletApp(#6470) by @FeodorFitsner.MatplotlibCharton Flutter web (CanvasKit/WASM) during animations by replacing theCanvas+capture()rendering path with a dedicatedMatplotlibChartCanvaswidget that composites matplotlib diff frames in CPU memory; also fixes Safari async PNG decode (EncodingError: Loading error.), a render/figure.savefig()race that crashed the toolbar Download, and pan/zoom playback lag from buffered pointer events (#6473) by @FeodorFitsner.Durationfields (and otherint-typed properties) silently decoding to0when given a Pythonfloat(e.g.Duration(seconds=2.0)causingPage.theme_animation_styleto end instantly) by coercingdoubletointin the Dart-sideparseInt(#6478, #6480) by @FeodorFitsner.Documentation
crocodocs watchcommand for hot-reload docs development with file-watching, debounced regeneration, and optional child process management (#6402) by @ndonkoHenri.Other changes
ReorderableListViewapp example showing add, remove, and reorder flows with stable item identity (#6374) by @FeodorFitsner.flet.utils.linux_depsand update CI workflows and publish docs to consume them dynamically (#6357, #6383) by @ndonkoHenri.serious_pythonto0.9.12in theflet buildtemplate (#6461) by @FeodorFitsner.v0.84.0Compare Source
Improvements
Bug fixes
flet packon macOS after the move to GitHub Releases by handling extracted app bundles, matching the cached tarball name, and cleaning up loose frameworks during packaging (#6358, #6361) by @FeodorFitsner.v0.83.1Compare Source
Bug fixes
local_delta.xandlocal_delta.yinstead of removeddelta_xanddelta_y(#6317, #6344) by @Krishnachaitanyakc.flet-datatable2on0.83.0(#6349, #6350) by @ndonkoHenri.v0.83.0Compare Source
New features
ExpansionPanelList(#6294) by @ndonkoHenri.SharedPreferencesto supportint,float,bool, andlist[str]values (#6304, #6267) by @ndonkoHenri.Improvements
Propupdates and@valuetypes (#6098, #6270, #6117, #6296) by @FeodorFitsner.fletpackages and template artifacts from CI (#6306, #6331) by @FeodorFitsner.flet-desktop(#6290, #6309) by @FeodorFitsner.Annotated+ auto-added deprecation admonitions in docs (#6278) by @ndonkoHenri.Bug fixes
.update()explicitly (#6236, #6298) by @FeodorFitsner.ReorderableListViewreorder event deserialization for start/end callbacks (#6177, #6315) by @ndonkoHenri.micropipfor Pyodide apps that already define dependencies inpyproject.toml(#6259, #6300) by @FeodorFitsner.v0.82.2Compare Source
Bug fixes
binaryornotbelow0.5to fix build-template UTF-8 decode errors (#6276, #6279) by @ndonkoHenri.v0.82.0Compare Source
New features
audiencesupport through OAuthauthorization_params(#3775, #6205).Map.get_camera(),MapEventType, and richerMapEventpayloads inflet-map(#6196, #6208).Improvements
InterstitialAdis now aService, andBannerAdis now aLayoutControl(#6194, #6235).CodeEditorwith Chinese pinyin input support and aligned gutter rendering (#6211, #6243, #6244).Trolliapp declarative example rewrite (#6242).Bug fixes
Tabs,TabBar,Tab, andTabBarView(#6220, #6224).WebViewnull-check crash (Null check operator used on a null value) (#6238).Other changes
v0.81.0Compare Source
New features
Cameracontrol (#6190).CodeEditorcontrol (#6162).PageViewcontrol (#6158).flutter_colorpicker(#6109).LayoutControl.transformandRotatedBoxcontrol (#6198).LayoutControl.on_size_changeevent for size-aware layouts (#6099).Heroanimations (#6157).FilePickerwith_datasupport for file content (#6199).ignore_up_down_keystoTextFieldandCupertinoTextField(#6183).flet build --artifactand iOS simulator build targets (#6074, #6188).Improvements
object_patchmemory churn (#6204).Bug fixes
stylepatching and clear stale style state (#6119).AlertDialogandCupertinoAlertDialogbarrier color updates (#6097).ControlEventruntime type hints (#6102).Other changes
.mjsand.wasm(#6140).v0.80.5Compare Source
ft.Markdown(#6069).FletAppcontrol messing with root app routing (#6086).v0.80.4Compare Source
IconsandCupertinoIconsproxies for member caching and iteration (#6055).v0.80.3Compare Source
localeprop toCupertinoDatePicker,DatePicker,DateRangePicker,TimePicker(#6030).datetimeinstances to UTC while passing over the wire (#6023).badge_positionandtitle_positionofPieChartSectionaccept values >=1.0(#6024).GestureDetector.on_tapevent (#6016).v0.80.2Compare Source
LinearGradientalignment defaults + allow multiple use of--excludeoption inflet build(#5986).on_long_pressandon_hoverevents toIconButton(#5984).asyncio.iscoroutinefunctionwithinspect.iscoroutinefunction(#5928).flet_permission_handlerwhen using Python 3.14 (#5896).v0.80.1Compare Source
flet publishto sub-directories, Icons Browser and other Gallery examples updated #5964.v0.80.0Compare Source
v0.28.3Compare Source
send_all_on_topic(#5303)v0.28.2Compare Source
__init__.py(#5292).v0.28.1Compare Source
Configuration
📅 Schedule: (in timezone Asia/Tokyo)
* 0-23 * * *)🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.