homepage: https://github.com/aaronallen8455/pinned-warnings#readme
changelog-type: markdown
hash: 5890b333bba1a7dce48dd002800008a507070da9daeeb323b7ef4445688fab71
test-bench-deps: {}
maintainer: aaronallen8455@gmail.com
synopsis: Preserve warnings in a GHCi session
changelog: |
  # Revision history for pinned-warnings

  ## 0.1.0.0 -- YYYY-mm-dd

  * First version. Released on an unsuspecting world.
basic-deps:
  ghc: '>=8.8 && <9.1'
  bytestring: '>=0.10.10 && <0.11'
  base: '>=4.7 && <5'
  containers: '>=0.6.2 && <0.7'
  directory: '>=1.3.6 && <1.4'
all-versions:
- 0.1.0.0
author: Aaron Allen
latest: 0.1.0.0
description-type: markdown
description: |
  # Pinned Warnings

  ### The problem
  When working in GHCi, it's easy to lose track of warnings from modules other
  than the one you are currently editing. Having to reload the project to catch
  any warnings you might have missed is painful.

  ### The solution
  This package has a GHC plugin that allows you to see all the current warnings
  from all modules in GHCi by calling a special `showWarnings` function.

  ### Usage
  You can start GHCi in your project with one of the following commands to enable
  the necessary plugin. You can add `pinned-warnings` as a package dependency to
  avoid having to include the additional argument.
  ```
  cabal update
  cabal new-repl -b pinned-warnings --ghc-options="-fplugin PinnedWarnings"

  stack update
  stack repl --package pinned-warnings --ghci-options "-fplugin PinnedWarnings"
  ```
  Then you must add the `ShowWarnings` module to the GHCi context:
  ```
  :m + ShowWarnings
  ```
  Now all active warnings can be viewed by evaluating `showWarnings`.

  ### Tip
  You can define a custom GHCi command in your `.ghci` file that adds the
  `ShowWarnings` module and calls `showWarnings`:
  ```
  :def sw (\_ -> pure ":m + ShowWarnings \n showWarnings")
  ```
  With this you can simply use `:sw` to view warnings.

  ### Known limitations
  - Warnings produced outside of module type checking are not captured,
    for example those related to `.cabal` file omissions.
  - Only the specified versions of GHC are supported
license-name: BSD-3-Clause

Update from Hackage at 2021-04-26T01:41:57Z
Update from Hackage at 2021-04-26T01:41:57Z
