Compare commits
No commits in common. "master" and "0.13.1.2" have entirely different histories.
|
@ -1,30 +0,0 @@
|
||||||
ARG UBUNTU_TAG=20.04
|
|
||||||
FROM ubuntu:"$UBUNTU_TAG"
|
|
||||||
|
|
||||||
ENV LANG=C.UTF-8
|
|
||||||
RUN \
|
|
||||||
apt-get update && \
|
|
||||||
apt-get install --assume-yes curl gcc git libgmp-dev libtinfo-dev make sudo
|
|
||||||
|
|
||||||
ARG GHCUP_VERSION=0.1.17.4
|
|
||||||
RUN \
|
|
||||||
curl --output /usr/local/bin/ghcup "https://downloads.haskell.org/~ghcup/$GHCUP_VERSION/x86_64-linux-ghcup-$GHCUP_VERSION" && \
|
|
||||||
chmod +x /usr/local/bin/ghcup && \
|
|
||||||
ghcup --version
|
|
||||||
|
|
||||||
ARG USER_NAME=haskell
|
|
||||||
RUN \
|
|
||||||
useradd --create-home --shell "$( which bash )" "$USER_NAME" && \
|
|
||||||
echo "$USER_NAME ALL=(ALL) NOPASSWD: ALL" | tee "/etc/sudoers.d/$USER_NAME"
|
|
||||||
USER "$USER_NAME"
|
|
||||||
ENV PATH="/home/$USER_NAME/.cabal/bin:/home/$USER_NAME/.ghcup/bin:$PATH"
|
|
||||||
|
|
||||||
ARG GHC_VERSION=9.0.1
|
|
||||||
RUN \
|
|
||||||
ghcup install ghc "$GHC_VERSION" --set && \
|
|
||||||
ghc --version
|
|
||||||
|
|
||||||
ARG CABAL_VERSION=3.6.2.0
|
|
||||||
RUN \
|
|
||||||
ghcup install cabal "$CABAL_VERSION" --set && \
|
|
||||||
cabal --version
|
|
|
@ -1,6 +0,0 @@
|
||||||
{
|
|
||||||
"build": {
|
|
||||||
"dockerfile": "Dockerfile"
|
|
||||||
},
|
|
||||||
"postCreateCommand": "cabal update"
|
|
||||||
}
|
|
|
@ -2,35 +2,38 @@ name: CI
|
||||||
on:
|
on:
|
||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- main
|
|
||||||
- master
|
- master
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- main
|
|
||||||
- master
|
- master
|
||||||
release:
|
|
||||||
types:
|
|
||||||
- created
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
|
os:
|
||||||
|
- macos-10.15
|
||||||
|
- ubuntu-18.04
|
||||||
|
- windows-2019
|
||||||
|
ghc:
|
||||||
|
- 8.10.2
|
||||||
|
cabal:
|
||||||
|
- 3.2.0.0
|
||||||
include:
|
include:
|
||||||
- { os: macos-11, ghc: 9.0.1, cabal: 3.6.2.0 }
|
- os: ubuntu-18.04
|
||||||
- { os: ubuntu-20.04, ghc: 9.0.1, cabal: 3.6.2.0 }
|
ghc: 8.8.4
|
||||||
- { os: windows-2019, ghc: 9.0.1, cabal: 3.6.2.0, ext: .exe }
|
cabal: 3.2.0.0
|
||||||
|
- os: ubuntu-18.04
|
||||||
|
ghc: 8.6.5
|
||||||
|
cabal: 3.2.0.0
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- run: mkdir artifact
|
|
||||||
- run: mkdir artifact/${{ matrix.os }}
|
|
||||||
- id: setup-haskell
|
- id: setup-haskell
|
||||||
uses: haskell/actions/setup@v1
|
uses: actions/setup-haskell@v1
|
||||||
with:
|
with:
|
||||||
ghc-version: ${{ matrix.ghc }}
|
ghc-version: ${{ matrix.ghc }}
|
||||||
cabal-version: ${{ matrix.cabal }}
|
cabal-version: ${{ matrix.cabal }}
|
||||||
- run: cabal configure --enable-tests --flags pedantic --jobs
|
|
||||||
- run: cabal freeze
|
- run: cabal freeze
|
||||||
- run: cat cabal.project.freeze
|
- run: cat cabal.project.freeze
|
||||||
- uses: actions/cache@v2
|
- uses: actions/cache@v2
|
||||||
|
@ -40,66 +43,24 @@ jobs:
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ matrix.os }}-${{ matrix.ghc }}-${{ matrix.cabal }}-
|
${{ matrix.os }}-${{ matrix.ghc }}-${{ matrix.cabal }}-
|
||||||
${{ matrix.os }}-${{ matrix.ghc }}-
|
${{ matrix.os }}-${{ matrix.ghc }}-
|
||||||
- run: cabal build
|
|
||||||
- run: cabal install --installdir artifact/${{ matrix.os }} --install-method copy
|
|
||||||
- run: cabal test --test-show-details direct
|
- run: cabal test --test-show-details direct
|
||||||
- run: cabal check
|
- run: cabal install --installdir output --install-method copy
|
||||||
- run: cabal sdist --output-dir artifact/${{ matrix.os }}
|
- run: strip output/brittany*
|
||||||
- uses: svenstaro/upx-action@v2
|
|
||||||
with:
|
|
||||||
file: artifact/${{ matrix.os }}/brittany${{ matrix.ext }}
|
|
||||||
- uses: actions/upload-artifact@v2
|
- uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
path: artifact
|
path: output/brittany*
|
||||||
name: brittany-${{ github.sha }}
|
name: brittany-${{ matrix.os }}-ghc-${{ matrix.ghc }}-${{ github.sha }}
|
||||||
|
- if: matrix.os == 'ubuntu-18.04' && matrix.ghc == '8.10.2'
|
||||||
|
uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
path: dist-newstyle/sdist/brittany-*.tar.gz
|
||||||
|
name: brittany-${{ github.sha }}.tar.gz
|
||||||
|
- run: cabal check
|
||||||
|
|
||||||
release:
|
|
||||||
needs: build
|
nix:
|
||||||
if: github.event_name == 'release'
|
runs-on: ubuntu-latest
|
||||||
runs-on: ubuntu-20.04
|
|
||||||
steps:
|
steps:
|
||||||
|
- uses: cachix/install-nix-action@v12
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
- run: nix-build
|
||||||
- uses: actions/download-artifact@v2
|
|
||||||
with:
|
|
||||||
name: brittany-${{ github.sha }}
|
|
||||||
path: artifact
|
|
||||||
|
|
||||||
- uses: actions/upload-release-asset@v1
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
with:
|
|
||||||
asset_content_type: application/octet-stream
|
|
||||||
asset_name: brittany-${{ github.event.release.tag_name }}-ubuntu
|
|
||||||
asset_path: artifact/ubuntu-20.04/brittany
|
|
||||||
upload_url: ${{ github.event.release.upload_url }}
|
|
||||||
|
|
||||||
- uses: actions/upload-release-asset@v1
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
with:
|
|
||||||
asset_content_type: application/octet-stream
|
|
||||||
asset_name: brittany-${{ github.event.release.tag_name }}-macos
|
|
||||||
asset_path: artifact/macos-11/brittany
|
|
||||||
upload_url: ${{ github.event.release.upload_url }}
|
|
||||||
|
|
||||||
- uses: actions/upload-release-asset@v1
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
with:
|
|
||||||
asset_content_type: application/octet-stream
|
|
||||||
asset_name: brittany-${{ github.event.release.tag_name }}-windows.exe
|
|
||||||
asset_path: artifact/windows-2019/brittany.exe
|
|
||||||
upload_url: ${{ github.event.release.upload_url }}
|
|
||||||
|
|
||||||
- uses: actions/upload-release-asset@v1
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
with:
|
|
||||||
asset_content_type: application/gzip
|
|
||||||
asset_name: brittany-${{ github.event.release.tag_name }}.tar.gz
|
|
||||||
asset_path: artifact/ubuntu-20.04/brittany-${{ github.event.release.tag_name }}.tar.gz
|
|
||||||
upload_url: ${{ github.event.release.upload_url }}
|
|
||||||
|
|
||||||
- run: cabal upload --publish --username '${{ secrets.HACKAGE_USERNAME }}' --password '${{ secrets.HACKAGE_PASSWORD }}' artifact/ubuntu-20.04/brittany-${{ github.event.release.tag_name }}.tar.gz
|
|
||||||
|
|
|
@ -8,8 +8,9 @@ dist/
|
||||||
dist-newstyle/
|
dist-newstyle/
|
||||||
local/
|
local/
|
||||||
.cabal-sandbox/
|
.cabal-sandbox/
|
||||||
|
.stack-work/
|
||||||
cabal.sandbox.config
|
cabal.sandbox.config
|
||||||
cabal.project.local*
|
cabal.project.local
|
||||||
cabal.project.freeze
|
|
||||||
.ghc.environment.*
|
.ghc.environment.*
|
||||||
result
|
result
|
||||||
|
.stack-work*
|
||||||
|
|
22
.hlint.yaml
22
.hlint.yaml
|
@ -5,12 +5,20 @@
|
||||||
# This file contains a template configuration file, which is typically
|
# This file contains a template configuration file, which is typically
|
||||||
# placed as .hlint.yaml in the root of your project
|
# placed as .hlint.yaml in the root of your project
|
||||||
|
|
||||||
- ignore: { name: 'Use :' }
|
# Specify additional command line arguments
|
||||||
- ignore: { name: Eta reduce }
|
|
||||||
- ignore: { name: Move brackets to avoid $ }
|
- arguments:
|
||||||
- ignore: { name: Redundant $ }
|
[ "--cpp-include=srcinc"
|
||||||
- ignore: { name: Redundant bracket }
|
, "--language=GADTs"
|
||||||
- ignore: { name: Use newtype instead of data }
|
, "--language=LambdaCase"
|
||||||
|
, "--language=MultiWayIf"
|
||||||
|
, "--language=KindSignatures"
|
||||||
|
, "--cross"
|
||||||
|
, "--threads=0"
|
||||||
|
]
|
||||||
|
|
||||||
|
- ignore: {name: "Use camelCase"}
|
||||||
|
- ignore: {name: "Redundant as"}
|
||||||
- ignore: {name: "Redundant do"}
|
- ignore: {name: "Redundant do"}
|
||||||
- ignore: {name: "Redundant return"}
|
- ignore: {name: "Redundant return"}
|
||||||
- ignore: {name: "Use camelCase"}
|
- ignore: {name: "Redundant guard", whithin: "lrdrNameToTextAnn"}
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
language: minimal
|
|
@ -1,5 +0,0 @@
|
||||||
{
|
|
||||||
"recommendations": [
|
|
||||||
"taylorfausak.purple-yolk"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,6 +0,0 @@
|
||||||
{
|
|
||||||
"purple-yolk.brittany.command": "cabal exec -- brittany --write-mode inplace",
|
|
||||||
"purple-yolk.ghci.command": "cabal repl --repl-options -ddump-json",
|
|
||||||
"purple-yolk.hlint.command": "false",
|
|
||||||
"purple-yolk.hlint.onSave": false
|
|
||||||
}
|
|
|
@ -1,12 +1,5 @@
|
||||||
# Revision history for brittany
|
# Revision history for brittany
|
||||||
|
|
||||||
## 0.14.0.0 -- November 2021
|
|
||||||
|
|
||||||
* #357: Added support for GHC 9.0. Dropped support for all other versions of GHC.
|
|
||||||
* ab59e9acc3069551ac4132321b285d000f5f5691: Removed runtime dependency on `ghc-paths`.
|
|
||||||
* fa8365a7fa9372043d5a1018f2f7669ce3853edd: Started providing pre-built binaries for Linux, MacOS, and Windows.
|
|
||||||
* Many other changes to Brittany's internals and exposed Haskell interface, but (hopefully) no changes to its command-line interface.
|
|
||||||
|
|
||||||
## 0.13.1.2 -- May 2021
|
## 0.13.1.2 -- May 2021
|
||||||
|
|
||||||
* #347: Allowed hspec 2.8. Thanks @felixonmars!
|
* #347: Allowed hspec 2.8. Thanks @felixonmars!
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
.PHONY: test
|
||||||
|
test:
|
||||||
|
echo "test"
|
||||||
|
stack test
|
||||||
|
|
||||||
|
.PHONY: test-all
|
||||||
|
test-all:
|
||||||
|
$(MAKE) test test-8.8.4 test-8.6.5
|
||||||
|
|
||||||
|
.PHONY: test-8.8.4
|
||||||
|
test-8.8.4:
|
||||||
|
echo "test 8.8.4"
|
||||||
|
stack test --stack-yaml stack-8.8.4.yaml --work-dir .stack-work-8.8.4
|
||||||
|
|
||||||
|
.PHONY: test-8.6.5
|
||||||
|
test-8.6.5:
|
||||||
|
echo "test 8.6.5"
|
||||||
|
stack test --stack-yaml stack-8.6.5.yaml --work-dir .stack-work-8.6.5
|
36
README.md
36
README.md
|
@ -1,11 +1,4 @@
|
||||||
# brittany [](https://hackage.haskell.org/package/brittany) [](https://www.stackage.org/package/brittany) [](http://travis-ci.org/lspitzner/brittany)
|
# brittany [](https://hackage.haskell.org/package/brittany) [](https://www.stackage.org/package/brittany) [](http://travis-ci.org/lspitzner/brittany)
|
||||||
|
|
||||||
:warning:
|
|
||||||
This project is effectively unmaintained!
|
|
||||||
I ([@tfausak](https://github.com/tfausak)) would recommend switching to another formatter.
|
|
||||||
At time of writing (2022-11-11), I would suggest [Ormolu](https://github.com/tweag/ormolu).
|
|
||||||
Or if you prefer some configuration, I would suggest [Fourmolu](https://github.com/fourmolu/fourmolu).
|
|
||||||
|
|
||||||
haskell source code formatter
|
haskell source code formatter
|
||||||
|
|
||||||

|

|
||||||
|
@ -55,7 +48,7 @@ log the size of the input, but _not_ the full input/output of requests.)
|
||||||
|
|
||||||
# Other usage notes
|
# Other usage notes
|
||||||
|
|
||||||
- Supports GHC version `9.0.x`.
|
- Supports GHC versions `8.6`, `8.8`, `8.10`.
|
||||||
- included in stackage with lts>=10.0 (or nightlies dating to >=2017-11-15)
|
- included in stackage with lts>=10.0 (or nightlies dating to >=2017-11-15)
|
||||||
- config (file) documentation is lacking.
|
- config (file) documentation is lacking.
|
||||||
- some config values can not be configured via commandline yet.
|
- some config values can not be configured via commandline yet.
|
||||||
|
@ -68,11 +61,18 @@ log the size of the input, but _not_ the full input/output of requests.)
|
||||||
- via `stack`
|
- via `stack`
|
||||||
|
|
||||||
~~~~.sh
|
~~~~.sh
|
||||||
stack install brittany # --resolver lts-16.31
|
stack install brittany # --resolver lts-10.0
|
||||||
~~~~
|
~~~~
|
||||||
|
|
||||||
If you use an lts that includes brittany this should just work; otherwise
|
If you use an lts that includes brittany this should just work; otherwise
|
||||||
you may want to clone the repo and try again.
|
you may want to clone the repo and try again (there are several stack.yamls
|
||||||
|
included).
|
||||||
|
|
||||||
|
- via `nix`:
|
||||||
|
~~~.sh
|
||||||
|
nix build
|
||||||
|
nix-env -i ./result
|
||||||
|
~~~
|
||||||
|
|
||||||
- via `cabal`
|
- via `cabal`
|
||||||
|
|
||||||
|
@ -103,6 +103,18 @@ log the size of the input, but _not_ the full input/output of requests.)
|
||||||
|
|
||||||
# Development tips
|
# Development tips
|
||||||
|
|
||||||
|
## Run a hoogle server
|
||||||
|
|
||||||
|
To host a local Hoogle server with all of Brittany's dependencies run:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
echo brittany.cabal |
|
||||||
|
$(nix-build '<nixpkgs>' --no-link -A entr)/bin/entr -r -- \
|
||||||
|
sh -c "nix-shell --run 'hoogle server --local'"
|
||||||
|
```
|
||||||
|
|
||||||
|
This will watch `brittany.cabal` for changes and restart the server when new dependencies are added there.
|
||||||
|
|
||||||
# Editor Integration
|
# Editor Integration
|
||||||
|
|
||||||
#### Sublime text
|
#### Sublime text
|
||||||
|
@ -111,8 +123,8 @@ log the size of the input, but _not_ the full input/output of requests.)
|
||||||
#### VSCode
|
#### VSCode
|
||||||
[This extension](https://marketplace.visualstudio.com/items?itemName=MaxGabriel.brittany)
|
[This extension](https://marketplace.visualstudio.com/items?itemName=MaxGabriel.brittany)
|
||||||
connects commandline `brittany` to VSCode formatting API. Thanks to @MaxGabriel.
|
connects commandline `brittany` to VSCode formatting API. Thanks to @MaxGabriel.
|
||||||
#### Via HLS
|
#### Via HIE
|
||||||
[haskell-language-server](https://github.com/haskell/haskell-language-server)
|
[haskell-ide-engine](https://github.com/haskell/haskell-ide-engine)
|
||||||
includes a `brittany` plugin that directly uses the brittany library.
|
includes a `brittany` plugin that directly uses the brittany library.
|
||||||
Relevant for any editors that properly support the language-server-protocol.
|
Relevant for any editors that properly support the language-server-protocol.
|
||||||
#### Neovim / Vim 8
|
#### Neovim / Vim 8
|
||||||
|
|
402
brittany.cabal
402
brittany.cabal
|
@ -1,15 +1,14 @@
|
||||||
cabal-version: 2.2
|
|
||||||
|
|
||||||
name: brittany
|
name: brittany
|
||||||
version: 0.14.0.2
|
version: 0.13.1.2
|
||||||
synopsis: Haskell source code formatter
|
synopsis: Haskell source code formatter
|
||||||
description:
|
description: {
|
||||||
See <https://github.com/lspitzner/brittany/blob/master/README.md the README>.
|
See <https://github.com/lspitzner/brittany/blob/master/README.md the README>.
|
||||||
.
|
.
|
||||||
If you are interested in the implementation, have a look at <https://github.com/lspitzner/brittany/blob/master/doc/implementation/theory.md this document>;
|
If you are interested in the implementation, have a look at <https://github.com/lspitzner/brittany/blob/master/doc/implementation/theory.md this document>;
|
||||||
.
|
.
|
||||||
The implementation is documented in more detail <https://github.com/lspitzner/brittany/blob/master/doc/implementation/index.md here>.
|
The implementation is documented in more detail <https://github.com/lspitzner/brittany/blob/master/doc/implementation/index.md here>.
|
||||||
license: AGPL-3.0-only
|
}
|
||||||
|
license: AGPL-3
|
||||||
license-file: LICENSE
|
license-file: LICENSE
|
||||||
author: Lennart Spitzner
|
author: Lennart Spitzner
|
||||||
maintainer: Lennart Spitzner <hexagoxel@hexagoxel.de>
|
maintainer: Lennart Spitzner <hexagoxel@hexagoxel.de>
|
||||||
|
@ -17,133 +16,326 @@ copyright: Copyright (C) 2016-2019 Lennart Spitzner
|
||||||
Copyright (C) 2019 PRODA LTD
|
Copyright (C) 2019 PRODA LTD
|
||||||
category: Language
|
category: Language
|
||||||
build-type: Simple
|
build-type: Simple
|
||||||
|
cabal-version: 1.18
|
||||||
homepage: https://github.com/lspitzner/brittany/
|
homepage: https://github.com/lspitzner/brittany/
|
||||||
bug-reports: https://github.com/lspitzner/brittany/issues
|
bug-reports: https://github.com/lspitzner/brittany/issues
|
||||||
extra-doc-files:
|
extra-doc-files: {
|
||||||
ChangeLog.md
|
ChangeLog.md
|
||||||
README.md
|
README.md
|
||||||
doc/implementation/*.md
|
doc/implementation/*.md
|
||||||
extra-source-files:
|
}
|
||||||
data/brittany.yaml
|
extra-source-files: {
|
||||||
data/*.hs
|
src-literatetests/*.blt
|
||||||
|
srcinc/prelude.inc
|
||||||
|
}
|
||||||
|
|
||||||
source-repository head
|
source-repository head {
|
||||||
type: git
|
type: git
|
||||||
location: https://github.com/lspitzner/brittany.git
|
location: https://github.com/lspitzner/brittany.git
|
||||||
|
}
|
||||||
|
|
||||||
flag pedantic
|
flag brittany-dev-lib
|
||||||
|
description: set buildable false for anything but lib
|
||||||
default: False
|
default: False
|
||||||
description: Enables @-Werror@, which turns warnings into errors.
|
|
||||||
manual: True
|
manual: True
|
||||||
|
|
||||||
common library
|
flag brittany-test-perf
|
||||||
build-depends:
|
description: determines if performance test suite is enabled
|
||||||
, aeson ^>= 2.0.1
|
default: False
|
||||||
, base ^>= 4.15.0
|
manual: True
|
||||||
, butcher ^>= 1.3.3
|
|
||||||
, bytestring ^>= 0.10.12
|
|
||||||
, cmdargs ^>= 0.10.21
|
|
||||||
, containers ^>= 0.6.4
|
|
||||||
, czipwith ^>= 1.0.1
|
|
||||||
, data-tree-print ^>= 0.1.0
|
|
||||||
, deepseq ^>= 1.4.5
|
|
||||||
, directory ^>= 1.3.6
|
|
||||||
, extra ^>= 1.7.10
|
|
||||||
, filepath ^>= 1.4.2
|
|
||||||
, ghc ^>= 9.0.1
|
|
||||||
, ghc-boot ^>= 9.0.1
|
|
||||||
, ghc-boot-th ^>= 9.0.1
|
|
||||||
, ghc-exactprint ^>= 0.6.4
|
|
||||||
, monad-memo ^>= 0.5.3
|
|
||||||
, mtl ^>= 2.2.2
|
|
||||||
, multistate ^>= 0.8.0
|
|
||||||
, pretty ^>= 1.1.3
|
|
||||||
, random ^>= 1.2.1
|
|
||||||
, safe ^>= 0.3.19
|
|
||||||
, semigroups ^>= 0.19.2
|
|
||||||
, strict ^>= 0.4.0
|
|
||||||
, syb ^>= 0.7.2
|
|
||||||
, text ^>= 1.2.5
|
|
||||||
, transformers ^>= 0.5.6
|
|
||||||
, uniplate ^>= 1.6.13
|
|
||||||
, yaml ^>= 0.11.7
|
|
||||||
default-language: Haskell2010
|
|
||||||
ghc-options:
|
|
||||||
-Weverything
|
|
||||||
-Wno-all-missed-specialisations
|
|
||||||
-Wno-incomplete-uni-patterns
|
|
||||||
-Wno-missing-deriving-strategies
|
|
||||||
-Wno-missing-export-lists
|
|
||||||
-Wno-missing-import-lists
|
|
||||||
-Wno-missing-local-signatures
|
|
||||||
-Wno-missing-safe-haskell-mode
|
|
||||||
-Wno-monomorphism-restriction
|
|
||||||
-Wno-prepositive-qualified-module
|
|
||||||
-Wno-safe
|
|
||||||
-Wno-unsafe
|
|
||||||
|
|
||||||
if flag(pedantic)
|
library {
|
||||||
ghc-options: -Werror
|
default-language:
|
||||||
|
Haskell2010
|
||||||
common executable
|
hs-source-dirs:
|
||||||
import: library
|
src
|
||||||
|
include-dirs:
|
||||||
build-depends: brittany
|
srcinc
|
||||||
ghc-options:
|
exposed-modules: {
|
||||||
-rtsopts
|
|
||||||
-threaded
|
|
||||||
-Wno-implicit-prelude
|
|
||||||
-Wno-unused-packages
|
|
||||||
|
|
||||||
library
|
|
||||||
import: library
|
|
||||||
|
|
||||||
autogen-modules: Paths_brittany
|
|
||||||
hs-source-dirs: source/library
|
|
||||||
exposed-modules:
|
|
||||||
Language.Haskell.Brittany
|
Language.Haskell.Brittany
|
||||||
|
Language.Haskell.Brittany.Main
|
||||||
Language.Haskell.Brittany.Internal
|
Language.Haskell.Brittany.Internal
|
||||||
Language.Haskell.Brittany.Internal.Backend
|
Language.Haskell.Brittany.Internal.Prelude
|
||||||
Language.Haskell.Brittany.Internal.BackendUtils
|
Language.Haskell.Brittany.Internal.PreludeUtils
|
||||||
|
Language.Haskell.Brittany.Internal.Types
|
||||||
|
Language.Haskell.Brittany.Internal.Utils
|
||||||
Language.Haskell.Brittany.Internal.Config
|
Language.Haskell.Brittany.Internal.Config
|
||||||
Language.Haskell.Brittany.Internal.Config.Types
|
Language.Haskell.Brittany.Internal.Config.Types
|
||||||
Language.Haskell.Brittany.Internal.Config.Types.Instances
|
Language.Haskell.Brittany.Internal.Config.Types.Instances
|
||||||
Language.Haskell.Brittany.Internal.ExactPrintUtils
|
Language.Haskell.Brittany.Internal.Obfuscation
|
||||||
|
Paths_brittany
|
||||||
|
}
|
||||||
|
other-modules: {
|
||||||
Language.Haskell.Brittany.Internal.LayouterBasics
|
Language.Haskell.Brittany.Internal.LayouterBasics
|
||||||
Language.Haskell.Brittany.Internal.Layouters.DataDecl
|
Language.Haskell.Brittany.Internal.Backend
|
||||||
|
Language.Haskell.Brittany.Internal.BackendUtils
|
||||||
|
Language.Haskell.Brittany.Internal.ExactPrintUtils
|
||||||
|
Language.Haskell.Brittany.Internal.Layouters.Type
|
||||||
Language.Haskell.Brittany.Internal.Layouters.Decl
|
Language.Haskell.Brittany.Internal.Layouters.Decl
|
||||||
Language.Haskell.Brittany.Internal.Layouters.Expr
|
Language.Haskell.Brittany.Internal.Layouters.Expr
|
||||||
|
Language.Haskell.Brittany.Internal.Layouters.Stmt
|
||||||
|
Language.Haskell.Brittany.Internal.Layouters.Pattern
|
||||||
Language.Haskell.Brittany.Internal.Layouters.IE
|
Language.Haskell.Brittany.Internal.Layouters.IE
|
||||||
Language.Haskell.Brittany.Internal.Layouters.Import
|
Language.Haskell.Brittany.Internal.Layouters.Import
|
||||||
Language.Haskell.Brittany.Internal.Layouters.Module
|
Language.Haskell.Brittany.Internal.Layouters.Module
|
||||||
Language.Haskell.Brittany.Internal.Layouters.Pattern
|
Language.Haskell.Brittany.Internal.Layouters.DataDecl
|
||||||
Language.Haskell.Brittany.Internal.Layouters.Stmt
|
|
||||||
Language.Haskell.Brittany.Internal.Layouters.Type
|
|
||||||
Language.Haskell.Brittany.Internal.Obfuscation
|
|
||||||
Language.Haskell.Brittany.Internal.ParseModule
|
|
||||||
Language.Haskell.Brittany.Internal.Prelude
|
|
||||||
Language.Haskell.Brittany.Internal.PreludeUtils
|
|
||||||
Language.Haskell.Brittany.Internal.Transformations.Alt
|
Language.Haskell.Brittany.Internal.Transformations.Alt
|
||||||
Language.Haskell.Brittany.Internal.Transformations.Columns
|
|
||||||
Language.Haskell.Brittany.Internal.Transformations.Floating
|
Language.Haskell.Brittany.Internal.Transformations.Floating
|
||||||
Language.Haskell.Brittany.Internal.Transformations.Indent
|
|
||||||
Language.Haskell.Brittany.Internal.Transformations.Par
|
Language.Haskell.Brittany.Internal.Transformations.Par
|
||||||
Language.Haskell.Brittany.Internal.Types
|
Language.Haskell.Brittany.Internal.Transformations.Columns
|
||||||
Language.Haskell.Brittany.Internal.Utils
|
Language.Haskell.Brittany.Internal.Transformations.Indent
|
||||||
Language.Haskell.Brittany.Main
|
}
|
||||||
Paths_brittany
|
ghc-options: {
|
||||||
|
-Wall
|
||||||
|
-fno-warn-unused-imports
|
||||||
|
-fno-warn-redundant-constraints
|
||||||
|
}
|
||||||
|
build-depends:
|
||||||
|
{ base >=4.12 && <4.15
|
||||||
|
, ghc >=8.6.1 && <8.11
|
||||||
|
, ghc-paths >=0.1.0.9 && <0.2
|
||||||
|
, ghc-exactprint >=0.5.8 && <0.6.5
|
||||||
|
, transformers >=0.5.2.0 && <0.6
|
||||||
|
, containers >=0.5.7.1 && <0.7
|
||||||
|
, mtl >=2.2.1 && <2.3
|
||||||
|
, text >=1.2 && <1.3
|
||||||
|
, multistate >=0.7.1.1 && <0.9
|
||||||
|
, syb >=0.6 && <0.8
|
||||||
|
, data-tree-print
|
||||||
|
, pretty >=1.1.3.3 && <1.2
|
||||||
|
, bytestring >=0.10.8.1 && <0.11
|
||||||
|
, directory >=1.2.6.2 && <1.4
|
||||||
|
, butcher >=1.3.1 && <1.4
|
||||||
|
, yaml >=0.8.18 && <0.12
|
||||||
|
, aeson >=1.0.1.0 && <1.6
|
||||||
|
, extra >=1.4.10 && <1.8
|
||||||
|
, uniplate >=1.6.12 && <1.7
|
||||||
|
, strict >=0.3.2 && <0.5
|
||||||
|
, monad-memo >=0.4.1 && <0.6
|
||||||
|
, unsafe >=0.0 && <0.1
|
||||||
|
, safe >=0.3.9 && <0.4
|
||||||
|
, deepseq >=1.4.2.0 && <1.5
|
||||||
|
, semigroups >=0.18.2 && <0.20
|
||||||
|
, cmdargs >=0.10.14 && <0.11
|
||||||
|
, czipwith >=1.0.1.0 && <1.1
|
||||||
|
, ghc-boot-th >=8.6.1 && <8.11
|
||||||
|
, filepath >=1.4.1.0 && <1.5
|
||||||
|
, random >= 1.1 && <1.3
|
||||||
|
}
|
||||||
|
default-extensions: {
|
||||||
|
CPP
|
||||||
|
|
||||||
|
NoImplicitPrelude
|
||||||
|
|
||||||
|
GADTs
|
||||||
|
|
||||||
|
FlexibleContexts
|
||||||
|
FlexibleInstances
|
||||||
|
ScopedTypeVariables
|
||||||
|
MonadComprehensions
|
||||||
|
LambdaCase
|
||||||
|
MultiWayIf
|
||||||
|
KindSignatures
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
executable brittany
|
executable brittany
|
||||||
import: executable
|
if flag(brittany-dev-lib) {
|
||||||
|
buildable: False
|
||||||
hs-source-dirs: source/executable
|
} else {
|
||||||
main-is: Main.hs
|
buildable: True
|
||||||
|
}
|
||||||
test-suite brittany-test-suite
|
main-is: Main.hs
|
||||||
import: executable
|
hs-source-dirs: src-brittany
|
||||||
|
|
||||||
build-depends:
|
build-depends:
|
||||||
, hspec ^>= 2.8.3
|
{ base
|
||||||
hs-source-dirs: source/test-suite
|
, brittany
|
||||||
main-is: Main.hs
|
}
|
||||||
type: exitcode-stdio-1.0
|
default-language: Haskell2010
|
||||||
|
ghc-options: {
|
||||||
|
-Wall
|
||||||
|
-fno-spec-constr
|
||||||
|
-fno-warn-unused-imports
|
||||||
|
-fno-warn-redundant-constraints
|
||||||
|
-rtsopts
|
||||||
|
-with-rtsopts "-M2G"
|
||||||
|
}
|
||||||
|
|
||||||
|
test-suite unittests
|
||||||
|
if flag(brittany-dev-lib) || !flag(brittany-test-perf) {
|
||||||
|
buildable: False
|
||||||
|
} else {
|
||||||
|
buildable: True
|
||||||
|
}
|
||||||
|
type: exitcode-stdio-1.0
|
||||||
|
default-language: Haskell2010
|
||||||
|
build-depends:
|
||||||
|
{ brittany
|
||||||
|
, base
|
||||||
|
, ghc
|
||||||
|
, ghc-paths
|
||||||
|
, ghc-exactprint
|
||||||
|
, transformers
|
||||||
|
, containers
|
||||||
|
, mtl
|
||||||
|
, text
|
||||||
|
, multistate
|
||||||
|
, syb
|
||||||
|
, data-tree-print
|
||||||
|
, pretty
|
||||||
|
, bytestring
|
||||||
|
, directory
|
||||||
|
, butcher
|
||||||
|
, yaml
|
||||||
|
, aeson
|
||||||
|
, extra
|
||||||
|
, uniplate
|
||||||
|
, strict
|
||||||
|
, monad-memo
|
||||||
|
, unsafe
|
||||||
|
, safe
|
||||||
|
, deepseq
|
||||||
|
, semigroups
|
||||||
|
, cmdargs
|
||||||
|
, czipwith
|
||||||
|
, ghc-boot-th
|
||||||
|
, hspec >=2.4.1 && <2.9
|
||||||
|
}
|
||||||
|
main-is: TestMain.hs
|
||||||
|
other-modules: TestUtils
|
||||||
|
AsymptoticPerfTests
|
||||||
|
hs-source-dirs: src-unittests
|
||||||
|
include-dirs: srcinc
|
||||||
|
default-extensions: {
|
||||||
|
CPP
|
||||||
|
|
||||||
|
NoImplicitPrelude
|
||||||
|
|
||||||
|
GADTs
|
||||||
|
|
||||||
|
FlexibleContexts
|
||||||
|
FlexibleInstances
|
||||||
|
ScopedTypeVariables
|
||||||
|
MonadComprehensions
|
||||||
|
LambdaCase
|
||||||
|
MultiWayIf
|
||||||
|
KindSignatures
|
||||||
|
}
|
||||||
|
ghc-options: {
|
||||||
|
-Wall
|
||||||
|
-fno-warn-unused-imports
|
||||||
|
-rtsopts
|
||||||
|
-with-rtsopts "-M2G"
|
||||||
|
-threaded
|
||||||
|
-- ^ threaded is not necessary at all, but our CI trusts on being able
|
||||||
|
-- to pass -N1, which is not possible without threaded :-/
|
||||||
|
-- (plus -no-threaded is not a thing, afaict)
|
||||||
|
}
|
||||||
|
|
||||||
|
test-suite littests
|
||||||
|
if flag(brittany-dev-lib) {
|
||||||
|
buildable: False
|
||||||
|
} else {
|
||||||
|
buildable: True
|
||||||
|
}
|
||||||
|
type: exitcode-stdio-1.0
|
||||||
|
default-language: Haskell2010
|
||||||
|
build-depends:
|
||||||
|
{ brittany
|
||||||
|
, base
|
||||||
|
, ghc
|
||||||
|
, ghc-paths
|
||||||
|
, ghc-exactprint
|
||||||
|
, transformers
|
||||||
|
, containers
|
||||||
|
, mtl
|
||||||
|
, text
|
||||||
|
, multistate
|
||||||
|
, syb
|
||||||
|
, data-tree-print
|
||||||
|
, pretty
|
||||||
|
, bytestring
|
||||||
|
, directory
|
||||||
|
, butcher
|
||||||
|
, yaml
|
||||||
|
, aeson
|
||||||
|
, extra
|
||||||
|
, uniplate
|
||||||
|
, strict
|
||||||
|
, monad-memo
|
||||||
|
, unsafe
|
||||||
|
, safe
|
||||||
|
, deepseq
|
||||||
|
, semigroups
|
||||||
|
, cmdargs
|
||||||
|
, czipwith
|
||||||
|
, ghc-boot-th
|
||||||
|
, hspec >=2.4.1 && <2.9
|
||||||
|
, filepath
|
||||||
|
, parsec >=3.1.11 && <3.2
|
||||||
|
}
|
||||||
|
main-is: Main.hs
|
||||||
|
other-modules:
|
||||||
|
hs-source-dirs: src-literatetests
|
||||||
|
include-dirs: srcinc
|
||||||
|
default-extensions: {
|
||||||
|
CPP
|
||||||
|
|
||||||
|
NoImplicitPrelude
|
||||||
|
|
||||||
|
GADTs
|
||||||
|
|
||||||
|
FlexibleContexts
|
||||||
|
FlexibleInstances
|
||||||
|
ScopedTypeVariables
|
||||||
|
MonadComprehensions
|
||||||
|
LambdaCase
|
||||||
|
MultiWayIf
|
||||||
|
KindSignatures
|
||||||
|
}
|
||||||
|
ghc-options: {
|
||||||
|
-Wall
|
||||||
|
-fno-warn-unused-imports
|
||||||
|
-threaded
|
||||||
|
-rtsopts
|
||||||
|
-with-rtsopts "-M2G -N"
|
||||||
|
}
|
||||||
|
|
||||||
|
test-suite libinterfacetests
|
||||||
|
if flag(brittany-dev-lib) {
|
||||||
|
buildable: False
|
||||||
|
} else {
|
||||||
|
buildable: True
|
||||||
|
}
|
||||||
|
type: exitcode-stdio-1.0
|
||||||
|
default-language: Haskell2010
|
||||||
|
build-depends:
|
||||||
|
{ brittany
|
||||||
|
, base
|
||||||
|
, text
|
||||||
|
, transformers
|
||||||
|
, hspec >=2.4.1 && <2.9
|
||||||
|
}
|
||||||
|
main-is: Main.hs
|
||||||
|
other-modules:
|
||||||
|
hs-source-dirs: src-libinterfacetests
|
||||||
|
include-dirs: srcinc
|
||||||
|
default-extensions: {
|
||||||
|
FlexibleContexts
|
||||||
|
FlexibleInstances
|
||||||
|
ScopedTypeVariables
|
||||||
|
MonadComprehensions
|
||||||
|
LambdaCase
|
||||||
|
MultiWayIf
|
||||||
|
KindSignatures
|
||||||
|
}
|
||||||
|
ghc-options: {
|
||||||
|
-Wall
|
||||||
|
-fno-warn-unused-imports
|
||||||
|
-rtsopts
|
||||||
|
-with-rtsopts "-M2G"
|
||||||
|
-threaded
|
||||||
|
-- ^ threaded is not necessary at all, but our CI trusts on being able
|
||||||
|
-- to pass -N1, which is not possible without threaded :-/
|
||||||
|
-- (plus -no-threaded is not a thing, afaict)
|
||||||
|
}
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
conf_layout:
|
|
||||||
lconfig_columnAlignMode:
|
|
||||||
tag: ColumnAlignModeDisabled
|
|
||||||
lconfig_indentPolicy: IndentPolicyLeft
|
|
|
@ -1,9 +0,0 @@
|
||||||
packages: .
|
|
||||||
|
|
||||||
allow-newer:
|
|
||||||
-- https://github.com/lspitzner/butcher/issues/7
|
|
||||||
, butcher:base
|
|
||||||
-- https://github.com/lspitzner/data-tree-print/pull/2
|
|
||||||
, data-tree-print:base
|
|
||||||
-- https://github.com/lspitzner/multistate/pull/8
|
|
||||||
, multistate:base
|
|
|
@ -1 +0,0 @@
|
||||||
func :: a -> a
|
|
|
@ -1,3 +0,0 @@
|
||||||
func
|
|
||||||
:: lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
-> (lakjsdlkjasldkj -> lakjsdlkjasldkj)
|
|
|
@ -1 +0,0 @@
|
||||||
func = klajsdas klajsdas klajsdas
|
|
|
@ -1,3 +0,0 @@
|
||||||
func = lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
|
@ -1,3 +0,0 @@
|
||||||
func = lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd lakjsdlajsdljas
|
|
||||||
lakjsdlajsdljas
|
|
||||||
lakjsdlajsdljas
|
|
|
@ -1 +0,0 @@
|
||||||
func = (1 +)
|
|
|
@ -1 +0,0 @@
|
||||||
func = (+ 1)
|
|
|
@ -1 +0,0 @@
|
||||||
func = (1 `abc`)
|
|
|
@ -1 +0,0 @@
|
||||||
func = (`abc` 1)
|
|
|
@ -1 +0,0 @@
|
||||||
func = (abc, def)
|
|
|
@ -1 +0,0 @@
|
||||||
func = (abc, )
|
|
|
@ -1 +0,0 @@
|
||||||
func = (, abc)
|
|
|
@ -1,3 +0,0 @@
|
||||||
func
|
|
||||||
:: (lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd -> lakjsdlkjasldkj)
|
|
||||||
-> lakjsdlkjasldkj
|
|
|
@ -1,6 +0,0 @@
|
||||||
myTupleSection =
|
|
||||||
( verylaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaargefirstelement
|
|
||||||
,
|
|
||||||
, verylaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaargethirdelement
|
|
||||||
,
|
|
||||||
)
|
|
|
@ -1,4 +0,0 @@
|
||||||
func =
|
|
||||||
( lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
, lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
)
|
|
|
@ -1,6 +0,0 @@
|
||||||
foo = if True
|
|
||||||
then
|
|
||||||
-- iiiiii
|
|
||||||
"a "
|
|
||||||
else
|
|
||||||
"b "
|
|
|
@ -1,5 +0,0 @@
|
||||||
func = if cond
|
|
||||||
then pure 42
|
|
||||||
else do
|
|
||||||
-- test
|
|
||||||
abc
|
|
|
@ -1,3 +0,0 @@
|
||||||
func = case x of
|
|
||||||
False -> False
|
|
||||||
True -> True
|
|
|
@ -1,7 +0,0 @@
|
||||||
func =
|
|
||||||
case
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
of
|
|
||||||
False -> False
|
|
||||||
True -> True
|
|
|
@ -1,7 +0,0 @@
|
||||||
func = do
|
|
||||||
case
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
of
|
|
||||||
False -> False
|
|
||||||
True -> True
|
|
|
@ -1 +0,0 @@
|
||||||
func = case x of {}
|
|
|
@ -1,5 +0,0 @@
|
||||||
func =
|
|
||||||
case
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
of {}
|
|
|
@ -1,5 +0,0 @@
|
||||||
func = do
|
|
||||||
case
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
lakjsdlajsdljasdlkjasldjasldjasldjalsdjlaskjd
|
|
||||||
of {}
|
|
|
@ -1,5 +0,0 @@
|
||||||
func
|
|
||||||
:: ( lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
-> lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
)
|
|
||||||
-> lakjsdlkjasldkj
|
|
|
@ -1,3 +0,0 @@
|
||||||
func = do
|
|
||||||
stmt
|
|
||||||
stmt
|
|
|
@ -1,3 +0,0 @@
|
||||||
func = do
|
|
||||||
x <- stmt
|
|
||||||
stmt x
|
|
|
@ -1,3 +0,0 @@
|
||||||
func = do
|
|
||||||
let x = 13
|
|
||||||
stmt x
|
|
|
@ -1,7 +0,0 @@
|
||||||
func =
|
|
||||||
foooooo
|
|
||||||
$ [ case
|
|
||||||
foooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
|
|
||||||
of
|
|
||||||
_ -> True
|
|
||||||
]
|
|
|
@ -1,4 +0,0 @@
|
||||||
testMethod foo bar baz qux =
|
|
||||||
let x = undefined foo bar baz qux qux baz bar :: String
|
|
||||||
-- some comment explaining the in expression
|
|
||||||
in undefined foo x :: String
|
|
|
@ -1,4 +0,0 @@
|
||||||
testMethod foo bar baz qux =
|
|
||||||
let x = undefined :: String
|
|
||||||
-- some comment explaining the in expression
|
|
||||||
in undefined :: String
|
|
|
@ -1,3 +0,0 @@
|
||||||
testMethod foo bar baz qux =
|
|
||||||
-- some comment explaining the in expression
|
|
||||||
let x = undefined :: String in undefined :: String
|
|
|
@ -1,6 +0,0 @@
|
||||||
foo foo bar baz qux =
|
|
||||||
let a = 1
|
|
||||||
b = 2
|
|
||||||
c = 3
|
|
||||||
-- some comment explaining the in expression
|
|
||||||
in undefined :: String
|
|
|
@ -1,6 +0,0 @@
|
||||||
func =
|
|
||||||
foo
|
|
||||||
$ [ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
|
||||||
, bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
|
||||||
]
|
|
||||||
++ [ccccccccccccccccccccccccccccccccccccccccccccccccccccccccc]
|
|
|
@ -1 +0,0 @@
|
||||||
module Main where
|
|
|
@ -1,5 +0,0 @@
|
||||||
func
|
|
||||||
:: ( ( lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
-> lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
)
|
|
||||||
)
|
|
|
@ -1 +0,0 @@
|
||||||
module Main () where
|
|
|
@ -1 +0,0 @@
|
||||||
module Main (main) where
|
|
|
@ -1 +0,0 @@
|
||||||
module Main (main, test1, test2) where
|
|
|
@ -1,12 +0,0 @@
|
||||||
module Main
|
|
||||||
( main
|
|
||||||
, test1
|
|
||||||
, test2
|
|
||||||
, test3
|
|
||||||
, test4
|
|
||||||
, test5
|
|
||||||
, test6
|
|
||||||
, test7
|
|
||||||
, test8
|
|
||||||
, test9
|
|
||||||
) where
|
|
|
@ -1,12 +0,0 @@
|
||||||
module Main
|
|
||||||
( main
|
|
||||||
-- main
|
|
||||||
, test1
|
|
||||||
, test2
|
|
||||||
-- Test 3
|
|
||||||
, test3
|
|
||||||
, test4
|
|
||||||
-- Test 5
|
|
||||||
, test5
|
|
||||||
-- Test 6
|
|
||||||
) where
|
|
|
@ -1 +0,0 @@
|
||||||
module Main (Test(..)) where
|
|
|
@ -1 +0,0 @@
|
||||||
module Main (module Main) where
|
|
|
@ -1 +0,0 @@
|
||||||
module Main (Test(Test, a, b)) where
|
|
|
@ -1,6 +0,0 @@
|
||||||
-- comment1
|
|
||||||
module Main
|
|
||||||
( Test(Test, a, b)
|
|
||||||
, foo -- comment2
|
|
||||||
) -- comment3
|
|
||||||
where
|
|
|
@ -1 +0,0 @@
|
||||||
module Main (Test()) where
|
|
|
@ -1 +0,0 @@
|
||||||
func :: asd -> Either a b
|
|
|
@ -1 +0,0 @@
|
||||||
-- Intentionally left empty
|
|
|
@ -1 +0,0 @@
|
||||||
import Data.List
|
|
|
@ -1 +0,0 @@
|
||||||
import Data.List as L
|
|
|
@ -1 +0,0 @@
|
||||||
import qualified Data.List
|
|
|
@ -1 +0,0 @@
|
||||||
import qualified Data.List as L
|
|
|
@ -1 +0,0 @@
|
||||||
import safe Data.List as L
|
|
|
@ -1 +0,0 @@
|
||||||
import {-# SOURCE #-} Data.List ( )
|
|
|
@ -1 +0,0 @@
|
||||||
import safe qualified Data.List
|
|
|
@ -1 +0,0 @@
|
||||||
import {-# SOURCE #-} safe qualified Data.List
|
|
|
@ -1 +0,0 @@
|
||||||
import qualified "base" Data.List
|
|
|
@ -1,5 +0,0 @@
|
||||||
func
|
|
||||||
:: asd
|
|
||||||
-> Either
|
|
||||||
lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
|
@ -1,3 +0,0 @@
|
||||||
import {-# SOURCE #-} safe qualified "base" Data.List as L
|
|
||||||
import {-# SOURCE #-} safe qualified "base" Data.List ( )
|
|
||||||
import {-# SOURCE #-} safe qualified Data.List hiding ( )
|
|
|
@ -1 +0,0 @@
|
||||||
import qualified Data.List ( )
|
|
|
@ -1 +0,0 @@
|
||||||
import Data.List ( nub )
|
|
|
@ -1,4 +0,0 @@
|
||||||
import Data.List ( foldl'
|
|
||||||
, indexElem
|
|
||||||
, nub
|
|
||||||
)
|
|
|
@ -1,14 +0,0 @@
|
||||||
import Test ( Long
|
|
||||||
, anymore
|
|
||||||
, fit
|
|
||||||
, items
|
|
||||||
, line
|
|
||||||
, list
|
|
||||||
, not
|
|
||||||
, onA
|
|
||||||
, quite
|
|
||||||
, single
|
|
||||||
, that
|
|
||||||
, will
|
|
||||||
, with
|
|
||||||
)
|
|
|
@ -1,11 +0,0 @@
|
||||||
import Test ( (+)
|
|
||||||
, (:!)(..)
|
|
||||||
, (:*)((:.), T7, t7)
|
|
||||||
, (:.)
|
|
||||||
, T
|
|
||||||
, T2()
|
|
||||||
, T3(..)
|
|
||||||
, T4(T4)
|
|
||||||
, T5(T5, t5)
|
|
||||||
, T6((<|>))
|
|
||||||
)
|
|
|
@ -1,3 +0,0 @@
|
||||||
import Test hiding ( )
|
|
||||||
import Test as T
|
|
||||||
hiding ( )
|
|
|
@ -1,13 +0,0 @@
|
||||||
import Prelude as X
|
|
||||||
hiding ( head
|
|
||||||
, init
|
|
||||||
, last
|
|
||||||
, maximum
|
|
||||||
, minimum
|
|
||||||
, pred
|
|
||||||
, read
|
|
||||||
, readFile
|
|
||||||
, succ
|
|
||||||
, tail
|
|
||||||
, undefined
|
|
||||||
)
|
|
|
@ -1,3 +0,0 @@
|
||||||
import TestJustAbitToLongModuleNameLikeThisOneIs
|
|
||||||
( )
|
|
||||||
import TestJustShortEnoughModuleNameLikeThisOne ( )
|
|
|
@ -1,3 +0,0 @@
|
||||||
import TestJustAbitToLongModuleNameLikeThisOneI
|
|
||||||
as T
|
|
||||||
import TestJustShortEnoughModuleNameLikeThisOn as T
|
|
|
@ -1,6 +0,0 @@
|
||||||
func
|
|
||||||
:: asd
|
|
||||||
-> Trither
|
|
||||||
lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
|
@ -1,3 +0,0 @@
|
||||||
import TestJustAbitToLongModuleNameLikeTh
|
|
||||||
hiding ( )
|
|
||||||
import TestJustShortEnoughModuleNameLike hiding ( )
|
|
|
@ -1,10 +0,0 @@
|
||||||
import MoreThanSufficientlyLongModuleNameWithSome
|
|
||||||
( compact
|
|
||||||
, fit
|
|
||||||
, inA
|
|
||||||
, items
|
|
||||||
, layout
|
|
||||||
, not
|
|
||||||
, that
|
|
||||||
, will
|
|
||||||
)
|
|
|
@ -1,11 +0,0 @@
|
||||||
import TestJustAbitToLongModuleNameLikeTh
|
|
||||||
hiding ( abc
|
|
||||||
, def
|
|
||||||
, ghci
|
|
||||||
, jklm
|
|
||||||
)
|
|
||||||
import TestJustShortEnoughModuleNameLike hiding ( abc
|
|
||||||
, def
|
|
||||||
, ghci
|
|
||||||
, jklm
|
|
||||||
)
|
|
|
@ -1,9 +0,0 @@
|
||||||
import {-# SOURCE #-} safe qualified "qualifier" A hiding ( )
|
|
||||||
import {-# SOURCE #-} safe qualified "qualifiers" A
|
|
||||||
hiding ( )
|
|
||||||
import {-# SOURCE #-} safe qualified "qualifiers" AlsoAf as T
|
|
||||||
import {-# SOURCE #-} safe qualified "qualifiers" AlsoAff ( )
|
|
||||||
import {-# SOURCE #-} safe qualified "qualifiers" AlsoAff
|
|
||||||
as T
|
|
||||||
import {-# SOURCE #-} safe qualified "qualifiers" AlsoAffe
|
|
||||||
( )
|
|
|
@ -1,7 +0,0 @@
|
||||||
-- Test
|
|
||||||
import Data.List ( nub ) -- Test
|
|
||||||
{- Test -}
|
|
||||||
import qualified Data.List as L
|
|
||||||
( foldl' ) {- Test -}
|
|
||||||
-- Test
|
|
||||||
import Test ( test )
|
|
|
@ -1,4 +0,0 @@
|
||||||
import Test ( abc
|
|
||||||
, def
|
|
||||||
-- comment
|
|
||||||
)
|
|
|
@ -1,3 +0,0 @@
|
||||||
import Test ( abc
|
|
||||||
-- comment
|
|
||||||
)
|
|
|
@ -1,8 +0,0 @@
|
||||||
import Test ( abc
|
|
||||||
-- comment
|
|
||||||
, def
|
|
||||||
, ghi
|
|
||||||
{- comment -}
|
|
||||||
, jkl
|
|
||||||
-- comment
|
|
||||||
)
|
|
|
@ -1,2 +0,0 @@
|
||||||
import Test ( -- comment
|
|
||||||
)
|
|
|
@ -1,8 +0,0 @@
|
||||||
import Test ( longbindingNameThatoverflowsColum
|
|
||||||
)
|
|
||||||
import Test ( Long
|
|
||||||
( List
|
|
||||||
, Of
|
|
||||||
, Things
|
|
||||||
)
|
|
||||||
)
|
|
|
@ -1,6 +0,0 @@
|
||||||
func
|
|
||||||
:: Trither
|
|
||||||
lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd
|
|
||||||
-> asd
|
|
|
@ -1,18 +0,0 @@
|
||||||
import Test ( Thing
|
|
||||||
( -- Comments
|
|
||||||
)
|
|
||||||
)
|
|
||||||
import Test ( Thing
|
|
||||||
( Item
|
|
||||||
-- and Comment
|
|
||||||
)
|
|
||||||
)
|
|
||||||
import Test ( Thing
|
|
||||||
( With
|
|
||||||
-- Comments
|
|
||||||
, and
|
|
||||||
-- also
|
|
||||||
, items
|
|
||||||
-- !
|
|
||||||
)
|
|
||||||
)
|
|
|
@ -1,2 +0,0 @@
|
||||||
import VeryLongModuleNameThatCouldEvenCauseAnEmptyBindingListToExpandIntoMultipleLine
|
|
||||||
( )
|
|
|
@ -1,26 +0,0 @@
|
||||||
{-# LANGUAGE BangPatterns #-}
|
|
||||||
{-
|
|
||||||
- Test module
|
|
||||||
-}
|
|
||||||
module Test
|
|
||||||
( test1
|
|
||||||
-- ^ test
|
|
||||||
, test2
|
|
||||||
-- | test
|
|
||||||
, test3
|
|
||||||
, test4
|
|
||||||
, test5
|
|
||||||
, test6
|
|
||||||
, test7
|
|
||||||
, test8
|
|
||||||
, test9
|
|
||||||
, test10
|
|
||||||
-- Test 10
|
|
||||||
) where
|
|
||||||
-- Test
|
|
||||||
import Data.List ( nub ) -- Test
|
|
||||||
{- Test -}
|
|
||||||
import qualified Data.List as L
|
|
||||||
( foldl' ) {- Test -}
|
|
||||||
-- Test
|
|
||||||
import Test ( test )
|
|
|
@ -1,2 +0,0 @@
|
||||||
import Aaa
|
|
||||||
import Baa
|
|
|
@ -1,5 +0,0 @@
|
||||||
import Zaa
|
|
||||||
import Zab
|
|
||||||
|
|
||||||
import Aaa
|
|
||||||
import Baa
|
|
|
@ -1,2 +0,0 @@
|
||||||
import Boo
|
|
||||||
import qualified Zoo
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue