diff --git a/hls-explicit-imports-plugin.cabal b/hls-explicit-imports-plugin.cabal
--- a/hls-explicit-imports-plugin.cabal
+++ b/hls-explicit-imports-plugin.cabal
@@ -1,33 +1,36 @@
-cabal-version: 2.2
-name:          hls-explicit-imports-plugin
-version:       1.0.0.0
-synopsis:      Explicit imports plugin for Haskell Language Server
-license:       Apache-2.0
-license-file:  LICENSE
-author:        Pepe Iborra
-maintainer:    pepeiborra@gmail.com
-category:      Development
-build-type:    Simple
+cabal-version:      2.2
+name:               hls-explicit-imports-plugin
+version:            1.0.0.1
+synopsis:           Explicit imports plugin for Haskell Language Server
+license:            Apache-2.0
+license-file:       LICENSE
+author:             Pepe Iborra
+maintainer:         pepeiborra@gmail.com
+category:           Development
+build-type:         Simple
 extra-source-files:
-  LICENSE
   include/ghc-api-version.h
+  LICENSE
 
 library
-  exposed-modules:  Ide.Plugin.ExplicitImports
-  hs-source-dirs:   src
-  build-depends:    aeson
-               ,    base           >=4.12 && <5
-               ,    containers
-               ,    deepseq
-               ,    lsp-types
-               ,    lsp
-               ,    hls-plugin-api ^>= 1.0.0.0
-               ,    ghc
-               ,    ghcide         ^>= 1.0.0.0
-               ,    shake
-               ,    text
-               ,    unordered-containers
+  exposed-modules:    Ide.Plugin.ExplicitImports
+  hs-source-dirs:     src
+  build-depends:
+    , aeson
+    , base                  >=4.12    && <5
+    , containers
+    , deepseq
+    , ghc
+    , ghcide                ^>=1.2.0.0
+    , hls-plugin-api        ^>=1.1
+    , lsp
+    , lsp-types
+    , shake
+    , text
+    , unordered-containers
 
-  default-language: Haskell2010
-  include-dirs:     include
-  default-extensions: DataKinds, TypeOperators
+  default-language:   Haskell2010
+  include-dirs:       include
+  default-extensions:
+    DataKinds
+    TypeOperators
diff --git a/src/Ide/Plugin/ExplicitImports.hs b/src/Ide/Plugin/ExplicitImports.hs
--- a/src/Ide/Plugin/ExplicitImports.hs
+++ b/src/Ide/Plugin/ExplicitImports.hs
@@ -1,43 +1,42 @@
-{-# LANGUAGE CPP #-}
-{-# LANGUAGE DeriveAnyClass #-}
-{-# LANGUAGE DeriveGeneric #-}
-{-# LANGUAGE DerivingStrategies #-}
+{-# LANGUAGE CPP                   #-}
+{-# LANGUAGE DeriveAnyClass        #-}
+{-# LANGUAGE DeriveGeneric         #-}
+{-# LANGUAGE DerivingStrategies    #-}
 {-# LANGUAGE DuplicateRecordFields #-}
-{-# LANGUAGE NamedFieldPuns #-}
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE RecordWildCards #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE NamedFieldPuns        #-}
+{-# LANGUAGE OverloadedStrings     #-}
+{-# LANGUAGE RecordWildCards       #-}
+{-# LANGUAGE ScopedTypeVariables   #-}
+{-# LANGUAGE TypeFamilies          #-}
 
 #include "ghc-api-version.h"
 
 module Ide.Plugin.ExplicitImports (descriptor) where
 
-import Control.DeepSeq
-import Control.Monad.IO.Class
-import Data.Aeson (ToJSON (toJSON), Value (Null))
-import Data.Aeson.Types (FromJSON)
-import qualified Data.HashMap.Strict as HashMap
-import Data.IORef (readIORef)
-import qualified Data.Map.Strict as Map
-import Data.Maybe (catMaybes, fromMaybe)
-import qualified Data.Text as T
-import Development.IDE
-import Development.IDE.Core.PositionMapping
-import Development.IDE.GHC.Compat
-import Development.Shake.Classes
-import GHC.Generics (Generic)
-import Ide.PluginUtils ( mkLspCommand )
-import Ide.Types
-import Language.LSP.Types
-import Language.LSP.Server
-import PrelNames (pRELUDE)
-import RnNames
-  ( findImportUsage,
-    getMinimalImports,
-  )
-import TcRnMonad (initTcWithGbl)
-import TcRnTypes (TcGblEnv (tcg_used_gres))
+import           Control.DeepSeq
+import           Control.Monad.IO.Class
+import           Data.Aeson                           (ToJSON (toJSON),
+                                                       Value (Null))
+import           Data.Aeson.Types                     (FromJSON)
+import qualified Data.HashMap.Strict                  as HashMap
+import           Data.IORef                           (readIORef)
+import qualified Data.Map.Strict                      as Map
+import           Data.Maybe                           (catMaybes, fromMaybe)
+import qualified Data.Text                            as T
+import           Development.IDE
+import           Development.IDE.Core.PositionMapping
+import           Development.IDE.GHC.Compat
+import           Development.Shake.Classes
+import           GHC.Generics                         (Generic)
+import           Ide.PluginUtils                      (mkLspCommand)
+import           Ide.Types
+import           Language.LSP.Server
+import           Language.LSP.Types
+import           PrelNames                            (pRELUDE)
+import           RnNames                              (findImportUsage,
+                                                       getMinimalImports)
+import           TcRnMonad                            (initTcWithGbl)
+import           TcRnTypes                            (TcGblEnv (tcg_used_gres))
 
 importCommandId :: CommandId
 importCommandId = "ImportLensCommand"
@@ -46,7 +45,7 @@
 descriptor :: PluginId -> PluginDescriptor IdeState
 descriptor plId =
   (defaultPluginDescriptor plId)
-    { 
+    {
       -- This plugin provides a command handler
       pluginCommands = [importLensCommand],
       -- This plugin defines a new rule
@@ -140,12 +139,14 @@
               _title = "Make all imports explicit"
               _kind = Just CodeActionQuickFix
               _command = Nothing
-              _edit = Just WorkspaceEdit {_changes, _documentChanges}
+              _edit = Just WorkspaceEdit {_changes, _documentChanges, _changeAnnotations}
               _changes = Just $ HashMap.singleton _uri $ List edits
               _documentChanges = Nothing
               _diagnostics = Nothing
               _isPreferred = Nothing
               _disabled = Nothing
+              _xdata = Nothing
+              _changeAnnotations = Nothing
           return $ Right $ List [caExplicitImports | not (null edits)]
   | otherwise =
     return $ Right $ List []
@@ -233,13 +234,13 @@
 -- | Given an import declaration, generate a code lens unless it has an
 -- explicit import list or it's qualified
 generateLens :: PluginId -> Uri -> TextEdit -> IO (Maybe CodeLens)
-generateLens pId uri importEdit@TextEdit {_range} = do
+generateLens pId uri importEdit@TextEdit {_range, _newText} = do
   -- The title of the command is just the minimal explicit import decl
-  let title = _newText importEdit
+  let title = _newText
       -- the code lens has no extra data
       _xdata = Nothing
       -- an edit that replaces the whole declaration with the explicit one
-      edit = WorkspaceEdit (Just editsMap) Nothing
+      edit = WorkspaceEdit (Just editsMap) Nothing Nothing
       editsMap = HashMap.fromList [(uri, List [importEdit])]
       -- the command argument is simply the edit
       _arguments = Just [toJSON $ ImportCommandParams edit]
