halkyon_app's WhatsNew reads what each release changed from the app's assets/whats_new/ (<version>.<language>.txt, English and German, a change a line): after an update a sheet lists every release since the one the device showed last, newest first, once; Settings shows the running version's again, above About. Nothing on a fresh install. tool/release.dart drafts the missing texts from the commits that count after "Go on?" (German marked TRANSLATE:), opens them in the editor until they fit (no mark left, F-Droid's 500 characters) and commits them with the version. The English is the Forgejo notes' What's new, each language F-Droid's changelog of the build, written at publishing and copied in by tool/fdroid_repo.sh. Learn and Train bundle their texts, Learn's 0.22.0 and Train's 0.1.0 written to start. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
133 lines
5.1 KiB
YAML
133 lines
5.1 KiB
YAML
name: halkyon_train_flutter
|
|
description: Halkyon Train, the app.
|
|
publish_to: none
|
|
|
|
# <version>+<build>: the build rises with every release, and the instance asks apps below
|
|
# its minimum build to update (halkyon_base's instance basics).
|
|
version: 0.1.0+1
|
|
|
|
environment:
|
|
sdk: '^3.13.0'
|
|
flutter: '^3.44.4'
|
|
|
|
resolution: workspace
|
|
|
|
dependencies:
|
|
clock: ^1.1.3
|
|
# What a route's map kept offline was made for (ADR 0030, D45).
|
|
crypto: ^3.0.7
|
|
equatable: ^3.0.0
|
|
# A GPX file brought in (ADR 0030, D45), the platform's own dialog, as
|
|
# Learn and halkyon_app open and save files.
|
|
file_selector: ^1.1.0
|
|
flutter:
|
|
sdk: flutter
|
|
flutter_bloc: ^9.1.1
|
|
# What every Halkyon app is built around (a shared package): the instances a
|
|
# device keeps accounts on, signing in through halkyon_base, each person's
|
|
# dependencies opened and closed, with texts of its own.
|
|
# Workouts' tracks over the map (ADR 0030, D11, D23): the map widget, the
|
|
# vector tiles of the instance's source (OpenFreeMap without a setting, D22),
|
|
# and its coordinates.
|
|
flutter_map: ^8.3.2
|
|
# The Jellyfin token in the keyring (ADR 0030, D47), as halkyon_app keeps
|
|
# the account's keys.
|
|
flutter_secure_storage: ^10.0.0
|
|
# The five tabs and the screens over them (ADR 0030, D60), as Learn's.
|
|
go_router: ^18.0.2
|
|
halkyon_app:
|
|
path: ../../../packages/halkyon_app
|
|
# The device's half of signing in with OpenID Connect (ADR 0023): the
|
|
# browser that SimpleLogin's sign-in opens, and on Linux and Windows the
|
|
# loopback it comes back to, which the app builds with its name.
|
|
# Running Health Connect's writes and reads one at a time (a shared package,
|
|
# ADR 0030, D31).
|
|
halkyon_core:
|
|
path: ../../../packages/halkyon_core
|
|
halkyon_oidc_flutter:
|
|
path: ../../../packages/halkyon_oidc_flutter
|
|
halkyon_train_client:
|
|
path: ../halkyon_train_client
|
|
# Halkyon's look, shared by its apps (a shared package): the theme, the bundled
|
|
# Noto Sans and the widgets every screen is built of.
|
|
halkyon_ui:
|
|
path: ../../../packages/halkyon_ui
|
|
# A route's map kept offline (D45): its style, sprites and tiles asked
|
|
# for directly, as vector_map_tiles asks for them.
|
|
http: ^1.6.0
|
|
# gen-l10n's output imports it.
|
|
intl: ^0.20.3
|
|
latlong2: ^0.10.1
|
|
lucide_icons_flutter: ^3.1.20
|
|
material_ui: ^1.5.0
|
|
package_info_plus: ^10.2.2
|
|
path: ^1.9.1
|
|
path_provider: ^2.1.6
|
|
serverpod_auth_idp_flutter: 4.0.4
|
|
serverpod_flutter: 4.0.4
|
|
serverpod_offline_sync_client: 0.0.10
|
|
url_launcher: ^6.3.2
|
|
# Pinned: the 9 line is beta, the only one for flutter_map 8 (D23); moves to
|
|
# 9.0.0 once it is released.
|
|
vector_map_tiles: 9.0.0-beta.13
|
|
# Reads a style kept offline (D45), which vector_map_tiles reads only from
|
|
# the network; the version vector_map_tiles takes.
|
|
vector_tile_renderer: ^6.1.0
|
|
# Routes as GPX, written and read (D45).
|
|
xml: ^7.0.1
|
|
|
|
dev_dependencies:
|
|
flutter_driver:
|
|
sdk: flutter
|
|
# Writes the app's icons for every platform from assets/icon/halkyon_train_icon.png,
|
|
# run through the repository's tool/app_icons.py (see the section below).
|
|
flutter_launcher_icons: ^0.14.4
|
|
flutter_test:
|
|
sdk: flutter
|
|
|
|
flutter:
|
|
# Generates AppLocalizations from lib/l10n (see l10n.yaml).
|
|
generate: true
|
|
# Material's icon font, which serverpod_auth_idp_flutter's widgets ask for
|
|
# (it sets this itself): without it every build and test run warns, and
|
|
# Material's icons would draw as boxes.
|
|
uses-material-design: true
|
|
|
|
assets:
|
|
# The instance the build names, unless --dart-define=SERVER_URL=… does
|
|
# (serverpod_flutter's getServerUrl).
|
|
- assets/config.json
|
|
# What each release changed, one file a release and language
|
|
# (<version>.<language>.txt), drafted by tool/release.dart and edited
|
|
# (ADR 0030, D61): halkyon_app's What's new shows them.
|
|
- assets/whats_new/
|
|
# The app's icon, Lucide's bike (ADR 0031), and Lucide's licence for the
|
|
# licence list (the repository's tool/app_icons.py writes both).
|
|
- assets/icon/halkyon_train_icon.png
|
|
- assets/icon/LICENSE-lucide.txt
|
|
# Polar's BLE SDK, which the Android app links for the Loop (ADR 0030,
|
|
# D36): its licence and the notices of what it bundles, verbatim from its
|
|
# 8.3.0 tag (line ends made Unix's), for the licence list.
|
|
- assets/licences/Polar_SDK_License.txt
|
|
- assets/licences/Polar_ThirdPartySoftwareListing.txt
|
|
|
|
# The app's icons, written by the repository's tool/app_icons.py: it prepares the
|
|
# rounded images in build/icons/ first, then runs `dart run flutter_launcher_icons`.
|
|
# Android: the adaptive icon, on white, for the launcher to cut to its shape, and the
|
|
# square one older Androids show. iOS: without its alpha channel, on white. macOS and
|
|
# Windows: the rounded tile.
|
|
flutter_launcher_icons:
|
|
image_path: "assets/icon/halkyon_train_icon.png"
|
|
android: true
|
|
adaptive_icon_background: "#ffffff"
|
|
adaptive_icon_foreground: "assets/icon/halkyon_train_icon.png"
|
|
ios: true
|
|
remove_alpha_ios: true
|
|
background_color_ios: "#ffffff"
|
|
macos:
|
|
generate: true
|
|
image_path: "build/icons/macos.png"
|
|
windows:
|
|
generate: true
|
|
image_path: "build/icons/rounded.png"
|
|
icon_size: 256
|