Commit Graph
158 Commits
Author SHA1 Message Date
Nizz05 0b3cacf4b3 feat(ui): gesture zoom & double-tap for PDF viewer, fix navigation bar overlaps
Build Android APK / Build Release APKs (push) Failing after 1h4m35s
2026-09-17 09:37:40 +02:00
Nizz05andClaude Opus 5 1eb089f6b5 ci(gitea): strip native libs with a native llvm-strip so APKs are not 15x too big
Build Android APK / Build Release APKs (push) Successful in 16m29s
AGP's stripReleaseDebugSymbols failed silently on the ARM64 runner because
the NDK r28 x86_64 llvm-strip cannot load libz.so.1 under QEMU, leaving the
unstripped libflutter.so (165 MB per ABI) in the APKs (universal 521 MB).

Pre-install the NDK version Flutter expects via sdkmanager and replace its
llvm-strip/llvm-objcopy with Ubuntu's native arm64 LLVM tools, which strip
any ELF target without emulation.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 00:18:48 +02:00
Nizz05andClaude Opus 5 744def72fd ci(gitea): use QEMU 10 for x86_64 emulation and stop masking build failures
Build Android APK / Build Release APKs (push) Successful in 17m46s
Flutter 3.47's gen_snapshot calls pthread_getattr_np(), which crashes the
QEMU 8.2.2 shipped by Ubuntu 24.04 ("QEMU internal SIGSEGV {code=MAPERR,
addr=0x20}", qemu#2170, fixed in 8.2.3/9.0). Install the static qemu-x86_64
from Debian trixie's qemu-user package (sha1-pinned) over the apt binary.

The build steps swallowed non-zero exit codes with an `|| { find ... }`
fallback, so the job turned green without producing any APK. Run the
builds plainly, fail "Organize Artifacts" unless all four APKs exist and
set if-no-files-found: error on the uploads.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-16 23:16:40 +02:00
Nizz05andClaude Opus 5 1c66c31f6d ci(gitea): run Flutter SDK switch step under bash (dash has no pipefail)
Build Android APK / Build Release APKs (push) Successful in 6m18s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-16 22:59:25 +02:00
Nizz05andClaude Opus 5 df34d66d38 build: upgrade to Flutter 3.47.4 (AGP 9.1 / Gradle 9.3, iOS 15 + UIScene), refresh deps and CI
Build Android APK / Build Release APKs (push) Failing after 1m7s
Flutter 3.24.5 -> 3.47.4 with the matching toolchain changes:

- pubspec: Dart ^3.11, Firebase core 4 / auth 6 / firestore 6 / storage 13,
  drop unused image_cropper, logging, change_app_package_name,
  pdf_widget_wrapper; pin path_provider_android <2.3 (needs NDK/CMake, not
  feasible on the ARM64 Gitea runner)
- Dart: CardTheme -> CardThemeData, replace deprecated withOpacity,
  Matrix4.scale, DropdownButtonFormField.value
- iOS: deployment target 15.0, UIScene lifecycle (AppDelegate/Info.plist),
  untrack stale Podfile.lock, add LaunchImage asset set
- Android: Gradle 9.3.1, AGP 9.1.0, Kotlin 2.4.0, google-services 4.5.0,
  layout.buildDirectory instead of removed Project.buildDir, remove manifest
  package attribute and duplicate MainActivity, kotlin.incremental=false
