Skip to content

feat: SDK update for version 29.1.0 - #192

Merged
ChiragAgg5k merged 2 commits into
mainfrom
dev
Oct 19, 2026
Merged

ChiragAgg5k merged 2 commits into
mainfrom
dev

Conversation

@ChiragAgg5k

@ChiragAgg5k ChiragAgg5k commented Oct 19, 2026 •

Copy link
Copy Markdown
Member

This PR contains updates to the SDK for version 29.1.0.

What's Changed

  • Added: account.listMemberships to list the current user's team memberships
  • Added: createQuery on databases, tablesDB and documentsDB to send list queries in the request body
  • Added: optional bundleId and environment on account.createPushTarget to route APNs tokens
  • Added: per-service ES modules and a minified script on sdk.appwrite.io/web/<version>/
  • Updated: dist/iife/sdk.js is minified, so CDN script tags load about half the bytes
  • Updated: requires Node.js 20 or later to build

@ChiragAgg5k ChiragAgg5k changed the title feat: Web SDK update for version 29.1.0 feat: SDK update for version 29.1.0 Oct 19, 2026
@hansi-codes

hansi-codes Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

🔵 Tier A · Mergeable after minor fixes

The build succeeds, and the only finding is a minor documentation mismatch about metadata defaults on projected rows.

This release adds account membership listing, APNs routing fields for push targets, and POST-based query methods across the database services. It also adds modular and minified CDN builds, updates release documentation and metadata, and refreshes build dependencies.

Verdict New comments Fixed Still open
✅ Approved 1 0 0
Finding Where
🟡 Clarify metadata defaults on projected rows src/services/tables-db.ts:518
Fix with agent prompt
### Issue 1
src/services/tables-db.ts:518
**Clarify metadata defaults on projected rows**

This promise is not true for SDK return values: `listRows` and the new `createQuery` pass rows through `applyDefaults`, which fills `$id`, `$sequence`, `$createdAt`, and the other listed fields when a projection omits them. Callers inspecting those properties will still see empty defaults, including on unmatched joins, so please distinguish the raw server response from the SDK result.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
📂 Walkthrough · 18
File Change
.github/workflows/publish.yml Adds a CDN build, integrity manifest, and versioned upload before publishing.
CHANGELOG.md Documents the 29.1.0 additions and updates.
README.md Adds CDN module, script-tag, and integrity usage instructions.
docs/examples/account/create-push-target.md Shows the optional APNs bundle and environment parameters.
docs/examples/account/list-memberships.md Adds an account membership listing example.
docs/examples/account/update-push-target.md Shows the optional APNs bundle and environment parameters.
docs/examples/databases/create-query.md Adds a POST query example for Databases.
docs/examples/documentsdb/create-query.md Adds a POST query example for DocumentsDB.
docs/examples/tablesdb/create-query.md Adds a POST query example for TablesDB.
package.json Updates the package version and Node requirement and adds CDN build configuration.
rollup.config.mjs Configures minified IIFE and per-module CDN outputs.
src/client.ts Updates the SDK version header.
src/query.ts Clarifies query behavior in API comments.
src/services/account.ts Adds membership listing and APNs push target parameters.
src/services/databases.ts Adds POST-based document queries and updates projection and cache documentation.
src/services/documents-db.ts Adds POST-based document queries.
src/services/tables-db.ts Adds POST-based row queries and updates projection and cache documentation.
package-lock.json Updates the package version and locks the CDN minifier dependencies.

Reviewed 43c953e · 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 · Looks good to merge. Summary

Comment thread src/services/tables-db.ts
/**
* Get a list of all the user's rows in a given table. You can use the query params to filter your results.
*
* Rows returned by aggregate, groupBy or distinct queries hold only the columns they select, group or aggregate, typed as a row types them, with a joined column named by its join alias (`alias.column`). They have no `$id`, `$sequence`, `$createdAt`, `$updatedAt`, `$permissions`, `$databaseId` or `$tableId` unless they select or group it, and neither does a right or full join row that no row of this table matched.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Clarify metadata defaults on projected rows

This promise is not true for SDK return values: listRows and the new createQuery pass rows through applyDefaults, which fills $id, $sequence, $createdAt, and the other listed fields when a projection omits them. Callers inspecting those properties will still see empty defaults, including on unmatched joins, so please distinguish the raw server response from the SDK result.

Prompt To Fix With AI
This is a comment left during a code review.
Path: src/services/tables-db.ts
Line: 518

Comment:
**Clarify metadata defaults on projected rows**

This promise is not true for SDK return values: `listRows` and the new `createQuery` pass rows through `applyDefaults`, which fills `$id`, `$sequence`, `$createdAt`, and the other listed fields when a projection omits them. Callers inspecting those properties will still see empty defaults, including on unmatched joins, so please distinguish the raw server response from the SDK result.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

🟡 Minor · documentation · Reply if this doesn't apply.

@ChiragAgg5k
ChiragAgg5k merged commit 8ba5db3 into main Oct 19, 2026
2 checks 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