packages feed

chronos-1.0.4: chronos.cabal

name: chronos
version: 1.0.4
synopsis: A performant time library
description:
  Performance-oriented time library for haskell. The main differences
  between this and "time" are that this library:
  .
  * Uses machine integers where possible. This means that some time-related
    arithmetic should be faster. It also means that the types are incapable
    of representing times that are very far in the future or the past.
  .
  * Provides "ToJSON" and "FromJSON" instances for json serialization.
  .
  * Provides "Unbox" instances for working with unboxed vectors.
  .
  * Uses normal non-overloaded haskell functions for encoding and decoding time. It provides
    "attoparsec" parsers for both "Text" and "ByteString". Additionally, it
    provides functions for encoding time as "Text" or "ByteString". The "time"
    library uses accomplishes these with the "Data.Time.Format" module,
    which uses UNIX-style datetime format strings. It is expected that
    the approach taken in this library is faster and catches more mistakes
    at compile time at the cost of being less expressive.
  .
  * Only provides nanosecond resolution instead of picosecond resolution.


homepage: https://github.com/andrewthad/chronos#readme
license: BSD3
license-file: LICENSE
author: Andrew Martin
maintainer: andrew.thaddeus@gmail.com
copyright: 2016 Andrew Martin
category: web
build-type: Simple
cabal-version: >=1.10

library
  hs-source-dirs:      src
  exposed-modules:
      Chronos
    , Chronos.Types
    , Chronos.Locale.English
  other-modules:
      Chronos.Internal.CTimespec
  build-depends:
      base >= 4.9 && < 5
    , aeson >= 1.1 && < 1.4
    , attoparsec >= 0.13 && < 0.14
    , bytestring >= 0.10 && < 0.11
    , clock >= 0.7 && < 0.8
    , hashable >= 1.2 && < 1.3
    , primitive >= 0.6 && < 0.7
    , semigroups >= 0.16 && < 0.19
    , text >= 1.2 && < 1.3
    , torsor >= 0.1 && < 0.2
    , vector >= 0.11 && < 0.13
  default-language:    Haskell2010
  c-sources:           src/cbits/hs-time.c

test-suite chronos-test
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  build-depends:
      base
    , chronos
    , text
    , bytestring
    , attoparsec
    , test-framework
    , test-framework-quickcheck2
    , QuickCheck
    , HUnit
    , test-framework-hunit
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  default-language:    Haskell2010

benchmark bench
  type:                exitcode-stdio-1.0
  hs-source-dirs:      bench
  main-is:             Bench.hs
  build-depends:
      base
    , attoparsec
    , bytestring
    , chronos
    , criterion
    , deepseq
    , old-locale
    , QuickCheck
    , thyme
    , time
    , vector
  default-language:    Haskell2010

source-repository head
  type: git
  location: https://github.com/andrewthad/chronos