Skip to content

RFC for API 102#15

Open
Dr-TSNG wants to merge 8 commits into
masterfrom
102
Open

RFC for API 102#15
Dr-TSNG wants to merge 8 commits into
masterfrom
102

Conversation

@Dr-TSNG
Copy link
Copy Markdown
Contributor

@Dr-TSNG Dr-TSNG commented May 28, 2026

Copilot AI review requested due to automatic review settings May 28, 2026 21:38
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the libxposed service/interface libraries to API 102, adding support for querying running hooked targets and requesting hot reload, and adjusts the build/publishing setup to support snapshot dependencies and Sonatype snapshot publishing.

Changes:

  • Introduce API 102 surface area: getRunningTargets() + hotReloadModule(...) with new AIDL types and Java wrappers.
  • Add new public model types (HookedTarget, HotReloadResult) and wire them into XposedService.
  • Update Gradle/CI publishing plumbing (snapshot repos, versioning, wrapper, workflows) to publish releases and snapshots.

Reviewed changes

Copilot reviewed 16 out of 18 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
settings.gradle.kts Adds mavenLocal and Sonatype snapshots repo (scoped to io.github.libxposed).
service/src/main/java/io/github/libxposed/service/XposedService.java Adds API 101/102 constants, hot reload + running targets APIs, and callback plumbing.
service/src/main/java/io/github/libxposed/service/HotReloadResult.java Adds hot reload result record + status mapping from raw service codes.
service/src/main/java/io/github/libxposed/service/HookedTarget.java Adds a public snapshot handle representing a hooked running target.
service/proguard-rules.pro Adds consumer Proguard rule to suppress missing annotation warnings.
service/build.gradle.kts Bumps SDK/tools, adds consumer Proguard, adds annotation/lint deps, snapshot publish support.
interface/src/main/aidl/io/github/libxposed/service/IXposedService.aidl Bumps LIB_API to 102, adds properties + hot reload constants and new RPCs.
interface/src/main/aidl/io/github/libxposed/service/IHotReloadCallback.aidl Adds async callback interface for hot reload completion.
interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl Adds parcelable describing hooked processes returned by the framework.
interface/build.gradle.kts Bumps SDK/tools and adds snapshot publish versioning.
gradlew.bat Updates Windows wrapper script template (SPDX + behavioral changes).
gradlew Updates Unix wrapper script template (SPDX + switch to -jar invocation).
gradle/wrapper/gradle-wrapper.properties Bumps Gradle wrapper distribution version.
gradle/libs.versions.toml Updates AGP/Dokka versions and adds version entries for libxposed annotation/lint.
build.gradle.kts Adds optional dependencySnapshot behavior to disable changing-module caching.
.github/workflows/snapshot.yml Adds workflow to publish Sonatype snapshots with selectable module publishing.
.github/workflows/deploy.yml Adjusts Central deploy workflow to allow selecting which module to publish.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread settings.gradle.kts
Comment on lines +12 to +14
mavenLocal {
content {
includeGroup("io.github.libxposed")
Comment on lines 69 to 71
private static final Map<OnScopeEventListener, IXposedScopeCallback> scopeCallbacks = new ConcurrentHashMap<>();
private static final Set<IHotReloadCallback> hotReloadCallbacks = ConcurrentHashMap.newKeySet();

Comment thread .github/workflows/deploy.yml
Comment thread .github/workflows/snapshot.yml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants