unison/unison-cli/unison-cli.cabal

734 lines
15 KiB
Plaintext
Raw Normal View History

2021-10-12 21:42:46 +03:00
cabal-version: 1.12
2022-07-22 18:41:59 +03:00
-- This file has been generated from package.yaml by hpack version 0.34.4.
2021-10-12 21:42:46 +03:00
--
-- see: https://github.com/sol/hpack
name: unison-cli
version: 0.0.0
homepage: https://github.com/unisonweb/unison#readme
bug-reports: https://github.com/unisonweb/unison/issues
copyright: Copyright (C) 2013-2018 Unison Computing, PBC and contributors
license: MIT
license-file: LICENSE
build-type: Simple
source-repository head
type: git
location: https://github.com/unisonweb/unison
flag optimized
manual: True
default: False
library
exposed-modules:
Compat
Unison.Auth.CredentialFile
Unison.Auth.CredentialManager
Unison.Auth.Discovery
Unison.Auth.HTTPClient
Unison.Auth.Tokens
Unison.Auth.Types
2022-07-29 02:11:31 +03:00
Unison.Cli.Monad
Unison.Cli.MonadUtils
Unison.Cli.NamesUtils
Unison.Cli.PrettyPrintUtils
Unison.Cli.ProjectUtils
2022-09-16 22:30:09 +03:00
Unison.Cli.TypeCheck
Unison.Cli.UnisonConfigUtils
Unison.Codebase.Editor.AuthorInfo
Unison.Codebase.Editor.HandleInput
Unison.Codebase.Editor.HandleInput.AuthLogin
Unison.Codebase.Editor.HandleInput.MetadataUtils
Unison.Codebase.Editor.HandleInput.MoveBranch
Unison.Codebase.Editor.HandleInput.NamespaceDependencies
Unison.Codebase.Editor.HandleInput.NamespaceDiffUtils
2023-01-23 21:03:48 +03:00
Unison.Codebase.Editor.HandleInput.ProjectCreate
2023-01-23 22:31:53 +03:00
Unison.Codebase.Editor.HandleInput.ProjectCreateBranch
2023-01-23 21:40:45 +03:00
Unison.Codebase.Editor.HandleInput.ProjectSwitch
Unison.Codebase.Editor.HandleInput.TermResolution
Unison.Codebase.Editor.HandleInput.Update
Unison.Codebase.Editor.Input
Unison.Codebase.Editor.Output
Unison.Codebase.Editor.Output.BranchDiff
Unison.Codebase.Editor.Output.DumpNamespace
Unison.Codebase.Editor.Output.PushPull
Unison.Codebase.Editor.Propagate
2022-01-12 23:22:29 +03:00
Unison.Codebase.Editor.Slurp
Unison.Codebase.Editor.SlurpComponent
Unison.Codebase.Editor.SlurpResult
Unison.Codebase.Editor.TodoOutput
2022-05-13 01:03:00 +03:00
Unison.Codebase.Editor.UCMVersion
Unison.Codebase.Editor.UriParser
Unison.Codebase.Editor.VersionParser
Unison.Codebase.TranscriptParser
Unison.CommandLine
Unison.CommandLine.Completion
Unison.CommandLine.DisplayValues
Unison.CommandLine.FuzzySelect
Unison.CommandLine.Globbing
Unison.CommandLine.InputPattern
Unison.CommandLine.InputPatterns
Unison.CommandLine.Main
Unison.CommandLine.OutputMessages
Unison.CommandLine.Types
Unison.CommandLine.Welcome
2022-07-02 20:02:51 +03:00
Unison.LSP
Unison.LSP.CancelRequest
2022-07-09 23:17:05 +03:00
Unison.LSP.CodeAction
2022-07-08 19:15:33 +03:00
Unison.LSP.Completion
Unison.LSP.Configuration
2022-07-09 23:17:05 +03:00
Unison.LSP.Conversions
2022-07-08 02:42:03 +03:00
Unison.LSP.Diagnostics
2022-07-08 19:15:33 +03:00
Unison.LSP.FileAnalysis
2022-07-11 18:26:06 +03:00
Unison.LSP.FoldingRange
Unison.LSP.HandlerUtils
2022-07-08 19:15:33 +03:00
Unison.LSP.Hover
2022-07-08 07:49:51 +03:00
Unison.LSP.NotificationHandlers
2022-07-07 22:50:10 +03:00
Unison.LSP.Orphans
Unison.LSP.Queries
2022-07-02 21:28:01 +03:00
Unison.LSP.Types
2022-07-08 00:56:50 +03:00
Unison.LSP.UCMWorker
2022-07-02 22:27:01 +03:00
Unison.LSP.VFS
Unison.Share.Codeserver
2022-04-05 01:10:38 +03:00
Unison.Share.Sync
Unison.Share.Sync.Types
Unison.Util.HTTP
hs-source-dirs:
src
default-extensions:
ApplicativeDo
BangPatterns
BlockArguments
2022-07-22 18:41:59 +03:00
DeriveAnyClass
DeriveFunctor
DeriveFoldable
DeriveTraversable
DeriveGeneric
DerivingStrategies
2022-07-22 18:41:59 +03:00
DerivingVia
DoAndIfThenElse
2022-04-05 01:10:38 +03:00
DuplicateRecordFields
FlexibleContexts
FlexibleInstances
2022-07-22 18:41:59 +03:00
GADTs
GeneralizedNewtypeDeriving
2022-07-28 21:28:12 +03:00
InstanceSigs
LambdaCase
MultiParamTypeClasses
NamedFieldPuns
2022-07-25 20:24:07 +03:00
NumericUnderscores
2022-04-05 01:10:38 +03:00
OverloadedLabels
OverloadedStrings
PatternSynonyms
RankNTypes
ScopedTypeVariables
TupleSections
TypeApplications
ViewPatterns
ghc-options: -Wall
build-depends:
2022-07-09 23:17:05 +03:00
IntervalMap
, ListLike
, aeson
, aeson-pretty
2023-01-03 23:17:46 +03:00
, ansi-terminal
, async
, base
2022-04-12 15:40:42 +03:00
, bytes
, bytestring
2022-07-02 20:02:51 +03:00
, co-log-core
, concurrent-output
, configurator
, containers >=0.6.3
, cryptonite
, directory
, either
, errors
, exceptions
, extra
, filepath
, free
2022-08-25 21:54:50 +03:00
, friendly-time
2022-09-12 19:11:26 +03:00
, fuzzyfind
2022-04-11 17:12:11 +03:00
, generic-lens
, haskeline
2022-07-03 01:33:09 +03:00
, here
, http-client >=0.7.6
, http-client-tls
, http-types
, jwt
2022-06-23 17:25:01 +03:00
, ki
, lens
, lock-file
2022-07-02 20:02:51 +03:00
, lsp
, lsp-types
2022-06-11 01:30:29 +03:00
, megaparsec
, memory
, mtl
2022-07-02 20:02:51 +03:00
, network
, network-simple
, network-uri
2021-11-19 00:20:58 +03:00
, nonempty-containers
, open-browser
, pretty-simple
, process
, random >=1.2.0
, recover-rtti
, regex-tdfa
, semialign
2022-04-07 00:48:59 +03:00
, servant
, servant-client
, stm
, text
2022-07-03 02:37:29 +03:00
, text-rope
, these
, time
, transformers
2022-04-05 01:10:38 +03:00
, unison-codebase
, unison-codebase-sqlite
, unison-codebase-sqlite-hashing-v2
, unison-core
, unison-core1
, unison-hash
, unison-parser-typechecker
, unison-prelude
2022-03-09 20:21:24 +03:00
, unison-pretty-printer
2022-04-05 01:10:38 +03:00
, unison-share-api
2022-04-20 05:29:24 +03:00
, unison-sqlite
, unison-syntax
2022-04-12 22:51:03 +03:00
, unison-util-base32hex
, unison-util-relation
, unliftio
2022-07-09 23:17:05 +03:00
, unordered-containers
2022-07-13 17:56:21 +03:00
, uri-encode
, uuid
2022-04-12 23:22:04 +03:00
, vector
, wai
, warp
2023-01-23 20:54:14 +03:00
, witch
2022-07-19 19:20:36 +03:00
, witherable
if flag(optimized)
ghc-options: -O2 -funbox-strict-fields
if !os(windows)
build-depends:
unix
default-language: Haskell2010
executable cli-integration-tests
2021-10-24 11:08:34 +03:00
main-is: Suite.hs
other-modules:
IntegrationTests.ArgumentParsing
hs-source-dirs:
integration-tests
default-extensions:
ApplicativeDo
BangPatterns
2021-10-24 11:08:34 +03:00
BlockArguments
2022-07-22 18:41:59 +03:00
DeriveAnyClass
2021-10-24 11:08:34 +03:00
DeriveFunctor
DeriveFoldable
DeriveTraversable
DeriveGeneric
2021-10-24 11:08:34 +03:00
DerivingStrategies
2022-07-22 18:41:59 +03:00
DerivingVia
2021-10-24 11:08:34 +03:00
DoAndIfThenElse
2022-04-05 01:10:38 +03:00
DuplicateRecordFields
2021-10-24 11:08:34 +03:00
FlexibleContexts
FlexibleInstances
2022-07-22 18:41:59 +03:00
GADTs
GeneralizedNewtypeDeriving
2022-07-28 21:28:12 +03:00
InstanceSigs
2021-10-24 11:08:34 +03:00
LambdaCase
MultiParamTypeClasses
NamedFieldPuns
2022-07-25 20:24:07 +03:00
NumericUnderscores
2022-04-05 01:10:38 +03:00
OverloadedLabels
OverloadedStrings
PatternSynonyms
RankNTypes
2021-10-24 11:08:34 +03:00
ScopedTypeVariables
TupleSections
TypeApplications
ViewPatterns
ghc-options: -Wall -W -threaded -rtsopts "-with-rtsopts=-N -T" -v0
2022-02-19 02:48:20 +03:00
build-tools:
unison
2021-10-24 11:08:34 +03:00
build-depends:
2022-07-09 23:17:05 +03:00
IntervalMap
, ListLike
, aeson
, aeson-pretty
2023-01-03 23:17:46 +03:00
, ansi-terminal
, async
, base
2022-04-12 15:40:42 +03:00
, bytes
, bytestring
2022-07-02 20:02:51 +03:00
, co-log-core
, code-page
, concurrent-output
, configurator
, containers >=0.6.3
, cryptonite
, directory
2021-10-24 11:08:34 +03:00
, easytest
, either
, errors
, exceptions
, extra
, filepath
, free
2022-08-25 21:54:50 +03:00
, friendly-time
2022-09-12 19:11:26 +03:00
, fuzzyfind
2022-04-11 17:12:11 +03:00
, generic-lens
, haskeline
2022-07-03 01:33:09 +03:00
, here
, http-client >=0.7.6
, http-client-tls
, http-types
, jwt
2022-06-23 17:25:01 +03:00
, ki
, lens
, lock-file
2022-07-02 20:02:51 +03:00
, lsp
, lsp-types
2022-06-11 01:30:29 +03:00
, megaparsec
, memory
, mtl
2022-07-02 20:02:51 +03:00
, network
, network-simple
, network-uri
2021-11-19 00:20:58 +03:00
, nonempty-containers
, open-browser
, pretty-simple
2021-10-24 11:08:34 +03:00
, process
, random >=1.2.0
, recover-rtti
, regex-tdfa
, semialign
2022-04-07 00:48:59 +03:00
, servant
, servant-client
2021-10-24 11:08:34 +03:00
, shellmet
, stm
2021-10-24 11:08:34 +03:00
, text
2022-07-03 02:37:29 +03:00
, text-rope
, these
2021-11-03 19:59:44 +03:00
, time
, transformers
2022-04-05 01:10:38 +03:00
, unison-codebase
, unison-codebase-sqlite
, unison-codebase-sqlite-hashing-v2
, unison-core
2021-10-24 11:08:34 +03:00
, unison-core1
, unison-hash
2021-10-24 11:08:34 +03:00
, unison-parser-typechecker
, unison-prelude
2022-03-09 20:21:24 +03:00
, unison-pretty-printer
2022-04-05 01:10:38 +03:00
, unison-share-api
2022-04-20 05:29:24 +03:00
, unison-sqlite
, unison-syntax
2022-04-12 22:51:03 +03:00
, unison-util-base32hex
, unison-util-relation
, unliftio
2022-07-09 23:17:05 +03:00
, unordered-containers
2022-07-13 17:56:21 +03:00
, uri-encode
, uuid
2022-04-12 23:22:04 +03:00
, vector
, wai
, warp
2023-01-23 20:54:14 +03:00
, witch
2022-07-19 19:20:36 +03:00
, witherable
2021-10-24 11:08:34 +03:00
if flag(optimized)
ghc-options: -O2 -funbox-strict-fields
default-language: Haskell2010
executable transcripts
main-is: Transcripts.hs
hs-source-dirs:
transcripts
default-extensions:
ApplicativeDo
BangPatterns
BlockArguments
2022-07-22 18:41:59 +03:00
DeriveAnyClass
DeriveFunctor
DeriveFoldable
DeriveTraversable
DeriveGeneric
DerivingStrategies
2022-07-22 18:41:59 +03:00
DerivingVia
DoAndIfThenElse
2022-04-05 01:10:38 +03:00
DuplicateRecordFields
FlexibleContexts
FlexibleInstances
2022-07-22 18:41:59 +03:00
GADTs
GeneralizedNewtypeDeriving
2022-07-28 21:28:12 +03:00
InstanceSigs
LambdaCase
MultiParamTypeClasses
NamedFieldPuns
2022-07-25 20:24:07 +03:00
NumericUnderscores
2022-04-05 01:10:38 +03:00
OverloadedLabels
OverloadedStrings
PatternSynonyms
RankNTypes
ScopedTypeVariables
TupleSections
TypeApplications
ViewPatterns
ghc-options: -Wall -threaded -rtsopts "-with-rtsopts=-I0 -N -qn4 -qg1" -v0
build-depends:
2022-07-09 23:17:05 +03:00
IntervalMap
, ListLike
, aeson
, aeson-pretty
2023-01-03 23:17:46 +03:00
, ansi-terminal
, async
, base
2022-04-12 15:40:42 +03:00
, bytes
, bytestring
2022-07-02 20:02:51 +03:00
, co-log-core
, code-page
, concurrent-output
, configurator
, containers >=0.6.3
, cryptonite
, directory
, easytest
, either
, errors
, exceptions
, extra
, filepath
, free
2022-08-25 21:54:50 +03:00
, friendly-time
2022-09-12 19:11:26 +03:00
, fuzzyfind
2022-04-11 17:12:11 +03:00
, generic-lens
, haskeline
2022-07-03 01:33:09 +03:00
, here
, http-client >=0.7.6
, http-client-tls
, http-types
, jwt
2022-06-23 17:25:01 +03:00
, ki
, lens
, lock-file
2022-07-02 20:02:51 +03:00
, lsp
, lsp-types
2022-06-11 01:30:29 +03:00
, megaparsec
, memory
, mtl
2022-07-02 20:02:51 +03:00
, network
, network-simple
, network-uri
2021-11-19 00:20:58 +03:00
, nonempty-containers
, open-browser
, pretty-simple
, process
, random >=1.2.0
, recover-rtti
, regex-tdfa
, semialign
2022-04-07 00:48:59 +03:00
, servant
, servant-client
, shellmet
, stm
, text
2022-07-03 02:37:29 +03:00
, text-rope
, these
, time
, transformers
, unison-cli
2022-04-05 01:10:38 +03:00
, unison-codebase
, unison-codebase-sqlite
, unison-codebase-sqlite-hashing-v2
, unison-core
, unison-core1
, unison-hash
, unison-parser-typechecker
, unison-prelude
2022-03-09 20:21:24 +03:00
, unison-pretty-printer
2022-04-05 01:10:38 +03:00
, unison-share-api
2022-04-20 05:29:24 +03:00
, unison-sqlite
, unison-syntax
2022-04-12 22:51:03 +03:00
, unison-util-base32hex
, unison-util-relation
, unliftio
2022-07-09 23:17:05 +03:00
, unordered-containers
2022-07-13 17:56:21 +03:00
, uri-encode
, uuid
2022-04-12 23:22:04 +03:00
, vector
, wai
, warp
2023-01-23 20:54:14 +03:00
, witch
2022-07-19 19:20:36 +03:00
, witherable
if flag(optimized)
ghc-options: -O2 -funbox-strict-fields
default-language: Haskell2010
2021-10-12 21:42:46 +03:00
executable unison
main-is: Main.hs
other-modules:
ArgParse
Stats
2021-10-12 21:42:46 +03:00
System.Path
Version
hs-source-dirs:
unison
default-extensions:
ApplicativeDo
BangPatterns
2021-10-12 21:42:46 +03:00
BlockArguments
2022-07-22 18:41:59 +03:00
DeriveAnyClass
2021-10-12 21:42:46 +03:00
DeriveFunctor
DeriveFoldable
DeriveTraversable
DeriveGeneric
2021-10-12 21:42:46 +03:00
DerivingStrategies
2022-07-22 18:41:59 +03:00
DerivingVia
2021-10-12 21:42:46 +03:00
DoAndIfThenElse
2022-04-05 01:10:38 +03:00
DuplicateRecordFields
2021-10-12 21:42:46 +03:00
FlexibleContexts
FlexibleInstances
2022-07-22 18:41:59 +03:00
GADTs
GeneralizedNewtypeDeriving
2022-07-28 21:28:12 +03:00
InstanceSigs
2021-10-12 21:42:46 +03:00
LambdaCase
MultiParamTypeClasses
NamedFieldPuns
2022-07-25 20:24:07 +03:00
NumericUnderscores
2022-04-05 01:10:38 +03:00
OverloadedLabels
OverloadedStrings
PatternSynonyms
RankNTypes
2021-10-12 21:42:46 +03:00
ScopedTypeVariables
TupleSections
TypeApplications
ViewPatterns
ghc-options: -Wall -threaded -rtsopts "-with-rtsopts=-I0 -N -qn4 -qg1 -T" -optP-Wno-nonportable-include-path
2021-10-12 21:42:46 +03:00
build-depends:
2022-07-09 23:17:05 +03:00
IntervalMap
, ListLike
, aeson
, aeson-pretty
2023-01-03 23:17:46 +03:00
, ansi-terminal
, async
, base
2022-04-12 15:40:42 +03:00
, bytes
2021-10-13 22:36:35 +03:00
, bytestring
2022-07-02 20:02:51 +03:00
, co-log-core
, code-page
, concurrent-output
2021-10-12 21:42:46 +03:00
, configurator
, containers >=0.6.3
, cryptonite
2021-10-12 21:42:46 +03:00
, directory
, either
2021-10-12 21:42:46 +03:00
, errors
, exceptions
, extra
2021-10-12 21:42:46 +03:00
, filepath
, free
2022-08-25 21:54:50 +03:00
, friendly-time
2022-09-12 19:11:26 +03:00
, fuzzyfind
2022-04-11 17:12:11 +03:00
, generic-lens
, haskeline
2022-07-03 01:33:09 +03:00
, here
, http-client >=0.7.6
, http-client-tls
, http-types
, jwt
2022-06-23 17:25:01 +03:00
, ki
, lens
, lock-file
2022-07-02 20:02:51 +03:00
, lsp
, lsp-types
2022-06-11 01:30:29 +03:00
, megaparsec
, memory
2021-10-12 21:42:46 +03:00
, mtl
2022-07-02 20:02:51 +03:00
, network
, network-simple
, network-uri
2021-11-19 00:20:58 +03:00
, nonempty-containers
, open-browser
2021-10-12 21:42:46 +03:00
, optparse-applicative >=0.16.1.0
, pretty-simple
, process
, random >=1.2.0
, recover-rtti
, regex-tdfa
, semialign
2022-04-07 00:48:59 +03:00
, servant
, servant-client
2021-10-12 21:42:46 +03:00
, shellmet
, stm
2021-10-12 21:42:46 +03:00
, template-haskell
, temporary
, text
2022-07-03 02:37:29 +03:00
, text-rope
, these
, time
, transformers
, unison-cli
2022-04-05 01:10:38 +03:00
, unison-codebase
, unison-codebase-sqlite
, unison-codebase-sqlite-hashing-v2
, unison-core
2021-10-12 21:42:46 +03:00
, unison-core1
, unison-hash
2021-10-12 21:42:46 +03:00
, unison-parser-typechecker
, unison-prelude
2022-03-09 20:21:24 +03:00
, unison-pretty-printer
2022-04-05 01:10:38 +03:00
, unison-share-api
2022-04-20 05:29:24 +03:00
, unison-sqlite
, unison-syntax
2022-04-12 22:51:03 +03:00
, unison-util-base32hex
, unison-util-relation
2021-10-12 21:42:46 +03:00
, unliftio
2022-07-09 23:17:05 +03:00
, unordered-containers
2022-07-13 17:56:21 +03:00
, uri-encode
, uuid
2022-04-12 23:22:04 +03:00
, vector
, wai
, warp
2023-01-23 20:54:14 +03:00
, witch
2022-07-19 19:20:36 +03:00
, witherable
2021-10-12 21:42:46 +03:00
if flag(optimized)
ghc-options: -O2 -funbox-strict-fields
default-language: Haskell2010
test-suite cli-tests
type: exitcode-stdio-1.0
main-is: Main.hs
other-modules:
Unison.Test.ClearCache
Unison.Test.Cli.Monad
Unison.Test.GitSync
Unison.Test.LSP
Unison.Test.Ucm
Unison.Test.UriParser
Unison.Test.VersionParser
hs-source-dirs:
tests
default-extensions:
ApplicativeDo
BangPatterns
BlockArguments
2022-07-22 18:41:59 +03:00
DeriveAnyClass
DeriveFunctor
DeriveFoldable
DeriveTraversable
DeriveGeneric
DerivingStrategies
2022-07-22 18:41:59 +03:00
DerivingVia
DoAndIfThenElse
2022-04-05 01:10:38 +03:00
DuplicateRecordFields
FlexibleContexts
FlexibleInstances
2022-07-22 18:41:59 +03:00
GADTs
GeneralizedNewtypeDeriving
2022-07-28 21:28:12 +03:00
InstanceSigs
LambdaCase
MultiParamTypeClasses
NamedFieldPuns
2022-07-25 20:24:07 +03:00
NumericUnderscores
2022-04-05 01:10:38 +03:00
OverloadedLabels
OverloadedStrings
PatternSynonyms
RankNTypes
ScopedTypeVariables
TupleSections
TypeApplications
ViewPatterns
ghc-options: -Wall
build-depends:
2022-07-09 23:17:05 +03:00
IntervalMap
, ListLike
, aeson
, aeson-pretty
2023-01-03 23:17:46 +03:00
, ansi-terminal
, async
, base
2022-04-12 15:40:42 +03:00
, bytes
, bytestring
2022-07-02 20:02:51 +03:00
, co-log-core
, code-page
, concurrent-output
, configurator
, containers >=0.6.3
, cryptonite
, directory
, easytest
, either
, errors
, exceptions
, extra
, filepath
, free
2022-08-25 21:54:50 +03:00
, friendly-time
2022-09-12 19:11:26 +03:00
, fuzzyfind
2022-04-11 17:12:11 +03:00
, generic-lens
, haskeline
, here
, http-client >=0.7.6
, http-client-tls
, http-types
, jwt
2022-06-23 17:25:01 +03:00
, ki
, lens
, lock-file
2022-07-02 20:02:51 +03:00
, lsp
, lsp-types
2022-06-11 01:30:29 +03:00
, megaparsec
, memory
, mtl
2022-07-02 20:02:51 +03:00
, network
, network-simple
, network-uri
2021-11-19 00:20:58 +03:00
, nonempty-containers
, open-browser
, pretty-simple
, process
, random >=1.2.0
, recover-rtti
, regex-tdfa
, semialign
2022-04-07 00:48:59 +03:00
, servant
, servant-client
, shellmet
, stm
, temporary
, text
2022-07-03 02:37:29 +03:00
, text-rope
, these
, time
, transformers
, unison-cli
2022-04-05 01:10:38 +03:00
, unison-codebase
, unison-codebase-sqlite
, unison-codebase-sqlite-hashing-v2
, unison-core
, unison-core1
, unison-hash
, unison-parser-typechecker
, unison-prelude
2022-03-09 20:21:24 +03:00
, unison-pretty-printer
2022-04-05 01:10:38 +03:00
, unison-share-api
2022-04-20 05:29:24 +03:00
, unison-sqlite
, unison-syntax
2022-04-12 22:51:03 +03:00
, unison-util-base32hex
, unison-util-relation
, unliftio
2022-07-09 23:17:05 +03:00
, unordered-containers
2022-07-13 17:56:21 +03:00
, uri-encode
, uuid
2022-04-12 23:22:04 +03:00
, vector
, wai
, warp
2023-01-23 20:54:14 +03:00
, witch
2022-07-19 19:20:36 +03:00
, witherable
if flag(optimized)
ghc-options: -O2 -funbox-strict-fields
default-language: Haskell2010