Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Work on the TODOs #2

Open
4 of 18 tasks
maxim-saplin opened this issue Sep 11, 2023 · 0 comments
Open
4 of 18 tasks

Work on the TODOs #2

maxim-saplin opened this issue Sep 11, 2023 · 0 comments

Comments

@maxim-saplin
Copy link
Owner

maxim-saplin commented Sep 11, 2023

  1. Proper management of /assets
  • Handle situation when there're already assets defined in pubspec.yaml
  • When building for a specific platform make sure to remove assets from other platforms to save room
  1. Investigate "Do you want the application “app.app” to accept incoming network connections?" request upon first launch, shouldn't be any - fixed, didn't use loopback address when requesting free port from OS
  2. Fix multi instance launch (currently next instance kills old server)
  3. Slow Python startup when launching Flutter app
  • PyInstaller 8-9s, Nuitka 7-8s (M1 Pro)
  • Consider use -onedir arg with PyInstaller and zip/unzip it via Flutter
  1. Awaiting error code on init, see if can be done faster
     // Give couple of seconds to make sure there're no exceptions upon lanuching Python server
     await Future.delayed(const Duration(seconds: 2));
  2. Look into singing (App, Mac) and distribution flow for binaries
  3. Python has been loaded -> check for better probing, e.g. now when you start client it always says all is good
  4. Authentication flow
    • Authentication in the web with JWT passed in server-side cookie via web proxy
  5. Tailor ./example launch.json for 3 platforms
  6. Plugin codegen and build actions into IDE events, e.g. see how to do more convenient update of .proto and Python parts without forgetting-to-run/running scripts manually
  7. server.py, add param to determine if localhost (local only) or [::] (inbouind remote connection) will be used (server.add_insecure_port('[::]:50051'))
  8. When debugging the app may stop silently upon launching due to swallowed exceptions when probing Python
    • VSCode Debug Pane, in the bottom left there's BREAKPOINTs section, disable expcetions
  9. Updte iOS ios/Runner/Info.plist to allow gRPC networking
  10. VScode debugging, sort out auto start of server
        {
            "name": "app (remote server, auto start)",
            "type": "dart",
            "request": "launch",
            "program": "app/lib/main.dart",
            "toolArgs": [
                "--dart-define",
                "useRemote=true",
              ],
            "preLaunchTask": "start server",
            //"postDebugTask": "stop server" // this one kills Flutter UI when doing hot restart, better keep server running to keep host restart working
        },
    
  11. Add Dart alternatives to shell scripts and publish as package to pub.dev
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant