Skip to content

doc: updated the readme and created a new placeholder migration guide for v4#901

Closed
pmathew92 wants to merge 16 commits intov4_developmentfrom
doc/migration
Closed

doc: updated the readme and created a new placeholder migration guide for v4#901
pmathew92 wants to merge 16 commits intov4_developmentfrom
doc/migration

Conversation

@pmathew92
Copy link
Contributor

Changes

This PR creates a new V4 migration guide with minimum details and updated the Readme. These are not final and are subjective to change

Checklist

@pmathew92 pmathew92 requested a review from a team as a code owner February 3, 2026 09:55
NandanPrabhu
NandanPrabhu previously approved these changes Feb 3, 2026
NandanPrabhu
NandanPrabhu previously approved these changes Feb 3, 2026
Copilot AI review requested due to automatic review settings February 6, 2026 12:08
Copy link

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 creates a placeholder migration guide for v4 of the Auth0 Android SDK and updates the README to reflect the new Java 17 requirement. The changes document the build toolchain updates (Java 17, Gradle 8.10.2, AGP 8.8.2, Kotlin 2.0.21) required for SDK v4, while maintaining a minimal structure that can be expanded as more breaking changes are identified.

Changes:

  • Created V4_MIGRATION_GUIDE.md documenting requirements changes (Java 17, Gradle 8.10.2, AGP 8.8.2, Kotlin 2.0.21)
  • Updated README.md to reflect Java 17 requirement with code examples
  • Added v4_development branch to CI workflow pull request triggers
  • Refactored GitHub Actions setup to use direct action calls instead of SDK manager

Reviewed changes

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

File Description
V4_MIGRATION_GUIDE.md New migration guide documenting build toolchain version requirements for v4
README.md Updated Java version requirement from 8 to 17 in documentation and code examples
.github/workflows/test.yml Added v4_development branch to pull request triggers
.github/actions/setup/action.yml Refactored CI setup to use native GitHub actions with explicit version pinning

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

Comment on lines 15 to 33
# - name: Make gradlew executable
# shell: bash
# run: chmod +x ./gradlew

- name: Setup Gradle
uses: gradle/actions/setup-gradle@473878a77f1b98e2b5ac4af93489d1656a80a5ed # v4.2.0
with:
gradle-version: '8.10'
cache: 'gradle'

- name: Set up Android
uses: android-actions/setup-android@9fc6c4e9069bf8d3d10b2204b1fb8f6ef7065407 # v3.2.2

- run: ./gradlew androidDependencies
- name: Download Android dependencies
run: ./gradlew androidDependencies
shell: bash

- uses: gradle/wrapper-validation-action@56b90f209b02bf6d1deae490e9ef18b21a389cd4 # pin@1.1.0 No newline at end of file
# - name: Validate Gradle wrapper
# uses: gradle/wrapper-validation-action@56b90f209b02bf6d1deae490e9ef18b21a389cd4 # pin@1.1.0 No newline at end of file
Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

Large blocks of commented-out code reduce maintainability. If these steps (Make gradlew executable and Validate Gradle wrapper) are not needed, they should be removed entirely. If they might be needed in the future, consider documenting why they are commented out.

Copilot uses AI. Check for mistakes.

