diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,10 @@
 # Revision history for haskell-lsp-types
 
+## 0.8.0.0 -- 2018-09-08
+
+* Update Hover to be a nullable according to spec
+* Move Lenses into a separate module, `Language.Haskell.LSP.Types.Lens`
+
 ## 0.7.0.0 -- 2018-08-14
 
 * Update CompletionItem
diff --git a/haskell-lsp-types.cabal b/haskell-lsp-types.cabal
--- a/haskell-lsp-types.cabal
+++ b/haskell-lsp-types.cabal
@@ -1,5 +1,5 @@
 name:                haskell-lsp-types
-version:             0.7.0.0
+version:             0.8.0.0
 synopsis:            Haskell library for the Microsoft Language Server Protocol, data types
 
 description:         An implementation of the types to allow language implementors to
@@ -20,6 +20,7 @@
   exposed-modules:     Language.Haskell.LSP.Types
                      , Language.Haskell.LSP.Types.Capabilities
                      , Language.Haskell.LSP.Types.Constants
+                     , Language.Haskell.LSP.Types.Lens
                      , Language.Haskell.LSP.Types.MessageFuncs
                      , Language.Haskell.LSP.Types.Utils
   other-modules:       Language.Haskell.LSP.Types.ClientCapabilities
@@ -31,7 +32,6 @@
                      , Language.Haskell.LSP.Types.Diagnostic
                      , Language.Haskell.LSP.Types.DocumentFilter
                      , Language.Haskell.LSP.Types.FoldingRange
-                     , Language.Haskell.LSP.Types.Lens
                      , Language.Haskell.LSP.Types.List
                      , Language.Haskell.LSP.Types.Location
                      , Language.Haskell.LSP.Types.MarkupContent
diff --git a/src/Language/Haskell/LSP/Types.hs b/src/Language/Haskell/LSP/Types.hs
--- a/src/Language/Haskell/LSP/Types.hs
+++ b/src/Language/Haskell/LSP/Types.hs
@@ -1,6 +1,5 @@
 module Language.Haskell.LSP.Types
   ( module Language.Haskell.LSP.Types.DataTypesJSON
-  , module Language.Haskell.LSP.Types.Lens
   , module Language.Haskell.LSP.Types.CodeAction
   , module Language.Haskell.LSP.Types.Color
   , module Language.Haskell.LSP.Types.Command
@@ -21,7 +20,6 @@
 where
 
 import           Language.Haskell.LSP.Types.DataTypesJSON
-import           Language.Haskell.LSP.Types.Lens
 import           Language.Haskell.LSP.Types.CodeAction
 import           Language.Haskell.LSP.Types.Color
 import           Language.Haskell.LSP.Types.Command
diff --git a/src/Language/Haskell/LSP/Types/DataTypesJSON.hs b/src/Language/Haskell/LSP/Types/DataTypesJSON.hs
--- a/src/Language/Haskell/LSP/Types/DataTypesJSON.hs
+++ b/src/Language/Haskell/LSP/Types/DataTypesJSON.hs
@@ -1729,7 +1729,7 @@
 
 Response
 
-    result: Hover defined as follows:
+    result: Hover | null defined as follows:
 
 /**
  * The result of a hove request.
@@ -1798,8 +1798,8 @@
 deriveJSON lspOptions ''Hover
 
 
-type HoverRequest = RequestMessage ClientMethod TextDocumentPositionParams Hover
-type HoverResponse = ResponseMessage Hover
+type HoverRequest = RequestMessage ClientMethod TextDocumentPositionParams (Maybe Hover)
+type HoverResponse = ResponseMessage (Maybe Hover)
 
 -- ---------------------------------------------------------------------
 {-
diff --git a/src/Language/Haskell/LSP/Types/Message.hs b/src/Language/Haskell/LSP/Types/Message.hs
--- a/src/Language/Haskell/LSP/Types/Message.hs
+++ b/src/Language/Haskell/LSP/Types/Message.hs
@@ -249,17 +249,17 @@
 
 instance A.ToJSON ServerMethod where
   -- Window
-  toJSON WindowShowMessage = A.String "window/showMessage"
+  toJSON WindowShowMessage        = A.String "window/showMessage"
   toJSON WindowShowMessageRequest = A.String "window/showMessageRequest"
-  toJSON WindowLogMessage = A.String "window/logMessage"
-  toJSON TelemetryEvent = A.String "telemetry/event"
+  toJSON WindowLogMessage         = A.String "window/logMessage"
+  toJSON TelemetryEvent           = A.String "telemetry/event"
   -- Client
-  toJSON ClientRegisterCapability = A.String "client/registerCapability"
+  toJSON ClientRegisterCapability   = A.String "client/registerCapability"
   toJSON ClientUnregisterCapability = A.String "client/unregisterCapability"
   -- Workspace
   toJSON WorkspaceWorkspaceFolders = A.String "workspace/workspaceFolders"
-  toJSON WorkspaceConfiguration = A.String "workspace/configuration"
-  toJSON WorkspaceApplyEdit = A.String "workspace/applyEdit"
+  toJSON WorkspaceConfiguration    = A.String "workspace/configuration"
+  toJSON WorkspaceApplyEdit        = A.String "workspace/applyEdit"
   -- Document
   toJSON TextDocumentPublishDiagnostics = A.String "textDocument/publishDiagnostics"
   -- Cancelling
