Skip to content

Commit 02a07a0

Browse files
Added support for tool.flet.dev_packages (#4965)
* Added support for `tool.flet.develop_packages` Close #4963 * develop_packages -> dev_packages
1 parent 60139f6 commit 02a07a0

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

client/pubspec.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ packages:
263263
path: "../packages/flet"
264264
relative: true
265265
source: path
266-
version: "0.26.0"
266+
version: "0.27.1"
267267
flet_ads:
268268
dependency: "direct main"
269269
description:

sdk/python/packages/flet-cli/src/flet_cli/commands/build.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import re
66
import shutil
77
import sys
8+
import time
89
from pathlib import Path
910
from typing import Optional, cast
1011

@@ -23,6 +24,7 @@
2324
)
2425
from flet_cli.utils.pyproject_toml import load_pyproject_toml
2526
from packaging import version
27+
from packaging.requirements import Requirement
2628
from rich.console import Console, Group
2729
from rich.live import Live
2830
from rich.panel import Panel
@@ -1581,7 +1583,27 @@ def package_python_app(self):
15811583
toml_dependencies.extend(platform_dependencies)
15821584

15831585
if len(toml_dependencies) > 0:
1586+
dev_packages = (
1587+
self.get_pyproject(f"tool.flet.{self.config_platform}.dev_packages")
1588+
or self.get_pyproject(f"tool.flet.dev_packages")
1589+
or []
1590+
)
1591+
if len(dev_packages) > 0:
1592+
no_cache = False
1593+
for i in range(0, len(toml_dependencies)):
1594+
package_name = Requirement(toml_dependencies[i]).name
1595+
if package_name in dev_packages:
1596+
dev_path = Path(dev_packages[package_name])
1597+
if not dev_path.is_absolute():
1598+
dev_path = (self.python_app_path / dev_path).resolve()
1599+
toml_dependencies[i] = f"{package_name} @ file://{dev_path}"
1600+
no_cache = True
1601+
if no_cache:
1602+
toml_dependencies.append("--no-cache-dir")
1603+
hash.update(time.time())
1604+
15841605
package_args.append(",".join(toml_dependencies))
1606+
15851607
elif requirements_txt.exists():
15861608
if self.verbose > 1:
15871609
with open(requirements_txt, "r", encoding="utf-8") as f:

0 commit comments

Comments
 (0)