Commit 2c06471
authored
Introduce
Fixes #1499
# PR description
This PR introduces `fourmolu` as an automatic code formatter to replace
`stylish-haskell`
Beyond the actual reformatting, I've introduced the following changes:
- add `fourmolu` to the Nix shell
- add the `scripts/ci/run-fourmolu.sh` scripts, which is based on the
previously used script for `stylish-haskell`
- add a Hydra job to check the project with `fourmolu` (and pushed a
dummy commit to check that the CI rejects improperly styled code)
- add The Big Reformatting Commit to `.git-blame-ignore-revs` and
checked that the blame interface on GitHub respects it
- with a somewhat heavy heart, butchered the style guide. The
layout-related sections are removed as the layout is now enforced by
`fourmolu`.
Additionally, I've enabled `ImportQualifiedPost` in all cabal files,
alongside with the `-Wprepositive-qualified-module` warning. This
extension and warning could be removed once (if?) we transition to
`GHC2021` as the default language.fourmolu (#1500)File tree
664 files changed
+98957
-87853
lines changed- docs/website/contents/for-developers
- nix
- ouroboros-consensus-cardano
- app
- DBAnalyser
- DBSynthesizer
- DBTruncater
- GenHeader
- src
- byron/Ouroboros/Consensus/Byron
- Crypto
- Ledger
- Node
- ouroboros-consensus-cardano/Ouroboros/Consensus
- Cardano
- shelley/Ouroboros/Consensus/Shelley
- Ledger
- Query
- Node
- Protocol
- unstable-byron-testlib
- Ouroboros/Consensus/ByronDual
- Node
- Test
- Consensus/Byron
- ThreadNet
- Infra
- Byron
- TxGen
- unstable-byronspec/Ouroboros/Consensus/ByronSpec
- Ledger
- unstable-cardano-testlib/Test
- Consensus/Cardano
- ThreadNet
- Infra
- TxGen
- unstable-cardano-tools/Cardano
- Api
- Protocol
- Node
- Protocol
- Tools
- DBAnalyser
- Analysis/BenchmarkLedgerOps
- Block
- DBImmutaliser
- DBSynthesizer
- DBTruncater
- ImmDBServer
- unstable-shelley-testlib/Test
- Consensus/Shelley
- ThreadNet
- Infra
- TxGen
- test
- byron-test
- Test
- Consensus/Byron
- ThreadNet
- cardano-test
- Test
- Consensus/Cardano
- MiniProtocol/LocalTxSubmission
- ThreadNet
- shelley-test
- Test
- Consensus/Shelley
- ThreadNet
- tools-test
- Test/Cardano/Tools
- ouroboros-consensus-diffusion
- src
- ouroboros-consensus-diffusion/Ouroboros/Consensus
- Network
- Node
- unstable-diffusion-testlib/Test/ThreadNet
- Ref
- Util
- unstable-mock-testlib/Test
- Consensus/Ledger/Mock
- ThreadNet
- TxGen
- Util
- HasCreator
- test
- consensus-test
- Test
- Consensus
- GSM
- Genesis
- Setup
- Tests
- LoE
- HardFork
- Combinator
- IOSimQSM/Test/StateMachine
- Network/AnchoredFragment
- PeerSimulator
- Tests
- PointSchedule
- Shrinking
- SinglePeer
- Util
- infra-test
- Test/ThreadNet/Util
- mock-test
- Test
- Consensus/Ledger
- Mock
- ThreadNet
- ouroboros-consensus-protocol
- src
- ouroboros-consensus-protocol/Ouroboros/Consensus/Protocol
- Ledger
- Praos
- unstable-protocol-testlib/Test
- Consensus/Protocol/Serialisation
- Ouroboros/Consensus/Protocol/Praos
- test/protocol-test
- Test/Consensus/Protocol/Praos
- ouroboros-consensus
- bench
- ChainSync-client-bench
- Bench/Consensus/ChainSyncClient
- mempool-bench
- Bench/Consensus
- Mempool
- src
- ouroboros-consensus/Ouroboros/Consensus
- BlockchainTime
- WallClock
- Block
- Config
- Fragment
- Genesis
- HardFork
- Combinator
- Abstract
- Embed
- Ledger
- Node
- Protocol
- Serialisation
- State
- History
- Ledger
- Query
- Tables
- Mempool
- Impl
- MiniProtocol
- BlockFetch
- ChainSync
- Client
- LocalStateQuery
- LocalTxMonitor
- LocalTxSubmission
- Node
- Protocol
- PBFT
- Storage
- ChainDB
- API/Types
- Impl
- ImmutableDB
- Chunks
- Impl
- Index
- LedgerDB
- V1
- BackingStore
- Impl
- LMDB
- V2
- VolatileDB
- Impl
- Util
- MonadSTM
- NormalForm
- unstable-consensus-testlib/Test
- Ouroboros/Consensus
- ChainGenerator
- QuickCheck
- Util
- HardFork
- Orphans
- Serialisation
- unstable-mempool-test-utils/Test/Consensus/Mempool
- unstable-mock-block/Ouroboros/Consensus/Mock
- Ledger
- Block
- Node
- Protocol
- test
- consensus-test
- Test/Consensus
- BlockchainTime
- HardFork
- Ledger/Tables
- Mempool
- Fairness
- MiniProtocol
- BlockFetch
- ChainSync
- LocalStateQuery
- Util
- MonadSTM
- infra-test
- Ouroboros/Consensus/Util
- Test
- Ouroboros/Consensus
- ChainGenerator
- Tests
- Util/LeakyBucket
- Util
- ChainUpdates
- Schedule
- Split
- storage-test
- Test/Ouroboros
- Storage
- ChainDB
- Model
- StateMachine/Utils
- ImmutableDB
- LedgerDB
- StateMachine
- V1
- BackingStore
- VolatileDB
- scripts/ci
- sop-extras/src/Data/SOP
- strict-sop-core/src/Data/SOP
- Strict
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
664 files changed
+98957
-87853
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
206 | | - | |
| 206 | + | |
207 | 207 | | |
208 | 208 | | |
209 | 209 | | |
210 | 210 | | |
211 | | - | |
| 211 | + | |
212 | 212 | | |
213 | 213 | | |
214 | 214 | | |
215 | | - | |
| 215 | + | |
216 | 216 | | |
217 | 217 | | |
218 | | - | |
| 218 | + | |
219 | 219 | | |
220 | 220 | | |
221 | 221 | | |
| |||
0 commit comments