Skip to content

chore: configure clippy rules for non-vite crates via .non-vite.clippy.toml#151

Merged
branchseer merged 8 commits intomainfrom
02-11-chore_config_clippy_rules_for_non-vite_crates
Feb 12, 2026
Merged

chore: configure clippy rules for non-vite crates via .non-vite.clippy.toml#151
branchseer merged 8 commits intomainfrom
02-11-chore_config_clippy_rules_for_non-vite_crates

Conversation

@branchseer
Copy link
Copy Markdown
Member

Non-vite crates previously used blanket #![allow(clippy::disallowed_types, disallowed_methods, disallowed_macros)] to opt out of vite_str/vite_path rules,
but this also silenced generic rules like HashMap→FxHashMap and cow_utils.

Replace the blanket allows with a dedicated .non-vite.clippy.toml that keeps
generic rules but omits vite-specific ones. Each non-vite crate gets a symlinked
.clippy.toml pointing to the shared config.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

…y.toml

Non-vite crates previously used blanket `#![allow(clippy::disallowed_types,
disallowed_methods, disallowed_macros)]` to opt out of vite_str/vite_path rules,
but this also silenced generic rules like HashMap→FxHashMap and cow_utils.

Replace the blanket allows with a dedicated `.non-vite.clippy.toml` that keeps
generic rules but omits vite-specific ones. Each non-vite crate gets a symlinked
`.clippy.toml` pointing to the shared config.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Member Author

branchseer commented Feb 11, 2026

@branchseer branchseer marked this pull request as ready for review February 11, 2026 03:09
branchseer and others added 7 commits February 11, 2026 11:15
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
ConPTY reprocesses output and inserts escape sequences between
individually-printed characters, so "abcd" never appears contiguous
in the raw PTY stream. Print the full string at once instead — boundary
spanning is still tested since the reader can return partial data.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
On Linux, writing to a PTY master after the child exits can succeed
(kernel buffers the data), unlike macOS which returns EIO. The
background thread sets writer=None after setting exit_status, but
read_to_end returns right after exit_status is set, creating a window
where write() still succeeds. Close the writer in read_to_end itself.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Make clippy non-blocking so tests still run even when clippy fails,
while preserving the job failure via a deferred check at the end.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- resize_terminal: compare terminal size before/after instead of
  unconditionally printing RESIZE_DETECTED
- send_ctrl_c: clear the "ignore CTRL_C" flag (set by Rust runtime)
  with SetConsoleCtrlHandler(None, 0) so CTRL_C_EVENT actually
  terminates the process via the default handler, proving send_ctrl_c
  delivers the signal. On Unix, verify via SIGINT handler as before.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace platform-divergent signal-hook (Unix) / default-handler (Windows)
approach with the `ctrlc` crate on both platforms. The handler writes
"INTERRUPTED" and exits directly, avoiding race conditions between the
callback thread and main thread.

On Windows, the Rust runtime sets SetConsoleCtrlHandler(NULL, TRUE) during
init which ignores CTRL_C_EVENT — clear this flag before registering the
handler so ConPTY-generated events reach it.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Member Author

branchseer commented Feb 12, 2026

Merge activity

  • Feb 12, 10:08 AM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Feb 12, 10:08 AM UTC: @branchseer merged this pull request with Graphite.

@branchseer branchseer merged commit 1fe363c into main Feb 12, 2026
7 checks passed
@branchseer branchseer deleted the 02-11-chore_config_clippy_rules_for_non-vite_crates branch February 12, 2026 10:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant