Skip to content

fix(rg): align r and tf default type globs with ripgrep#1805

Merged
chaliy merged 1 commit into
mainfrom
2026-05-28-propose-a-fix-for-rg-type-globs
May 28, 2026
Merged

fix(rg): align r and tf default type globs with ripgrep#1805
chaliy merged 1 commit into
mainfrom
2026-05-28-propose-a-fix-for-rg-type-globs

Conversation

@chaliy
Copy link
Copy Markdown
Contributor

@chaliy chaliy commented May 28, 2026

Motivation

  • Correct an overmatch in the built-in rg type database where the r and tf type globs were broader than real ripgrep defaults, causing -t r, -t tf, and --type all to include files (e.g. secrets.tfvars) that ripgrep would not.

Description

  • Update crates/bashkit/src/builtins/rg/mod.rs to make the default type globs match ripgrep: remove lowercase *.rmd/*.rnw from the r defaults and replace broad *.tfvars/*.tfvars.json with *.auto.tfvars, *.auto.tfvars.json, terraform.tfvars, and terraform.tfvars.json for the tf type.

Testing

  • Ran the targeted differential test case via cargo test -p bashkit builtins::rg::tests::rg_diff_cases -- --nocapture, and the test run completed with no test failures for the exercised cases.

Codex Task

@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented May 28, 2026

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
bashkit 8eba3d2 Commit Preview URL May 28 2026, 09:19 AM

@chaliy chaliy force-pushed the 2026-05-28-propose-a-fix-for-rg-type-globs branch from c7297f1 to 8eba3d2 Compare May 28, 2026 09:18
@chaliy chaliy merged commit 5b671a5 into main May 28, 2026
34 checks passed
@chaliy chaliy deleted the 2026-05-28-propose-a-fix-for-rg-type-globs branch May 28, 2026 13:08
chaliy added a commit that referenced this pull request May 28, 2026
## Release v0.8.0

Minor release. New feature: VFS-backed Python `open()` support.

### Highlights

- **Python `open()` support** — VFS-backed `open()` / `Path.open()`
read, write, and append now work in the embedded Python builtin, so
LLM-generated `with open("/tmp/...")` scripts run instead of failing.
Host filesystem and network stay unavailable to Python
([#1800](#1800)).
- Further `rg` parity and hardening fixes (default type globs, JSON
context fanout cap, root-arg allocation) plus interpreter fixes for
variable attribute/nameref persistence and persistent file descriptor
validation.

### What's Changed

* ci: reclaim runner disk before disk-hungry scheduled jobs
([#1807](#1807)) by @chaliy
* fix(rg): align r and tf default type globs with ripgrep
([#1805](#1805)) by @chaliy
* fix(rg): cap JSON context event fanout
([#1804](#1804)) by @chaliy
* fix(interpreter): persist var attrs and namerefs across shell state
restore ([#1803](#1803)) by
@chaliy
* fix(interpreter): reject negative persistent file descriptors
([#1802](#1802)) by @chaliy
* fix(rg): avoid root arg string cloning across candidates
([#1801](#1801)) by @chaliy
* feat(python): support vfs-backed open
([#1800](#1800)) by @chaliy
* feat(site): add bashkit logo assets
([#1799](#1799)) by @chaliy
* fix(ci): bypass pnpm `--` separator that breaks napi build flag
forwarding ([#1798](#1798)) by
@chaliy
* fix(site): add homepage canonical link header
([#1797](#1797)) by @chaliy

**Full Changelog**:
v0.7.2...v0.8.0

### Version bump

`0.7.2` → `0.8.0` across `Cargo.toml`, `crates/bashkit-cli/Cargo.toml`,
`crates/bashkit-js/package.json`, and `Cargo.lock`.

### Publish-readiness report

- ✅ `cargo fmt --check` — clean
- ✅ `cargo clippy --workspace --all-targets --features
http_client,ssh,sqlite -- -D warnings` — clean
- ✅ `cargo test --workspace --lib --bins --tests --features
http_client,ssh,sqlite` — green (with pinned ripgrep 15.1.0, matching
CI's `RG_VERSION`)
- ✅ `cargo test --features python -p bashkit` — green
- ✅ `cargo publish --dry-run -p bashkit` — succeeds after replicating
the workflow's monty/python strip step (git-only `monty` dep is stripped
before publish, as in `publish.yml`)
- ✅ `bashkit-cli` packages cleanly; its dry-run's only remaining step is
resolving `bashkit ^0.8.0` from crates.io, which the workflow satisfies
by publishing `bashkit` first (30s index wait) then `bashkit-cli`
- ✅ Version sync: all manifests read `0.8.0`; crates.io latest is
`0.7.2`, so `0.8.0` is a strict increment on every registry (npm/PyPI
versions are derived from the same pipeline)

Notes: in this sandbox the `rg` differential case and
`ssh_supabase_connects` test initially failed only because of
environment (preinstalled ripgrep 14.1.0 vs CI's pinned 15.1.0, and no
egress to the external `supabase.sh` SSH host); both are environmental,
not code regressions.


---
_Generated by [Claude
Code](https://claude.ai/code/session_01URKhGRWFuMgjHQR1YhyNHN)_
chaliy added a commit that referenced this pull request May 30, 2026
Align bashkit's default rg type globs with real ripgrep: drop the lowercase `*.rmd`/`*.rnw` entries from the `r` type, and replace the overly broad `*.tfvars`/`*.tfvars.json` globs in the `tf` type with the canonical `*.auto.tfvars`, `*.auto.tfvars.json`, `terraform.tfvars`, and `terraform.tfvars.json`.
chaliy added a commit that referenced this pull request May 30, 2026
## Release v0.8.0

Minor release. New feature: VFS-backed Python `open()` support.

### Highlights

- **Python `open()` support** — VFS-backed `open()` / `Path.open()`
read, write, and append now work in the embedded Python builtin, so
LLM-generated `with open("/tmp/...")` scripts run instead of failing.
Host filesystem and network stay unavailable to Python
([#1800](#1800)).
- Further `rg` parity and hardening fixes (default type globs, JSON
context fanout cap, root-arg allocation) plus interpreter fixes for
variable attribute/nameref persistence and persistent file descriptor
validation.

### What's Changed

* ci: reclaim runner disk before disk-hungry scheduled jobs
([#1807](#1807)) by @chaliy
* fix(rg): align r and tf default type globs with ripgrep
([#1805](#1805)) by @chaliy
* fix(rg): cap JSON context event fanout
([#1804](#1804)) by @chaliy
* fix(interpreter): persist var attrs and namerefs across shell state
restore ([#1803](#1803)) by
@chaliy
* fix(interpreter): reject negative persistent file descriptors
([#1802](#1802)) by @chaliy
* fix(rg): avoid root arg string cloning across candidates
([#1801](#1801)) by @chaliy
* feat(python): support vfs-backed open
([#1800](#1800)) by @chaliy
* feat(site): add bashkit logo assets
([#1799](#1799)) by @chaliy
* fix(ci): bypass pnpm `--` separator that breaks napi build flag
forwarding ([#1798](#1798)) by
@chaliy
* fix(site): add homepage canonical link header
([#1797](#1797)) by @chaliy

**Full Changelog**:
v0.7.2...v0.8.0

### Version bump

`0.7.2` → `0.8.0` across `Cargo.toml`, `crates/bashkit-cli/Cargo.toml`,
`crates/bashkit-js/package.json`, and `Cargo.lock`.

### Publish-readiness report

- ✅ `cargo fmt --check` — clean
- ✅ `cargo clippy --workspace --all-targets --features
http_client,ssh,sqlite -- -D warnings` — clean
- ✅ `cargo test --workspace --lib --bins --tests --features
http_client,ssh,sqlite` — green (with pinned ripgrep 15.1.0, matching
CI's `RG_VERSION`)
- ✅ `cargo test --features python -p bashkit` — green
- ✅ `cargo publish --dry-run -p bashkit` — succeeds after replicating
the workflow's monty/python strip step (git-only `monty` dep is stripped
before publish, as in `publish.yml`)
- ✅ `bashkit-cli` packages cleanly; its dry-run's only remaining step is
resolving `bashkit ^0.8.0` from crates.io, which the workflow satisfies
by publishing `bashkit` first (30s index wait) then `bashkit-cli`
- ✅ Version sync: all manifests read `0.8.0`; crates.io latest is
`0.7.2`, so `0.8.0` is a strict increment on every registry (npm/PyPI
versions are derived from the same pipeline)

Notes: in this sandbox the `rg` differential case and
`ssh_supabase_connects` test initially failed only because of
environment (preinstalled ripgrep 14.1.0 vs CI's pinned 15.1.0, and no
egress to the external `supabase.sh` SSH host); both are environmental,
not code regressions.


---
_Generated by [Claude
Code](https://claude.ai/code/session_01URKhGRWFuMgjHQR1YhyNHN)_
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant