Skip to content

fix(deps): update dependency appwrite to v29 - #15

Open
renovate-appwrite[bot] wants to merge 1 commit into
mainfrom
renovate/appwrite-29.x
Open

renovate-appwrite[bot] wants to merge 1 commit into
mainfrom
renovate/appwrite-29.x

Conversation

@renovate-appwrite

Copy link
Copy Markdown

This PR contains the following updates:

Package Change Age Confidence
appwrite (source) ^21.0.0 → ^29.0.0 age confidence

Release Notes

appwrite/sdk-for-web (appwrite)

v29.2.0

Compare Source

  • Updated: requests send X-Appwrite-Response-Format: 2.6.2; the SDK targets Appwrite 2.6.x
  • Updated: mqtt dependency to 5.16.1; Push keeps reconnecting after the broker rejects a connection
  • Fixed: path parameters . and .. throw AppwriteException instead of changing the request URL
  • Fixed: examples leave unset optional params undefined instead of passing empty strings

v29.1.0

Compare Source

  • 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

v29.0.0

Compare Source

  • Breaking: requests send X-Appwrite-Response-Format: 2.5.0; responses follow the 2.5 shapes
  • Breaking: missing response fields are filled with their documented defaults
  • Breaking: oauth2 resource params now take string[] on authorize, authorizePost, createDeviceAuthorization, createPAR and createToken
  • Breaking: nullable model fields are typed T | null, such as Locale.city, Presence.status and Execution.scheduledAt
  • Added: Push service with subscribe, unsubscribe, onNotificationOpened and close for web push
  • Added: Topic helper
  • Added: Query aggregates (count, countDistinct, sum, avg, min, max and more), groupBy, having, distinct, joins, relationship, covers, spatialEquals and page
  • Added: Query.builder() to chain queries; realtime subscriptions accept a builder for queries
  • Added: ExecutionTrigger.Email
  • Updated: nullable request params accept null, such as account.createEmailPasswordSession duration
  • Fixed: list and object defaults filled into a response are copied per model, and object defaults are {} instead of []

v28.3.0

Compare Source

  • Added: analytics.createEvent in a new Analytics service to send tracking events
  • Added: Tracking helper that auto-tracks pageviews, outbound links, downloads, scroll depth and engagement time
  • Added: avatars.updatePhoto and avatars.deletePhoto to manage the user's custom profile photo, and the Account model
  • Added: Webflow to the OAuthProvider enum
  • Added: optional state on account.createOAuth2Session and account.createOAuth2Token, returned unchanged on the success and failure URLs
  • Added: optional duration on account.createEmailPasswordSession to set the session length
  • Added: optional current on account.deleteSessions to keep the current session signed in
  • Added: optional membershipId on teams.createMembership
  • Added: optional total on account.listSessions, the locale list methods and listTransactions

v28.2.0

Compare Source

  • Added: account passkey methods listPasskeys, createPasskey, getPasskey, updatePasskey, deletePasskey and updatePasskeyVerification
  • Added: account.createPasskeyToken and account.updatePasskeyToken for passkey sign-in
  • Added: Passkey, PasskeyList, PasskeyChallenge and TokenSecret models

v28.1.0

Compare Source

  • Added: Apps service to create and manage OAuth2 apps, their secrets, keys, and installations
  • Added: Oauth2 service for authorization, consent, device, PAR, and token flows
  • Added: App, AppSecret, AppKey, AppScope and Oauth2* response models

v28.0.0

Compare Source

  • Breaking: removed Account.listLogs and the Log, LogList models
  • Breaking: removed Client.setDevKey
  • Breaking: SDK now targets Appwrite 2.3 (X-Appwrite-Response-Format: 2.3.0)
  • Added: Account.createIdTokenSession for native Apple and Google sign-in with IdTokenProvider enum
  • Added: Account.createRecoveryOTP and Account.updateRecoveryOTP for code-based password recovery
  • Added: Account.createEmailVerificationOTP and Account.updateEmailVerificationOTP
  • Added: Kakao and Tiktok values to OAuthProvider
  • Added: passwordPwned field on User and providerIdToken field on Identity
  • Fixed: empty-string required path parameters are rejected instead of sent to the API

v27.0.0

