-
Notifications
You must be signed in to change notification settings - Fork 19
Update development toolchain configuration #290
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Deno officially provides 'update' functionality, so we can remove our custom tasks.
WalkthroughThe PR upgrades CI to Deno 2.x, updates GitHub Actions to newer versions, restructures test workflows by adding a dedicated supported-version-check job and enhancing caches, removes the jsr-publish job from tests, deletes the update automation workflow, and removes update-related tasks and the version field from deno.jsonc. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Dev as Developer
participant GH as GitHub Actions
rect rgb(240,245,255)
note right of GH: On PR / push
Dev->>GH: Push / PR
GH->>GH: check job (setup-deno v2, cache)
GH->>GH: test job (setup-deno v2, improved cache)
GH->>GH: supported-version-check job (Deno 2.x matrix)
note over GH: Runs gen and apply:supported-versions checks
end
rect rgb(240,255,240)
note right of GH: On tag push
Dev->>GH: Create tag
GH->>GH: jsr.yml workflow (Deno 2.x, publish-on-tag 0.2.0)
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
Tip 🔌 Remote MCP (Model Context Protocol) integration is now available!Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats. ✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
Because supported-version-check depends on denops's supported-versions that makes the test fail for new denops versions.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #290 +/- ##
=======================================
Coverage 84.77% 84.77%
=======================================
Files 64 64
Lines 2864 2864
Branches 278 278
=======================================
Hits 2428 2428
Misses 434 434
Partials 2 2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
.github/workflows/test.yml (1)
85-87
: Upgradedenoland/setup-deno
to v2 in test workflow
- File:
.github/workflows/test.yml
, lines 85–87- A quick search (
rg -n "denoland/setup-deno@v1" .github/workflows -C2
) shows this is the only v1 reference.- - uses: denoland/[email protected] + - uses: denoland/setup-deno@v2 with: deno-version: "${{ matrix.deno_version }}"This change aligns the action with Deno 2.x support and avoids potential mismatches when using newer runtime versions.
🧹 Nitpick comments (4)
.github/workflows/jsr.yml (1)
4-4
: Consider pinning publish runtime to a minor (e.g., 2.3.x) to avoid surprise breaksPublishing is high‑blast‑radius. Using 2.x can pick up future breaking changes the moment they release. Prefer a minor pin for the publish workflow.
Apply this minimal diff:
- DENO_VERSION: 2.x + DENO_VERSION: 2.3.x.github/workflows/test.yml (3)
51-55
: Cache key is too broad; key off lock/config for better hit rate
hashFiles('**/*')
invalidates on almost any repo change. Prefer narrowing to Deno inputs (lockfile/config) to improve cache reuse.- key: deno-${{ hashFiles('**/*') }} - restore-keys: deno- + key: deno-${{ hashFiles('deno.lock', 'deno.json', 'deno.jsonc') }} + restore-keys: | + deno-If you also use import maps or workspace configs, add them to
hashFiles(...)
.
150-151
: Dead code: Windows-specific git config in a Linux-only matrixThis step never runs because the matrix is
ubuntu-latest
only. Safe to drop for clarity.- - run: git config --global core.autocrlf false - if: runner.os == 'Windows'
121-129
: Optional: pre-cache can benefit from--reload
on CI to warm cache deterministicallyNot required, but
deno cache --reload ...
avoids partial cache hits causing flaky “not found locally” fetches. Only consider if you see intermittents.- deno cache \ + deno cache --reload \ --config ${DENOPS_TEST_DENOPS_PATH}/denops/@denops-private/deno.jsonc \ ${DENOPS_TEST_DENOPS_PATH}/denops/@denops-private/mod.ts \ ./mod.ts
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (4)
.github/workflows/jsr.yml
(2 hunks).github/workflows/test.yml
(2 hunks).github/workflows/update.yml
(0 hunks)deno.jsonc
(0 hunks)
💤 Files with no reviewable changes (2)
- .github/workflows/update.yml
- deno.jsonc
🔇 Additional comments (4)
.github/workflows/jsr.yml (2)
4-4
: Deno 2.x + setup-deno v2 alignment looks correctEnv pin to 2.x and moving to denoland/setup-deno@v2 are consistent with the PR goal. No functional concerns.
Also applies to: 22-24
27-27
: The script will tell us if the code has been updated to use Deno.Command (required for Deno 2.X) instead of the deprecated Deno.run. Once we see the output, we can confirm compatibility and finalize the comment..github/workflows/test.yml (2)
46-49
: Upgrade to denoland/setup-deno@v2 in check job: LGTMMatches the Deno 2 toolchain target and aligns with jsr.yml.
163-169
: Verified: CI tasks are presentBoth the
gen
(line 101) andapply:supported-versions
(line 102) tasks are defined indeno.jsonc
, so these workflow steps will succeed without further changes.
Summary
Test plan
🤖 Generated with Claude Code
Summary by CodeRabbit
Chores
Tests