Skip to content

feat: SDK update for version 18.1.0#299

Merged
ChiragAgg5k merged 3 commits intomasterfrom
dev
Apr 15, 2026
Merged

feat: SDK update for version 18.1.0#299
ChiragAgg5k merged 3 commits intomasterfrom
dev

Conversation

@ChiragAgg5k
Copy link
Copy Markdown
Member

Summary

This PR contains updates to the SDK for version 18.1.0.

What's Changed

  • Added site screenshot terminal preview after push site deployments
  • Added standalone binary self-update support in update command
  • Added installation method detection for smarter version checks (npm, Homebrew, standalone)
  • Updated TypeScript query types to use QueryableFieldValue for improved type inference
  • Fixed indentation in deployment error handling blocks

@greptile-apps
Copy link
Copy Markdown

greptile-apps bot commented Apr 15, 2026

Greptile Summary

This PR adds standalone binary self-update support to the update command, a site-screenshot terminal preview after push site deployments, installation-method detection (npm / Homebrew / standalone), and improves TypeScript query-builder type inference with QueryableFieldValue. The Homebrew formula now carries real SHA256 checksums.

Confidence Score: 4/5

Safe to merge after confirming the release-artifact repo and fixing the misleading npm EEXIST message; previously flagged issues (no download timeout, partial-sudo temp file) remain open.

Two prior-thread P1 findings (no timeout/integrity check on binary download; staged temp file not cleaned on sudo partial failure) are still present in the code. A new P2 logic issue was found (EEXIST treated as already installed instead of a file conflict), and there is an open question about whether appwrite/appwrite-cli is the correct release repo for the self-update binary download.

lib/commands/update.ts — npm EEXIST handling and the GITHUB_RELEASES_URL repo mismatch should be verified before the standalone self-update ships to users.

Important Files Changed

Filename Overview
lib/commands/update.ts New standalone binary self-update command with npm/Homebrew/standalone installation detection; minor npm EEXIST error-handling concern and pre-existing download timeout/cleanup issues noted in prior threads remain open.
lib/commands/push.ts Adds site-screenshot terminal preview after deployments; activation guard, screenshot-timeout logic, and ANSI frame rendering all look correct.
lib/utils.ts New installation-method detection (npm, Homebrew, standalone) and per-source version-check caching look sound; logic covers major path variants.
Formula/appwrite.rb Version bump to 18.1.0 with real per-platform SHA256 checksums (not placeholders as in the previous release).
install.sh Updated GITHUB_LATEST_VERSION to 18.1.0; still downloads from appwrite/sdk-for-cli while constants.ts GITHUB_RELEASES_URL targets appwrite/appwrite-cli.
lib/commands/generators/typescript/databases.ts Updated inline query callback type to use QueryableFieldValue<T, K> for improved per-field type inference; no logic issues.
lib/commands/generators/typescript/templates/types.ts.hbs Exports new QueryableFieldValue utility type used to constrain query-builder value arguments to the correct field type.

Reviews (2): Last reviewed commit: "chore: bump Homebrew formula version to ..." | Re-trigger Greptile

Comment thread Formula/appwrite.rb Outdated
Comment thread lib/commands/update.ts
Comment thread lib/commands/update.ts
@ChiragAgg5k ChiragAgg5k merged commit 4c23d1c into master Apr 15, 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.

2 participants