Files
simplexmq/package.yaml
Evgeny Poberezkin 5e3bc7ee6c improve error handling (#101)
* inventory of error handling problems and types

* Change SMP protocol errors syntax

* connection errors in agent protocol (ERR CONN), STORE error -> AGENT error

* include exception in SEInternal error

* add MESSAGE errors, remove CRYPTO and SIZE errors

* agent protocol SYNTAX and AGENT errors

* BROKER errors

* group all client command (and agent response) errors

* BROKER TRANSPORT error

* simplify Client

* clean up

* transport errors

* simplify client

* parse / serialize agent errors

* differentiate crypto errors

* update errors.md

* make agent and SMP protocol errors consistent, simplify

* update doc

* test: parse / serialize protocol errors with QuickCheck

* add String to internal error

* exponential back-off when retrying to send HELLO

* refactor Client.hs

* replace fold with recursion in startTCPClient

* fail test if server did not start, refactor

* test: wait till TCP server stops

* test: refactor waiting for server to stop

* test: fail with error if server did not start/stop
2021-04-18 18:37:54 +01:00

98 lines
2.0 KiB
YAML

name: simplex-messaging
version: 0.1.0.0
#synopsis:
#description:
homepage: https://github.com/simplex-chat/simplex-messaging#readme
license: AGPL-3
author: Evgeny Poberezkin
maintainer: evgeny@poberezkin.com
copyright: 2020 Evgeny Poberezkin
category: Web, System, Services, Cryptography
extra-source-files:
- README.md
dependencies:
- ansi-terminal == 0.10.*
- asn1-encoding == 0.9.*
- asn1-types == 0.3.*
- async == 2.2.*
- attoparsec == 0.13.*
- base >= 4.7 && < 5
- base64-bytestring >= 1.0 && < 1.3
- bytestring == 0.10.*
- containers
- cryptonite == 0.26.*
- directory == 1.3.*
- filepath == 1.4.*
- generic-random == 1.3.*
- iso8601-time == 0.1.*
- memory == 0.15.*
- mtl
- network == 3.1.*
- network-transport == 0.5.*
- QuickCheck == 2.13.*
- simple-logger == 0.1.*
- sqlite-simple == 0.4.*
- stm
- template-haskell == 2.15.*
- text == 1.2.*
- time == 1.9.*
- transformers == 0.5.*
- unliftio == 0.2.*
- unliftio-core == 0.1.*
- x509 == 1.7.*
library:
source-dirs: src
executables:
smp-server:
source-dirs: apps/smp-server
main: Main.hs
dependencies:
- cryptostore == 0.2.*
- simplex-messaging
ghc-options:
- -threaded
smp-agent:
source-dirs: apps/smp-agent
main: Main.hs
dependencies:
- simplex-messaging
ghc-options:
- -threaded
dog-food:
source-dirs: apps/dog-food
main: Main.hs
dependencies:
- ansi-terminal == 0.10.*
- optparse-applicative == 0.15.*
- simplex-messaging
- terminal == 0.2.*
ghc-options:
- -threaded
tests:
smp-server-test:
source-dirs: tests
main: Test.hs
dependencies:
- simplex-messaging
- hspec == 2.7.*
- hspec-core == 2.7.*
- HUnit == 1.6.*
- random == 1.1.*
- QuickCheck == 2.13.*
ghc-options:
# - -haddock
- -Wall
- -Wcompat
- -Werror=incomplete-patterns
- -Wredundant-constraints
- -Wincomplete-record-updates
- -Wincomplete-uni-patterns
- -Wunused-type-patterns