- CI: pin FLUTTER_VERSION in both workflows; iOS on macos-26 with SwiftPM
  disabled (CocoaPods only); Gitea job keeps cirruslabs 3.44.0 as base image
  (images discontinued) and switches the bundled Flutter SDK by git tag

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-16 22:45:30 +02:00
Nizz05 85556dabb4 fix(deps): bump flutter to 3.24.5 across CI and update pdf_widget_wrapper to 1.0.4
Build Android APK / Build Release APKs (push) Successful in 5m1s
2026-09-16 00:13:20 +02:00
Nizz05 230430c91c ci: use Flutter 3.24.5 on macos-15 for Xcode 16 and Firebase 11 compatibility
Build Android APK / Build Release APKs (push) Successful in 13m5s
2026-09-15 23:55:24 +02:00
Nizz05 285ba029f4 fix(ios): align Flutter to 3.19.3 and pin Firebase pods to 10.29 to match project code
Build Android APK / Build Release APKs (push) Successful in 13m18s
2026-09-15 23:47:38 +02:00
Nizz05 2b32b3712f fix(ios): satisfy Flutter development team check and disable signing in Release.xcconfig
Build Android APK / Build Release APKs (push) Successful in 14m34s
2026-09-15 23:27:44 +02:00
Nizz05 7affff6e15 ci: switch to macos-15 runner with Xcode 16 and Swift 6 for Firebase SDK compatibility
Build Android APK / Build Release APKs (push) Successful in 16m51s
2026-09-15 23:09:05 +02:00
Nizz05 098c0105f5 fix(ci): fix bash redirection syntax error in iOS build step
Build Android APK / Build Release APKs (push) Successful in 16m57s
2026-09-15 23:00:49 +02:00
Nizz05 a21d370b91 ci: use Flutter stable, refresh pods, and log build diagnostics to step summary
Build Android APK / Build Release APKs (push) Successful in 16m55s
2026-09-15 22:56:09 +02:00
Nizz05 a2da5cdc89 fix(ios): bump iOS deployment target to 13.0 and disable hardcoded development team for CI builds
Build Android APK / Build Release APKs (push) Successful in 16m51s
2026-09-15 22:53:42 +02:00
Nizz05 362a7da74f ci: let Flutter handle CocoaPods, set iOS platform 13.0, and restrict Android build to Gitea
Build Android APK / Build Release APKs (push) Successful in 17m37s
2026-09-15 22:49:26 +02:00
Nizz05 2b34d4a16f ci: add GitHub Actions iOS IPA build workflow on macos-14
Build Android APK / Build Release APKs (push) Successful in 13m58s
latest
2026-09-15 22:42:39 +02:00
Nizz05 c1cdd54964 fix(test): use const declarations in widget_test to satisfy linter 2026-09-15 22:34:50 +02:00
Nizz05 fc95c6e6f7 docs: update README with current features, in-app user management, and security architecture 2026-09-15 22:31:02 +02:00
Nizz05 75f1610cde feat: PDF zoom & external link fix, admin contact messages inbox, and in-app user management 2026-09-15 22:06:36 +02:00
Nizz05 9a823cbcdb feat: integrate WordPress PDF Aussendungen with in-app reader into News 2026-09-14 21:32:03 +02:00
Nizz05 e512c081e3 security(storage): strictly restrict delete to photo author or verified firestore admin 2026-09-14 20:59:40 +02:00
Nizz05 cd3b71736d fix(admin): make storage delete resilient and allow authenticated deletion in storage rules 2026-09-14 20:53:41 +02:00
Nizz05 3df2e4c5c8 feat(security & backup): double guard permissions in app, restrict news creation to admin, and add one-click firestore backup tool 2026-09-14 11:47:58 +02:00
Nizz05 877862aaf2 refactor(admin): remove hardcoded email and dynamically resolve admin privileges via Firestore Admins collection 2026-09-14 11:44:04 +02:00
Nizz05 c3513e85e5 feat(admin): grant full admin permissions in app and security rules to nicolas@gruber.info 2026-09-14 11:35:40 +02:00
Nizz05 e64b7a085c feat(security & admin): update firestore and storage rules with admin token check and enable admin deletion in app 2026-09-14 11:33:17 +02:00
Nizz05 2e9abac25f feat(auth & contact): separate Vorname/Nachname in registration, pre-fill read-only profile in contact, and restrict contact messages to registered users 2026-09-14 11:29:12 +02:00
Nizz05 010904a48a refactor(auth): simplify to 2 tabs and embed Buerger-Code under Google in registration 2026-09-14 11:12:35 +02:00
Nizz05 a4755f6d53 feat(auth): integrate Google Sign-In UI with custom button and friendly preparation notice 2026-09-14 10:33:07 +02:00
Nizz05 80ff6cd95d fix(auth): make auth dialog responsive and scrollable without overflow, add email verification on signup, and add password toggles 2026-09-14 10:26:44 +02:00
Nizz05 1420d0a113 feat(ci): restore universal APK, set 7-day retention for artifacts, and clean workspace to save storage 2026-09-14 10:07:15 +02:00
Nizz05 adc65e056d feat(ci): build only 3 split APKs, upload individual artifacts, and publish unzipped APKs to Gitea Releases 2026-09-14 09:55:04 +02:00
Nizz05 ab9b22fc4a fix(ci): use actions/upload-artifact@v3 for Gitea compatibility 2026-09-14 09:31:34 +02:00
Nizz05 b6baaf67e8 feat(build): migrate to declarative Gradle plugin DSL and bump Dart SDK constraint to >=3.0.0 <4.0.0 2026-09-14 09:28:36 +02:00
Nizz05 2917f93323 fix(build): route subprojects buildDir to ../build so Flutter CLI finds generated APKs 2026-09-14 09:17:01 +02:00
Nizz05 7f4218b0a2 fix(ci): strip LD_PRELOAD on child QEMU execution and remove rename watcher 2026-09-14 00:27:57 +02:00
Nizz05 8be95162d2 fix(ci): delegate execvp and posix_spawnp to real glibc symbols for PATH resolution 2026-09-14 00:17:36 +02:00
Nizz05 565a7d1347 fix(ci): restore string literal quotes in qemu_intercept.c 2026-09-14 00:16:33 +02:00
Nizz05 e44fcf1223 fix(ci): extract QEMU interceptor to dedicated C file to fix YAML indentation 2026-09-14 00:15:20 +02:00
Nizz05 f446fd044b fix(ci): inject LD_PRELOAD interceptor to redirect all x86_64 ELF executions to QEMU 2026-09-14 00:13:23 +02:00
Nizz05 9226ce4b33 fix(ci): direct AAPT2 userspace wrapping with QEMU to bypass host binfmt and FEX 2026-09-14 00:03:12 +02:00
Nizz05 1acbeddc79 fix(ci): mount binfmt_misc and cleanly register QEMU x86_64 for AAPT2 on ARM64 2026-09-13 23:51:32 +02:00
Nizz05 46dc3368c6 fix(ci): unregister host FEX from binfmt and wrap FEXInterpreter with QEMU for AAPT2 2026-09-13 23:34:50 +02:00
Nizz05 b443213224 ci: enable privileged container mode and binfmt support for aapt2 execution 2026-09-13 23:07:19 +02:00
Nizz05 ca59dff4db fix(ci): install x86_64 glibc cross libraries for qemu user emulation 2026-09-13 22:44:53 +02:00
Nizz05 f6f3a5ff06 fix(ci): correct YAML indentation in workflow file 2026-09-13 22:39:19 +02:00
Nizz05 ac395dad07 fix(ci): bridge Flutter linux-arm64 gen_snapshot using qemu wrapper 2026-09-13 22:30:22 +02:00
Nizz05 3c8ab00991 fix(android): remove hardcoded Windows java.home from repo gradle.properties 2026-09-13 22:20:56 +02:00
Nizz05 5969d23a98 fix(ci): track gradlew and wrapper jar, ensure executable permissions 2026-09-13 22:11:52 +02:00
Nizz05 6b9703d79c fix(ci): install official Node.js 20 binary for ES2022 syntax support 2026-09-13 22:06:48 +02:00
Nizz05 91c2e9659b fix(ci): install nodejs in build container before checkout action 2026-09-13 22:03:22 +02:00