mirror of
https://github.com/immich-app/immich.git
synced 2025-12-06 01:10:00 +03:00
186 lines
4.9 KiB
TOML
186 lines
4.9 KiB
TOML
[tools]
|
|
flutter = "3.35.7"
|
|
|
|
[tools."github:CQLabs/homebrew-dcm"]
|
|
version = "1.30.0"
|
|
bin = "dcm"
|
|
postinstall = "chmod +x $MISE_TOOL_INSTALL_PATH/dcm"
|
|
|
|
[tasks."codegen:dart"]
|
|
alias = "codegen"
|
|
description = "Execute build_runner to auto-generate dart code"
|
|
sources = [
|
|
"pubspec.yaml",
|
|
"build.yaml",
|
|
"lib/**/*.dart",
|
|
"infrastructure/**/*.drift",
|
|
]
|
|
outputs = { auto = true }
|
|
run = "dart run build_runner build --delete-conflicting-outputs"
|
|
|
|
[tasks."codegen:pigeon"]
|
|
alias = "pigeon"
|
|
description = "Generate pigeon platform code"
|
|
depends = [
|
|
"pigeon:native-sync",
|
|
"pigeon:thumbnail",
|
|
"pigeon:background-worker",
|
|
"pigeon:background-worker-lock",
|
|
"pigeon:connectivity",
|
|
]
|
|
|
|
[tasks."codegen:translation"]
|
|
alias = "translation"
|
|
description = "Generate translations from i18n JSONs"
|
|
run = [
|
|
{ task = "//i18n:format-fix" },
|
|
{ tasks = [
|
|
"i18n:loader",
|
|
"i18n:keys",
|
|
] },
|
|
]
|
|
|
|
[tasks."codegen:app-icon"]
|
|
description = "Generate app icons"
|
|
run = "flutter pub run flutter_launcher_icons:main"
|
|
|
|
[tasks."codegen:splash"]
|
|
description = "Generate splash screen"
|
|
run = "flutter pub run flutter_native_splash:create"
|
|
|
|
[tasks.test]
|
|
description = "Run mobile tests"
|
|
run = "flutter test"
|
|
|
|
[tasks.lint]
|
|
description = "Analyze Dart code"
|
|
depends = ["analyze:dart", "analyze:dcm"]
|
|
|
|
[tasks."lint-fix"]
|
|
description = "Auto-fix Dart code"
|
|
depends = ["analyze:fix:dart", "analyze:fix:dcm"]
|
|
|
|
[tasks.format]
|
|
description = "Format Dart code"
|
|
run = "dart format --set-exit-if-changed $(find lib -name '*.dart' -not \\( -name '*.g.dart' -o -name '*.drift.dart' -o -name '*.gr.dart' \\))"
|
|
|
|
[tasks."build:android"]
|
|
description = "Build Android release"
|
|
run = "flutter build appbundle"
|
|
|
|
[tasks."drift:migration"]
|
|
alias = "migration"
|
|
description = "Generate database migrations"
|
|
run = "dart run drift_dev make-migrations"
|
|
|
|
|
|
# Internal tasks
|
|
[tasks."pigeon:native-sync"]
|
|
description = "Generate native sync API pigeon code"
|
|
hide = true
|
|
sources = ["pigeon/native_sync_api.dart"]
|
|
outputs = [
|
|
"lib/platform/native_sync_api.g.dart",
|
|
"ios/Runner/Sync/Messages.g.swift",
|
|
"android/app/src/main/kotlin/app/alextran/immich/sync/Messages.g.kt",
|
|
]
|
|
run = [
|
|
"dart run pigeon --input pigeon/native_sync_api.dart",
|
|
"dart format lib/platform/native_sync_api.g.dart",
|
|
]
|
|
|
|
[tasks."pigeon:thumbnail"]
|
|
description = "Generate thumbnail API pigeon code"
|
|
hide = true
|
|
sources = ["pigeon/thumbnail_api.dart"]
|
|
outputs = [
|
|
"lib/platform/thumbnail_api.g.dart",
|
|
"ios/Runner/Images/Thumbnails.g.swift",
|
|
"android/app/src/main/kotlin/app/alextran/immich/images/Thumbnails.g.kt",
|
|
]
|
|
run = [
|
|
"dart run pigeon --input pigeon/thumbnail_api.dart",
|
|
"dart format lib/platform/thumbnail_api.g.dart",
|
|
]
|
|
|
|
[tasks."pigeon:background-worker"]
|
|
description = "Generate background worker API pigeon code"
|
|
hide = true
|
|
sources = ["pigeon/background_worker_api.dart"]
|
|
outputs = [
|
|
"lib/platform/background_worker_api.g.dart",
|
|
"ios/Runner/Background/BackgroundWorker.g.swift",
|
|
"android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorker.g.kt",
|
|
]
|
|
run = [
|
|
"dart run pigeon --input pigeon/background_worker_api.dart",
|
|
"dart format lib/platform/background_worker_api.g.dart",
|
|
]
|
|
|
|
[tasks."pigeon:background-worker-lock"]
|
|
description = "Generate background worker lock API pigeon code"
|
|
hide = true
|
|
sources = ["pigeon/background_worker_lock_api.dart"]
|
|
outputs = [
|
|
"lib/platform/background_worker_lock_api.g.dart",
|
|
"android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerLock.g.kt",
|
|
]
|
|
run = [
|
|
"dart run pigeon --input pigeon/background_worker_lock_api.dart",
|
|
"dart format lib/platform/background_worker_lock_api.g.dart",
|
|
]
|
|
|
|
[tasks."pigeon:connectivity"]
|
|
description = "Generate connectivity API pigeon code"
|
|
hide = true
|
|
sources = ["pigeon/connectivity_api.dart"]
|
|
outputs = [
|
|
"lib/platform/connectivity_api.g.dart",
|
|
"ios/Runner/Connectivity/Connectivity.g.swift",
|
|
"android/app/src/main/kotlin/app/alextran/immich/connectivity/Connectivity.g.kt",
|
|
]
|
|
run = [
|
|
"dart run pigeon --input pigeon/connectivity_api.dart",
|
|
"dart format lib/platform/connectivity_api.g.dart",
|
|
]
|
|
|
|
[tasks."i18n:loader"]
|
|
description = "Generate i18n loader"
|
|
hide = true
|
|
sources = ["i18n/"]
|
|
outputs = "lib/generated/codegen_loader.g.dart"
|
|
run = [
|
|
"dart run easy_localization:generate -S ../i18n",
|
|
"dart format lib/generated/codegen_loader.g.dart",
|
|
]
|
|
|
|
[tasks."i18n:keys"]
|
|
description = "Generate i18n keys"
|
|
hide = true
|
|
sources = ["i18n/en.json"]
|
|
outputs = "lib/generated/intl_keys.g.dart"
|
|
run = [
|
|
"dart run bin/generate_keys.dart",
|
|
"dart format lib/generated/intl_keys.g.dart",
|
|
]
|
|
|
|
[tasks."analyze:dart"]
|
|
description = "Run Dart analysis"
|
|
hide = true
|
|
run = "dart analyze --fatal-infos"
|
|
|
|
[tasks."analyze:dcm"]
|
|
description = "Run Dart Code Metrics"
|
|
hide = true
|
|
run = "dcm analyze lib --fatal-style --fatal-warnings"
|
|
|
|
[tasks."analyze:fix:dart"]
|
|
description = "Auto-fix Dart analysis"
|
|
hide = true
|
|
run = "dart fix --apply"
|
|
|
|
[tasks."analyze:fix:dcm"]
|
|
description = "Auto-fix Dart Code Metrics"
|
|
hide = true
|
|
run = "dcm fix lib"
|