Skip to content

Commit 28aa51b

Browse files
committed
Merge remote-tracking branch 'upstream/main'
2 parents 2f43c5a + 2a95061 commit 28aa51b

File tree

26 files changed

+192
-89
lines changed

26 files changed

+192
-89
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
- name: Run tests
3333
working-directory: "src/serious_python/example/flet_example"
3434
run: |
35-
dart run serious_python:main package app/src --platform Darwin --requirements flet
35+
dart run serious_python:main package app/src --platform Darwin --requirements flet==0.28.3
3636
flutter test integration_test --device-id macos
3737
3838
ios:
@@ -62,7 +62,7 @@ jobs:
6262
- name: Run tests
6363
working-directory: "src/serious_python/example/flet_example"
6464
run: |
65-
dart run serious_python:main package app/src --platform iOS --requirements flet
65+
dart run serious_python:main package app/src --platform iOS --requirements flet==0.28.3
6666
flutter test integration_test --device-id ${{ steps.simulator.outputs.udid }}
6767
6868
android:
@@ -115,7 +115,7 @@ jobs:
115115
pre-emulator-launch-script: |
116116
sdkmanager --list_installed
117117
script: |
118-
cd src/serious_python/example/flet_example && dart run serious_python:main package app/src --platform Android --requirements flet
118+
cd src/serious_python/example/flet_example && dart run serious_python:main package app/src --platform Android --requirements flet==0.28.3
119119
cd src/serious_python/example/flet_example && flutter test integration_test --device-id emulator-${{ env.EMULATOR_PORT }}
120120
121121
windows:
@@ -134,7 +134,7 @@ jobs:
134134
- name: Run tests
135135
working-directory: "src/serious_python/example/flet_example"
136136
run: |
137-
dart run serious_python:main package app/src --platform Windows --requirements flet
137+
dart run serious_python:main package app/src --platform Windows --requirements flet==0.28.3
138138
flutter test integration_test -d windows
139139
140140
linux:
@@ -205,7 +205,7 @@ jobs:
205205
working-directory: src/serious_python/example/flet_example
206206
run: |
207207
flutter pub get
208-
dart run serious_python:main package app/src --platform Linux --requirements flet
208+
dart run serious_python:main package app/src --platform Linux --requirements flet==0.28.3
209209
xvfb-run flutter test integration_test -d linux
210210
211211
publish:

src/serious_python/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
## 0.9.9
2+
3+
* Add zipDirectoryPosix to create POSIX-compliant app archives on Windows.
4+
* Enforce C++20 standard for `serious_python` plugin build.
5+
* Fix: Normalize `WINDIR` path for bundled DLLs in CMake.
6+
* Fix Logcat logging crash on some Android devices.
7+
18
## 0.9.8
29

310
* Fix logging on Android.

