packages feed

sr-extra-1.85.1: sr-extra.cabal

Name:           sr-extra
Version:        1.85.1
License:        BSD3
License-File:   COPYING
Author:         David Fox
Category:       Unclassified
Synopsis:       Module limbo
Description:
  A hodge-podge of functions, modules, and instances.  These
  generally end up here because
     1. they are needed in two unrelated packages,
     2. they belong in some upstream module,
     3. they can't be moved to an upstream module because
        they would add dependencies, or
     4. they are deprecated but still in use
Maintainer:     David Fox <dsf@seereason.com>
Homepage:       https://github.com/seereason/sr-extra
Build-Type:     Simple
Cabal-Version:  >= 1.10
Tested-With: GHC==8.0.2, GHC==8.2.2, GHC==8.4.4, GHC==8.6.5, GHC==8.8.4, GHC==8.10.2

flag network-uri
  Description: Get Network.URI from the network-uri package rather than the
   full network package.
  Default: True

flag omit-serialize
  Description: Omit all the Serialize instances, on the assumption
   that we will use SafeCopy instances instead.
  Default: False

flag omit-data
  Description: Omit all Data instances
  Default: False

Library
  default-language: Haskell2010
  GHC-Options: -Wall -Wredundant-constraints
  Build-Depends:
    base >= 4.9 && < 5,
    base64-bytestring,
    bytestring,
    bzlib,
    Cabal,
    containers,
    Diff,
    directory,
    exceptions,
    fgl,
    filemanip,
    filepath,
    generic-data,
    hslogger,
    lens,
    ListLike,
    mmorph,
    mtl,
    pretty,
    pureMD5,
    QuickCheck >= 2 && < 3,
    random,
    safecopy >= 0.9.5,
    show-combinators,
    syb,
    template-haskell,
    text,
    th-lift,
    th-lift-instances,
    th-orphans,
    time >= 1.1,
    transformers,
    unexceptionalio-trans,
    unix,
    Unixutils >= 1.51,
    userid,
    uuid,
    uuid-orphans,
    uuid-types,
    zlib
  C-Sources:         cbits/gwinsz.c
  Include-Dirs:        cbits
  Install-Includes:    gwinsz.h
  Default-Extensions: ConstraintKinds, CPP, DataKinds, DeriveDataTypeable, DeriveFunctor, DeriveGeneric
  Default-Extensions: FlexibleInstances, FlexibleContexts, MultiParamTypeClasses, RankNTypes
  Default-Extensions: ScopedTypeVariables, StandaloneDeriving, TupleSections, TypeApplications, TypeFamilies
  Exposed-modules:
    Extra.Bool,
    Extra.Debug,
    Extra.Debug2,
    Extra.Either,
    Extra.EnvPath,
    Extra.ErrorControl,
    Extra.ErrorSet,
    Extra.Except,
    Extra.Exit,
    Extra.Files,
    Extra.FP,
    Extra.Generics,
    Extra.Generics.Show,
    Extra.IOThread
    Extra.List,
    Extra.HughesPJ,
    Extra.IO,
    Extra.LocalStorageEncode,
    Extra.Misc,
    Extra.Monad.Supply,
    Extra.Net,
    Extra.Orphans,
    Extra.Orphans2,
    Extra.Orphans3,
    Extra.Pretty,
    Extra.QuickCheck,
    Extra.SafeCopy,
    Extra.Serialize,
    Extra.Text,
    Extra.TH,
    Extra.Time,
    Extra.Terminal,
    Extra.URI,
    Extra.URIQuery,
    Extra.Verbosity
  if impl (ghc >= 8.6)
    Exposed-modules:
      Extra.Errors
  if !impl(ghcjs)
    Build-Depends:
      show-please,
      HUnit,
      process,
      process-extras
    Exposed-Modules:
      Extra.GPGSign,
      Extra.Lock,
      Extra.Process,
      Extra.SSH,
      Test.QUnit,
      Test.QuickCheck.Properties

  if flag(network-uri)
    Build-Depends: network-uri >= 2.6
  else
    Build-Depends: network >= 2.4

  if flag(omit-data)
    CPP-Options: -DOMIT_DATA_INSTANCES

  if flag(omit-serialize)
    CPP-Options: -DOMIT_SERIALIZE
    -- We still need cereal to implement instance SafeCopy Proxy
    Build-Depends: cereal
  else
    Build-Depends: cereal