Enhance contributor documentation and VS Code extension setup#13
Conversation
- Expanded `contributors.md` to include detailed local setup instructions, testing guidelines, and release flow for contributors. - Updated `readme.md` to link to the new contributor guide and clarify VS Code extension installation. - Modified `.gitignore` to exclude VS Code extension package files. - Enhanced CI workflow for building and packaging the VS Code extension. - Updated `highlighter/package.json` with new metadata and scripts for extension packaging.
|
Warning Review limit reached
More reviews will be available in 43 minutes and 4 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (5)
📝 WalkthroughWalkthroughThis PR establishes the complete release and publishing infrastructure for the Minecraft Script VS Code extension. It adds a Bun-based CI build job, release version gating, marketplace identity (renaming to minecraft-script-language-support under publisher SpyC0der77), comprehensive extension documentation, and detailed contributor workflows for local development, testing, versioning, and extension marketplace publishing. ChangesVS Code Extension Release and Publishing Infrastructure
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 5
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
.github/workflows/ci.yml (1)
25-30:⚠️ Potential issue | 🟠 Major | ⚡ Quick winAdd version-parity gate to CI before releases drift.
Line 29 currently runs tests only; the workflow should also execute
python scripts/check_release_versions.pyso mismatchedpyproject.toml/npm/package.jsonversions fail CI automatically.Suggested patch
- name: Run tests run: pytest -q + + - name: Verify Python/npm release versions match + run: python scripts/check_release_versions.py🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In @.github/workflows/ci.yml around lines 25 - 30, CI currently only runs the "Run tests" step (pytest -q); add a new job step in .github/workflows/ci.yml right before or after the "Run tests" step that executes `python scripts/check_release_versions.py` and fails the workflow on non-zero exit so any mismatch between pyproject.toml and npm/package.json versions is caught; reference the existing "Run tests" step to place the new step and ensure it uses the same runner/context and environment as pytest.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/ci.yml:
- Around line 38-41: Update the GitHub Actions steps that use movable tags:
replace uses: actions/checkout@v4 and uses: oven-sh/setup-bun@v2 with pinned
commit SHAs and add persist-credentials: false to the checkout step;
specifically, in the checkout step (actions/checkout) set persist-credentials:
false to avoid exposing the token, and change the setup-bun step
(oven-sh/setup-bun) to reference a specific commit SHA instead of v2.
In `@highlighter/.vscodeignore`:
- Around line 1-11: The .vscodeignore currently begins with "*" / "**/*" which
ignores the whole tree and then tries to negate individual files, but vsce can
still exclude negated files unless their parent directories are re-included;
update highlighter/.vscodeignore to explicitly re-include the parent directories
before the files (e.g. add negations for the directories like "!dist/" and
"!syntaxes/" or "!dist/**" and "!syntaxes/**" prior to or alongside the existing
"!dist/extension.js" and "!syntaxes/**" entries) so that dist/extension.js and
the grammar files are reliably packaged by vsce.
In `@readme.md`:
- Line 79: Update the command palette shortcut in the README entry for
"Minecraft Script: Select Command Lint Version" to use the correct
command-palette binding: replace "Cmd or Ctrl + P" with "Cmd+Shift+P /
Ctrl+Shift+P" so the instructions point to the actual command palette shortcut.
- Line 79: In readme.md update the markdown so the highlighter README is a
clickable link by removing the inline code backticks around
[highlighter/README.md](highlighter/README.md) (i.e., change the inline-code
formatted ` [highlighter/README.md](highlighter/README.md) ` to a plain markdown
link [highlighter/README.md](highlighter/README.md)); ensure the surrounding
sentence remains unchanged so the link renders in the README.
In `@scripts/check_release_versions.py`:
- Around line 16-19: The current version extraction uses a global regex (match =
re.search(r'^version\s*=\s*"([^"]+)"', text, re.MULTILINE)) which can pick up a
different section; change the logic in the version-parsing routine to first
isolate the [project] section from the file text (find the "[project]" header
and its following block up to the next "[" header or EOF) and then run the
version regex only on that subsection, updating the existing match check and
return (the match variable and return match.group(1)) so the SystemExit is still
raised if no version is found within [project].
---
Outside diff comments:
In @.github/workflows/ci.yml:
- Around line 25-30: CI currently only runs the "Run tests" step (pytest -q);
add a new job step in .github/workflows/ci.yml right before or after the "Run
tests" step that executes `python scripts/check_release_versions.py` and fails
the workflow on non-zero exit so any mismatch between pyproject.toml and
npm/package.json versions is caught; reference the existing "Run tests" step to
place the new step and ensure it uses the same runner/context and environment as
pytest.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 05594241-dec1-44c2-bad5-f55377d6935e
⛔ Files ignored due to path filters (2)
highlighter/bun.lockis excluded by!**/*.lockhighlighter/icon.pngis excluded by!**/*.png
📒 Files selected for processing (11)
.github/workflows/ci.yml.gitignorecontributors.mdhighlighter/.vscodeignorehighlighter/CHANGELOG.mdhighlighter/LICENSEhighlighter/README.mdhighlighter/package.jsonreadme.mdscripts/check_release_versions.pytodo.md
There was a problem hiding this comment.
4 issues found across 13 files
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Re-trigger cubic
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Files Reviewed (5 files in incremental diff)
Reviewed by step-3.7-flash-20260528 · 205,827 tokens |
- Revised `contributors.md` to reflect updated example commands for compiling datapacks. - Clarified version selection process in `readme.md` for improved user guidance. - Added a step in the CI workflow to check release versions, enhancing version management. - Adjusted `.vscodeignore` to refine ignored files for the VS Code extension. - Improved error handling in `check_release_versions.py` for better clarity on missing project section.
contributors.mdto include detailed local setup instructions, testing guidelines, and release flow for contributors.readme.mdto link to the new contributor guide and clarify VS Code extension installation..gitignoreto exclude VS Code extension package files.highlighter/package.jsonwith new metadata and scripts for extension packaging.Summary by CodeRabbit
New Features
.mcsfiles, hover documentation, and command linting via Spyglass integration.Documentation
Chores