core
core copied to clipboard
pre-commit-clang-format not working on windows
🐛 Bug Report
Fix pre-commit-clang-format
git hook to detect clang on windows and add v15 to the major version list.
Expected Behavior
Current Behavior
Clang-format is not detected even being installed already
Possible Solution
For adding v15 just add it to the this line https://github.com/metacall/core/blob/develop/githooks/pre-commit-clang-format#L27
Regarding the hook not detecting the clang-format executable, the current script is in bash if it could be ported to a .bat
or .ps1
script for windows.
Worth keeping up to date with https://github.com/godotengine/godot/blob/master/misc/hooks/pre-commit-clang-format,
as they already solved adding v15.
Also making the script polyglot should be a nice option too: https://gist.github.com/prail/24acc95908e581722c0e9df5795180f6
Will porting the bash script to .ps1
or .bat
fix the issue?
@Coder-Manan check this out https://github.com/metacall/core/issues/370#issuecomment-1385671085 @giarve can answer this better
@viferga is this issue solved or not ? if not please assign it to me
It is not resolved, try to port the bash script to ps1 or bat, then we will add a polyglot launcher to make it work in mac/linux and windows, as suggested in the issue.
Will porting the bash script to
.ps1
or.bat
fix the issue?
Yes, but we will need to add a common launcher for multiple platforms.
@parteekcoder I am not going to assign this to anybody, feel free to PR it if you want, and I will close the issue, this is open to anybody to be resolved.
is this issue solved or not ? if not please assign it to me
@Samir433 you can work on it if you want. If your solution is good we'll merge it. https://github.com/metacall/core/issues/370#issuecomment-1414567847
in the find_clang_format
function should I check only for versions 11-15 or for any version >= 11? (I am porting the script to ps script)
for windows repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.0.1
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
- id: check-json
- id: check-executables-have-shebangs
- id: check-astro
- id: check-bash
- id: check-symlinks
- id: check-secure-shell
- id: check-perl
- id: check-python-attributes
- id: check-python-variable-arity
- id: check-json-max-depth
- id: check-xml
- id: check-javascript
- id: check-toml
- id: check-markdown-ast
- id: check-for-merge-conflicts
- id: require-hooks
- id: check-merge-conflict
- id: check-casechange
- id: check-attributes
- id: check-variable-name-case
- id: check-yaml-documents
- id: check-ordered-dict
- id: check-dikt-style
- id: transform-ini-extensions
- id: check-date
- id: check-all-capitals paste above configuration into ".pre-commit-config.yaml" file and execute "pre-commmit install" after updating the config..
If the issue remains unresolved, kindly delegate it to me for further attention and resolution.