src/serious_python/bin/package_command.dart

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -438,8 +438,7 @@ class PackageCommand extends Command {
438438
// create archive
439439
stdout.writeln(
440440
"Creating app archive at ${dest.path} from a temp directory");
441-
final encoder = ZipFileEncoder();
442-
await encoder.zipDirectory(tempDir, filename: dest.path);
441+
await zipDirectoryPosix(tempDir, dest);
443442

444443
// create hash file
445444
stdout.writeln("Writing app archive hash to ${dest.path}.hash");
@@ -523,6 +522,21 @@ class PackageCommand extends Command {
523522
return proc.exitCode;
524523
}
525524

525+
Future<void> zipDirectoryPosix(Directory source, File dest) async {
526+
final encoder = ZipFileEncoder();
527+
encoder.create(dest.path);
528+
await for (final entity
529+
in source.list(recursive: true, followLinks: false)) {
530+
if (entity is! File) {
531+
continue;
532+
}
533+
final relativePath = path.relative(entity.path, from: source.path);
534+
final posixPath = path.posix.joinAll(path.split(relativePath));
535+
await encoder.addFile(entity, posixPath);
536+
}
537+
await encoder.close();
538+
}
539+
526540
Future<int> runPython(List<String> args,
527541
{Map<String, String>? environment}) async {
528542
if (_pythonDir == null) {

src/serious_python/example/flask_example/pubspec.lock

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ packages:
55
dependency: transitive
66
description:
77
name: archive
8-
sha256: cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d
8+
sha256: "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd"
99
url: "https://pub.dev"
1010
source: hosted
11-
version: "3.6.1"
11+
version: "4.0.7"
1212
args:
1313
dependency: transitive
1414
description:
@@ -21,10 +21,10 @@ packages:
2121
dependency: transitive
2222
description:
2323
name: async
24-
sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb"
24+
sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
2525
url: "https://pub.dev"
2626
source: hosted
27-
version: "2.13.0"
27+
version: "2.12.0"
2828
boolean_selector:
2929
dependency: transitive
3030
description:
@@ -77,10 +77,10 @@ packages:
7777
dependency: transitive
7878
description:
7979
name: fake_async
80-
sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44"
80+
sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc"
8181
url: "https://pub.dev"
8282
source: hosted
83-
version: "1.3.3"
83+
version: "1.3.2"
8484
ffi:
8585
dependency: transitive
8686
description:
@@ -143,10 +143,10 @@ packages:
143143
dependency: transitive
144144
description:
145145
name: leak_tracker
146-
sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0"
146+
sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec
147147
url: "https://pub.dev"
148148
source: hosted
149-
version: "10.0.9"
149+
version: "10.0.8"
150150
leak_tracker_flutter_testing:
151151
dependency: transitive
152152
description:
@@ -275,48 +275,56 @@ packages:
275275
url: "https://pub.dev"
276276
source: hosted
277277
version: "2.1.8"
278+
posix:
279+
dependency: transitive
280+
description:
281+
name: posix
282+
sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61"
283+
url: "https://pub.dev"
284+
source: hosted
285+
version: "6.0.3"
278286
serious_python:
279287
dependency: "direct main"
280288
description:
281289
path: "../.."
282290
relative: true
283291
source: path
284-
version: "0.9.3"
292+
version: "0.9.9"
285293
serious_python_android:
286294
dependency: transitive
287295
description:
288296
path: "../../../serious_python_android"
289297
relative: true
290298
source: path
291-
version: "0.9.3"
299+
version: "0.9.9"
292300
serious_python_darwin:
293301
dependency: transitive
294302
description:
295303
path: "../../../serious_python_darwin"
296304
relative: true
297305
source: path
298-
version: "0.9.3"
306+
version: "0.9.9"
299307
serious_python_linux:
300308
dependency: transitive
301309
description:
302310
path: "../../../serious_python_linux"
303311
relative: true
304312
source: path
305-
version: "0.9.3"
313+
version: "0.9.9"
306314
serious_python_platform_interface:
307315
dependency: transitive
308316
description:
309317
path: "../../../serious_python_platform_interface"
310318
relative: true
311319
source: path
312-
version: "0.9.3"
320+
version: "0.9.9"
313321
serious_python_windows:
314322
dependency: transitive
315323
description:
316324
path: "../../../serious_python_windows"
317325
relative: true
318326
source: path
319-
version: "0.9.3"
327+
version: "0.9.9"
320328
shelf:
321329
dependency: transitive
322330
description:
@@ -406,10 +414,10 @@ packages:
406414
dependency: transitive
407415
description:
408416
name: vm_service
409-
sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02
417+
sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14"
410418
url: "https://pub.dev"
411419
source: hosted
412-
version: "15.0.0"
420+
version: "14.3.1"
413421
web:
414422
dependency: transitive
415423
description:

src/serious_python/example/flet_example/.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,11 @@
55
*.swp
66
.DS_Store
77
.atom/
8+
.build/
89
.buildlog/
910
.history
1011
.svn/
12+
.swiftpm/
1113
migrate_working_dir/
1214

1315
# IntelliJ related
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
43f8a7b00e44a09647dda36299259976950ba7259c5060de20677c449690fc73
1+
2ce2f5ff38bcf342e42fb77b2bc8e4262d90d73d5bc3284055242c6313cbe5c0

src/serious_python/example/flet_example/macos/Podfile.lock

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
PODS:
2+
- device_info_plus (0.0.1):
3+
- FlutterMacOS
4+
- file_picker (0.0.1):
5+
- FlutterMacOS
26
- FlutterMacOS (1.0.0)
37
- package_info_plus (0.0.1):
48
- FlutterMacOS
59
- path_provider_foundation (0.0.1):
610
- Flutter
711
- FlutterMacOS
8-
- screen_retriever (0.0.1):
12+
- screen_retriever_macos (0.0.1):
913
- FlutterMacOS
10-
- serious_python_darwin (0.8.0):
14+
- serious_python_darwin (0.9.8):
1115
- Flutter
1216
- FlutterMacOS
1317
- shared_preferences_foundation (0.0.1):
@@ -21,25 +25,31 @@ PODS:
2125
- FlutterMacOS
2226

2327
DEPENDENCIES:
28+
- device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`)
29+
- file_picker (from `Flutter/ephemeral/.symlinks/plugins/file_picker/macos`)
2430
- FlutterMacOS (from `Flutter/ephemeral`)
2531
- package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`)
2632
- path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`)
27-
- screen_retriever (from `Flutter/ephemeral/.symlinks/plugins/screen_retriever/macos`)
33+
- screen_retriever_macos (from `Flutter/ephemeral/.symlinks/plugins/screen_retriever_macos/macos`)
2834
- serious_python_darwin (from `Flutter/ephemeral/.symlinks/plugins/serious_python_darwin/darwin`)
2935
- shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`)
3036
- url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`)
3137
- window_manager (from `Flutter/ephemeral/.symlinks/plugins/window_manager/macos`)
3238
- window_to_front (from `Flutter/ephemeral/.symlinks/plugins/window_to_front/macos`)
3339

3440
EXTERNAL SOURCES:
41+
device_info_plus:
42+
:path: Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos
43+
file_picker:
44+
:path: Flutter/ephemeral/.symlinks/plugins/file_picker/macos
3545
FlutterMacOS:
3646
:path: Flutter/ephemeral
3747
package_info_plus:
3848
:path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos
3949
path_provider_foundation:
4050
:path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin
41-
screen_retriever:
42-
:path: Flutter/ephemeral/.symlinks/plugins/screen_retriever/macos
51+
screen_retriever_macos:
52+
:path: Flutter/ephemeral/.symlinks/plugins/screen_retriever_macos/macos
4353
serious_python_darwin:
4454
:path: Flutter/ephemeral/.symlinks/plugins/serious_python_darwin/darwin
4555
shared_preferences_foundation:
@@ -52,15 +62,17 @@ EXTERNAL SOURCES:
5262
:path: Flutter/ephemeral/.symlinks/plugins/window_to_front/macos
5363

5464
SPEC CHECKSUMS:
65+
device_info_plus: 4fb280989f669696856f8b129e4a5e3cd6c48f76
66+
file_picker: 7584aae6fa07a041af2b36a2655122d42f578c1a
5567
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
56-
package_info_plus: fa739dd842b393193c5ca93c26798dff6e3d0e0c
57-
path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
58-
screen_retriever: 59634572a57080243dd1bf715e55b6c54f241a38
59-
serious_python_darwin: 351e50099cb9e34f344f75af29b1d36d3c0922f2
60-
shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78
61-
url_launcher_macos: c82c93949963e55b228a30115bd219499a6fe404
62-
window_manager: 3a1844359a6295ab1e47659b1a777e36773cd6e8
63-
window_to_front: 4cdc24ddd8461ad1a55fa06286d6a79d8b29e8d8
68+
package_info_plus: a8a591e70e87ce97ce5d21b2594f69cea9e0312f
69+
path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564
70+
screen_retriever_macos: 452e51764a9e1cdb74b3c541238795849f21557f
71+
serious_python_darwin: d8fa26f4b226e433b51fdb0259c60b3ec9c48527
72+
shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
73+
url_launcher_macos: 0fba8ddabfc33ce0a9afe7c5fef5aab3d8d2d673
74+
window_manager: 1d01fa7ac65a6e6f83b965471b1a7fdd3f06166c
75+
window_to_front: 9e76fd432e36700a197dac86a0011e49c89abe0a
6476

6577
PODFILE CHECKSUM: 9ebaf0ce3d369aaa26a9ea0e159195ed94724cf3
6678

src/serious_python/example/flet_example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@
5959
ignoresPersistentStateOnLaunch = "NO"
6060
debugDocumentVersioning = "YES"
6161
debugServiceExtension = "internal"
62+
enableGPUValidationMode = "1"
6263
allowLocationSimulation = "YES">
6364
<BuildableProductRunnable
6465
runnableDebuggingMode = "0">

src/serious_python/example/flet_example/macos/Runner/AppDelegate.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,8 @@ class AppDelegate: FlutterAppDelegate {
66
override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
77
return true
88
}
9+
10+
override func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool {
11+
return true
12+
}
913
}

0 commit comments

Comments
 (0)