diff --git a/src/serious_python/CHANGELOG.md b/src/serious_python/CHANGELOG.md index 3aaed99d..3ffa74e0 100644 --- a/src/serious_python/CHANGELOG.md +++ b/src/serious_python/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.9.2 * Breaking change: multiple `--requirements` options of `package` command must be passed as `--requirements DEP_1 --requirements DEP_2 ...` (or `-r DEP_1 -r DEP_2 ...`) instead of `-r DEP_1,DEP_2,...` to support dependency specifications with commas, e.g. `pandas>=2.2,<3`. +* Fix site-packages packaging for Pyodide platform. ## 0.9.1 diff --git a/src/serious_python/bin/package_command.dart b/src/serious_python/bin/package_command.dart index 87c2cec6..7b123d15 100644 --- a/src/serious_python/bin/package_command.dart +++ b/src/serious_python/bin/package_command.dart @@ -20,6 +20,7 @@ const pyodideLockFile = "pyodide-lock.json"; const buildPythonVersion = "3.12.9"; const buildPythonReleaseDate = "20250205"; +const defaultSitePackagesDir = "__pypackages__"; const sitePackagesEnvironmentVariable = "SERIOUS_PYTHON_SITE_PACKAGES"; const flutterPackagesFlutterEnvironmentVariable = "SERIOUS_PYTHON_FLUTTER_PACKAGES"; @@ -264,12 +265,17 @@ class PackageCommand extends Command { if (requirements.isNotEmpty && !skipSitePackages) { String? sitePackagesRoot; - if (Platform.environment.containsKey(sitePackagesEnvironmentVariable)) { - sitePackagesRoot = - Platform.environment[sitePackagesEnvironmentVariable]; - } - if (sitePackagesRoot == null || sitePackagesRoot.isEmpty) { - sitePackagesRoot = path.join(currentPath, "build", "site-packages"); + if (platform != "Pyodide") { + if (Platform.environment + .containsKey(sitePackagesEnvironmentVariable)) { + sitePackagesRoot = + Platform.environment[sitePackagesEnvironmentVariable]; + } + if (sitePackagesRoot == null || sitePackagesRoot.isEmpty) { + sitePackagesRoot = path.join(currentPath, "build", "site-packages"); + } + } else { + sitePackagesRoot = path.join(tempDir.path, defaultSitePackagesDir); } if (await Directory(sitePackagesRoot).exists()) { diff --git a/src/serious_python/example/run_example/README.md b/src/serious_python/example/run_example/README.md index 21be3624..29e58160 100644 --- a/src/serious_python/example/run_example/README.md +++ b/src/serious_python/example/run_example/README.md @@ -6,32 +6,41 @@ For Android: ``` export SERIOUS_PYTHON_SITE_PACKAGES=$(pwd)/build/site-packages -dart run serious_python:main package app/src -p Android --requirements -r,app/src/requirements.txt +dart run serious_python:main package app/src -p Android -r -r -r app/src/requirements.txt ``` For iOS: ``` export SERIOUS_PYTHON_SITE_PACKAGES=$(pwd)/build/site-packages -dart run serious_python:main package app/src -p iOS --requirements -r,app/src/requirements.txt +dart run serious_python:main package app/src -p iOS -r -r -r app/src/requirements.txt ``` For macOS: ``` -dart run serious_python:main package app/src -p Darwin --requirements -r,app/src/requirements.txt +export SERIOUS_PYTHON_SITE_PACKAGES=$(pwd)/build/site-packages +dart run serious_python:main package app/src -p Darwin -r -r -r app/src/requirements.txt ``` For Windows: ``` -dart run serious_python:main package app/src -p Windows --requirements -r,app/src/requirements.txt +export SERIOUS_PYTHON_SITE_PACKAGES=$(pwd)/build/site-packages +dart run serious_python:main package app/src -p Windows -r -r -r app/src/requirements.txt ``` For Linux: ``` -dart run serious_python:main package app/src -p Linux --requirements -r,app/src/requirements.txt +export SERIOUS_PYTHON_SITE_PACKAGES=$(pwd)/build/site-packages +dart run serious_python:main package app/src -p Linux -r -r -r app/src/requirements.txt +``` + +For Pyodide: + +``` +dart run serious_python:main package app/src -p Pyodide -r -r -r app/src/requirements.txt ``` For Android: diff --git a/src/serious_python/example/run_example/app/app.zip.hash b/src/serious_python/example/run_example/app/app.zip.hash index cbe046be..ed5ee6e8 100644 --- a/src/serious_python/example/run_example/app/app.zip.hash +++ b/src/serious_python/example/run_example/app/app.zip.hash @@ -1 +1 @@ -bb18353320e48c8f5166c446e7c527cd2d69fd298a5e18881d64034f944a527e \ No newline at end of file +f191238eabf7628dcbb3a2671a20407a5338b7c375c015bf177ece347228b8ea \ No newline at end of file diff --git a/src/serious_python/example/run_example/app/src/requirements.txt b/src/serious_python/example/run_example/app/src/requirements.txt index 04f8ee3c..50630e5d 100644 --- a/src/serious_python/example/run_example/app/src/requirements.txt +++ b/src/serious_python/example/run_example/app/src/requirements.txt @@ -1,5 +1,5 @@ -#numpy -lru-dict +numpy +#lru-dict #pyjnius #flet-libsodium # pysodium diff --git a/src/serious_python/example/run_example/pubspec.lock b/src/serious_python/example/run_example/pubspec.lock index 7aa719bb..94e4ede3 100644 --- a/src/serious_python/example/run_example/pubspec.lock +++ b/src/serious_python/example/run_example/pubspec.lock @@ -53,10 +53,10 @@ packages: dependency: transitive description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.0" crypto: dependency: transitive description: @@ -158,18 +158,18 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" + sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" url: "https://pub.dev" source: hosted - version: "10.0.4" + version: "10.0.7" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" + sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" url: "https://pub.dev" source: hosted - version: "3.0.3" + version: "3.0.8" leak_tracker_testing: dependency: transitive description: @@ -198,18 +198,18 @@ packages: dependency: transitive description: name: material_color_utilities - sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec url: "https://pub.dev" source: hosted - version: "0.8.0" + version: "0.11.1" meta: dependency: transitive description: name: meta - sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 url: "https://pub.dev" source: hosted - version: "1.12.0" + version: "1.15.0" path: dependency: "direct main" description: @@ -278,10 +278,10 @@ packages: dependency: transitive description: name: platform - sha256: "12220bb4b65720483f8fa9450b4332347737cf8213dd2840d8b2c823e47243ec" + sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65" url: "https://pub.dev" source: hosted - version: "3.1.4" + version: "3.1.5" plugin_platform_interface: dependency: transitive description: @@ -352,7 +352,7 @@ packages: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_span: dependency: transitive description: @@ -365,10 +365,10 @@ packages: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.0" stream_channel: dependency: transitive description: @@ -381,10 +381,10 @@ packages: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.0" sync_http: dependency: transitive description: @@ -405,10 +405,10 @@ packages: dependency: transitive description: name: test_api - sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" + sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" url: "https://pub.dev" source: hosted - version: "0.7.0" + version: "0.7.3" toml: dependency: transitive description: @@ -437,10 +437,10 @@ packages: dependency: transitive description: name: vm_service - sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" + sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b url: "https://pub.dev" source: hosted - version: "14.2.1" + version: "14.3.0" web: dependency: transitive description: @@ -453,10 +453,10 @@ packages: dependency: transitive description: name: webdriver - sha256: "003d7da9519e1e5f329422b36c4dcdf18d7d2978d1ba099ea4e45ba490ed845e" + sha256: "3d773670966f02a646319410766d3b5e1037efb7f07cc68f844d5e06cd4d61c8" url: "https://pub.dev" source: hosted - version: "3.0.3" + version: "3.0.4" xdg_directories: dependency: transitive description: diff --git a/src/serious_python_android/CHANGELOG.md b/src/serious_python_android/CHANGELOG.md index 198fbf23..ade1a1ad 100644 --- a/src/serious_python_android/CHANGELOG.md +++ b/src/serious_python_android/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.9.2 * Breaking change: multiple `--requirements` options of `package` command must be passed as `--requirements DEP_1 --requirements DEP_2 ...` (or `-r DEP_1 -r DEP_2 ...`) instead of `-r DEP_1,DEP_2,...` to support dependency specifications with commas, e.g. `pandas>=2.2,<3`. +* Fix site-packages packaging for Pyodide platform. ## 0.9.1 diff --git a/src/serious_python_darwin/CHANGELOG.md b/src/serious_python_darwin/CHANGELOG.md index 35b5274d..4170680c 100644 --- a/src/serious_python_darwin/CHANGELOG.md +++ b/src/serious_python_darwin/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.9.2 * Breaking change: multiple `--requirements` options of `package` command must be passed as `--requirements DEP_1 --requirements DEP_2 ...` (or `-r DEP_1 -r DEP_2 ...`) instead of `-r DEP_1,DEP_2,...` to support dependency specifications with commas, e.g. `pandas>=2.2,<3`. +* Fix site-packages packaging for Pyodide platform. ## 0.9.1 diff --git a/src/serious_python_linux/CHANGELOG.md b/src/serious_python_linux/CHANGELOG.md index 1909dd16..53892769 100644 --- a/src/serious_python_linux/CHANGELOG.md +++ b/src/serious_python_linux/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.9.2 * Breaking change: multiple `--requirements` options of `package` command must be passed as `--requirements DEP_1 --requirements DEP_2 ...` (or `-r DEP_1 -r DEP_2 ...`) instead of `-r DEP_1,DEP_2,...` to support dependency specifications with commas, e.g. `pandas>=2.2,<3`. +* Fix site-packages packaging for Pyodide platform. ## 0.9.1 diff --git a/src/serious_python_platform_interface/CHANGELOG.md b/src/serious_python_platform_interface/CHANGELOG.md index 5bd9dd4f..9b0762b7 100644 --- a/src/serious_python_platform_interface/CHANGELOG.md +++ b/src/serious_python_platform_interface/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.9.2 * Breaking change: multiple `--requirements` options of `package` command must be passed as `--requirements DEP_1 --requirements DEP_2 ...` (or `-r DEP_1 -r DEP_2 ...`) instead of `-r DEP_1,DEP_2,...` to support dependency specifications with commas, e.g. `pandas>=2.2,<3`. +* Fix site-packages packaging for Pyodide platform. ## 0.9.1 diff --git a/src/serious_python_windows/CHANGELOG.md b/src/serious_python_windows/CHANGELOG.md index ee0fd2cf..6811f2bc 100644 --- a/src/serious_python_windows/CHANGELOG.md +++ b/src/serious_python_windows/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.9.2 * Breaking change: multiple `--requirements` options of `package` command must be passed as `--requirements DEP_1 --requirements DEP_2 ...` (or `-r DEP_1 -r DEP_2 ...`) instead of `-r DEP_1,DEP_2,...` to support dependency specifications with commas, e.g. `pandas>=2.2,<3`. +* Fix site-packages packaging for Pyodide platform. ## 0.9.1