Compare Source

  • Breaking: Execution.functionId replaced by resourceId and resourceType
  • Breaking: SDK now targets Appwrite 2.0 (X-Appwrite-Response-Format: 2.0.0)
  • Added: DocumentsDB and VectorsDB services for document and vector database access
  • Added: Organization service with listInstallations, createInstallation, getInstallation, updateInstallation, deleteInstallation
  • Added: Teams installation methods listInstallations, createInstallation, getInstallation, updateInstallation, deleteInstallation
  • Added: Account consent methods listConsents, getConsent, deleteConsent, listConsentTokens, getConsentToken, deleteConsentToken
  • Added: Avatars.getPhoto returning the best available user profile photo
  • Added: folder parameter to Storage.createFile and folder, key fields on File
  • Added: ExecutionResourceType enum with Functions and Sites
  • Added: AppInstallation, Oauth2Consent, Oauth2ConsentToken models and list types
  • Added: Custom value to AuthenticationFactor and custom field on MfaFactors
  • Added: Cloudflare, Huggingface, Resend values to OAuthProvider
  • Added: Auto value to ImageGravity enum
  • Updated: source formatted with Prettier and linted with ESLint
  • Fixed: removed unused apiHeaders and imports from URL-returning methods
  • Fixed: positional calls with an undefined leading argument and trailing arguments dispatch correctly

v26.2.0

Compare Source

  • Added: Client.setBearer() to authenticate requests with an OAuth access token
  • Added: appwrite value to OAuthProvider enum
  • Added: Query.vectorDot, Query.vectorCosine, Query.vectorEuclidean vector similarity query helpers
  • Added: geolocation and network fields (city, timeZone, latitude, isp, ASN, connection info) to Locale model
  • Fixed: AppwriteException message now falls back to response text when missing

v26.1.0

Compare Source

  • Added: Realtime connections now send the configured JWT for authentication.
  • Added: Forwarded impersonateUserId on avatars and storage file requests.

v26.0.0

Compare Source

  • Breaking: Renamed Theme enum to BrowserTheme, changing avatars.getScreenshot() theme param type.
  • Breaking: Made presences list/get/upsert/update non-generic and removed Models.DefaultPresence.
  • Added: Email metadata fields to User (emailCanonical, emailIsFree, emailIsDisposable, emailIsCorporate, emailIsCanonical).
  • Added: Membership.userAccessedAt and Presence.metadata fields.
  • Fixed: Removed Client.setKey() and Client.setForwardedUserAgent() methods that were exposed on the client SDK by mistake.
  • Fixed: toString() on response objects now returns valid JSON via JSONbig.stringify, preserving large integers.
  • Updated: Requests now send an explicit accept header matching each endpoint's response type.

v25.2.0

Compare Source

What's Changed

Full Changelog: appwrite/sdk-for-web@25.1.1...25.2.0

v25.1.1

Compare Source

  • Fixed: Removed Advisor service and Insight, InsightCTA, InsightList, Report, ReportList models (admin-only endpoints, not intended for client SDKs)
  • Added: sizeActual field to File model

v25.1.0

Compare Source

  • Added: Realtime presences channel and RealtimePresence types for presence subscriptions
  • Added: Advisor and Presences services
  • Added: Insight, Presence, and Report models with list variants
  • Added: fusionauth, keycloak, and kick providers to OAuthProvider enum
  • Added: Client.setCookie() method for forwarding cookies in server-side runtimes
  • Updated: X-Appwrite-Response-Format header to 1.9.5

v25.0.0

Compare Source

  • Breaking: Added unsubscribe(), update(), and close() to Realtime subscriptions
  • Added: Added userPhone field to Membership model
  • Updated: Updated X-Appwrite-Response-Format header to 1.9.2

v24.2.0

Compare Source

  • Added x OAuth provider to OAuthProvider enum
  • Added userType field to Log model
  • Updated X-Appwrite-Response-Format header to 1.9.1
  • Updated TTL description for list caching in Databases and TablesDB
  • Updated dev dependencies: Rollup 3→4, related plugin upgrades

v24.1.1

Compare Source

  • Fixed: Added files field to package.json to publish only built artifacts to npm

v24.1.0

Compare Source

  • Added: Added getHeaders() method to Client to expose current request headers
  • Added: Added package-lock.json to track dependency lockfile in version control

v24.0.0

Compare Source

  • [BREAKING] Changed $sequence type from number to string for Row and Document models
  • Added impersonation support: setImpersonateUserId(), setImpersonateUserEmail(), setImpersonateUserPhone() on Client
  • Added impersonator and impersonatorUserId optional fields to User model
  • Added custom toString() on response data objects using JSONbig.stringify to fix BigInt serialization
  • Updated Log model field descriptions to clarify impersonation behavior for userId, userEmail, userName
  • Updated X-Appwrite-Response-Format header to 1.9.0
  • Updated devDependencies: Rollup 2→3, TypeScript 4.7→5.7, and related plugin upgrades

v23.0.0

Compare Source

  • Breaking: Made Channel.collection() require id parameter
  • Breaking: Made Channel.table() require id parameter
  • Breaking: Root factory methods require explicit IDs (databases, executions, tablesdb, bucket, function, team, membership)
  • Added ttl option to listDocuments and listRows for caching

