second-transfer: Second Transfer HTTP/2 web server

[ bsd3, library, network ] [ Propose Tags ]

Second Transfer HTTP/2 web server


[Skip to Readme]
Versions 0.1.0.0, 0.2.0.0, 0.3.0.2, 0.3.0.3, 0.3.0.4, 0.4.0.0, 0.5.0.0, 0.5.2.2, 0.5.3.1, 0.5.3.2, 0.5.4.0, 0.5.5.0, 0.5.5.1, 0.6.0.0, 0.6.1.0, 0.7.1.0, 0.10.0.1, 0.10.0.2, 0.10.0.4
Dependencies base (==4.7.*), base16-bytestring (>=0.1.1), binary (==0.7.1.0), bytestring (==0.10.4.0), conduit (>=1.2.4 && <1.3), containers (==0.5.5.1), exceptions (==0.8.*), hashable (>=1.2), hashtables (==1.2.*), hslogger (>=1.2.6), http2 (>=0.7), lens (==4.7.*), network (==2.6.*), network-uri (==2.6.*), text (==1.2.*), transformers (>=0.3 && <=0.5) [details]
License BSD-3-Clause
Copyright Copyright 2015, Alcides Viamontes Esquivel
Author Alcides Viamontes Esquivel
Maintainer alcidesv@zunzun.se
Category Network
Home page https://github.com/alcidesv/second-transfer
Bug tracker https://github.com/alcidesv/second-transfer/issues
Source repo head: git clone git@github.com:alcidesv/second-transfer.git
this: git clone git@github.com:alcidesv/second-transfer.git(tag 0.3.0.2)
Uploaded by dsign at Sun May 3 08:12:30 UTC 2015
Distributions NixOS:0.10.0.4
Downloads 4423 total (43 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-10 [all 7 reports]
Hackage Matrix CI

Modules

  • SecondTransfer
    • SecondTransfer.Exception
    • SecondTransfer.Http2
    • SecondTransfer.MainLoop
      • SecondTransfer.MainLoop.Internal
      • SecondTransfer.MainLoop.Logging
      • SecondTransfer.MainLoop.OpenSSL_TLS

Flags

NameDescriptionDefaultType
debug

Enable debug support

DisabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for second-transfer-0.3.0.2

[back to package description]

Developer README

Introduction

This is an early-stage and very experimental library to create HTTP/2 servers using Haskell.

To see the package docs, please check the Hackage page or the file hs-src/SecondTransfer.hs.

Building and installing

You need Haskell GHC compiler installed (version 7.8.3 at least). You also need OpenSSL 1.0.2, since the ALPN feature and some very recent cypher-suites are needed by HTTP/2. this source distribution will try to find them at
directory /opt/openssl-1.0.2, but you should be able to alter the options using cabal configure. This package uses Haskell's FFI to interface with OpenSSL.

Provided that you have all the dependencies, you should be able to just do:

$ cabal install second-transfer

Running the tests

$ cabal test

Example

There is a very basic example at tests/tests-hs-src/compiling_ok.hs.

Roadmap

Done:

  • Version 0.1: Having something that can run. No unit-testing, nothing fancy.

  • Version 0.2: Absolutely minimal amount of unit tests.

  • Version 0.3: More sensible logging.

Pending:

  • Better examples.

  • Epoll I/O management

  • Benchmarking.