1Name: http2 2Version: 3.0.2 3Author: Kazu Yamamoto <kazu@iij.ad.jp> 4Maintainer: Kazu Yamamoto <kazu@iij.ad.jp> 5License: BSD3 6License-File: LICENSE 7Synopsis: HTTP/2 library 8Description: HTTP/2 library including frames, priority queues, HPACK, client and server. 9Homepage: https://github.com/kazu-yamamoto/http2 10Category: Network 11Cabal-Version: >= 1.10 12Build-Type: Simple 13Extra-Source-Files: ChangeLog.md 14 test/inputFile 15 test-hpack/hpack-test-case/go-hpack/*.json 16 test-hpack/hpack-test-case/haskell-http2-linear/*.json 17 test-hpack/hpack-test-case/haskell-http2-linear-huffman/*.json 18 test-hpack/hpack-test-case/haskell-http2-naive/*.json 19 test-hpack/hpack-test-case/haskell-http2-naive-huffman/*.json 20 test-hpack/hpack-test-case/haskell-http2-static/*.json 21 test-hpack/hpack-test-case/haskell-http2-static-huffman/*.json 22 test-hpack/hpack-test-case/nghttp2/*.json 23 test-hpack/hpack-test-case/nghttp2-16384-4096/*.json 24 test-hpack/hpack-test-case/nghttp2-change-table-size/*.json 25 test-hpack/hpack-test-case/node-http2-hpack/*.json 26 test-frame/http2-frame-test-case/continuation/*.json 27 test-frame/http2-frame-test-case/data/*.json 28 test-frame/http2-frame-test-case/error/*.json 29 test-frame/http2-frame-test-case/goaway/*.json 30 test-frame/http2-frame-test-case/headers/*.json 31 test-frame/http2-frame-test-case/ping/*.json 32 test-frame/http2-frame-test-case/priority/*.json 33 test-frame/http2-frame-test-case/push_promise/*.json 34 test-frame/http2-frame-test-case/rst_stream/*.json 35 test-frame/http2-frame-test-case/settings/*.json 36 test-frame/http2-frame-test-case/window_update/*.json 37 bench-hpack/headers.hs 38 39---------------------------------------------------------------- 40 41Source-Repository head 42 Type: git 43 Location: git://github.com/kazu-yamamoto/http2 44 45Flag devel 46 Description: Development commands 47 Default: False 48 49Flag h2spec 50 Description: Development commands 51 Default: False 52 53Flag doc 54 Description: Doctest 55 Default: False 56 57---------------------------------------------------------------- 58 59Library 60 Default-Language: Haskell2010 61 GHC-Options: -Wall 62 Exposed-Modules: Network.HPACK 63 Network.HPACK.Internal 64 Network.HPACK.Table 65 Network.HPACK.Token 66 Network.HTTP2 67 Network.HTTP2.Client 68 Network.HTTP2.Client.Internal 69 Network.HTTP2.Frame 70 Network.HTTP2.Internal 71 Network.HTTP2.Priority 72 Network.HTTP2.Priority.Internal 73 Network.HTTP2.Server 74 Network.HTTP2.Server.Internal 75 Other-Modules: Imports 76 Network.HPACK.Builder 77 Network.HTTP2.Client.Types 78 Network.HTTP2.Client.Run 79 Network.HPACK.HeaderBlock 80 Network.HPACK.HeaderBlock.Decode 81 Network.HPACK.HeaderBlock.Encode 82 Network.HPACK.HeaderBlock.Integer 83 Network.HPACK.Huffman 84 Network.HPACK.Huffman.Bit 85 Network.HPACK.Huffman.ByteString 86 Network.HPACK.Huffman.Decode 87 Network.HPACK.Huffman.Encode 88 Network.HPACK.Huffman.Params 89 Network.HPACK.Huffman.Table 90 Network.HPACK.Huffman.Tree 91 Network.HPACK.Table.Dynamic 92 Network.HPACK.Table.Entry 93 Network.HPACK.Table.RevIndex 94 Network.HPACK.Table.Static 95 Network.HPACK.Types 96 Network.HTTP2.Arch 97 Network.HTTP2.Arch.Cache 98 Network.HTTP2.Arch.Config 99 Network.HTTP2.Arch.Context 100 Network.HTTP2.Arch.EncodeFrame 101 Network.HTTP2.Arch.File 102 Network.HTTP2.Arch.HPACK 103 Network.HTTP2.Arch.Manager 104 Network.HTTP2.Arch.Queue 105 Network.HTTP2.Arch.Rate 106 Network.HTTP2.Arch.ReadN 107 Network.HTTP2.Arch.Receiver 108 Network.HTTP2.Arch.Sender 109 Network.HTTP2.Arch.Status 110 Network.HTTP2.Arch.Stream 111 Network.HTTP2.Arch.Types 112 Network.HTTP2.Frame.Decode 113 Network.HTTP2.Frame.Encode 114 Network.HTTP2.Frame.Types 115 Network.HTTP2.Priority.PSQ 116 Network.HTTP2.Priority.Queue 117 Network.HTTP2.Server.Run 118 Network.HTTP2.Server.Types 119 Network.HTTP2.Server.Worker 120 Build-Depends: base >= 4.9 && < 5 121 , array 122 , bytestring >= 0.10 123 , case-insensitive 124 , containers >= 0.5 125 , http-types 126 , network 127 , network-byte-order >= 0.1.5 128 , psqueues 129 , stm 130 , time-manager 131 , unix-time 132 Default-Extensions: Strict StrictData 133 134---------------------------------------------------------------- 135 136Test-Suite doctest 137 if flag(doc) 138 Buildable: True 139 else 140 Buildable: False 141 Type: exitcode-stdio-1.0 142 Default-Language: Haskell2010 143 HS-Source-Dirs: test 144 Ghc-Options: -Wall 145 Main-Is: doctests.hs 146 Build-Depends: base >= 4.9 && < 5 147 , doctest >= 0.9.3 148 Default-Extensions: Strict StrictData 149 150Test-Suite spec 151 Type: exitcode-stdio-1.0 152 Default-Language: Haskell2010 153 HS-Source-Dirs: test 154 Ghc-Options: -Wall 155 Main-Is: Spec.hs 156 Other-Modules: HPACK.DecodeSpec 157 HPACK.EncodeSpec 158 HPACK.HeaderBlock 159 HPACK.HuffmanSpec 160 HPACK.IntegerSpec 161 HTTP2.FrameSpec 162 HTTP2.PrioritySpec 163 HTTP2.ServerSpec 164 Build-Depends: base >= 4.9 && < 5 165 , async 166 , base16-bytestring >= 1.0 167 , bytestring 168 , cryptonite 169 , hspec >= 1.3 170 , http-types 171 , http2 172 , network-run >= 0.1.0 173 , typed-process 174 Default-Extensions: Strict StrictData 175 Build-Tool-Depends: hspec-discover:hspec-discover 176 177 178Test-Suite spec2 179 if flag(h2spec) 180 Buildable: True 181 else 182 Buildable: False 183 Type: exitcode-stdio-1.0 184 Default-Language: Haskell2010 185 HS-Source-Dirs: test2 186 Ghc-Options: -Wall 187 Main-Is: Spec.hs 188 Other-Modules: ServerSpec 189 Build-Depends: base >= 4.9 && < 5 190 , bytestring 191 , hspec >= 1.3 192 , http-types 193 , http2 194 , network-run >= 0.1.0 195 , typed-process 196 Default-Extensions: Strict StrictData 197 Build-Tool-Depends: hspec-discover:hspec-discover 198 199Test-Suite hpack 200 Type: exitcode-stdio-1.0 201 Default-Language: Haskell2010 202 HS-Source-Dirs: test-hpack 203 Ghc-Options: -Wall 204 Main-Is: Spec.hs 205 Other-Modules: HPACKDecode 206 HPACKSpec 207 JSON 208 Build-Depends: base >= 4.9 && < 5 209 , aeson 210 , base16-bytestring >= 1.0 211 , bytestring 212 , directory 213 , filepath 214 , hspec >= 1.3 215 , http2 216 , text 217 , unordered-containers 218 , vector 219 Default-Extensions: Strict StrictData 220 Build-Tool-Depends: hspec-discover:hspec-discover 221 222Test-Suite frame 223 Type: exitcode-stdio-1.0 224 Default-Language: Haskell2010 225 HS-Source-Dirs: test-frame 226 GHC-Options: -Wall 227 Main-Is: Spec.hs 228 Other-Modules: Case 229 FrameSpec 230 JSON 231 Build-Depends: base >= 4.9 && < 5 232 , Glob >= 0.9 233 , aeson 234 , aeson-pretty 235 , base16-bytestring >= 1.0 236 , bytestring 237 , directory 238 , filepath 239 , hspec >= 1.3 240 , http2 241 , network-byte-order 242 , text 243 , unordered-containers 244 Default-Extensions: Strict StrictData 245 Build-Tool-Depends: hspec-discover:hspec-discover 246 247---------------------------------------------------------------- 248 249Executable client 250 Default-Language: Haskell2010 251 HS-Source-Dirs: util 252 GHC-Options: -Wall -threaded 253 if flag(devel) 254 Buildable: True 255 else 256 Buildable: False 257 Main-Is: client.hs 258 Build-Depends: base >= 4.9 && < 5 259 , bytestring 260 , http-types 261 , http2 262 , network-run 263 Default-Extensions: Strict StrictData 264 265Executable server 266 Default-Language: Haskell2010 267 HS-Source-Dirs: util 268 GHC-Options: -Wall -threaded 269 if flag(devel) 270 Buildable: True 271 else 272 Buildable: False 273 Main-Is: server.hs 274 Build-Depends: base >= 4.9 && < 5 275 , bytestring 276 , cryptonite 277 , http2 278 , http-types 279 , network-run 280 Default-Extensions: Strict StrictData 281 282---------------------------------------------------------------- 283 284Executable hpack-encode 285 Default-Language: Haskell2010 286 HS-Source-Dirs: test-hpack 287 GHC-Options: -Wall 288 if flag(devel) 289 Buildable: True 290 else 291 Buildable: False 292 Main-Is: hpack-encode.hs 293 Other-Modules: HPACKEncode 294 JSON 295 Build-Depends: base >= 4.9 && < 5 296 , aeson 297 , aeson-pretty 298 , array 299 , base16-bytestring >= 1.0 300 , bytestring 301 , case-insensitive 302 , containers 303 , http2 304 , network-byte-order 305 , text 306 , unordered-containers 307 , vector 308 , word8 309 Default-Extensions: Strict StrictData 310 311Executable hpack-debug 312 Default-Language: Haskell2010 313 HS-Source-Dirs: test-hpack 314 GHC-Options: -Wall 315 if flag(devel) 316 Buildable: True 317 else 318 Buildable: False 319 Main-Is: hpack-debug.hs 320 Other-Modules: HPACKDecode 321 JSON 322 Build-Depends: base >= 4.9 && < 5 323 , aeson 324 , array 325 , base16-bytestring >= 1.0 326 , bytestring 327 , case-insensitive 328 , containers 329 , http2 330 , network-byte-order 331 , text 332 , unordered-containers 333 , vector 334 , word8 335 Default-Extensions: Strict StrictData 336 337Executable hpack-stat 338 Default-Language: Haskell2010 339 HS-Source-Dirs: test-hpack 340 GHC-Options: -Wall 341 if flag(devel) 342 Buildable: True 343 else 344 Buildable: False 345 Main-Is: hpack-stat.hs 346 Other-Modules: JSON 347 Build-Depends: base >= 4.9 && < 5 348 , aeson 349 , aeson-pretty 350 , array 351 , bytestring 352 , case-insensitive 353 , containers 354 , directory 355 , filepath 356 , http2 357 , network-byte-order 358 , text 359 , unordered-containers 360 , vector 361 , word8 362 Default-Extensions: Strict StrictData 363 364Executable frame-encode 365 Default-Language: Haskell2010 366 HS-Source-Dirs: test-frame 367 GHC-Options: -Wall 368 if flag(devel) 369 Buildable: True 370 else 371 Buildable: False 372 Main-Is: frame-encode.hs 373 Other-Modules: Case 374 JSON 375 Build-Depends: base >= 4.9 && < 5 376 , aeson 377 , aeson-pretty 378 , base16-bytestring >= 1.0 379 , bytestring 380 , http2 381 , text 382 , unordered-containers 383 Default-Extensions: Strict StrictData 384 385---------------------------------------------------------------- 386 387Benchmark priority 388 Type: exitcode-stdio-1.0 389 Default-Language: Haskell2010 390 Hs-Source-Dirs: bench-priority, . 391 Ghc-Options: -Wall 392 Main-Is: Main.hs 393 Other-Modules: BinaryHeap 394 BinaryHeapSTM 395 DoublyLinkedQueueIO 396 Heap 397 RandomSkewHeap 398 RingOfQueues 399 RingOfQueuesSTM 400 Network.HTTP2.Priority.PSQ 401 Build-Depends: base >= 4.9 && < 5 402 , array 403 , case-insensitive 404 , containers 405 , gauge 406 , heaps 407 , mwc-random 408 , network-byte-order 409 , psqueues 410 , stm 411 Default-Extensions: Strict StrictData 412 413Benchmark header-compression 414 Type: exitcode-stdio-1.0 415 Default-Language: Haskell2010 416 Hs-Source-Dirs: bench-hpack 417 Ghc-Options: -Wall 418 Main-Is: Main.hs 419 Build-Depends: base 420 , array 421 , bytestring 422 , case-insensitive 423 , containers 424 , gauge 425 , network-byte-order 426 , stm 427 , http2 428 Default-Extensions: Strict StrictData 429