Comparing mhiew:master...BlueCodeSystems:master · mhiew/PdfiumAndroid

Commits on Sep 6, 2025

  1. build: migrate to Gradle 8/AGP 8, modernize SDK/NDK config, and add M…

    …aven Central publishing
    
    WHAT
    - Upgrade Gradle wrapper to 8.7 and Android Gradle Plugin to 8.6.0.
    - Migrate Android config: add namespace, set compileSdk/targetSdk 35, minSdk 28, enable BuildConfig, and Java 8 compatibility.
    - Switch to externalNativeBuild (ndkBuild) and adjust NDK settings; remove manifest package and prebuilt libc++_shared; add linker max page size flag.
    - Add publishing setup via maven-publish, signing, and Nexus staging; read coordinates from gradle.properties; enable sources/javadoc jars and release packaging task.
    - Configure JitPack to use JDK 17 and install required Android SDK/NDK components.
    
    WHY
    - AGP 8/Gradle 8 require Java 17 and current SDKs; updates keep the library compatible with modern Android toolchains.
    - Namespace migration and manifest cleanup align with AGP requirements and avoid duplicate package declarations.
    - NDK/ld flags ensure stable native builds and address large-page alignment issues.
    - Maven Central publishing simplifies releasing artifacts, with coordinates and metadata centralized in gradle.properties.
    - JitPack config ensures CI builds succeed under the newer toolchain.
    Configuration menu

    Browse the repository at this point in the history

  2. build(publish): add central-bundle.sh and document manual Maven Centr…

    …al bundle
    
    WHAT
    - Add scripts/central-bundle.sh to build, sign, checksum, and zip a Central-ready bundle using Gradle (no remote publish).
    - Update README with usage instructions, requirements, and output location.
    
    WHY
    - Provides a consistent, repeatable way to prepare artifacts for manual upload to Sonatype Central Portal when not using automated publishing.
    - Clarifies project release workflow and reduces human error during releases.
    Configuration menu

    Browse the repository at this point in the history

  3. ci: JitPack publish to Maven Local, set GROUP, skip signing

    - Publish to Maven Local in JitPack so POM/artifacts are discoverable
    - Derive GROUP from repo owner in jitpack.yml; default GROUP set to com.github.BlueCodeSystems
    - Skip signing on JitPack via -PskipSigning=true; make signing optional in maven.gradle
    - Update README coordinates to com.github.BlueCodeSystems
    Configuration menu

    Browse the repository at this point in the history

  4. Configuration menu

    Browse the repository at this point in the history

  5. Configuration menu

    Browse the repository at this point in the history

  6. Configuration menu

    Browse the repository at this point in the history