bepass-org / bepass-org/oblivion

[Build/Chore]: Align NDK version documentation, upgrade Gradle (if compatible), and enable build optimizations

Open
#672 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Dart
Stars
4.8k
Forks
634
Avg merge
19h 16m
Merged PRs (30d)
1

Description

### Description
This issue proposes a few cleanups and performance improvements for the Android build pipeline:

1. **NDK Version Discrepancy (README vs Code):**
- The build configuration currently targets **NDK 28**, whereas `README.md` still instructs contributors to install/use **NDK r27**.
- Aligning the documentation with the actual code ensures external contributors and CI environments don't encounter mismatch warnings or unexpected build failures.

2. **Gradle / AGP Modernization (Compatibility Check):**
- If feasible and without breaking dependencies or CGo/Flutter interop, consider bumping the Gradle Wrapper and Android Gradle Plugin (AGP) to their latest stable releases supported by the current Flutter SDK.
- Please ensure regression testing against the native tunnels (Go/Rust/C) and plugin ecosystem prior to merging.

3. **Enable Gradle & Flutter Build Optimizations:**
To accelerate local compilation and CI build times, consider enabling the following standard flags in `gradle.properties` (if not already fully configured):
- `org.gradle.parallel=true` (Parallel task execution)
- `org.gradle.caching=true` (Gradle build cache)
- `org.gradle.configuration-cache=true` (Configuration cache for compatible tasks)
- `android.enableR8.fullMode=true` (Aggressive R8 shrinking & code stripping for release builds)

### Proposed Tasks
- [ ] Update `README.md` to reflect `NDK r28` instead of `r27`.
- [ ] Evaluate Gradle/AGP upgrade against the project's Flutter channel.
- [ ] Audit `gradle.properties` for build cache and parallel execution flags.
- [ ] Verify release artifact size (ABI splits / R8 shrinking).

### Expected Benefits
- Clear and accurate setup steps for developers and CI runners.
- Faster cold and warm build times across development environments.
- Smaller release APK/AAB footprint.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with README.md and the Android build configuration, then inspect gradle.properties and the Gradle Wrapper/AGP versions against the current Flutter channel. Check compatibility with the CGo/Flutter interop and native Go, Rust, and C tunnels before testing release builds. Done means README.md documents NDK r28, compatible optimization flags are configured, regression checks pass, and release artifact size is verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, c, dart, go, rust
Domain
build-system, mobile
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.