* Support `language: unsupported` and `language: unsupported_script` introduced in pre-commit v4.4
Honestly, I have no idea why `system` and `script` got deprecated or what we're supposed to use instead. I probably won't deprecate them in prek.
* Fix lint
* Add Ruby support (no download support yet)
Currently only pre-existing Rubies are used, although the code will
search for and consider multiple versions. This allows a hook to require
3.4.7 when the default system Ruby is 3.4.6, but RVM (or a similar tool)
has installed 3.4.7. If a suitable Ruby cannot be found, the user is
prompted to install one manually and re-run.
Hooks get an isolated GEM_HOME, based on the hook repository, any
additional_dependencies, and the interpreter version/path. Any Ruby
upgrade would therefore re-install the gems to ensure that stale
versions aren't used. Repository gem dependencies are installed based on
the included gemspec files, combined with the additional_dependencies
field.
* Add pins for CI 'install Ruby' action
* Update setup-ruby pin
* Tweak version parsing
* Tweak env vars
---------
Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
* Add Lua language support
Refactor Lua integration: streamline async functions and improve rockspec file handling
Add Lua and LuaRocks installation steps to CI workflow
Add MSVC development command to CI workflow
Update CI workflow to specify Windows-only dependencies for MSVC and Lua installations
Update CI workflow to use official Lua and LuaRocks GitHub actions
Update CI workflow to specify Windows-only dependencies for Lua and LuaRocks installations
Update CI workflow to use PowerShell for Cargo test execution and improve command formatting
Add platform-specific command snapshots for Lua tests
Enhance the Lua test environment by adding separate command snapshots for Windows and non-Windows platforms. This ensures accurate output handling based on the operating system, improving test reliability and clarity.
Update CI workflow to use specific versions of Lua and LuaRocks actions
Refactor Lua dependency installation and update test cases
Refactor Lua command execution to streamline environment path handling
Fix dependencies installing
Fix remote repo hook
* Add lua remote_hook test
* Tweaks
---------
Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
* Warn user when revs are found
* Lint
* Update test snapshots
* Fix snapshot
* Tweak message
* Update tests
* fix tests
---------
Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
* Revert "Do not set `GOROOT` and `GOPATH` for system found go (#415)"
This reverts commit 32d57905e4.
* Test remote hooks with system go
* Reapply "Do not set `GOROOT` and `GOPATH` for system found go (#415)"
This reverts commit e16e7df60d.
* feat: support docker_image
* test: add docker_image test case
* test: fix test failed when git default branch set `main`
* Minor tweaks
---------
Co-authored-by: j178 <10510431+j178@users.noreply.github.com>