haskell-lsp-types 0.17.0.0 → 0.18.0.0
raw patch · 6 files changed
+62/−11 lines, 6 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Language.Haskell.LSP.Types.Lens: instance Language.Haskell.LSP.Types.Lens.HasMoreTriggerCharacter Language.Haskell.LSP.Types.DataTypesJSON.DocumentOnTypeFormattingOptions (GHC.Maybe.Maybe [GHC.Base.String])
+ Language.Haskell.LSP.Types: ContentModified :: ErrorCode
+ Language.Haskell.LSP.Types: [$sel:_allCommitCharacters:CompletionOptions] :: CompletionOptions -> Maybe [String]
+ Language.Haskell.LSP.Types: [$sel:_retriggerCharacters:SignatureHelpOptions] :: SignatureHelpOptions -> Maybe [String]
+ Language.Haskell.LSP.Types.Lens: allCommitCharacters :: HasAllCommitCharacters s a => Lens' s a
+ Language.Haskell.LSP.Types.Lens: class HasAllCommitCharacters s a | s -> a
+ Language.Haskell.LSP.Types.Lens: class HasRetriggerCharacters s a | s -> a
+ Language.Haskell.LSP.Types.Lens: instance Language.Haskell.LSP.Types.Lens.HasAllCommitCharacters Language.Haskell.LSP.Types.DataTypesJSON.CompletionOptions (GHC.Maybe.Maybe [GHC.Base.String])
+ Language.Haskell.LSP.Types.Lens: instance Language.Haskell.LSP.Types.Lens.HasMoreTriggerCharacter Language.Haskell.LSP.Types.DataTypesJSON.DocumentOnTypeFormattingOptions (GHC.Maybe.Maybe [Data.Text.Internal.Text])
+ Language.Haskell.LSP.Types.Lens: instance Language.Haskell.LSP.Types.Lens.HasRetriggerCharacters Language.Haskell.LSP.Types.DataTypesJSON.SignatureHelpOptions (GHC.Maybe.Maybe [GHC.Base.String])
+ Language.Haskell.LSP.Types.Lens: instance Language.Haskell.LSP.Types.Lens.HasToken Language.Haskell.LSP.Types.Window.WorkDoneProgressCancelParams Language.Haskell.LSP.Types.Progress.ProgressToken
+ Language.Haskell.LSP.Types.Lens: instance Language.Haskell.LSP.Types.Lens.HasToken Language.Haskell.LSP.Types.Window.WorkDoneProgressCreateParams Language.Haskell.LSP.Types.Progress.ProgressToken
+ Language.Haskell.LSP.Types.Lens: retriggerCharacters :: HasRetriggerCharacters s a => Lens' s a
+ Language.Haskell.LSP.Types.MessageFuncs: fmClientPrepareRenameRequest :: LspId -> TextDocumentPositionParams -> PrepareRenameRequest
- Language.Haskell.LSP.Types: CompletionOptions :: Maybe Bool -> Maybe [String] -> CompletionOptions
+ Language.Haskell.LSP.Types: CompletionOptions :: Maybe Bool -> Maybe [String] -> Maybe [String] -> CompletionOptions
- Language.Haskell.LSP.Types: DocumentOnTypeFormattingOptions :: Text -> Maybe [String] -> DocumentOnTypeFormattingOptions
+ Language.Haskell.LSP.Types: DocumentOnTypeFormattingOptions :: Text -> Maybe [Text] -> DocumentOnTypeFormattingOptions
- Language.Haskell.LSP.Types: SignatureHelpOptions :: Maybe [String] -> SignatureHelpOptions
+ Language.Haskell.LSP.Types: SignatureHelpOptions :: Maybe [String] -> Maybe [String] -> SignatureHelpOptions
- Language.Haskell.LSP.Types: [$sel:_moreTriggerCharacter:DocumentOnTypeFormattingOptions] :: DocumentOnTypeFormattingOptions -> Maybe [String]
+ Language.Haskell.LSP.Types: [$sel:_moreTriggerCharacter:DocumentOnTypeFormattingOptions] :: DocumentOnTypeFormattingOptions -> Maybe [Text]
- Language.Haskell.LSP.Types: type CodeLensResolveRequest = RequestMessage ClientMethod CodeLens (List CodeLens)
+ Language.Haskell.LSP.Types: type CodeLensResolveRequest = RequestMessage ClientMethod CodeLens CodeLens
- Language.Haskell.LSP.Types: type CodeLensResolveResponse = ResponseMessage (List CodeLens)
+ Language.Haskell.LSP.Types: type CodeLensResolveResponse = ResponseMessage CodeLens
Files
- ChangeLog.md +8/−0
- haskell-lsp-types.cabal +1/−1
- src/Language/Haskell/LSP/Types/DataTypesJSON.hs +46/−10
- src/Language/Haskell/LSP/Types/Lens.hs +2/−0
- src/Language/Haskell/LSP/Types/Message.hs +4/−0
- src/Language/Haskell/LSP/Types/MessageFuncs.hs +1/−0
ChangeLog.md view
@@ -1,5 +1,13 @@ # Revision history for haskell-lsp-types +## 0.18.0.0 -- 2019-11-17++* Fix response type for CodeLensResolve, add the ContentModified error+ code (@SquidDev)+* Add missing fmClientPrepareRenameRequest to MessageFuncs export (@alanz)+* Rework Core.Options and infer all server capabilities from handlers (@bubba)+* Generate lenses for WorkDoneProgress data types (@alanz)+ ## 0.17.0.0 -- 2019-10-18 * Update progress reporting to match the LSP 3.15 specification (@cocreature)
haskell-lsp-types.cabal view
@@ -1,5 +1,5 @@ name: haskell-lsp-types-version: 0.17.0.0+version: 0.18.0.0 synopsis: Haskell library for the Microsoft Language Server Protocol, data types description: An implementation of the types to allow language implementors to
src/Language/Haskell/LSP/Types/DataTypesJSON.hs view
@@ -211,13 +211,32 @@ * The characters that trigger completion automatically. */ triggerCharacters?: string[];++ /**+ * The list of all possible characters that commit a completion. This field can be used+ * if clients don't support individual commmit characters per completion item. See+ * `ClientCapabilities.textDocument.completion.completionItem.commitCharactersSupport`.+ *+ * If a server provides both `allCommitCharacters` and commit characters on an individual+ * completion item the once on the completion item win.+ *+ * @since 3.2.0+ */+ allCommitCharacters?: string[]; } -} data CompletionOptions = CompletionOptions- { _resolveProvider :: Maybe Bool- , _triggerCharacters :: Maybe [String]+ { _resolveProvider :: Maybe Bool+ -- | The characters that trigger completion automatically.+ , _triggerCharacters :: Maybe [String]+ -- | The list of all possible characters that commit a completion. This field can be used+ -- if clients don't support individual commmit characters per completion item. See+ -- `_commitCharactersSupport`.+ -- Since LSP 3.2.0+ -- @since 0.18.0.0+ , _allCommitCharacters :: Maybe [String] } deriving (Read,Show,Eq) deriveJSON lspOptions {omitNothingFields = True } ''CompletionOptions@@ -232,11 +251,28 @@ * The characters that trigger signature help automatically. */ triggerCharacters?: string[];+ /**+ * List of characters that re-trigger signature help.+ *+ * These trigger characters are only active when signature help is already showing. All trigger characters+ * are also counted as re-trigger characters.+ *+ * @since 3.15.0+ */ -} data SignatureHelpOptions = SignatureHelpOptions- { _triggerCharacters :: Maybe [String]+ { -- | The characters that trigger signature help automatically.+ _triggerCharacters :: Maybe [String]++ -- | List of characters that re-trigger signature help.+ -- These trigger characters are only active when signature help is already showing. All trigger characters+ -- are also counted as re-trigger characters.+ --+ -- Since LSP 3.15.0+ -- @since 0.18.0.0+ , _retriggerCharacters :: Maybe [String] } deriving (Read,Show,Eq) deriveJSON lspOptions ''SignatureHelpOptions@@ -304,7 +340,7 @@ data DocumentOnTypeFormattingOptions = DocumentOnTypeFormattingOptions { _firstTriggerCharacter :: Text- , _moreTriggerCharacter :: Maybe [String]+ , _moreTriggerCharacter :: Maybe [Text] } deriving (Read,Show,Eq) deriveJSON lspOptions ''DocumentOnTypeFormattingOptions@@ -327,7 +363,7 @@ data DocumentLinkOptions = DocumentLinkOptions- { -- |Document links have a resolve provider as well.+ { -- | Document links have a resolve provider as well. _resolveProvider :: Maybe Bool } deriving (Show, Read, Eq) @@ -352,7 +388,7 @@ data RenameOptions = RenameOptionsStatic Bool | RenameOptions- { -- |Renames should be checked and tested before being executed.+ { -- | Renames should be checked and tested before being executed. _prepareProvider :: Maybe Bool } deriving (Show, Read, Eq) @@ -451,7 +487,7 @@ -- | Will save wait until requests are sent to the server. , _willSaveWaitUntil :: Maybe Bool - -- |Save notifications are sent to the server.+ -- | Save notifications are sent to the server. , _save :: Maybe SaveOptions } deriving (Show, Read, Eq) @@ -673,7 +709,7 @@ data WorkspaceOptions = WorkspaceOptions- { -- |The server supports workspace folder. Since LSP 3.6+ { -- | The server supports workspace folder. Since LSP 3.6 -- -- @since 0.7.0.0 _workspaceFolders :: Maybe WorkspaceFolderOptions@@ -2283,8 +2319,8 @@ -} -type CodeLensResolveRequest = RequestMessage ClientMethod CodeLens (List CodeLens)-type CodeLensResolveResponse = ResponseMessage (List CodeLens)+type CodeLensResolveRequest = RequestMessage ClientMethod CodeLens CodeLens+type CodeLensResolveResponse = ResponseMessage CodeLens -- --------------------------------------------------------------------- {-
src/Language/Haskell/LSP/Types/Lens.hs view
@@ -197,3 +197,5 @@ makeFieldsNoPrefix ''WorkDoneProgressBeginParams makeFieldsNoPrefix ''WorkDoneProgressReportParams makeFieldsNoPrefix ''WorkDoneProgressEndParams+makeFieldsNoPrefix ''WorkDoneProgressCancelParams+makeFieldsNoPrefix ''WorkDoneProgressCreateParams
src/Language/Haskell/LSP/Types/Message.hs view
@@ -322,6 +322,7 @@ // Defined by the protocol. export const RequestCancelled: number = -32800;+ export const ContentModified: number = -32801; } -} @@ -335,6 +336,7 @@ | ServerNotInitialized | UnknownErrorCode | RequestCancelled+ | ContentModified -- ^ Note: server error codes are reserved from -32099 to -32000 deriving (Read,Show,Eq) @@ -349,6 +351,7 @@ toJSON ServerNotInitialized = A.Number (-32002) toJSON UnknownErrorCode = A.Number (-32001) toJSON RequestCancelled = A.Number (-32800)+ toJSON ContentModified = A.Number (-32801) instance A.FromJSON ErrorCode where parseJSON (A.Number (-32700)) = pure ParseError@@ -361,6 +364,7 @@ parseJSON (A.Number (-32002)) = pure ServerNotInitialized parseJSON (A.Number (-32001)) = pure UnknownErrorCode parseJSON (A.Number (-32800)) = pure RequestCancelled+ parseJSON (A.Number (-32801)) = pure ContentModified parseJSON _ = mempty -- -------------------------------------
src/Language/Haskell/LSP/Types/MessageFuncs.hs view
@@ -59,6 +59,7 @@ , fmClientDocumentLinkRequest , fmClientDocumentLinkResolveRequest , fmClientRenameRequest+ , fmClientPrepareRenameRequest ) where import qualified Data.Aeson as J