2021-04-06 21:50:18 +03:00
|
|
|
name: unison-parser-typechecker
|
|
|
|
github: unisonweb/unison
|
2021-04-05 21:04:35 +03:00
|
|
|
copyright: Copyright (C) 2013-2021 Unison Computing, PBC and contributors
|
2021-04-06 21:50:18 +03:00
|
|
|
|
2021-04-05 21:04:35 +03:00
|
|
|
ghc-options: -Wall -O0 -fno-warn-name-shadowing -fno-warn-missing-pattern-synonym-signatures
|
2021-04-06 21:50:18 +03:00
|
|
|
|
2021-04-05 21:04:35 +03:00
|
|
|
flags:
|
|
|
|
optimized:
|
|
|
|
manual: true
|
2021-06-03 19:23:51 +03:00
|
|
|
default: true
|
2021-04-06 21:50:18 +03:00
|
|
|
|
2021-04-05 21:04:35 +03:00
|
|
|
when:
|
|
|
|
- condition: flag(optimized)
|
2021-04-10 21:22:41 +03:00
|
|
|
ghc-options: -funbox-strict-fields -O2
|
2021-04-06 21:50:18 +03:00
|
|
|
|
|
|
|
library:
|
|
|
|
source-dirs: src
|
|
|
|
dependencies:
|
|
|
|
- aeson
|
|
|
|
- ansi-terminal
|
|
|
|
- async
|
|
|
|
- base
|
|
|
|
- base16 >= 0.2.1.0
|
|
|
|
- base64-bytestring
|
|
|
|
- basement
|
2021-10-13 23:31:05 +03:00
|
|
|
- binary
|
2021-04-06 21:50:18 +03:00
|
|
|
- bytes
|
|
|
|
- bytestring
|
2021-05-12 17:57:58 +03:00
|
|
|
- bytestring-to-vector
|
2021-04-06 21:50:18 +03:00
|
|
|
- cereal
|
|
|
|
- containers >= 0.6.3
|
|
|
|
- configurator
|
|
|
|
- cryptonite
|
|
|
|
- data-default
|
2021-08-14 04:10:44 +03:00
|
|
|
- deepseq
|
2021-04-06 21:50:18 +03:00
|
|
|
- directory
|
|
|
|
- either
|
2021-04-15 17:41:55 +03:00
|
|
|
- fuzzyfind
|
2021-04-06 21:50:18 +03:00
|
|
|
- data-memocombinators
|
|
|
|
- errors
|
|
|
|
- exceptions
|
|
|
|
- extra
|
|
|
|
- filepath
|
|
|
|
- fingertree
|
|
|
|
- fsnotify
|
|
|
|
- generic-monoid
|
2021-10-25 07:17:48 +03:00
|
|
|
- generic-lens
|
2021-04-06 21:50:18 +03:00
|
|
|
- hashable
|
|
|
|
- hashtables
|
|
|
|
- haskeline
|
|
|
|
- http-types
|
2021-04-29 06:32:36 +03:00
|
|
|
- http-media
|
2022-04-07 00:48:59 +03:00
|
|
|
- http-client
|
2021-04-06 21:50:18 +03:00
|
|
|
- lens
|
|
|
|
- ListLike
|
|
|
|
- megaparsec >= 5.0.0 && < 7.0.0
|
|
|
|
- memory
|
|
|
|
- mmorph
|
|
|
|
- monad-validate
|
|
|
|
- mtl
|
|
|
|
- mutable-containers
|
|
|
|
- natural-transformation
|
|
|
|
- network
|
|
|
|
- network-simple
|
|
|
|
- nonempty-containers
|
2021-07-31 08:27:08 +03:00
|
|
|
- optparse-applicative >= 0.16.1.0
|
2021-04-06 21:50:18 +03:00
|
|
|
- openapi3
|
|
|
|
- pem
|
stripping and unknotting some stuff
- moved everything that depended on V1 `Reference` into `FileCodebase` namespace, duplicating a lot of code for better or worse.
- pulled these into their own modules:
- Codebase (types) into `Codebase.Type`; `Codebase` module re-exports them
- `Codebase.Branch.Merge`,
- `Codebase.Branch.Names` (Branch shouldn't depend on `Names`)
- `Codebase.BuiltinAnnotation`
- `Codebase.Causal.FoldHistory`
- `Codebase.CodeLookup.Util` (remove `CodeLookup` dependency on `UnisonFile`)
- `Codebase.DataDeclaration.ConstructorId` trying to use this alias in relevant places
- `Codebase.Init`
- `CodebasePath`, the `FilePath` alias.
- `Lexer.Pos` (because `AnnotatedText`, `Range`, `Parser.Ann` shouldn't depend on the whole lexer)
- `Names.ResolutionResult` (`Type` shouldn't depend on `Names`)
- `PrettyPrintEnv.FQN`
- `PrettyPrintEnv.Names` (pulled out references to `Names` from `PPE`)
- `PPE.Util` not 100% sure what's happening here
- `PrettyPrintEnvDecl` pull this data type and supporting functions into separate module
- `Path.Parse` (`Path` shouldn't depend on the lexer)
- `Path.Convert`, `Path.Parse` into `Unison.Util.Convert`
- `Parser.Ann` (`Codebase`, etc. etc. shouldn't depend on `Parser`)
- `Referent'` (`SyntaxText`/`ColorText` shouldn't depend on `Reference`)
- `Referent` module re-exports stuff from `Referent'`, hard-coded to `Reference`.
- removed `SyntaxText.SyntaxText`
- `TermEdit.Typing` (because `TermEdit` shouldn't depend on the full typechecker)
- `UnisonFile` / `TypecheckedUnisonFile` (types into `UnisonFile.Type`)
- `UnisonFile.Env`
- `UnisonFile.Error`
- `UnisonFile.Names`
- `Var.WatchKind`
- `Var.refNamed`
- Deleted unused `Codebase.Classes` typeclasses wip
- Deleted unused `Unison.Util.Menu`, ancient modal stuff
- Moved `Codebase.makeSelfContained` into `UnisonFile` module, since it deals with `UnisonFile` and not with `Codebase`.
- split up `GitError` into a more codebase-agnostic hierarchy (see `Codebase.Type.GitError`)
- changed `bindNames` to `bindReferences` in some cases; `bindNames` remains in `.Names` compatibility module
- move `Unison.Var.refNamed` into `Unison.Term`
- tweaked GitError to separate obviously codebase-format specific errors from non-obviously-corbase-format-specific errors.
- tweaked `Reflog.Entry` to support anything that's coercible to `Unison.Hash`, but also changed its kind
- removed `DebugBranchHistoryI` input because I didn't want to maintain its implementation
- removed `ShortBranchHash` dependency on `Hash`, and let it work on anything coercible to `Hash`. P.S./todo This class should be called ShortHash; the existing ShortHash is really a ShortReference!
- removed SyntaxText dependency on Reference
- cleaned up `Path` somewhat
- held off on:
- move `DD.updateDependencies`
- splitting up `Path` into the billion different components
- e.g. `Path` becomes `RelativePath`, `Path'` becomes `Path`, and `Absolute` wraps `RelativePath`
- `Split` / `Split'` maybe rename to `Path.NonEmpty`?
- rename `Branch.getPatch` / `.getMaybePatch`
- split out `Name.Parse`, `Name.Convert`, substitute a lot of specific functions like `Path.hqSplitFromName'` with `Convert.parse`.
- todo:
- clear unreferenced junk
- restore:
- `NameEdit`?
- `PatternCompat`?
2021-07-27 23:42:21 +03:00
|
|
|
- prelude-extras
|
2021-04-06 21:50:18 +03:00
|
|
|
- process
|
|
|
|
- primitive
|
|
|
|
- random >= 1.2.0
|
|
|
|
- raw-strings-qq
|
|
|
|
- regex-base
|
|
|
|
- regex-tdfa
|
|
|
|
- safe
|
2021-04-07 01:23:45 +03:00
|
|
|
- safe-exceptions
|
2021-10-25 07:17:48 +03:00
|
|
|
- semialign
|
2021-10-05 18:16:10 +03:00
|
|
|
- mwc-random
|
|
|
|
- NanoID
|
2021-10-22 20:43:52 +03:00
|
|
|
- lucid
|
2022-02-23 18:29:56 +03:00
|
|
|
- yaml
|
2021-11-17 01:46:01 +03:00
|
|
|
- semialign
|
2021-04-06 21:50:18 +03:00
|
|
|
- servant
|
|
|
|
- servant-docs
|
|
|
|
- servant-openapi3
|
|
|
|
- servant-server
|
|
|
|
- shellmet
|
|
|
|
- stm
|
|
|
|
- strings
|
|
|
|
- sqlite-simple
|
|
|
|
- tagged
|
|
|
|
- temporary
|
|
|
|
- terminal-size
|
|
|
|
- text
|
2021-04-30 19:33:22 +03:00
|
|
|
- text-short
|
2021-11-17 01:46:01 +03:00
|
|
|
- these
|
2021-04-06 21:50:18 +03:00
|
|
|
- time
|
|
|
|
- tls
|
|
|
|
- transformers
|
|
|
|
- unliftio
|
2021-05-01 04:34:45 +03:00
|
|
|
- utf8-string
|
2021-04-06 21:50:18 +03:00
|
|
|
- unicode-show
|
|
|
|
- vector
|
|
|
|
- wai
|
|
|
|
- warp
|
|
|
|
- unicode-show
|
|
|
|
- x509
|
|
|
|
- x509-store
|
|
|
|
- x509-system
|
2021-08-14 04:10:44 +03:00
|
|
|
- zlib
|
2021-04-06 21:50:18 +03:00
|
|
|
- unison-codebase
|
|
|
|
- unison-codebase-sqlite
|
|
|
|
- unison-codebase-sync
|
2021-04-07 01:23:45 +03:00
|
|
|
- unison-core
|
|
|
|
- unison-core1
|
2021-10-06 00:54:01 +03:00
|
|
|
- unison-prelude
|
2022-03-09 20:21:24 +03:00
|
|
|
- unison-pretty-printer
|
2021-04-06 21:50:18 +03:00
|
|
|
- unison-util
|
2021-10-06 00:54:01 +03:00
|
|
|
- unison-util-relation
|
2021-06-29 17:42:14 +03:00
|
|
|
- open-browser
|
|
|
|
- uri-encode
|
2021-10-21 23:10:43 +03:00
|
|
|
- generic-lens
|
2021-04-06 21:50:18 +03:00
|
|
|
|
2022-04-07 19:16:13 +03:00
|
|
|
tests:
|
|
|
|
parser-typechecker-tests:
|
2021-04-05 19:05:48 +03:00
|
|
|
source-dirs: tests
|
|
|
|
main: Suite.hs
|
|
|
|
ghc-options: -W -threaded -rtsopts "-with-rtsopts=-N -T" -v0
|
|
|
|
dependencies:
|
|
|
|
- async
|
|
|
|
- base
|
|
|
|
- bytestring
|
2022-02-19 06:33:34 +03:00
|
|
|
- code-page
|
2021-04-05 19:05:48 +03:00
|
|
|
- containers
|
|
|
|
- directory
|
|
|
|
- easytest
|
|
|
|
- errors
|
2021-04-07 01:23:45 +03:00
|
|
|
- exceptions
|
2021-04-05 19:05:48 +03:00
|
|
|
- extra
|
|
|
|
- filepath
|
|
|
|
- filemanip
|
2021-10-15 22:24:34 +03:00
|
|
|
- haskeline
|
2021-04-05 19:05:48 +03:00
|
|
|
- here
|
|
|
|
- lens
|
|
|
|
- megaparsec
|
|
|
|
- mtl
|
|
|
|
- raw-strings-qq
|
|
|
|
- stm
|
|
|
|
- shellmet
|
|
|
|
- split
|
|
|
|
- temporary
|
|
|
|
- text
|
|
|
|
- transformers
|
|
|
|
- unliftio
|
2021-04-07 01:23:45 +03:00
|
|
|
- unison-core1
|
2021-04-05 19:05:48 +03:00
|
|
|
- unison-parser-typechecker
|
2021-10-06 00:54:01 +03:00
|
|
|
- unison-prelude
|
2021-04-07 01:23:45 +03:00
|
|
|
- unison-util
|
2021-10-06 00:54:01 +03:00
|
|
|
- unison-util-relation
|
2022-03-09 20:21:24 +03:00
|
|
|
- unison-pretty-printer
|
2022-03-31 23:26:09 +03:00
|
|
|
|
|
|
|
default-extensions:
|
|
|
|
- ApplicativeDo
|
|
|
|
- BangPatterns
|
|
|
|
- BlockArguments
|
|
|
|
- DeriveFunctor
|
|
|
|
- DeriveGeneric
|
|
|
|
- DeriveTraversable
|
|
|
|
- DerivingStrategies
|
|
|
|
- DerivingVia
|
|
|
|
- DoAndIfThenElse
|
|
|
|
- FlexibleContexts
|
|
|
|
- FlexibleInstances
|
|
|
|
- GeneralizedNewtypeDeriving
|
|
|
|
- LambdaCase
|
|
|
|
- MultiParamTypeClasses
|
|
|
|
- NamedFieldPuns
|
|
|
|
- OverloadedStrings
|
|
|
|
- PatternSynonyms
|
|
|
|
- RankNTypes
|
|
|
|
- ScopedTypeVariables
|
|
|
|
- TupleSections
|
|
|
|
- TypeApplications
|
|
|
|
- ViewPatterns
|