- [GitHub Issues](https://github.com/auth0/Auth0.Android/issues) - Report bugs or ask questions
- [Auth0 Community](https://community.auth0.com/) - Community support
- [Migration Examples](https://github.com/auth0/auth0.android/blob/main/EXAMPLES.md) - Updated code examples
Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

The repository name casing is inconsistent between lines 68 and 70. Line 68 uses "Auth0.Android" while line 70 uses "auth0.android". While GitHub URLs are case-insensitive, this inconsistency should be fixed for better readability. Based on the pattern in README.md where issues links use "Auth0.Android" (capital letters), both should use "Auth0.Android" for consistency.

Suggested change
- [Migration Examples](https://github.com/auth0/auth0.android/blob/main/EXAMPLES.md) - Updated code examples
- [Migration Examples](https://github.com/auth0/Auth0.Android/blob/main/EXAMPLES.md) - Updated code examples

Copilot uses AI. Check for mistakes.
Comment on lines 32 to 33
# - name: Validate Gradle wrapper
# uses: gradle/wrapper-validation-action@56b90f209b02bf6d1deae490e9ef18b21a389cd4 # pin@1.1.0 No newline at end of file
Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

The Gradle wrapper validation action is commented out. This validation is a security best practice that ensures the Gradle wrapper hasn't been tampered with. Unless there's a specific reason to disable it, this should be uncommented to maintain security standards.

Suggested change
# - name: Validate Gradle wrapper
# uses: gradle/wrapper-validation-action@56b90f209b02bf6d1deae490e9ef18b21a389cd4 # pin@1.1.0
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@56b90f209b02bf6d1deae490e9ef18b21a389cd4 # pin@1.1.0

Copilot uses AI. Check for mistakes.

### Kotlin Version

v4 uses **Kotlin 2.0.21** . If you're using Kotlin in your project, you may need to update your Kotlin version to ensure compatibility.
Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

There is an extra space before the period. The text "Kotlin 2.0.21 ." should be "Kotlin 2.0.21."

Suggested change
v4 uses **Kotlin 2.0.21** . If you're using Kotlin in your project, you may need to update your Kotlin version to ensure compatibility.
v4 uses **Kotlin 2.0.21**. If you're using Kotlin in your project, you may need to update your Kotlin version to ensure compatibility.

Copilot uses AI. Check for mistakes.
- name: Setup Gradle
uses: gradle/actions/setup-gradle@473878a77f1b98e2b5ac4af93489d1656a80a5ed # v4.2.0
with:
gradle-version: '8.10'
Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

The Gradle version specified here (8.10) does not match the version specified in the V4_MIGRATION_GUIDE.md (8.10.2) and the actual gradle-wrapper.properties file (8.10.2). This should be '8.10.2' for consistency.

Suggested change
gradle-version: '8.10'
gradle-version: '8.10.2'

Copilot uses AI. Check for mistakes.
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

The 'cache' parameter is specified twice for Gradle setup: once in the setup-java action (line 13) and once in the setup-gradle action (line 23). The setup-gradle action already handles Gradle caching, so the cache parameter in setup-java is redundant and could potentially cause conflicts. Remove the cache: 'gradle' parameter from the setup-java action.

Suggested change
cache: 'gradle'

Copilot uses AI. Check for mistakes.
```

## Breaking Changes

Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

The "Breaking Changes" section is empty. While the PR description mentions this is not final, consider adding a note here explaining that this section will be populated once breaking changes are identified, to make it clear this is intentionally empty rather than forgotten. For example: "No breaking API changes have been identified in v4. This section will be updated if any are discovered."

Suggested change
No breaking API changes have been identified in v4. This section will be updated if any are discovered.

Copilot uses AI. Check for mistakes.

- [GitHub Issues](https://github.com/auth0/Auth0.Android/issues) - Report bugs or ask questions
- [Auth0 Community](https://community.auth0.com/) - Community support
- [Migration Examples](https://github.com/auth0/auth0.android/blob/main/EXAMPLES.md) - Updated code examples
Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

The link text "Migration Examples" suggests there is a dedicated migration examples section in EXAMPLES.md, but this section does not exist. Either update EXAMPLES.md to include migration-specific examples, or change the link text to something more accurate like "Code Examples" and update the URL to point to a more general section (e.g., the root of EXAMPLES.md).

Suggested change
- [Migration Examples](https://github.com/auth0/auth0.android/blob/main/EXAMPLES.md) - Updated code examples
- [Code Examples](https://github.com/auth0/auth0.android/blob/main/EXAMPLES.md) - Updated code examples

Copilot uses AI. Check for mistakes.

- [GitHub Issues](https://github.com/auth0/Auth0.Android/issues) - Report bugs or ask questions
- [Auth0 Community](https://community.auth0.com/) - Community support
- [Migration Examples](https://github.com/auth0/auth0.android/blob/main/EXAMPLES.md) - Updated code examples
Copy link

Copilot AI Feb 6, 2026

Choose a reason for hiding this comment

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

The link to EXAMPLES.md uses an absolute GitHub URL, but the existing migration guides use relative links for internal documentation. For consistency with V3_MIGRATION_GUIDE.md (line 66), change this to a relative link: [Code Examples](EXAMPLES.md) instead of the full GitHub URL.

Copilot uses AI. Check for mistakes.
…ility

The willReturnValidJsonWebKeys() method was using a relative file path
(src/test/resources/rsa_jwks.json) which works locally when the working
directory is the module folder, but fails in CI where the working directory
is the project root.

Changed to use classloader.getResourceAsStream() which works regardless
of the current working directory.

Also improved error handling to actually throw the exception instead of
silently ignoring it, which made debugging difficult.
@pmathew92
Copy link
Contributor Author

Superseded by #905

@pmathew92 pmathew92 closed this Feb 8, 2026
@pmathew92 pmathew92 deleted the doc/migration branch February 8, 2026 11:23
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