diff --git a/pyproject.toml b/pyproject.toml index 852a2b7..eb46ac3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,9 +10,12 @@ license-files = ["LICENSE"] requires-python = ">=3.13" dependencies = [ "dropbox>=12.0.2", - "flet>=0.85.3", - "flet-permission-handler>=0.85.3", - "flet-secure-storage>=0.85.3", + # Pin exact: `flet build` resolves deps from pyproject (not uv.lock). A + # newer Python `flet` with an older Flutter client (or vice versa) breaks + # the wire protocol and the packaged app stays on a black screen. + "flet==0.85.3", + "flet-permission-handler==0.85.3", + "flet-secure-storage==0.85.3", "garmin-fit-sdk>=21.208.0", "packaging>=26.2", "platformdirs>=4.0", diff --git a/uv.lock b/uv.lock index 539142d..3d87ca9 100644 --- a/uv.lock +++ b/uv.lock @@ -230,9 +230,9 @@ dev = [ [package.metadata] requires-dist = [ { name = "dropbox", specifier = ">=12.0.2" }, - { name = "flet", specifier = ">=0.85.3" }, - { name = "flet-permission-handler", specifier = ">=0.85.3" }, - { name = "flet-secure-storage", specifier = ">=0.85.3" }, + { name = "flet", specifier = "==0.85.3" }, + { name = "flet-permission-handler", specifier = "==0.85.3" }, + { name = "flet-secure-storage", specifier = "==0.85.3" }, { name = "garmin-fit-sdk", specifier = ">=21.208.0" }, { name = "packaging", specifier = ">=26.2" }, { name = "platformdirs", specifier = ">=4.0" },