1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
cabal-version: 3.0
name: htmx-experiment
version: 0.1.0.0
author: Profpatsch
maintainer: mail@profpatsch.de
common common-options
ghc-options:
-Wall
-Wno-type-defaults
-Wunused-packages
-Wredundant-constraints
-fwarn-missing-deriving-strategies
-- See https://downloads.haskell.org/ghc/latest/docs/users_guide/exts.html
-- for a description of all these extensions
default-extensions:
-- Infer Applicative instead of Monad where possible
ApplicativeDo
-- Allow literal strings to be Text
OverloadedStrings
-- Syntactic sugar improvements
LambdaCase
MultiWayIf
-- Makes the (deprecated) usage of * instead of Data.Kind.Type an error
NoStarIsType
-- Convenient and crucial to deal with ambiguous field names, commonly
-- known as RecordDotSyntax
OverloadedRecordDot
-- does not export record fields as functions, use OverloadedRecordDot to access instead
NoFieldSelectors
-- Record punning
RecordWildCards
-- Improved Deriving
DerivingStrategies
DerivingVia
-- Type-level strings
DataKinds
-- to enable the `type` keyword in import lists (ormolu uses this automatically)
ExplicitNamespaces
default-language: GHC2021
library
import: common-options
exposed-modules:
HtmxExperiment,
Multipart,
ServerErrors,
ValidationParseT
hs-source-dirs: ./src
build-depends:
base >=4.15 && <5,
-- http-api-data
blaze-html,
blaze-markup,
bytestring,
conduit,
dlist,
http-types,
ihp-hsx,
monad-logger,
pa-error-tree,
pa-field-parser,
pa-label,
pa-prelude,
profunctors,
selective,
servant-multipart-api,
servant-multipart,
text,
unliftio,
wai-extra,
wai,
warp
executable htmx-experiment
import: common-options
main-is: Main.hs
build-depends:
htmx-experiment,
base >=4.15 && <5,
|