# Weeder 2.6 released, supporting GHC 9.6

**URL:** <https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909>\
**Category:** Announcements\
**Created:** [July 8, 2023, 4:11pm UTC](https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909 "2023-07-08T16:11:52Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![ocharles](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/ocharles/32/102_2.png) [@ocharles](https://discourse.haskell.org/u/ocharles)\
**Post date:** [July 8, 2023, 4:11pm UTC](https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909/1 "2023-07-08T16:11:52Z")

</div>

Hi all!

I’m happy to annouce that [Weeder 2.6.0](https://github.com/ocharles/weeder/releases/tag/2.6.0) has been released. Weeder is a Haskell utility to help find unused Haskell declarations over an entire project. As always, you can install Weeder from either Github or Hackage. The changes in this release are:

### Added

- Weeder now supports GHC 9.6.

### Changed

- Weeder now uses [TOML](https://toml.io) 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.

Also, in the next week or two we plan to release Weeder 2.7, which will support detecting unused type classes and type class instances. We’d love additional testing, so if you’re interested please try [this branch](https://github.com/ocharles/weeder/pull/126).

Happy weeding!

---

<div class="post-metadata">

**Author:** ![george.fst](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/george.fst/32/4933_2.png) [@george.fst](https://discourse.haskell.org/u/george.fst)\
**Post date:** [July 11, 2023, 10:28pm UTC](https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909/2 "2023-07-11T22:28:19Z")

</div>

Since it’s quite a big change, it would have been nice if the release notes mentioned the motivation for the switch of configuration formats. Anyway, it seems [it’s down to the dependency footprint](https://github.com/ocharles/weeder/pull/117). Seems reasonable, I guess.

---

<div class="post-metadata">

**Author:** ![Jappie](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/jappie/32/5394_2.png) [@Jappie](https://discourse.haskell.org/u/Jappie)\
**Post date:** [July 11, 2023, 11:41pm UTC](https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909/3 "2023-07-11T23:41:40Z")

</div>

please note there is an automated script to move to the new format: [Configuration transition · Issue #130 · ocharles/weeder · GitHub](https://github.com/ocharles/weeder/issues/130#issuecomment-1628564940)

---

<div class="post-metadata">

**Author:** ![ocharles](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/ocharles/32/102_2.png) [@ocharles](https://discourse.haskell.org/u/ocharles)\
**Post date:** [July 12, 2023, 7:18am UTC](https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909/4 "2023-07-12T07:18:28Z")

</div>

Yes, partly the dependency footprint, partly an easier path to get us to GHC 9.6, but also partly because Dhall was overkill for what Weeder needs (and is more novel than TOML). I understand it’s a fairly major breaking change, but my hope is that it doesn’t cause _too_ much friction.

---

<div class="post-metadata">

**Author:** ![ocharles](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/ocharles/32/102_2.png) [@ocharles](https://discourse.haskell.org/u/ocharles)\
**Post date:** [July 13, 2023, 1:53pm UTC](https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909/6 "2023-07-13T13:53:35Z")

</div>

Currently no, but this is something I’d like, to also help shrink the public API. Could you raise an issue for this?

---

<div class="post-metadata">

**Author:** ![janus](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/janus/32/1060_2.png) [@janus](https://discourse.haskell.org/u/janus)\
**Post date:** [July 15, 2023, 4:39pm UTC](https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909/8 "2023-07-15T16:39:24Z")

</div>

I saw that there is a Haskell Summer of Code project titled “Teaching Weeder about Type Class Instances”. Is that work still underway? Is the [MR 10701 for GHC](https://gitlab.haskell.org/ghc/ghc/-/merge_requests/10701) part of that?

---

<div class="post-metadata">

**Author:** ![taylorfausak](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/taylorfausak/32/54_2.png) [@taylorfausak](https://discourse.haskell.org/u/taylorfausak)\
**Post date:** [July 15, 2023, 7:00pm UTC](https://discourse.haskell.org/t/weeder-2-6-released-supporting-ghc-9-6/6909/9 "2023-07-15T19:00:59Z")

</div>

It’s already been merged!

> Also, in the next week or two we plan to release Weeder 2.7, which will support detecting unused type classes and type class instances. We’d love additional testing, so if you’re interested please try [this branch](https://github.com/ocharles/weeder/pull/126).
