packages feed

Cabal-hooks 3.14 → 3.16

raw patch · 7 files changed

+88/−86 lines, 7 filesdep ~Cabaldep ~Cabal-syntaxdep ~containersnew-uploaderPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: Cabal, Cabal-syntax, containers

API changes (from Hackage documentation)

- Distribution.Simple.SetupHooks: [haddockKeepTempFiles] :: HaddockFlags -> Flag Bool
+ Distribution.Simple.SetupHooks: [jsppOptions] :: BuildInfo -> [String]
- Distribution.Simple.SetupHooks: BuildInfo :: Bool -> [LegacyExeDependency] -> [ExeDependency] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [PkgconfigDependency] -> [RelativePath Framework 'File] -> [SymbolicPath Pkg ('Dir Framework)] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg ('Dir Source)] -> [ModuleName] -> [ModuleName] -> [ModuleName] -> Maybe Language -> [Language] -> [Extension] -> [Extension] -> [Extension] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [SymbolicPath Pkg ('Dir Lib)] -> [SymbolicPath Pkg ('Dir Lib)] -> [SymbolicPath Pkg ('Dir Include)] -> [SymbolicPath Include 'File] -> [RelativePath Include 'File] -> [RelativePath Include 'File] -> PerCompilerFlavor [String] -> PerCompilerFlavor [String] -> PerCompilerFlavor [String] -> PerCompilerFlavor [String] -> PerCompilerFlavor [String] -> [(String, String)] -> [Dependency] -> [Mixin] -> BuildInfo
+ Distribution.Simple.SetupHooks: BuildInfo :: Bool -> [LegacyExeDependency] -> [ExeDependency] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [PkgconfigDependency] -> [RelativePath Framework 'File] -> [SymbolicPath Pkg ('Dir Framework)] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg 'File] -> [SymbolicPath Pkg ('Dir Source)] -> [ModuleName] -> [ModuleName] -> [ModuleName] -> Maybe Language -> [Language] -> [Extension] -> [Extension] -> [Extension] -> [String] -> [String] -> [String] -> [String] -> [String] -> [String] -> [SymbolicPath Pkg ('Dir Lib)] -> [SymbolicPath Pkg ('Dir Lib)] -> [SymbolicPath Pkg ('Dir Include)] -> [SymbolicPath Include 'File] -> [RelativePath Include 'File] -> [RelativePath Include 'File] -> PerCompilerFlavor [String] -> PerCompilerFlavor [String] -> PerCompilerFlavor [String] -> PerCompilerFlavor [String] -> PerCompilerFlavor [String] -> [(String, String)] -> [Dependency] -> [Mixin] -> BuildInfo
- Distribution.Simple.SetupHooks: HaddockFlags :: !CommonSetupFlags -> [(String, FilePath)] -> [(String, [String])] -> Flag Bool -> Flag Bool -> Flag String -> Flag HaddockTarget -> Flag Bool -> Flag Bool -> Flag Bool -> Flag Bool -> Flag Bool -> Flag FilePath -> Flag Bool -> Flag Bool -> Flag FilePath -> Flag PathTemplate -> Flag PathTemplate -> Flag Bool -> Flag String -> Flag String -> Flag FilePath -> Flag Bool -> HaddockFlags
+ Distribution.Simple.SetupHooks: HaddockFlags :: !CommonSetupFlags -> [(String, FilePath)] -> [(String, [String])] -> Flag Bool -> Flag Bool -> Flag String -> Flag HaddockTarget -> Flag Bool -> Flag Bool -> Flag Bool -> Flag Bool -> Flag Bool -> Flag FilePath -> Flag Bool -> Flag Bool -> Flag FilePath -> Flag PathTemplate -> Flag PathTemplate -> Flag String -> Flag String -> Flag FilePath -> Flag Bool -> HaddockFlags

Files

+ CHANGELOG.md view
@@ -0,0 +1,12 @@+# Changelog for `Cabal-hooks`++## 3.16.0 – July 2025+  * No changes++## 3.14.2 – April 2025+  * No changes++## 3.14 – November 2024++  * Initial release of the `Hooks` API.+
Cabal-hooks.cabal view
@@ -1,7 +1,7 @@-cabal-version: 2.2
+cabal-version: 3.6
 name:          Cabal-hooks
-version:       3.14
-copyright:     2023, Cabal Development Team
+version:       3.16
+copyright:     2025, Cabal Development Team
 license:       BSD-3-Clause
 license-file:  LICENSE
 author:        Cabal Development Team <cabal-devel@haskell.org>
@@ -14,8 +14,8 @@ category:       Distribution
 build-type:     Simple
 
-extra-source-files:
-  readme.md changelog.md
+extra-doc-files:
+  README.md CHANGELOG.md
 
 source-repository head
   type:     git
@@ -27,13 +27,13 @@   hs-source-dirs: src
 
   build-depends:
-    Cabal-syntax    >= 3.14      && < 3.15,
-    Cabal           >= 3.14      && < 3.15,
-    base            >= 4.13      && < 5,
-    containers      >= 0.5.0.0   && < 0.8,
-    transformers    >= 0.5.6.0   && < 0.7
+    , Cabal-syntax    >= 3.16      && < 3.17
+    , Cabal           >= 3.16      && < 3.17
+    , base            >= 4.13      && < 5
+    , containers      >= 0.5.0.0   && < 0.9
+    , transformers    >= 0.5.6.0   && < 0.7
 
-  ghc-options: -Wall -fno-ignore-asserts -fwarn-tabs -fwarn-incomplete-uni-patterns -fwarn-incomplete-record-updates
+  ghc-options: -Wall -fno-ignore-asserts -Wtabs -Wincomplete-uni-patterns -Wincomplete-record-updates
 
   exposed-modules:
     Distribution.Simple.SetupHooks
LICENSE view
@@ -1,4 +1,4 @@-Copyright (c) 2003-2023, Cabal Development Team.
+Copyright (c) 2003-2025, Cabal Development Team.
 See the AUTHORS file for the full list of copyright holders.
 
 See */LICENSE for the copyright holders of the subcomponents.
+ README.md view
@@ -0,0 +1,64 @@+# `Cabal-hooks`
+
+This library provides an API for the `Cabal` `Hooks` build type.
+
+## What is the `Hooks` build type?
+
+The `Hooks` build type is a new `Cabal` build type that is scheduled to
+replace the `Custom` build type, providing better integration with
+the rest of the Haskell ecosystem.
+
+The original specification for the `Hooks` build type can be found in
+the associated [Haskell Foundation Tech Proposal](https://github.com/haskellfoundation/tech-proposals/pull/60).
+
+These *setup hooks* allow package authors to customise the configuration and
+building of a package by providing certain hooks that get folded into the
+general package configuration and building logic within `Cabal`.
+
+## Defining a package with custom hooks
+
+To use the `Hooks` build type, you will need to
+
+  * Update your `.cabal` file by:
+
+      - using `cabal-version >= 3.14`,
+      - declaring `build-type: Hooks`,
+      - declaring a `custom-setup` stanza, with a `setup-depends`
+        field which includes a dependency on `Cabal-hooks`.
+  
+  * Define a Haskell module `SetupHooks`, which must be placed
+    at the root of your project and must define a value
+    `setupHooks :: SetupHooks`.
+
+That is, your `.cabal` file should contain the following
+
+```cabal
+-- my-package.cabal
+cabal-version: 3.14
+name: my-package
+build-type: Hooks
+
+custom-setup
+  setup-depends:
+    Cabal-hooks >= 3.14 && < 3.15
+```
+
+and your `SetupHooks.hs` file should look like:
+
+```haskell
+-- SetupHooks.hs
+module SetupHooks ( setupHooks ) where
+
+-- Cabal-hooks
+import Distribution.Simple.SetupHooks
+
+setupHooks :: SetupHooks
+setupHooks = ...
+  -- use the API provided by 'Distribution.Simple.SetupHooks'
+  -- to define the hooks relevant to your package
+```
+
+## Using the API
+
+The [Haddock documentation](https://hackage.haskell.org/package/Cabal-hooks)
+should help you get started using this library's API.
− changelog.md
@@ -1,6 +0,0 @@-# Changelog for `Cabal-hooks`
-
-## 3.14 – November 2024
-
-  * Initial release of the `Hooks` API.
-
− readme.md
@@ -1,64 +0,0 @@-# `Cabal-hooks`
-
-This library provides an API for the `Cabal` `Hooks` build type.
-
-## What is the `Hooks` build type?
-
-The `Hooks` build type is a new `Cabal` build type that is scheduled to
-replace the `Custom` build type, providing better integration with
-the rest of the Haskell ecosystem.
-
-The original specification for the `Hooks` build type can be found in
-the associated [Haskell Foundation Tech Proposal](https://github.com/haskellfoundation/tech-proposals/pull/60).
-
-These *setup hooks* allow package authors to customise the configuration and
-building of a package by providing certain hooks that get folded into the
-general package configuration and building logic within `Cabal`.
-
-## Defining a package with custom hooks
-
-To use the `Hooks` build type, you will need to
-
-  * Update your `.cabal` file by:
-
-      - using `cabal-version >= 3.14`,
-      - declaring `build-type: Hooks`,
-      - declaring a `custom-setup` stanza, with a `setup-depends`
-        field which includes a dependency on `Cabal-hooks`.
-  
-  * Define a Haskell module `SetupHooks`, which must be placed
-    at the root of your project and must define a value
-    `setupHooks :: SetupHooks`.
-
-That is, your `.cabal` file should contain the following
-
-```cabal
--- my-package.cabal
-cabal-version: 3.14
-name: my-package
-build-type: Hooks
-
-custom-setup
-  setup-depends:
-    Cabal-hooks >= 0.1 && < 0.2
-```
-
-and your `SetupHooks.hs` file should look like:
-
-```haskell
--- SetupHooks.hs
-module SetupHooks ( setupHooks ) where
-
--- Cabal-hooks
-import Distribution.Simple.SetupHooks
-
-setupHooks :: SetupHooks
-setupHooks = ...
-  -- use the API provided by 'Distribution.Simple.SetupHooks'
-  -- to define the hooks relevant to your package
-```
-
-## Using the API
-
-The [Haddock documentation](https://hackage.haskell.org/package/Cabal-hooks)
-should help you get started using this library's API.
src/Distribution/Simple/SetupHooks.hs view
@@ -2,12 +2,8 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE DuplicateRecordFields #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE RankNTypes #-}-{-# LANGUAGE RecursiveDo #-} {-# LANGUAGE StaticPointers #-}-{-# LANGUAGE TupleSections #-}-{-# LANGUAGE OverloadedStrings #-}  {-| Module: Distribution.Simple.SetupHooks