packages feed

Cabal revisions of streamly-fsevents-0.1.1

Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.

revision 1
-cabal-version:      2.2-name:               streamly-fsevents-version:            0.1.1-synopsis:           File system event notification streams-description:-  A portable, robust, and stream-based file system event notification API for-  Linux, macOS, and Windows. This library provides a streaming alternative to-  the fsnotify package.-  .-  The portable module in this package offers a consistent,-  cross-platform, common denominator API across all supported systems-  whereas platform-specific modules expose more extensive APIs that-  allow you to make full use of each operating system’s native-  capabilities.--homepage:            https://streamly.composewell.com-bug-reports:         https://github.com/composewell/streamly-fsevents/issues-license:             BSD-3-Clause-license-file:        LICENSE-tested-with:-    GHC==9.14.1-  , GHC==9.12.4-  , GHC==9.10.3-  , GHC==9.8.4-  , GHC==9.6.3-author:              Composewell Technologies-maintainer:          streamly@composewell.com-copyright:           2025 Composewell Technologies-category:-    Streamly, Streaming, Filesystem-stability:           Stable-build-type:          Configure--extra-source-files:-    configure-    configure.ac-    src/Streamly/Internal/FS/Event/Darwin.h-    src/config.h.in--extra-doc-files:-    Changelog.md-    README.md--extra-tmp-files:-    config.log-    config.status-    autom4te.cache-    src/config.h--source-repository head-    type: git-    location: https://github.com/composewell/streamly-fsevents--flag fusion-plugin-  description: Enable fusion plugin-  manual: True-  default: False--flag internal-dev-  description: Development build-  manual: True-  default: False--flag opt-  description: off=GHC default, on=-O2-  manual: True-  default: True--flag limit-build-mem-  description: Limits memory when building-  manual: True-  default: False------------------------------------------------------------------------------------ Common stanzas----------------------------------------------------------------------------------common compile-options-    default-language: Haskell2010--    if os(darwin)-      cpp-options:    -DCABAL_OS_DARWIN--    if os(linux)-      cpp-options:    -DCABAL_OS_LINUX--    if os(windows)-      cpp-options:    -DCABAL_OS_WINDOWS--    if flag(internal-dev)-      cpp-options:    -DDEVBUILD--    ghc-options:    -Weverything-                    -Wno-implicit-prelude-                    -Wno-missing-deriving-strategies-                    -Wno-missing-exported-signatures-                    -Wno-missing-import-lists-                    -Wno-missing-local-signatures-                    -Wno-missing-safe-haskell-mode-                    -Wno-missed-specialisations-                    -Wno-all-missed-specialisations-                    -Wno-monomorphism-restriction-                    -Wno-prepositive-qualified-module-                    -Wno-unsafe-                    -Rghc-timing--    if impl(ghc >= 9.2)-      ghc-options:-        -Wno-missing-kind-signatures-        -Wno-redundant-bang-patterns-        -Wno-operator-whitespace--    if impl(ghc >= 9.8)-      ghc-options:-        -Wno-missing-role-annotations--    if flag(internal-dev)-      ghc-options:    -Wmissed-specialisations-                      -Wall-missed-specialisations--    if flag(limit-build-mem)-        ghc-options: +RTS -M1000M -RTS--common default-extensions-    default-extensions:-        BangPatterns-        ConstraintKinds-        DeriveDataTypeable-        DeriveGeneric-        DeriveTraversable-        ExistentialQuantification-        FlexibleContexts-        FlexibleInstances-        GeneralizedNewtypeDeriving-        InstanceSigs-        KindSignatures-        MultiParamTypeClasses-        RankNTypes-        ScopedTypeVariables-        TupleSections-        TypeApplications-        TypeOperators--        -- Not GHC2021-        CApiFFI-        CPP-        LambdaCase-        MagicHash-        RecordWildCards--        -- TypeFamilies -- required by IsHashMap type class-        -- MonoLocalBinds, enabled by TypeFamilies, causes performance-        -- regressions. Disable it. This must come after TypeFamilies,-        -- otherwise TypeFamilies will enable it again.-        -- NoMonoLocalBinds--        -- UndecidableInstances -- Does not show any perf impact-        -- UnboxedTuples        -- interferes with (#.)--common optimization-options-  if flag(opt)-    ghc-options: -O2-                 -fdicts-strict-                 -fspec-constr-recursive=16-                 -fmax-worker-args=16--  -- For this to be effective it must come after the -O2 option-  if flag(internal-dev) || !flag(opt)-    ghc-options: -fno-ignore-asserts--  if flag(fusion-plugin)-    ghc-options: -fplugin Fusion.Plugin---common threading-options-  ghc-options:  -threaded-                -with-rtsopts=-N---- We need optimization options here to optimize internal (non-inlined)--- versions of functions. Also, we have some benchmarking inspection tests--- part of the library when built with --benchmarks flag. Thos tests fail--- if we do not use optimization options here. It was observed that due to--- -O2 here some concurrent/nested benchmarks improved and others regressed.--- We can investigate a bit more here why the regression occurred.-common lib-options-  import: compile-options, optimization-options, default-extensions--common test-options-  import: lib-options-        , threading-options-  ghc-options: -rtsopts -fno-ignore-asserts-  hs-source-dirs: test-  build-depends: streamly-core-               , streamly-               , streamly-fsevents-               , base-               , hspec-               , directory-               , filepath-               , temporary-  if flag(fusion-plugin)-    build-depends:-      fusion-plugin     >= 0.2   && < 0.3------------------------------------------------------------------------------------ Library----------------------------------------------------------------------------------library-    import: lib-options--    if impl(ghc >= 8.6)-      default-extensions: QuantifiedConstraints--    include-dirs: src--    hs-source-dirs: src--    if os(windows)-          exposed-modules: Streamly.Internal.FS.Event.Windows--    if os(darwin)-          include-dirs:  src/Streamly/Internal-          c-sources: src/Streamly/Internal/FS/Event/Darwin.c-          exposed-modules: Streamly.Internal.FS.Event.Darwin--    if os(linux)-          exposed-modules: Streamly.Internal.FS.Event.Linux--    if os(linux) || os(darwin) || os(windows)-          exposed-modules: Streamly.FileSystem.Event-                           Streamly.Internal.FS.Event--    build-depends:-                       base              >= 4.12  && < 4.23-                     , streamly-core     == 0.3.0--    if flag(fusion-plugin)-      build-depends:-        fusion-plugin     >= 0.2   && < 0.3--    -- For FS.Event module-    if os(linux)-      build-depends: directory >= 1.2.2 && < 1.4-                   , containers >= 0.6.0 && < 0.9--    if os(windows)-      build-depends: Win32 >= 2.6 && < 2.15-                   , streamly == 0.11.0--    if os(darwin)-      build-depends: mtl       >= 2.2.2 && < 2.4-      frameworks: Cocoa---test-suite FileSystem.Event-  import: test-options-  type: exitcode-stdio-1.0-  ghc-options: -main-is Streamly.Test.FileSystem.Event-  main-is: Streamly/Test/FileSystem/Event.hs-  other-modules: Streamly.Test.FileSystem.Event.Common-  if !((os(linux) && impl(ghc >= 9.4)) || os(darwin) || os(windows))-    buildable: False--test-suite FileSystem.Event.Darwin-  import: test-options-  type: exitcode-stdio-1.0-  main-is: Streamly/Test/FileSystem/Event/Darwin.hs-  other-modules: Streamly.Test.FileSystem.Event.Common-  cpp-options: -DFILESYSTEM_EVENT_DARWIN-  ghc-options: -main-is Streamly.Test.FileSystem.Event.Darwin-  if !os(darwin)-    buildable: False--test-suite FileSystem.Event.Linux-  import: test-options-  type: exitcode-stdio-1.0-  main-is: Streamly/Test/FileSystem/Event/Linux.hs-  other-modules: Streamly.Test.FileSystem.Event.Common-  cpp-options: -DFILESYSTEM_EVENT_LINUX-  ghc-options: -main-is Streamly.Test.FileSystem.Event.Linux-  if impl(ghc < 9.4) || !os(linux)-    buildable: False--test-suite FileSystem.Event.Windows-  import: test-options-  type: exitcode-stdio-1.0-  main-is: Streamly/Test/FileSystem/Event/Windows.hs-  other-modules: Streamly.Test.FileSystem.Event.Common-  cpp-options: -DFILESYSTEM_EVENT_WINDOWS-  ghc-options: -main-is Streamly.Test.FileSystem.Event.Windows-  if !os(windows)-    buildable: False+cabal-version:      2.2
+name:               streamly-fsevents
+version:            0.1.1
+x-revision: 1
+synopsis:           File system event notification streams
+description:
+  A portable, robust, and stream-based file system event notification API for
+  Linux, macOS, and Windows. This library provides a streaming alternative to
+  the fsnotify package.
+  .
+  The portable module in this package offers a consistent,
+  cross-platform, common denominator API across all supported systems
+  whereas platform-specific modules expose more extensive APIs that
+  allow you to make full use of each operating system’s native
+  capabilities.
+
+homepage:            https://streamly.composewell.com
+bug-reports:         https://github.com/composewell/streamly-fsevents/issues
+license:             BSD-3-Clause
+license-file:        LICENSE
+tested-with:
+    GHC==9.14.1
+  , GHC==9.12.4
+  , GHC==9.10.3
+  , GHC==9.8.4
+  , GHC==9.6.3
+author:              Composewell Technologies
+maintainer:          streamly@composewell.com
+copyright:           2025 Composewell Technologies
+category:
+    Streamly, Streaming, Filesystem
+stability:           Stable
+build-type:          Configure
+
+extra-source-files:
+    configure
+    configure.ac
+    src/Streamly/Internal/FS/Event/Darwin.h
+    src/config.h.in
+
+extra-doc-files:
+    Changelog.md
+    README.md
+
+extra-tmp-files:
+    config.log
+    config.status
+    autom4te.cache
+    src/config.h
+
+source-repository head
+    type: git
+    location: https://github.com/composewell/streamly-fsevents
+
+flag fusion-plugin
+  description: Enable fusion plugin
+  manual: True
+  default: False
+
+flag internal-dev
+  description: Development build
+  manual: True
+  default: False
+
+flag opt
+  description: off=GHC default, on=-O2
+  manual: True
+  default: True
+
+flag limit-build-mem
+  description: Limits memory when building
+  manual: True
+  default: False
+
+-------------------------------------------------------------------------------
+-- Common stanzas
+-------------------------------------------------------------------------------
+
+common compile-options
+    default-language: Haskell2010
+
+    if os(darwin)
+      cpp-options:    -DCABAL_OS_DARWIN
+
+    if os(linux)
+      cpp-options:    -DCABAL_OS_LINUX
+
+    if os(windows)
+      cpp-options:    -DCABAL_OS_WINDOWS
+
+    if flag(internal-dev)
+      cpp-options:    -DDEVBUILD
+
+    ghc-options:    -Weverything
+                    -Wno-implicit-prelude
+                    -Wno-missing-deriving-strategies
+                    -Wno-missing-exported-signatures
+                    -Wno-missing-import-lists
+                    -Wno-missing-local-signatures
+                    -Wno-missing-safe-haskell-mode
+                    -Wno-missed-specialisations
+                    -Wno-all-missed-specialisations
+                    -Wno-monomorphism-restriction
+                    -Wno-prepositive-qualified-module
+                    -Wno-unsafe
+                    -Rghc-timing
+
+    if impl(ghc >= 9.2)
+      ghc-options:
+        -Wno-missing-kind-signatures
+        -Wno-redundant-bang-patterns
+        -Wno-operator-whitespace
+
+    if impl(ghc >= 9.8)
+      ghc-options:
+        -Wno-missing-role-annotations
+
+    if flag(internal-dev)
+      ghc-options:    -Wmissed-specialisations
+                      -Wall-missed-specialisations
+
+    if flag(limit-build-mem)
+        ghc-options: +RTS -M1000M -RTS
+
+common default-extensions
+    default-extensions:
+        BangPatterns
+        ConstraintKinds
+        DeriveDataTypeable
+        DeriveGeneric
+        DeriveTraversable
+        ExistentialQuantification
+        FlexibleContexts
+        FlexibleInstances
+        GeneralizedNewtypeDeriving
+        InstanceSigs
+        KindSignatures
+        MultiParamTypeClasses
+        RankNTypes
+        ScopedTypeVariables
+        TupleSections
+        TypeApplications
+        TypeOperators
+
+        -- Not GHC2021
+        CApiFFI
+        CPP
+        LambdaCase
+        MagicHash
+        RecordWildCards
+
+        -- TypeFamilies -- required by IsHashMap type class
+        -- MonoLocalBinds, enabled by TypeFamilies, causes performance
+        -- regressions. Disable it. This must come after TypeFamilies,
+        -- otherwise TypeFamilies will enable it again.
+        -- NoMonoLocalBinds
+
+        -- UndecidableInstances -- Does not show any perf impact
+        -- UnboxedTuples        -- interferes with (#.)
+
+common optimization-options
+  if flag(opt)
+    ghc-options: -O2
+                 -fdicts-strict
+                 -fspec-constr-recursive=16
+                 -fmax-worker-args=16
+
+  -- For this to be effective it must come after the -O2 option
+  if flag(internal-dev) || !flag(opt)
+    ghc-options: -fno-ignore-asserts
+
+  if flag(fusion-plugin)
+    ghc-options: -fplugin Fusion.Plugin
+
+
+common threading-options
+  ghc-options:  -threaded
+                -with-rtsopts=-N
+
+-- We need optimization options here to optimize internal (non-inlined)
+-- versions of functions. Also, we have some benchmarking inspection tests
+-- part of the library when built with --benchmarks flag. Thos tests fail
+-- if we do not use optimization options here. It was observed that due to
+-- -O2 here some concurrent/nested benchmarks improved and others regressed.
+-- We can investigate a bit more here why the regression occurred.
+common lib-options
+  import: compile-options, optimization-options, default-extensions
+
+common test-options
+  import: lib-options
+        , threading-options
+  ghc-options: -rtsopts -fno-ignore-asserts
+  hs-source-dirs: test
+  build-depends: streamly-core
+               , streamly
+               , streamly-fsevents
+               , base
+               , hspec
+               , directory
+               , filepath
+               , temporary
+  if flag(fusion-plugin)
+    build-depends:
+      fusion-plugin     >= 0.2   && < 0.3
+
+-------------------------------------------------------------------------------
+-- Library
+-------------------------------------------------------------------------------
+
+library
+    import: lib-options
+
+    if impl(ghc >= 8.6)
+      default-extensions: QuantifiedConstraints
+
+    include-dirs: src
+
+    hs-source-dirs: src
+
+    if os(windows)
+          exposed-modules: Streamly.Internal.FS.Event.Windows
+
+    if os(darwin)
+          include-dirs:  src/Streamly/Internal
+          c-sources: src/Streamly/Internal/FS/Event/Darwin.c
+          exposed-modules: Streamly.Internal.FS.Event.Darwin
+
+    if os(linux)
+          exposed-modules: Streamly.Internal.FS.Event.Linux
+
+    if os(linux) || os(darwin) || os(windows)
+          exposed-modules: Streamly.FileSystem.Event
+                           Streamly.Internal.FS.Event
+
+    build-depends:
+                       base              >= 4.12  && < 4.23
+                     , streamly-core     >= 0.3.0 && < 0.3.2
+
+    if flag(fusion-plugin)
+      build-depends:
+        fusion-plugin     >= 0.2   && < 0.3
+
+    -- For FS.Event module
+    if os(linux)
+      build-depends: directory >= 1.2.2 && < 1.4
+                   , containers >= 0.6.0 && < 0.9
+
+    if os(windows)
+      build-depends: Win32 >= 2.6 && < 2.15
+                   , streamly >= 0.11.0 && < 0.11.2
+
+    if os(darwin)
+      build-depends: mtl       >= 2.2.2 && < 2.4
+      frameworks: Cocoa
+
+
+test-suite FileSystem.Event
+  import: test-options
+  type: exitcode-stdio-1.0
+  ghc-options: -main-is Streamly.Test.FileSystem.Event
+  main-is: Streamly/Test/FileSystem/Event.hs
+  other-modules: Streamly.Test.FileSystem.Event.Common
+  if !((os(linux) && impl(ghc >= 9.4)) || os(darwin) || os(windows))
+    buildable: False
+
+test-suite FileSystem.Event.Darwin
+  import: test-options
+  type: exitcode-stdio-1.0
+  main-is: Streamly/Test/FileSystem/Event/Darwin.hs
+  other-modules: Streamly.Test.FileSystem.Event.Common
+  cpp-options: -DFILESYSTEM_EVENT_DARWIN
+  ghc-options: -main-is Streamly.Test.FileSystem.Event.Darwin
+  if !os(darwin)
+    buildable: False
+
+test-suite FileSystem.Event.Linux
+  import: test-options
+  type: exitcode-stdio-1.0
+  main-is: Streamly/Test/FileSystem/Event/Linux.hs
+  other-modules: Streamly.Test.FileSystem.Event.Common
+  cpp-options: -DFILESYSTEM_EVENT_LINUX
+  ghc-options: -main-is Streamly.Test.FileSystem.Event.Linux
+  if impl(ghc < 9.4) || !os(linux)
+    buildable: False
+
+test-suite FileSystem.Event.Windows
+  import: test-options
+  type: exitcode-stdio-1.0
+  main-is: Streamly/Test/FileSystem/Event/Windows.hs
+  other-modules: Streamly.Test.FileSystem.Event.Common
+  cpp-options: -DFILESYSTEM_EVENT_WINDOWS
+  ghc-options: -main-is Streamly.Test.FileSystem.Event.Windows
+  if !os(windows)
+    buildable: False