Mix include and exclude paths in workflows
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
> On reflection and after reading about [excluding paths](https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#example-excluding-paths), we know the paths that `cabal-install` is dependent on, why don't we switch from `paths-ignore` to `paths`?
```
$ cabal info cabal-install
...
Dependencies: ... Cabal ...
Cabal-syntax ...
cabal-install-solver ...
Cabal-QuickCheck ...
Cabal-described ... Cabal-tests ... cabal-install, ...
```
It is also possible to mix, to [exclude and include](https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#example-including-and-excluding-paths) paths.
_Originally posted by @philderbeast in https://github.com/haskell/cabal/pull/10740#discussion_r1938357359_
That would give us a configuration something like:
```yaml
paths:
- 'Cabal-QuickCheck/**'
- 'Cabal-described/**'
- 'Cabal-syntax/**'
- 'Cabal-tests/**'
- 'Cabal/**'
- 'cabal-install-solver/**'
- 'cabal-install/**'
- '!Cabal-tests/test/**'
- '!cabal-testsuite/PackageTests/**'
```
Contributor guide
Assessment
This issue has not been assessed yet.