ワンクリックで
rstudio-update-quarto
// Use when updating the Quarto version in the RStudio repository, e.g. bumping to a new release. This skill is for macOS and Linux only.
// Use when updating the Quarto version in the RStudio repository, e.g. bumping to a new release. This skill is for macOS and Linux only.
How to run RStudio Playwright tests in Desktop and Server modes. Use this skill whenever the user asks to run, execute, or launch Playwright tests against RStudio - whether on Desktop (local) or Server (remote). Also use when the user asks about the test command, environment variables, or how to point tests at a server URL. Trigger on phrases like "run the test", "execute on server", "run it on desktop", "run against <IP>", or any request involving npx playwright test for the RStudio test suite.
Patterns and gotchas for authoring RStudio Playwright tests in TypeScript. Use when writing, reviewing, or migrating tests under e2e/rstudio/.
Migrate Python Selenium/Selene electron tests to TypeScript/Playwright. Use when converting tests from rstudio-ide-automation/rstudio_server_pro/electron-tests/ to rstudio/e2e/rstudio/tests/.
Use when updating the copilot-language-server version in the RStudio repository, e.g. bumping to a new release. This skill is for macOS and Linux only.
Use when updating the Electron version in the RStudio repository, e.g. bumping to a new release
Use when updating Node.js versions in the RStudio repository, e.g. bumping to a new release. Handles both build-time Node (RSTUDIO_NODE_VERSION, used for building Electron/GWT) and installed Node (RSTUDIO_INSTALLED_NODE_VERSION, shipped with the product). This skill is for macOS and Linux only.
| name | rstudio-update-quarto |
| description | Use when updating the Quarto version in the RStudio repository, e.g. bumping to a new release. This skill is for macOS and Linux only. |
Updates the pinned Quarto version across the RStudio codebase, mirrors the new release into the rstudio-buildtools S3 bucket, verifies the install, and opens a PR.
The user provides the target Quarto version (e.g. 1.9.36).
Before doing anything else, confirm the current branch is main. This skill creates a new feature branch off the current branch, so starting off anything other than main would base the work on the wrong commit.
git branch --show-current
If the output is not main, stop immediately and warn the user that they must switch to main (and pull the latest) before re-running this skill. Do not proceed with any further steps.
Confirm the version argument matches the format X.Y.Z (digits and dots only). If it doesn't, ask the user to correct it before proceeding.
Before modifying any files, verify that AWS credentials and required tools are in place. The upload script needs working AWS access, and discovering a credential problem after editing files wastes effort.
Run these checks and stop if any fail:
command -v aws >/dev/null 2>&1 && echo "aws: ok" || echo "aws: MISSING"
command -v wget >/dev/null 2>&1 && echo "wget: ok" || echo "wget: MISSING"
aws sts get-caller-identity
If aws or wget is missing, tell the user to install it. If aws sts get-caller-identity fails, tell the user to configure AWS credentials (e.g. aws sso login or aws configure sso if SSO isn't set up yet) and try again.
git checkout -b feature/update-quarto-<VERSION>
Update the Quarto version in the following four files. Each file uses a slightly different syntax — match the existing pattern exactly.
NEWS.mdIn the ### Dependencies section, update the Quarto line:
- Quarto <VERSION>
dependencies/tools/upload-quarto.shBash assignment, no quotes:
QUARTO_VERSION=<VERSION>
Unlike the copilot upload script, upload-quarto.sh does not accept a CLI argument — it reads the version from this hardcoded value, so it must be updated before running the upload step.
dependencies/common/install-quartoBash assignment, no quotes:
QUARTO_VERSION=<VERSION>
dependencies/windows/install-dependencies.cmdWindows batch syntax, no quotes:
set QUARTO_VERSION=<VERSION>
After editing, verify all four files contain the new version string.
Run the upload script. It downloads release archives for all supported platforms (linux-amd64, linux-arm64, macos, win) from the Quarto GitHub releases page and copies each to the rstudio-buildtools S3 bucket.
bash dependencies/tools/upload-quarto.sh
Confirm exit code 0 and that every platform archive was uploaded. If any download or upload fails, report the error and stop.
The upload script downloads each archive into the current working directory and does not clean up afterward, so remove the leftover archives once the upload succeeds:
rm -f quarto-<VERSION>-*
The default tools root (/opt/rstudio-tools/...) requires elevated privileges, so use a temporary directory to verify the install without needing sudo.
VERIFY_DIR="$(mktemp -d)"
trap 'rm -rf "$VERIFY_DIR"' EXIT
RSTUDIO_TOOLS_ROOT="$VERIFY_DIR" bash dependencies/common/install-quarto
Confirm exit code 0. The install script checks the resulting quarto --version against the expected value, so a successful run end-to-end is meaningful verification that the new release is usable. The trap ensures the temp directory is cleaned up whether the install succeeds or fails. If the install fails, report the error and stop.
After verification, tell the user they will need to re-run dependencies/common/install-quarto themselves (with appropriate privileges) to install the new Quarto into their dev environment.
Commit the four modified files and open a pull request:
feature/update-quarto-<VERSION>Update Quarto to <VERSION>Update Quarto to <VERSION>