Skip to content

Releases: ocharles/weeder

2.9.0

10 Aug 14:12
fa9c7dc
Compare
Choose a tag to compare

Changed

  • Sort weeds by line number and then by column. (#155)
  • Show unit names in output. (#156)
  • Significantly improve weeders performance when using type-class-roots = false. (#172)
  • Use Glob to find .hie files. This can avoid an infinite loop with recursive symlinks. (#165)
  • Build with lens-5.3. (#173)

Fixed

  • Weeder now correctly reports TOML parse errors. (#161)

2.8.0

15 Feb 16:30
f7e880a
Compare
Choose a tag to compare

Added

  • Weeder now supports GHC 9.8. (#142)

2.7.0

17 Aug 17:18
a959f2e
Compare
Choose a tag to compare

Added

  • Weeder now supports type class instances. Type class instances can be marked as roots with the root-instances configuration option. (#126, #133, #136)
  • Weeder now optionally detects uses of types, excluding type family instances. This can be enabled with the unused-types configuration option. (#132)
  • Weeder's analysis now runs in parallel. This can almost halve execution time when given enough cores. Enabled by calling Weeder with -j X or -N. (#137)
  • --write-default-config flag to write and read a default configuration, if no configuration file is found. (#133)

Changed

  • All configuration options now have default values. This can be disabled with the --no-default-fields flag. (#133)
  • Weeder will now use distinct exit codes for certain failures. See README.md for more details. (#134)

2.6.0

08 Jul 16:09
ffa91d2
Compare
Choose a tag to compare

Added

  • Weeder now supports GHC 9.6.

Changed

  • Weeder now uses TOML as a configuration format. Please see Weeder's README for more information on the configuration format.
  • Weeder now sorts weeds in a single file by ascending line number

Fixed

  • Weeder now internally adds declarations once. This shouldn't result in any user visible changes, but may improve performance.

2.5.0

20 Jan 14:43
01c900f
Compare
Choose a tag to compare
  • Weeder has been upgraded to support GHC 9.4 (only). As this changes the format of .hie files accepted, this is a major version bump. Thanks to @tfausak!

2.4.1

05 Jan 11:34
5bc013b
Compare
Choose a tag to compare
  • Build with lens-5.2

2.4.0

22 May 12:08
c58ed2a
Compare
Choose a tag to compare
  • Weeder has been upgraded to support GHC 9.2 (only). As this changes the format of .hie files accepted, this is a major version bump.

2.3.1

21 May 14:17
1d7f6f0
Compare
Choose a tag to compare

This is the last release of weeder compatible with GHC 9.0.

  • Weeder now analyzes top-level pattern bindings. For example, with the following input:

    module Dep (a, b) where
    
    xxx :: Int
    xxx = 3
    
    a, b :: Int
    (a, b) = (xxx, 1)

    ... weeder will determine that both a and b depend on xxx. While this is an over-approximation, it prevents weeder from reporting false positives. For more information, see #92.

  • Corrected a typo in --help (#96).

  • Shorten the help text for --require-hs-files (#97).

  • Allow algebraic-graphs-0.6 (#95).

  • Allow Dhall 1.41 (#99).

  • Allow optparse-applicative-0.17 (#100).

2.3.0

20 Jun 19:44
5e4a9f5
Compare
Choose a tag to compare
  • Switch to GHC 9

2.2.0

20 Jun 19:43
b810f19
Compare
Choose a tag to compare

This will likely be the last Weeder release before GHC 9.

  • Allow configuration of the HIE file extension using the --hie-extension command-line flag
  • Add --require-hs-files switch. If supplied, this switch means Weeder will only consider .hie files where a corresponding .hs file can be found. (#50)
  • Pattern synonyms are now considered (#79)
  • Weeder's output format is now one-line-per-weed (#62)
  • --hie-extension can be used to change the extension used for .hie files (#64)