Skip to content

feat: SDK update for version 26.0.0-rc.2 - #354

Open
ChiragAgg5k wants to merge 15 commits into
masterfrom
dev
Open

feat: SDK update for version 26.0.0-rc.2#354
ChiragAgg5k wants to merge 15 commits into
masterfrom
dev

Conversation

@ChiragAgg5k

@ChiragAgg5k ChiragAgg5k commented Aug 7, 2026

Copy link
Copy Markdown
Member

This PR contains updates to the SDK for version 26.0.0-rc.2.

What's Changed

  • Added: graphql query and graphql mutation accept a raw GraphQL document at --query
  • Added: init skill takes --all, --skill, --agent, and --method for headless installs
  • Added: --code on functions and sites create-deployment accepts a source directory
  • Fixed: Requests no longer fail at a ten second deadline, so large uploads complete
  • Fixed: --self-signed reaches service commands instead of being dropped before the request
  • Fixed: A timed out mutation reports an unknown outcome instead of an ordinary failure
  • Fixed: --documents, --rows, --columns, --attributes, --indexes, and --operations parse each value as JSON
  • Updated: list-specifications documents that --type defaults to runtimes

master received 24.0.0 as a squash merge (#347), so the same change exists
under a different commit on each branch. The trees are identical, so dev's
tree is kept as-is.
Resolved the squash-merge divergence from #349. Every conflicted file is generator output, so all conflicts take the freshly generated 25.1.0 tree; the merged tree was verified byte-identical to the generator's output. Lock files are master's with only the package version bumped, keeping the release free of incidental dependency churn.
It runs bun install and cross-compiles six Bun binaries against a tree that no
longer has a package.json. The Go CLI is built and tested by the generator's
validation workflow before release, and by publish.yml at release time.
Generated from appwrite/sdk-generator 2.10.3. Keeps dev matching master so the
next release diff is the release.
@ChiragAgg5k ChiragAgg5k changed the title feat: Command Line SDK update for version 26.0.0-rc.2 feat: SDK update for version 26.0.0-rc.2 Aug 7, 2026
@greptile-apps

greptile-apps Bot commented Aug 7, 2026

Copy link
Copy Markdown

Greptile Summary

This release-candidate update expands headless skill installation, raw GraphQL input, and source-directory deployments while updating generated service argument conversion and HTTP timeout handling.

  • Adds JSON-aware conversion for generated array parameters and GraphQL request envelopes.
  • Packages function and site source directories before deployment.
  • Shares phase-bounded and self-signed-aware HTTP transport behavior with generated SDK commands.
  • Classifies timed-out mutating operations as having an unknown outcome.
  • Updates release metadata and installer versions to 26.0.0-rc.2.

Confidence Score: 4/5

The PR appears safe to merge, with one non-blocking diagnostic issue in the GraphQL query timeout path.

The changed GraphQL query handler labels a read-only query timeout as an uncertain mutation, so affected users receive misleading duplicate-change recovery guidance; no blocking runtime, data-integrity, or security failure remains.

Files Needing Attention: internal/cmd/services/graphql.go

Important Files Changed

Filename Overview
internal/sdk/capture.go Adds mutation-timeout classification and replaces the SDK-wide deadline with the shared phase-bounded recording transport.
internal/sdk/sdk.go Routes generated SDK clients through the shared HTTP policy so self-signed settings and long uploads work through response capture.
internal/client/client.go Introduces a shared HTTP client factory with optional certificate-verification bypass and response-header timeout boundaries.
internal/app/inputfile.go Adds temporary packaging and cleanup for deployment source directories while preserving direct archive uploads.
internal/app/convert.go Adds raw GraphQL document/envelope conversion and JSON decoding for repeatable generated-service arguments.
internal/cmd/initskill.go Adds explicit skill, agent, and installation-method selection for non-interactive installation.
internal/cmd/services/graphql.go Accepts raw GraphQL documents but misclassifies query timeouts as uncertain mutations because the endpoint uses POST.
internal/cmd/services/functions.go Allows deployment code to be supplied as either an archive or source directory with correctly deferred cleanup.
internal/cmd/services/sites.go Mirrors source-directory deployment support for sites.
internal/cmd/services/databases.go Decodes JSON-valued generated parameters and consistently applies shared timeout error handling.
internal/cmd/services/tablesdb.go Decodes JSON-valued row, column, index, and operation arguments before SDK calls.

Fix All in Claude Code Fix All in Codex

Prompt To Fix All With AI
### Issue 1
internal/cmd/services/graphql.go:42-45
**Query timeout marked as mutation**

When a read-only GraphQL query times out, `WrapMutationError("POST", err)` reports an unknown mutation outcome and warns about duplicate changes. Return the ordinary timeout for this query path so users receive relevant retry guidance.

```suggestion
			result, err := service.Query(queryValue)
			if err != nil {
				return err
			}
```

---

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

Reviews (1): Last reviewed commit: "chore: merge master into dev for the 26...." | Re-trigger Greptile

Comment thread internal/cmd/services/graphql.go
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