Skip to content

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

Merged
wan9chi merged 8 commits into
mainfrom
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
wan9chi merged 8 commits into
mainfrom
02-11-chore_config_clippy_rules_for_non-vite_crates

Conversation

@wan9chi

@wan9chi wan9chi commented Feb 11, 2026

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>

wan9chi commented Feb 11, 2026

Copy link
Copy Markdown
Member Author

@wan9chi wan9chi marked this pull request as ready for review February 11, 2026 03:09
wan9chi 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>

wan9chi commented Feb 12, 2026

Copy link
Copy Markdown
Member Author

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.

@wan9chi wan9chi merged commit 1fe363c into main Feb 12, 2026
7 checks passed
@wan9chi wan9chi 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