Open nikaro opened 1 month ago
Respecting .gitignore
is a nice suggestion. In theory it'd be a small breaking change, though, because some users may not expect it to be excluded.
Alternative, we could introduce a .taskignore
, using the same format. Or, just have a global ignore:
setting on the Taskfile that would be globally respected.
we could introduce a
.taskignore
, using the same format
This would be fine as it could be a symlink to .gitignore
to avoid duplicating file content in case you want to ignore the same things.
have a global
ignore:
setting on the Taskfile that would be globally respected
For this one i think its value should be gitignore-like file to parse, maybe .taskignore
by default, then it could be overridden (ex. with .gitignore
) for those who do not want to add another file/symlink.
For the record, in the meantime my workaround is using fd [...] | xargs [...]
as fd exclude .gitignore
content by default. Ex:
json:
desc: Lint JSON files
sources:
- ./**/*.json
cmds:
- fd --hidden --extension json | xargs --no-run-if-empty jq empty
- fd --hidden --extension json | xargs --no-run-if-empty prettier --check --parser json
I don't have much time right now to give this a try, but this lib could probably be used to help for gitignore parsing: https://pkg.go.dev/github.com/go-git/go-git/v5/plumbing/format/gitignore
Hey!
I think .taskignore
is a good idea! I am not in favor reading .gitignore
I'm using this task to lint JSON files:
And it would be nice if
sources
could respect the.gitignore
content instead of having to exclude all ignored patterns.This is especially needed as i'm using this task from a Remote Taskfiles #1317 and cannot easily edit it.