Skip to content

feat: SDK update for version 29.2.0 - #142

Merged
ChiragAgg5k merged 2 commits into
29.xfrom
release/29.2.0
Oct 13, 2026
Merged

ChiragAgg5k merged 2 commits into
29.xfrom
release/29.2.0

Conversation

@ChiragAgg5k

@ChiragAgg5k ChiragAgg5k commented Oct 13, 2026 •

Copy link
Copy Markdown
Member

This PR contains updates to the SDK for version 29.2.0.

What's Changed

  • Added: analytics.createEvent in a new Analytics service to send tracking events
  • Added: optional state on account.createOAuth2Session and account.createOAuth2Token, returned unchanged on the success and failure URLs
  • Added: optional membershipId on teams.createMembership
  • Fixed: avatars.updatePhoto sends PUT, so uploading a profile photo no longer returns 404
  • Fixed: OAuth2 query parameters (success, failure, scopes, state) are URL-encoded, so values containing &, + or # survive the redirect

Patched onto 29.1.0: the diff of the SDK generated with and without these features, three-way merged onto the release. Everything else on the release is unchanged, including its X-Appwrite-Response-Format. membershipId is the last parameter of teams.createMembership, so existing positional calls keep working.

@hansi-codes

hansi-codes Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

🟢 Tier S · Ready to merge

Updates the Android SDK to version 29.2.0 with an Analytics event endpoint, optional OAuth state and team membership ID parameters, and PUT-based avatar photo uploads. It also updates the README, changelog, and Java/Kotlin examples, and URL-encodes OAuth query keys and values so reserved characters survive redirects.

Latest changes: The latest commits URL-encode keys and values in both OAuth2 flows, covering redirect URLs, scopes, and state, and document that fix in the changelog.

Verdict New comments Fixed Still open
✅ Approved 0 1 0
📂 Walkthrough · 15
File Change
CHANGELOG.md Documents SDK 29.2.0 features and the OAuth query-encoding fix.
README.md Updates SDK installation/version documentation.
docs/examples/java/account/create-o-auth-2-session.md Adds the optional state argument to the Java OAuth session example.
docs/examples/java/account/create-o-auth-2-token.md Adds the optional state argument to the Java OAuth token example.
docs/examples/java/analytics/create-event.md Adds a Java Analytics createEvent example.
docs/examples/java/teams/create-membership.md Shows the optional membershipId argument in the Java membership example.
docs/examples/kotlin/account/create-o-auth-2-session.md Adds the optional state argument to the Kotlin OAuth session example.
docs/examples/kotlin/account/create-o-auth-2-token.md Adds the optional state argument to the Kotlin OAuth token example.
docs/examples/kotlin/analytics/create-event.md Adds a Kotlin Analytics createEvent example.
docs/examples/kotlin/teams/create-membership.md Shows the optional membershipId argument in the Kotlin membership example.
library/src/main/java/io/appwrite/Client.kt Updates the SDK version and supports a configurable HTTP method for chunked uploads.
library/src/main/java/io/appwrite/services/Account.kt Adds OAuth state support and URL-encodes OAuth query parameter keys and values in both flows.
library/src/main/java/io/appwrite/services/Analytics.kt Adds the Analytics service and createEvent endpoint.
library/src/main/java/io/appwrite/services/Avatars.kt Uses PUT for avatar photo uploads.
library/src/main/java/io/appwrite/services/Teams.kt Adds optional membershipId support to membership creation.
✅ Fixed since the last review · 1
  • URL-encode the new OAuth state value · library/src/main/java/io/appwrite/services/Account.kt:2018

Reviewed the commits since 612a267 · Details · Comment @hansi-codes review to re-run, or mention @hansi-codes with a question.

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔵 Tier A · See the inline comments. Summary

Comment thread library/src/main/java/io/appwrite/services/Account.kt
A state, success or failure value containing &, +, # or = was concatenated raw into the OAuth2 URL and did not round-trip. Encode each key and value with Uri.encode.

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Tier S · Looks good to merge. Summary

@ChiragAgg5k
ChiragAgg5k merged commit 7eb6a5a into 29.x Oct 13, 2026
1 check passed
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.

1 participant