Open
Conversation
Implements Bun as a new language option for pre-commit hooks, enabling hooks to run using the Bun JavaScript runtime and package manager. - Add bun.py language implementation with binary download/install - Support system-installed Bun or automatic version download - Add comprehensive tests including version handling and hook execution - Register bun in all_languages.py - Include test repository fixture for integration tests
Adds the oven-sh/setup-bun@v2 action to install Bun when running language tests for the Bun language support added previously.
Add comprehensive unit tests to cover all code paths in the Bun language implementation: - Platform detection tests for darwin, linux, windows, and unsupported platforms - Version normalization tests for all format variations (default, plain numbers, v-prefix, bun-v-prefix) - HTTP error handling tests for 404 and other error codes - Binary extraction edge case tests for missing directories and missing executables - System version installation path test to verify binary download is skipped when using system bun Coverage increased from 87% to 100% with no lines or branches missing. All tests use mocks to avoid requiring network calls or platform-specific behavior, ensuring fast and reliable test execution.
Kelleretoro
approved these changes
Nov 1, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements Bun as a new language option for pre-commit hooks, enabling hooks to run using the Bun JavaScript runtime and package manager.
Addresses #3089