1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
|
cabal-version: 3.0
-- Created : 27 April 2023
name:
directory-ospath-streaming
version:
0.2.2
synopsis:
Stream directory entries in constant memory in vanilla IO
description:
Reading of directory contents in constant memory, i.e. in an iterative
fashion without storing all directory elements in memory. From another
perspective, this reading interface allows stopping at any point
without loading every directory element.
Also defines general-purpose recursive directory traversals.
Both Windows and Unix systems are supported.
copyright:
(c) Sergey Vinokurov 2023
license:
Apache-2.0
license-file:
LICENSE
author:
Sergey Vinokurov
maintainer:
Sergey Vinokurov <serg.foo@gmail.com>
category:
File, Streaming
tested-with:
, GHC == 8.6
, GHC == 8.8
, GHC == 8.10
, GHC == 9.2
, GHC == 9.4
, GHC == 9.6
, GHC == 9.8
, GHC == 9.10
build-type:
Simple
extra-source-files:
test/filesystem/*.txt
test/filesystem/bin/*.txt
extra-doc-files:
Changelog.md
Readme.md
homepage:
https://github.com/sergv/directory-ospath-streaming
source-repository head
type: git
location: https://github.com/sergv/directory-ospath-streaming.git
-- Cabal will pick this flag up automatically during solving. Default to true
-- since that’s what should be picked up for all future filepath versions starting at 1.5.
flag os-string
description:
Depend on os-string package, needed for filepath >= 1.5
default:
True
manual:
False
common ghc-options
default-language: Haskell2010
ghc-options:
-Weverything
-Wno-all-missed-specialisations
-Wno-implicit-prelude
-Wno-missed-specialisations
-Wno-missing-import-lists
-Wno-missing-local-signatures
-Wno-safe
-Wno-unsafe
if impl(ghc >= 8.8)
ghc-options:
-Wno-missing-deriving-strategies
if impl(ghc >= 8.10)
ghc-options:
-Wno-missing-safe-haskell-mode
-Wno-prepositive-qualified-module
if impl(ghc >= 9.2)
ghc-options:
-Wno-missing-kind-signatures
if impl(ghc >= 9.8)
ghc-options:
-Wno-missing-role-annotations
-Wno-missing-poly-kind-signatures
common depends-on-filepath
if flag(os-string)
build-depends:
, filepath >= 1.5
, os-string >= 2.0
else
build-depends:
, filepath >= 1.4.100 && < 1.5
library
import: ghc-options, depends-on-filepath
exposed-modules:
System.Directory.OsPath.Streaming
System.Directory.OsPath.Streaming.Internal
System.Directory.OsPath.Streaming.Internal.Raw
System.Directory.OsPath.Types
other-modules:
System.Directory.OsPath.Contents
System.Directory.OsPath.FileType
System.Directory.OsPath.Utils
hs-source-dirs:
src
build-depends:
, atomic-counter
, base >= 4.12 && < 5
, deepseq >= 1.4
if os(windows)
build-depends:
, directory >= 1.3.8
, Win32 >= 2.13.3
else
build-depends:
-- Cannot use lower version because it doesn’t support OsStrings
, unix >= 2.8
test-suite test
import: ghc-options, depends-on-filepath
type:
exitcode-stdio-1.0
main-is:
test/TestMain.hs
hs-source-dirs:
.
test
build-depends:
, base >= 4.12
, directory-ospath-streaming
, tasty
, tasty-hunit
if !os(windows)
build-depends:
, directory
, random
, unix >= 2.8
ghc-options:
-rtsopts
-main-is TestMain
|