v22.4.1

Compare Source

  • Fix very large double values (for example 1.7976931348623157e+308) from being expanded into giant integer literals

v22.4.0

Compare Source

  • Added Query.containsAny(attribute, value[]) to filter resources where the attribute contains any of the given values.
  • Added Query.containsAll(attribute, value[]) to filter resources where the attribute contains all of the given values.
  • Updated Query.contains documentation to clarify behavior: string attributes are matched by substring, and for array attributes use containsAny/containsAll.

v22.3.1

Compare Source

  • Add upsert method to Realtime Channels helper class
  • Fix bignumber.js bundler conflict with Next.js Turbopack by removing direct dependency in favor of transitive dependency from json-bigint

v22.3.0

Compare Source

What's Changed

Release version 22.3.0

Full Changelog: appwrite/sdk-for-web@22.2.0...22.3.0

v22.1.0

Compare Source

  • Add queries parameter to Realtime.subscribe() and client.subscribe() for server-side query filtering
  • Add slot-based subscription management with subscription ID mappings from backend
  • Add subscriptions field to RealtimeResponseEvent type
  • Fix Roles enum removed from Teams service; roles parameter now accepts string[]
  • Fix parameter detection in overloaded methods to check for optional params (Account, Avatars, Graphql)
  • Fix WebSocket connection handling with stale connection guards and improved close/reconnect logic
  • Fix doc examples wrapped in markdown code fences

v22.0.0

Compare Source

  • Add array-based enum parameters (e.g., permissions: BrowserPermission[]).
  • Breaking change: Output enum has been removed; use ImageFormat instead.
  • Add Channel helpers for Realtime.

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • Only on Monday (* * * * 1)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate CLI.

@renovate-appwrite renovate-appwrite Bot added the dependencies Pull requests that update a dependency file label Nov 9, 2026
@renovate-appwrite

Copy link
Copy Markdown
Author

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: package-lock.json
npm warn Unknown env config "store". This will error in a future major version of npm. See `npm help npmrc` for supported config options.
npm error code EALLOWREMOTE
npm error Fetching packages of type "remote" have been disabled
npm error Refusing to fetch "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.3.3.tgz"
npm error A complete log of this run can be found in: /tmp/renovate/cache/others/npm/_logs/2026-11-09T06_52_19_028Z-debug-0.log

@appwrite

appwrite Bot commented Nov 9, 2026 •

Copy link
Copy Markdown

🟡 Tier B · Needs changes before merging

The package manifest and committed lockfile disagree, so the CI workflow’s clean install is blocked.

The dependency declaration now targets Appwrite SDK v29 instead of v21. The project’s Appwrite client integration remains in the existing application code.

Verdict New comments Fixed Still open
🛑 Changes requested 1 0 0
Finding Where
🟠 Update the lockfile with the Appwrite dependency range package.json:15
Fix with agent prompt
### Issue 1
package.json:15
**Update the lockfile with the Appwrite dependency range**

`package-lock.json` still declares `appwrite` as `^21.0.0` and locks `21.5.0`, so the dependency manifest and lockfile are out of sync. The CI workflow runs `npm ci`, which rejects this mismatch and prevents a clean CI install; regenerate and commit the lockfile alongside this update.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
📂 Walkthrough · 1
File Change
package.json Raised the declared Appwrite SDK dependency range to ^29.0.0.

Reviewed 4eb89e7 · Details · Comment @appwrite review to re-run, or mention @appwrite with a question.

@appwrite appwrite 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 B · 1 blocking finding to address. Summary

Comment thread package.json
"@appwrite.io/pink-icons": "^1.0.0",
"@tailwindcss/vite": "^4.0.15",
"appwrite": "^21.0.0",
"appwrite": "^29.0.0",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Update the lockfile with the Appwrite dependency range

package-lock.json still declares appwrite as ^21.0.0 and locks 21.5.0, so the dependency manifest and lockfile are out of sync. The CI workflow runs npm ci, which rejects this mismatch and prevents a clean CI install; regenerate and commit the lockfile alongside this update.

Prompt To Fix With AI
This is a comment left during a code review.
Path: package.json
Line: 15

Comment:
**Update the lockfile with the Appwrite dependency range**

`package-lock.json` still declares `appwrite` as `^21.0.0` and locks `21.5.0`, so the dependency manifest and lockfile are out of sync. The CI workflow runs `npm ci`, which rejects this mismatch and prevents a clean CI install; regenerate and commit the lockfile alongside this update.

---

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

🟠 Major · bug · Reply if this doesn't apply.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants