Skip to content

Commit

Permalink
Prepare release 1.1.0.0 (#409)
Browse files Browse the repository at this point in the history
* Prepare release 1.1.0.0

* Use GHC 8.10.7 with stack
  • Loading branch information
chshersh authored Jun 9, 2022
1 parent 9cc1f9c commit b2fccef
Show file tree
Hide file tree
Showing 65 changed files with 544 additions and 398 deletions.
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
commit-message:
prefix: "GA"
include: "scope"
labels:
- "CI"
- "dependencies"
24 changes: 14 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,14 @@ jobs:
- "8.4.4"
- "8.6.5"
- "8.8.4"
- "8.10.4"
- "9.0.1"
- "8.10.7"
- "9.0.2"
- "9.2.2"
exclude:
- os: macOS-latest
ghc: 9.0.1
ghc: 9.0.2
- os: macOS-latest
ghc: 8.10.7
- os: macOS-latest
ghc: 8.8.4
- os: macOS-latest
Expand All @@ -38,7 +40,9 @@ jobs:
ghc: 8.2.2

- os: windows-latest
ghc: 9.0.1
ghc: 9.0.2
- os: windows-latest
ghc: 8.10.7
- os: windows-latest
ghc: 8.8.4
- os: windows-latest
Expand All @@ -51,7 +55,7 @@ jobs:
steps:
- uses: actions/checkout@v2

- uses: haskell/actions/setup@v1
- uses: haskell/actions/setup@v1.2
id: setup-haskell-cabal
name: Setup Haskell
with:
Expand All @@ -66,7 +70,7 @@ jobs:
run: |
cabal freeze
- uses: actions/cache@v2.1.3
- uses: actions/cache@v3
name: Cache ~/.cabal/store
with:
path: ${{ steps.setup-haskell-cabal.outputs.cabal-store }}
Expand All @@ -93,19 +97,19 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
stack: ["2.5"]
ghc: ["8.10.4"]
stack: ["2.7"]
ghc: ["8.10.7"]

steps:
- uses: actions/checkout@v2

- uses: haskell/actions/setup@v1
- uses: haskell/actions/setup@v1.2
name: Setup Haskell Stack
with:
ghc-version: ${{ matrix.ghc }}
stack-version: ${{ matrix.stack }}

- uses: actions/cache@v1
- uses: actions/cache@v3
name: Cache ~/.stack
with:
path: ~/.stack
Expand Down
33 changes: 33 additions & 0 deletions .headroom.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
## This is the configuration file for Headroom.
## See https://github.com/vaclavsvejcar/headroom for more details.
version: 0.4.0.0

run-mode: replace

source-paths:
- src/

excluded-paths: []

template-paths:
- https://raw.githubusercontent.com/kowainik/org/main/headroom-templates/haskell.mustache

variables:
author: Kowainik
email: [email protected]
_haskell_module_copyright: "(c) {{ _current_year }} {{ author }}"

license-headers:
haskell:
put-after: ["^{-#"]
margin-bottom-code: 1
margin-top-code: 1
block-comment:
starts-with: ^{- \|
ends-with: (?<!#)-}$

post-process:
update-copyright:
enabled: true
config:
selected-authors-only: ["{{ author }}"]
24 changes: 20 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,32 @@
`relude` uses [PVP Versioning][1].
The changelog is available [on GitHub][2].

## Unreleased
## 1.1.0.0 — Jun 9, 2022

* [#388](https://github.com/kowainik/relude/issues/388):
Support GHC-9.2.
* [#363](https://github.com/kowainik/relude/issues/363):
Remove the `Option` type, reexported from `Data.Semigroup`
(which was removed in `base-4.16`, GHC 9.2)

**Migration guide:** Use `Maybe` instead of `Option`.

* Remove Option from Data.Semigroup (which was removed from base in base 4.16)
* [#372](https://github.com/kowainik/relude/issues/372):
Warn on usages of `readFileText`, `readFileLText`, `readFile` and `readFile'`.
* Support `hashable ^>=1.4`
* Switch benchmarks from `criterion` to `tasty-bench`.

> _NOTE:_ This is a **breaking change** if you build with `-Werror`
> and use the above functions. Use `readFileBS` / `readFileLBS`
> instead to convert to `Text` / `LText` / `String` using
> `decodeUtf8` and similar functions.
* [#394](https://github.com/kowainik/relude/issues/394):
Support `hashable-1.4`.
* [#408](https://github.com/kowainik/relude/issues/408):
Switch benchmarks from `criterion` to `tasty-bench`.
* [#404](https://github.com/kowainik/relude/issues/404):
Fix condidion for `ordNubOn`, `intNub`, `intNubOn` export for `Relude.Nub` module.
Use min version of `containers-0.6.0` instead of min version of GHC `8.4`.
* Minor documentation improvements and fixes.

## 1.0.0.1 — Mar 15, 2021

Expand Down
29 changes: 21 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,11 @@ blog post by [Type Classes](https://typeclasses.com/) that highlights

* [No implicit Prelude](https://typeclasses.com/ghc/no-implicit-prelude)

For guiding development principles behind `relude` and comparison with
`base`, check out the following talk:

* [![Introduction to `relude` an alternative Haskell prelude](https://img.youtube.com/vi/qwAmiJ5M_zM/0.jpg)](https://www.youtube.com/watch?v=qwAmiJ5M_zM)

## Structure of this tutorial

This tutorial has several parts:
Expand Down Expand Up @@ -226,8 +231,8 @@ version: 0.0.0.0
library
exposed-modules: Example
build-depends: base >= 4.10 && < 4.13
, relude ^>= 1.0.0.0
build-depends: base >= 4.14 && < 4.17
, relude ^>= 1.1.0.0
mixins: base hiding (Prelude)
, relude (Relude as Prelude)
Expand Down Expand Up @@ -681,7 +686,7 @@ For the latest `relude` version, this can be achieved by executing the following
two commands on your CI:

```yaml
curl https://raw.githubusercontent.com/kowainik/relude/v1.0.0.0/.hlint.yaml -o .hlint-relude.yaml
curl https://raw.githubusercontent.com/kowainik/relude/v1.1.0.0/.hlint.yaml -o .hlint-relude.yaml
curl -sSL https://raw.github.com/ndmitchell/neil/master/misc/travis.sh | sh -s -- hlint -h .hlint-relude.yaml .
```

Expand Down Expand Up @@ -749,17 +754,15 @@ alternative preludes. It's also relatively small, but:

Note, that we are using custom `hlint` setting which are `Relude` specific. To
keep it up to date don't forget to reflect your changes in this file. We are
using `Dhall` to maintain the configurations. To use it follow the steps below.
using `Dhall` to maintain the configurations (lang version 22.0.0). To
use it follow the steps below.

First time:

```shell
$ cabal v2-install dhall-yaml
$ cabal v2-install dhall-yaml-1.2.10
```

Dhall 16.0.0 is required, so make sure that the previous command installed
`dhall-yaml` >= 1.2.5.

To generate `hlint` file:

```shell
Expand Down Expand Up @@ -791,3 +794,13 @@ Then draw the graph only for the library dependencies:
```shell
cabal-plan dot --root lib:relude | dot -Tpng -o relude-dependency-graph.png
```

### Updating license headers

Install the `headroom` tool and run it from this repository:

```shell
cabal v2-install headroom-0.4.3.0
headroom run
rg "SPDX-License-Identifier : MPL-2.0" --files-with-matches src/ | xargs sed -i 's/SPDX-License-Identifier : MPL-2.0/SPDX-License-Identifier : MIT/g'
```
Binary file modified relude-dependency-graph.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 12 additions & 7 deletions relude.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: relude
version: 1.0.0.1
version: 1.1.0.0
synopsis: Safe, performant, user-friendly and lightweight Haskell Standard Library
description:
@__relude__@ is an alternative prelude library. If you find the default
Expand Down Expand Up @@ -95,8 +95,8 @@ tested-with: GHC == 8.2.2
GHC == 8.4.4
GHC == 8.6.5
GHC == 8.8.4
GHC == 8.10.4
GHC == 9.0.1
GHC == 8.10.7
GHC == 9.0.2
GHC == 9.2.2


Expand All @@ -122,6 +122,11 @@ common common-options
ghc-options: -Wmissing-deriving-strategies
if impl(ghc >= 8.10)
ghc-options: -Wunused-packages
if impl(ghc >= 9.0)
ghc-options: -Winvalid-haddock
if impl(ghc >= 9.2)
ghc-options: -Wredundant-bang-patterns
-Woperator-whitespace


default-language: Haskell2010
Expand Down Expand Up @@ -223,14 +228,14 @@ library


build-depends: bytestring >= 0.10 && < 0.12
, containers >= 0.5.7 && < 0.7
, containers >= 0.5.10 && < 0.7
, deepseq ^>= 1.4
, ghc-prim >= 0.4.0.0 && < 0.9
, hashable >= 1.2 && < 1.5
, mtl ^>= 2.2
, stm >= 2.4 && < 2.6
, text ^>= 1.2
, transformers ^>= 0.5
, text >= 1.2 && < 2.1
, transformers >= 0.5 && < 0.7
, unordered-containers >= 0.2.7 && < 0.3


Expand Down Expand Up @@ -258,7 +263,7 @@ test-suite relude-doctest
main-is: Doctest.hs

build-depends: relude
, doctest < 0.19
, doctest ^>= 0.20
, Glob

ghc-options: -threaded
Expand Down
15 changes: 8 additions & 7 deletions src/Relude.hs
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
{-# LANGUAGE Safe #-}

{- |
Copyright: (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2021 Kowainik
SPDX-License-Identifier: MIT
Maintainer: Kowainik <[email protected]>
Stability: Stable
Portability: Portable
Module : Relude
Copyright : (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2022 Kowainik
SPDX-License-Identifier : MIT
Maintainer : Kowainik <[email protected]>
Stability : Stable
Portability : Portable
@relude@ is a safe, performant, user-friendly and lightweight Haskell
standard library.
Expand Down
15 changes: 8 additions & 7 deletions src/Relude/Applicative.hs
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
{-# LANGUAGE Safe #-}

{- |
Copyright: (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2021 Kowainik
SPDX-License-Identifier: MIT
Maintainer: Kowainik <[email protected]>
Stability: Stable
Portability: Portable
Module : Relude.Applicative
Copyright : (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2022 Kowainik
SPDX-License-Identifier : MIT
Maintainer : Kowainik <[email protected]>
Stability : Stable
Portability : Portable
This module contains reexports of 'Applicative' and related functional.
Additionally, it provides convenient combinators to work with 'Applicative'.
Expand Down
15 changes: 8 additions & 7 deletions src/Relude/Base.hs
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
{-# LANGUAGE Trustworthy #-}

{- |
Copyright: (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2021 Kowainik
SPDX-License-Identifier: MIT
Maintainer: Kowainik <[email protected]>
Stability: Stable
Portability: Portable
Module : Relude.Base
Copyright : (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2022 Kowainik
SPDX-License-Identifier : MIT
Maintainer : Kowainik <[email protected]>
Stability : Stable
Portability : Portable
Reexports from @Data.*@ and @GHC.*@ modules of
<https://hackage.haskell.org/package/base base> package.
Expand Down
15 changes: 8 additions & 7 deletions src/Relude/Bool.hs
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
{-# LANGUAGE Safe #-}

{- |
Copyright: (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2021 Kowainik
SPDX-License-Identifier: MIT
Maintainer: Kowainik <[email protected]>
Stability: Stable
Portability: Portable
Module : Relude.Bool
Copyright : (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2022 Kowainik
SPDX-License-Identifier : MIT
Maintainer : Kowainik <[email protected]>
Stability : Stable
Portability : Portable
Convenient commonly used and very helpful functions to work with 'Bool' and also
with monads.
Expand Down
15 changes: 8 additions & 7 deletions src/Relude/Bool/Guard.hs
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
{-# LANGUAGE Safe #-}

{- |
Copyright: (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2021 Kowainik
SPDX-License-Identifier: MIT
Maintainer: Kowainik <[email protected]>
Stability: Stable
Portability: Portable
Module : Relude.Bool.Guard
Copyright : (c) 2016 Stephen Diehl
(c) 2016-2018 Serokell
(c) 2018-2022 Kowainik
SPDX-License-Identifier : MIT
Maintainer : Kowainik <[email protected]>
Stability : Stable
Portability : Portable
Monadic boolean combinators.
-}
Expand Down
Loading

0 comments on commit b2fccef

Please sign in to comment.