Skip to content

chore(release): version packages#66

Merged
ABB65 merged 1 commit into
mainfrom
changeset-release/main
Jul 9, 2026
Merged

chore(release): version packages#66
ABB65 merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@contentrain/[email protected]

Minor Changes

  • f1a2dce: Three additive GitHub-provider optimizations that cut API calls per write (no breaking changes)

    • applyPlan blob inliningapplyPlanToGitHub now inlines file content directly in the Git tree entries instead of POSTing a blob per file. A write drops from N+3 GitHub mutations to a fixed 3 (tree + commit + ref) regardless of file count, easing the mutation-rate secondary limit. This brings the GitHub provider to parity with the GitLab provider, which already inlines content in its commit actions. Deletions are unchanged (null-sha entries); content is passed through byte-for-byte.
    • GitHubReader opt-in read memoizationnew GitHubReader(client, repo, { memoize: true }) deduplicates repeated (path, ref) reads within one operation across readFile / listDirectory / fileExists. Opt-in and off by default; failed reads are evicted so transient errors are retried, not cached. The provider's own long-lived reader does not enable it (a reader that outlives a write must not serve stale results).
    • buildContextChange stats injectionbuildContextChange(reader, operation, source, { stats }) lets a caller that already knows the model/entry counts skip the O(models·locales) reader walk; only readConfig remains. The emitted context.json is byte-identical to the scanned variant. Parameterless callers are unaffected.

Patch Changes

  • cfface5: Speed up local writes by batching git subprocess spawns in the worktree transaction

    Every local write (content_save, model_save, bulk, normalize apply, …) runs through createTransaction, which spawned ~40 git processes for a single content save. Two behavior-preserving batches cut that:

    • Commit identity via environment — the worktree git instance now carries GIT_AUTHOR_* / GIT_COMMITTER_* in its env instead of running two git config user.* spawns per transaction (and per contentrain_merge). Git honors these for both the sync merges and the feature-branch commit.
    • Batched selective syncselectiveSync replaced its per-file git cat-file -e existence loop with a single git ls-tree over the changed paths, and its per-file git checkout HEAD -- <file> loop with a single batched checkout (per-file fallback on error preserves precise skip accounting). Working-tree deletions are parallel fs removals.

    Measured: a 2-locale content_save drops from ~40 git spawns to ~30 (config 2→0, cat-file 5→0, checkout 7→3), roughly halving the operation's wall-clock. The selective-sync win scales with file count, so bulk writes benefit the most. No behavior change — the full worktree-transaction test suite passes unchanged.

[email protected]

Patch Changes

@netlify

netlify Bot commented Jul 9, 2026

Copy link
Copy Markdown

Deploy Preview for contentrain-ai ready!

Name Link
🔨 Latest commit eeccdea
🔍 Latest deploy log https://app.netlify.com/projects/contentrain-ai/deploys/6a4f70c4dd108a000896f4ce
😎 Deploy Preview https://deploy-preview-66--contentrain-ai.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@ABB65
ABB65 merged commit 532ed56 into main Jul 9, 2026
5 checks passed
@github-actions github-actions Bot locked and limited conversation to collaborators Jul 9, 2026
@ABB65
ABB65 deleted the changeset-release/main branch July 9, 2026 10:03
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant