2023-03-21 22:01:48 +03:00
|
|
|
name: juvix
|
2023-10-04 15:54:15 +03:00
|
|
|
version: 0.5.2
|
2023-03-21 22:01:48 +03:00
|
|
|
license: GPL-3.0-only
|
|
|
|
license-file: LICENSE.md
|
|
|
|
copyright: (c) 2022- Heliax AG.
|
2023-07-25 11:35:26 +03:00
|
|
|
maintainer: The Compilers Team at Heliax AG <hello@heliax.dev>
|
2023-03-21 22:01:48 +03:00
|
|
|
author:
|
|
|
|
[
|
|
|
|
Jonathan Prieto-Cubides,
|
|
|
|
Jan Mas Rovira,
|
|
|
|
Paul Cadman,
|
|
|
|
Lukasz Czajka,
|
|
|
|
Github's contributors,
|
|
|
|
]
|
2023-08-11 12:49:33 +03:00
|
|
|
tested-with: ghc == 9.4.5
|
2023-03-21 22:01:48 +03:00
|
|
|
homepage: https://juvix.org
|
|
|
|
bug-reports: https://github.com/anoma/juvix/issues
|
|
|
|
description: The Juvix compiler
|
|
|
|
category: Compilers/Interpreters
|
|
|
|
github: anoma/juvix
|
2021-12-23 12:57:55 +03:00
|
|
|
|
2023-08-11 12:49:33 +03:00
|
|
|
flags:
|
|
|
|
# This flag can only be used in an environment that contains static libraries
|
|
|
|
# for all dependencies, including libc We use this when doing a static build
|
|
|
|
# using the ghc-musl alpine container
|
|
|
|
static:
|
|
|
|
description: Build static executable
|
|
|
|
default: false
|
|
|
|
manual: true
|
|
|
|
|
2021-12-23 12:57:55 +03:00
|
|
|
extra-source-files:
|
2023-03-21 22:01:48 +03:00
|
|
|
- README.md
|
|
|
|
- assets/css/*.css
|
|
|
|
- assets/js/*.js
|
|
|
|
- assets/images/*.svg
|
|
|
|
- juvix-stdlib/juvix.yaml
|
|
|
|
- juvix-stdlib/**/*.juvix
|
2023-10-23 11:08:44 +03:00
|
|
|
- include/package/**/*.juvix
|
2023-03-21 22:01:48 +03:00
|
|
|
- runtime/include/**/*.h
|
|
|
|
- runtime/**/*.a
|
2023-07-27 18:57:20 +03:00
|
|
|
- runtime/src/vampir/*.pir
|
2021-12-23 12:57:55 +03:00
|
|
|
|
|
|
|
dependencies:
|
2023-03-21 22:01:48 +03:00
|
|
|
- aeson-better-errors == 0.9.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- aeson == 2.1.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- ansi-terminal == 0.11.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- base == 4.17.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- blaze-html == 0.9.*
|
|
|
|
- bytestring == 0.11.*
|
|
|
|
- containers == 0.6.*
|
|
|
|
- directory == 1.3.*
|
|
|
|
- dlist == 1.0.*
|
|
|
|
- edit-distance == 0.2.*
|
|
|
|
- exceptions == 0.10.*
|
|
|
|
- extra == 1.7.*
|
|
|
|
- file-embed == 0.0.*
|
|
|
|
- filepath == 1.4.*
|
2023-08-23 17:53:23 +03:00
|
|
|
- githash == 0.1.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- hashable == 1.4.*
|
|
|
|
- language-c == 0.9.*
|
2023-08-11 11:22:22 +03:00
|
|
|
- libyaml == 0.1.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- megaparsec == 9.3.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- microlens-platform == 0.4.*
|
|
|
|
- parser-combinators == 1.3.*
|
|
|
|
- path == 0.9.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- path-io == 1.8.*
|
|
|
|
- polysemy == 1.9.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- polysemy-plugin == 0.4.*
|
|
|
|
- pretty == 1.1.*
|
|
|
|
- prettyprinter == 1.7.*
|
|
|
|
- prettyprinter-ansi-terminal == 1.1.*
|
|
|
|
- process == 1.6.*
|
|
|
|
- safe == 0.3.*
|
|
|
|
- singletons == 3.0.*
|
|
|
|
- singletons-th == 3.1.*
|
|
|
|
- Stream == 0.4.*
|
2023-10-02 18:51:14 +03:00
|
|
|
- string-interpolate == 0.3.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- template-haskell == 2.19.*
|
2023-03-29 16:51:04 +03:00
|
|
|
- temporary == 1.3.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- text == 2.0.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- th-utilities == 0.2.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- time == 1.12.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- transformers == 0.5.*
|
2023-09-01 14:37:06 +03:00
|
|
|
- typed-process == 0.2.*
|
2023-05-24 22:35:07 +03:00
|
|
|
- unicode-show == 0.1.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- uniplate == 1.6.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- unix-compat == 0.7.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- unordered-containers == 0.2.*
|
|
|
|
- utf8-string == 1.0.*
|
2023-08-11 12:49:33 +03:00
|
|
|
- versions == 6.0.*
|
2023-04-13 12:27:39 +03:00
|
|
|
- xdg-basedir == 0.2.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- yaml == 0.11.*
|
2021-12-23 12:57:55 +03:00
|
|
|
|
2023-03-21 22:01:48 +03:00
|
|
|
# the tasty dependencies are here to avoid having to recompile
|
|
|
|
# juvix when running the tests.
|
|
|
|
- tasty
|
|
|
|
- tasty-hunit
|
|
|
|
- Diff == 0.4.*
|
|
|
|
- pretty-show == 1.10.*
|
2022-02-16 12:03:49 +03:00
|
|
|
|
2023-03-21 22:01:48 +03:00
|
|
|
# benchmarks
|
2023-08-11 12:49:33 +03:00
|
|
|
- criterion == 1.6.*
|
2023-03-21 22:01:48 +03:00
|
|
|
- statistics == 0.16.*
|
|
|
|
- shake == 0.19.*
|
|
|
|
- colour == 2.3.*
|
|
|
|
- palette == 0.3.*
|
2023-01-05 19:48:26 +03:00
|
|
|
|
2021-12-23 12:57:55 +03:00
|
|
|
ghc-options:
|
2023-03-21 22:01:48 +03:00
|
|
|
# Warnings
|
|
|
|
- -Weverything
|
|
|
|
- -Wno-all-missed-specialisations
|
|
|
|
- -Wno-missing-export-lists
|
|
|
|
- -Wno-missing-import-lists
|
|
|
|
- -Wno-missing-kind-signatures
|
|
|
|
- -Wno-missing-safe-haskell-mode
|
|
|
|
- -Wno-safe
|
|
|
|
- -Wno-unsafe
|
|
|
|
- -Wno-unused-packages
|
|
|
|
# HIE Support
|
|
|
|
- -fhide-source-paths
|
|
|
|
- -fwrite-ide-info -hiedir=.hie
|
|
|
|
# Polysemy Support
|
|
|
|
- -O2 -flate-specialise -fspecialise-aggressively
|
2021-12-23 12:57:55 +03:00
|
|
|
|
|
|
|
default-extensions:
|
2023-03-21 22:01:48 +03:00
|
|
|
- ApplicativeDo
|
|
|
|
- DataKinds
|
|
|
|
- DerivingStrategies
|
|
|
|
- GADTs
|
|
|
|
- GeneralizedNewtypeDeriving
|
|
|
|
- ImportQualifiedPost
|
|
|
|
- LambdaCase
|
|
|
|
- MultiWayIf
|
|
|
|
- NoFieldSelectors
|
|
|
|
- NoImplicitPrelude
|
|
|
|
- OverloadedStrings
|
|
|
|
- RecordWildCards
|
|
|
|
- TemplateHaskell
|
|
|
|
- TypeFamilyDependencies
|
2021-12-23 12:57:55 +03:00
|
|
|
|
|
|
|
library:
|
|
|
|
source-dirs: src
|
2022-03-24 12:14:29 +03:00
|
|
|
verbatim:
|
|
|
|
default-language: GHC2021
|
2021-12-23 12:57:55 +03:00
|
|
|
|
|
|
|
executables:
|
2022-07-08 14:59:45 +03:00
|
|
|
juvix:
|
2021-12-23 12:57:55 +03:00
|
|
|
main: Main.hs
|
2022-01-18 14:25:42 +03:00
|
|
|
source-dirs: app
|
2021-12-23 12:57:55 +03:00
|
|
|
dependencies:
|
2023-03-21 22:01:48 +03:00
|
|
|
- juvix
|
|
|
|
- haskeline == 0.8.*
|
|
|
|
- http-conduit == 2.3.*
|
|
|
|
- mtl == 2.2.*
|
|
|
|
- optparse-applicative == 0.17.*
|
|
|
|
- repline == 0.4.*
|
|
|
|
- string-interpolate == 0.3.*
|
2022-03-24 12:14:29 +03:00
|
|
|
verbatim:
|
|
|
|
default-language: GHC2021
|
2023-08-11 12:49:33 +03:00
|
|
|
when:
|
|
|
|
- condition: flag(static)
|
|
|
|
ld-options:
|
|
|
|
- -static
|
|
|
|
- -pthread
|
2022-01-11 12:09:08 +03:00
|
|
|
|
|
|
|
tests:
|
2022-07-08 14:59:45 +03:00
|
|
|
juvix-test:
|
2023-03-21 22:01:48 +03:00
|
|
|
main: Main.hs
|
|
|
|
source-dirs: test
|
2022-01-11 12:09:08 +03:00
|
|
|
dependencies:
|
2023-03-21 22:01:48 +03:00
|
|
|
- juvix
|
2022-03-24 12:14:29 +03:00
|
|
|
verbatim:
|
|
|
|
default-language: GHC2021
|
2023-01-05 19:48:26 +03:00
|
|
|
|
|
|
|
benchmarks:
|
|
|
|
juvix-bench:
|
2023-03-21 22:01:48 +03:00
|
|
|
main: Main.hs
|
|
|
|
source-dirs: bench
|
2023-01-05 19:48:26 +03:00
|
|
|
dependencies:
|
2023-03-21 22:01:48 +03:00
|
|
|
- juvix
|
2023-01-05 19:48:26 +03:00
|
|
|
verbatim:
|
|
|
|
default-language: GHC2021
|