commercialhaskell / commercialhaskell/stack

Add `global-project` non-project specific configuration

Open
#5,095 0 comments 0 reactions 0 assignees View on GitHub
type: discuss
Dominant language
Haskell
Stars
4.1k
Forks
850
Avg merge
10h 37m
Merged PRs (30d)
4

Description

### General summary

The `global-project/stack.yaml` config properties are ignored when stack is used outside of a project, while only `config.yaml`s configs are used.

This doesn't allow to specify configs which should be used when outside a project, and not global configs which are applied to all projects.

### Steps to reproduce

For example, specifying `setup-info-locations` in `global-project/stack.yaml` is completely ignored.

### Stack version

Stack 2.13 release

### Relevant source code

https://github.com/commercialhaskell/stack/blob/665a184e0547c971268c1713e6f865e50386400e/src/Stack/Config.hs#L411-L423
(`PCGlobalProject, id` - should not be id, but the ConfigMonoid of the `global-project/stack.yaml`)

https://github.com/commercialhaskell/stack/blob/665a184e0547c971268c1713e6f865e50386400e/src/Stack/Config.hs#L483-L495
(`ProjectAndConfigMonoid project _ ` - The ConfigMonoid should not be ignored)

### Relevant issues

Relevant: [#964](https://github.com/commercialhaskell/stack/issues/964) was also confused by this behavior

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.