rename system and script languages to unsupported / unsupported_script#3577
rename system and script languages to unsupported / unsupported_script#3577
Conversation
|
finally! 🥳 |
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [pre-commit](https://github.com/pre-commit/pre-commit) | minor | `4.3.0` -> `4.4.0` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>pre-commit/pre-commit (pre-commit)</summary> ### [`v4.4.0`](https://github.com/pre-commit/pre-commit/blob/HEAD/CHANGELOG.md#440---2025-11-08) [Compare Source](pre-commit/pre-commit@v4.3.0...v4.4.0) \================== ##### Features - Add `--fail-fast` option to `pre-commit run`. - [#​3528](pre-commit/pre-commit#3528) MR by [@​JulianMaurin](https://github.com/JulianMaurin). - Upgrade `ruby-build` / `rbenv`. - [#​3566](pre-commit/pre-commit#3566) MR by [@​asottile](https://github.com/asottile). - [#​3565](pre-commit/pre-commit#3565) issue by [@​MRigal](https://github.com/MRigal). - Add `language: unsupported` / `language: unsupported_script` as aliases for `language: system` / `language: script` (which will eventually be deprecated). - [#​3577](pre-commit/pre-commit#3577) MR by [@​asottile](https://github.com/asottile). - Add support docker-in-docker detection for cgroups v2. - [#​3535](pre-commit/pre-commit#3535) MR by [@​br-rhrbacek](https://github.com/br-rhrbacek). - [#​3360](pre-commit/pre-commit#3360) issue by [@​JasonAlt](https://github.com/JasonAlt). ##### Fixes - Handle when docker gives `SecurityOptions: null`. - [#​3537](pre-commit/pre-commit#3537) MR by [@​asottile](https://github.com/asottile). - [#​3514](pre-commit/pre-commit#3514) issue by [@​jenstroeger](https://github.com/jenstroeger). - Fix error context for invalid `stages` in `.pre-commit-config.yaml`. - [#​3576](pre-commit/pre-commit#3576) MR by [@​asottile](https://github.com/asottile). </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNzMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE3My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
|
That's really confusing... What's the rationale behind renaming |
|
that's the correct impression and exactly the intention. it is the escape hatch and not a recommended way to use pre-commit |
|
Why though? What if you need to execute something like |
|
pre-commit is not just a tool for python tools. but also there is a clang-format: https://github.com/ssciwr/clang-format-wheel?tab=readme-ov-file#use-from-pre-commit |
|
also again it's not going away. it's just making the naming more honest |
If you actually look at the implementation of that hook, you can see that they still invoke a binary from PATH, but now also have to setup a dummy python package — https://github.com/pre-commit/mirrors-clang-format. This just looks like a very unnecessary extra step...
If anything, it feels like things are less honest now. People's first impression is that invoking binaries from PATH is "unsupported". Having a language called "system" was much more clear in its intentions. Well, I guess is too late to argue about this now, since the PR is already merged :P |
|
the supported path is when pre-commit provisions the tools for you -- that's kind of the point. the unsupported path is you need some random set of installation and setup instructions for your contributors to get every random tool set up and working |
to better represent that these "languages" aren't actually languages at all and do not provision environments.
a future version will show a deprecation warning and eventually the aliases will be removed!