You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Firebase for both flavours on Android, iOS and web, each flavour in its own project (acits-prod / acits-dev): Analytics on all three platforms, Crashlytics on Android/iOS (no web plugin exists; guarded off with kIsWeb). Configured via FlutterFire (firebase_options.dart per flavour) with a native google-services.json per flavour and a per-flavour iOS GoogleService-Info.plist selected by an Xcode flutterfire bundle-service-file build phase, plus the Android Crashlytics Gradle plugin (NDK symbol upload) — ready for push notifications.
Web PWA now uses the path URL strategy (/login instead of /#/login), with a 404.html SPA fallback for GitHub Pages and try_files on nginx.
iOS now has Profile-dev / Profile-prod build configurations, so flutter build ios --profile --flavor {dev,prod} works (Android profile builds already worked).
iOS builds via Swift Package Manager (hybrid): SPM-capable plugins use SPM, the rest stay on CocoaPods.
CI no longer runs on a plain push to main/develop; it now runs only on pull requests and on a v* release tag.
CI now builds a signed release: the dev flavour on a PR, the prod flavour on a v* tag (both signed with the release keystore); artifacts are named acits-dev-release / acits-prod-release.
README now links directly to the deployed PWA.
Telegram build notification now fires on every CI run, including pull requests (previously tag-only), and includes the live PWA link when the web deploy succeeds.
Web PWA shows a loading spinner over the splash screen until the app's first frame renders.
Bundle identifier changed to ru.acits (prod) / ru.acits.dev (dev) across Android and iOS; iOS signing team set to 45G32KJDV7; assetLinks.json fingerprint updated to the release keystore's certificate.
Web PWA now boots ~4s faster: main.dart.js loads immediately instead of waiting on service-worker registration (which stalled and hit a 4s fallback timeout on GitHub Pages).
iOS pod install no longer fails on a stale Podfile.lock that pinned Firebase 8.9.0 against firebase_core 4.x (which needs Firebase 12.x).
Web PWA no longer crashes on the "terms" link (registration), comment links and comment attachments: flutter_web_browser (no web support) replaced with url_launcher, and the attachment download (path_provider / open_filex, mobile-only) now opens the file URL directly on web.
По-русски
Firebase для обоих флейворов на Android, iOS и web, каждый флейвор в своём проекте (acits-prod / acits-dev): Analytics на всех трёх платформах, Crashlytics на Android/iOS (web-плагина нет, отключён через kIsWeb). Настроено через FlutterFire (firebase_options.dart на флейвор), нативным google-services.json на флейвор и per-flavour iOS GoogleService-Info.plist, выбираемым Xcode build phase flutterfire bundle-service-file, плюс Android Crashlytics Gradle-плагин (выгрузка NDK-символов) — готово к push-уведомлениям.
Web-PWA использует path URL strategy (/login вместо /#/login), с 404.html SPA-fallback для GitHub Pages и try_files на nginx.
В iOS добавлены конфигурации Profile-dev / Profile-prod, так что flutter build ios --profile --flavor {dev,prod} работает (profile-сборки Android работали и раньше).
iOS собирается через Swift Package Manager (гибридно): SPM-совместимые плагины на SPM, остальные на CocoaPods.
CI больше не запускается на обычный push в main/develop; только на pull request и на релизный тег v*.
CI собирает подписанный релиз: dev-флейвор на PR, prod-флейвор на теге v* (оба подписаны release-keystore); артефакты называются acits-dev-release / acits-prod-release.
README теперь ссылается прямо на задеплоенный PWA.
Telegram-уведомление о сборке приходит на каждый CI-запуск, включая pull request (раньше только на теги), и содержит ссылку на живой PWA при успешном web-деплое.
Web-PWA показывает спиннер поверх splash-экрана, пока не отрисуется первый кадр приложения.
Bundle identifier изменён на ru.acits (prod) / ru.acits.dev (dev) на Android и iOS; iOS signing team выставлен в 45G32KJDV7; отпечаток в assetLinks.json обновлён на сертификат release-keystore.
Web-PWA стартует на ~4s быстрее: main.dart.js загружается сразу, а не ждёт регистрации service-worker (которая зависала и упиралась в 4s fallback-таймаут на GitHub Pages).
iOS pod install больше не падает на устаревшем Podfile.lock, где Firebase 8.9.0 конфликтовал с firebase_core 4.x (которому нужен Firebase 12.x).
Web-PWA больше не крашится на ссылке «terms» (регистрация), ссылках в комментариях и вложениях: flutter_web_browser (без web-поддержки) заменён на url_launcher, а скачивание вложений (path_provider / open_filex, только мобилки) на web теперь открывает URL файла напрямую.