Skip to content
This repository was archived by the owner on Nov 7, 2020. It is now read-only.

kowainik/smuggler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b2ddcda Β· Nov 2, 2019

History

40 Commits
Nov 2, 2019
Jul 22, 2018
Sep 10, 2019
Oct 31, 2018
Sep 10, 2019
Sep 30, 2018
Sep 10, 2019
Sep 10, 2019
Sep 30, 2018
Jun 14, 2018
Sep 10, 2019
Sep 10, 2019
Sep 10, 2019

Repository files navigation

smuggler

smuggler-logo Hackage Build MPL-2.0 license

β€œSo many people consider their work a daily punishment. Whereas I love my work as a translator. Translation is a journey over a sea from one shore to the other. Sometimes I think of myself as a smuggler: I cross the frontier of language with my booty of words, ideas, images, and metaphors.”

― Amara Lakhous, Clash of Civilizations Over an Elevator in Piazza Vittorio

Haskell Source Plugin which removes unused imports automatically.

How to use

Add smuggler to the dependencies of your project. Then add the following compiler options:

-fplugin=Smuggler.Plugin

Lovely addition to this package is that it automatically supports on-the-fly feature if you use it with ghcid. Smuggler doesn't perform file changes when there are no unused imports. So you can just run ghcid as usual:

ghcid --command='cabal repl'

For contributors

Requirements:

  • ghc-8.6.5
  • cabal >= 3.0 or stack >= 2.0

Cabal: How to build?

cabal update
cabal build

Stack: How to build?

stack build

Run tests

cabal test --enable-tests