forked from byteverse/haskell-ip
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathip.cabal
149 lines (142 loc) · 3.65 KB
/
ip.cabal
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
cabal-version: 2.2
name: ip
version: 1.7.4
synopsis: Library for IP and MAC addresses
homepage: https://github.com/andrewthad/haskell-ip#readme
license: BSD-3-Clause
license-file: LICENSE
author: Andrew Martin
maintainer: [email protected]
copyright: 2016 Andrew Martin
category: web
build-type: Simple
description:
The `ip` package provides types and functions for dealing with
IPv4 addresses, CIDR blocks, and MAC addresses. We provide instances
for typeclasses found in commonly used packages like `aeson`, `vector`,
and `hashable`. We also provide `Parser`s for working with attoparsec.
.
Notably, this package does not overload functions by introducing any
typeclasses of its own. Neither does it prefix functions with the name
of the type that they work on. Instead, functions of the same name are
exported by several different modules, and it is expected that end users
disambiguate by importing these modules qualified.
.
The only module intended to be imported unqualified is `Net.Types`. The
types in this package should not conflict with the types in
any other commonly used packages.
.
The following packages are intended to be used with this package:
.
* `yesod-ip`: Provides orphan instances needed to work with yesod and
persistent. Also, provides a `yesod-form` helper.
library
hs-source-dirs: src
exposed-modules:
Net.IP
Net.IPv4
Net.IPv6
Net.Mac
Net.Types
other-modules:
Data.ByteString.Builder.Fixed
Data.Text.Builder.Common.Internal
Data.Text.Builder.Fixed
Data.Text.Builder.Variable
Data.Word.Synthetic.Word12
build-depends:
, aeson >= 1.0 && < 2.1
, attoparsec >= 0.13 && < 0.14
, base >= 4.9 && < 5
, byteslice >= 0.1.2 && < 0.3
, bytesmith >= 0.3.3 && < 0.4
, bytestring >= 0.10.8 && < 0.11
, deepseq >= 1.4 && < 1.5
, hashable >= 1.2 && < 1.4
, natural-arithmetic >= 0.1 && <0.2
, primitive >= 0.6.4 && < 0.8
, bytebuild >= 0.3.4 && <0.4
, text >= 1.2 && < 1.3
, text-short >= 0.1.3 && < 0.2
, vector >= 0.11 && < 0.13
, wide-word >= 0.1.0.8 && < 0.2
ghc-options: -Wall -O2
default-language: Haskell2010
test-suite test
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Test.hs
build-depends:
, HUnit
, QuickCheck
, attoparsec
, base
, byteslice
, bytestring
, ip
, quickcheck-classes >= 0.4.13 && < 0.7.0.0
, tasty
, tasty-hunit
, tasty-quickcheck
, text
, text-short
, wide-word
other-modules:
IPv4ByteString1
IPv4Text1
IPv4Text2
Naive
ghc-options: -Wall -O2
default-language: Haskell2010
test-suite spec
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Spec.hs
build-depends:
, base
, hspec >= 2.5.5
, ip
, wide-word
other-modules:
Net.IPv4Spec
ghc-options: -Wall -O2
default-language: Haskell2010
build-tool-depends: hspec-discover:hspec-discover >= 2.5.5
test-suite doctest
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Doctests.hs
build-depends:
, QuickCheck
, base
, doctest >= 0.10
, ip
, wide-word
, vector
default-language: Haskell2010
benchmark criterion
type: exitcode-stdio-1.0
build-depends:
, attoparsec
, base
, byteslice
, bytestring
, criterion
, ip
, primitive
, text
, random
other-modules:
IPv4ByteString1
IPv4DecodeText1
IPv4DecodeText2
IPv4Text1
IPv4Text2
Naive
ghc-options: -Wall -O2
default-language: Haskell2010
hs-source-dirs: test
main-is: Bench.hs
source-repository head
type: git
location: https://github.com/andrewthad/haskell-ip