PackageTrack
Sign in Get early access

tower-lsp-macros

Internal procedural macros for tower-lsp

0.9.0 7.0M downloads/mo #3779 most downloaded on crates.io ebkalderon/tower-lsp

What this package is like to depend on

Last release 3 years ago

no release in 18 months

Release timing varies

gaps range from 2 weeks to 10 months

Nearly every release is documented

notes for 10 of 10 stable releases

1 version withdrawn

withdrawn after publishing

6 years old

11 releases · first in 2020

0 releases in the last 12 months

see the full history below

Release timeline

11 releases · Aug 2020 to Aug 2023
2021 2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 11
  1. 0.9.0 11 Aug 2023
    Release notes

    Added

    • Add info!() message when server initializes to be consistent with the existing info!() message that is emitted when the server exits.
    • Implement support for the following client-to-server messages:
      • textDocument/references
      • textDocument/documentLink
      • documentLink/resolve
      • textDocument/rename
      • textDocument/prepareRename
    • Implement support for the following server-to-client messages:
      • window/showMessageRequest
      • workspace/workspaceFolders
      • workspace/configuration

    Changed

    • Improve LSP message encoding efficiency (PR #126).
    • Reduce chattiness of trace!() logs (PR #130).
    • Change all notification trait methods to async fn (PR #131).
    • Implement proper server-to-client request routing (PRs #134 #135).
    • Rename Printer to Client.
    • Change Client::apply_edit() to return Result<ApplyWorkspaceEditResponse>.
    • Change Client::register_capability() to return Result<()>.
    • Change Client::unregister_capability() to return Result<()>.

    Removed

    • Remove redundant serialization steps from Client (PR #129).
    Open source →
  2. 0.8.0 28 Feb 2023
    Release notes

    Added

    • Implement support for the following client-to-server messages:
      • textDocument/willSave
      • completionItem/resolve
      • textDocument/documentSymbol
      • textDocument/codeAction
      • textDocument/codeLens
      • codeLens/resolve
      • textDocument/formatting

    Changed

    • LspService::call() stops serving requests after exit notification, meaning there is no longer a need for ExitReceiver::run_until_exit and the Server::serve() async method can now be awaited directly (PR #117).
    • Return Option<String> as service response type (PR #116).
    • Disable unused nom features for a hopefully lighter build (PR #112).
    • Link to current version of LSP specification in doc comments (PR #122).

    Fixed

    • Correctly handle backpressure using Service::poll_ready() (PR #117).

    Removed

    • Remove ExitReceiver type and LspService::close_handle() method (PR #117).
    Open source →
  3. 0.7.0 15 Jan 2023
    Release notes

    Added

    • Add default implementations to all non-required LanguageServer methods.
    • Add support for emitting custom notifications to clients (PR #99).
    • Implement support for the following client-to-server messages:
      • textDocument/signatureHelp
      • textDocument/implementation

    Changed

    • Bump minimum supported Rust version to 1.39.0.
    • Convert to std::future and async/await (PR #101).
    • Update futures crate from 0.1.28 to 0.3.
    • Update lsp-types crate from 0.68.0 to 0.70.
    • Update tokio crate from 0.1.12 to 0.2.
    • Update tower-service crate from 0.2.0 to 0.3.

    Fixed

    • Fix some incorrect links in doc comments.
    Open source →
  4. 0.6.0 11 Mar 2022
    Release notes

    Added

    • Implement support for the following client-to-server messages:
      • textDocument/declaration
      • textDocument/definition
      • textDocument/typeDefinition

    Changed

    • Update lsp-types crate from 0.63.1 to 0.68.0.
    Open source →
  5. 0.5.0 14 Feb 2022
    Release notes

    Added

    • Add support for Language Server Protocol 3.15.

    Changed

    • Update lsp-types crate from 0.61.0 to 0.63.1.
    Open source →
  6. 0.4.2 11 Feb 2022 withdrawn

    Nothing published for this version

  7. 0.4.1 21 May 2021
    Release notes

    Changed

    • Update jsonrpc-core crate from 14.0 to 14.0.5.
    • Update jsonrpc-derive crate from 14.0 to 14.0.5.
    • Update log crate from 0.4.7 to 0.4.8.
    • Update serde crate from 1.0.99 to 1.0.103.
    • Update tokio-executor crate from 0.1.8 to 0.1.9.
    • Update env_logger crate from 0.7.0 to 0.7.1.

    Fixed

    • Correctly handle LSP requests containing incomplete UTF-8 (PR #66).
    Open source →
  8. 0.4.0 20 May 2021
    Release notes

    Added

    • Implement support for textDocument/completion request.

    Changed

    • Expose Printer in LanguageServer::initialize().
    • Update env_logger crate from 0.6.2 to 0.7.0.
    • Update lsp-types crate from 0.60.0 to 0.61.0.

    Fixed

    • Allow window/logMessage, window/showMessage, and telemetry/event server-to-client notifications in initialize request (PR #48).
    • Update links to the LSP specification website to point to the new URL.
    Open source →
  9. 0.3.0 20 Aug 2020
    Release notes

    Added

    • Add support for decoding the optional Content-Type field in messages.
    • Implement support for the following client-to-server messages:
      • workspace/didChangeWorkspaceFolders
      • workspace/didChangeConfiguration
      • workspace/didChangeWatchedFiles
      • workspace/symbol
      • workspace/executeCommand
    • Implement support for the following server-to-client messages:
      • telemetry/event
      • client/registerCapability
      • client/unregisterCapability
      • workspace/applyEdit

    Changed

    • Bump minimum Rust version to 1.34.0.
    • Rename highlight() to document_highlight() to better match the specification.
    • Make all notification methods into provided methods (PR #34).
    • Change LspService request type from String to Incoming (PR #28).
    • Update Server to spawn services with Incoming request type.
    • Use env_logger to print log messages in examples.

    Fixed

    • Fix broken doc link to textDocument/didChange in LanguageServer trait.
    Open source →
  10. 0.2.0 11 Aug 2020
    Release notes

    Added

    • Add ExitedError for when calling LspService after it has already exited.

    Changed

    • Language server now returns server error code -32002 if any method is called before initialize request is received, as per the spec.
    • LspService sets Service::Error to ExitedError.
    • Server can now accept any service where Service::Error is convertible to Box<dyn Error + Send + Sync>. This enables compatibility with most Tower middleware.
    • Retain error or success from future in ExitReceiver::run_until_exit().
    • Remove 'static bounds on some Server and ExitReceiver methods.
    Open source →
  11. 0.1.0 09 Aug 2020
    Release notes

    Added

    • Initial crate release.
    • Implement support for the following message types:
      • initialize
      • initialized
      • shutdown
      • exit
      • window/showMessage
      • window/logMessage
      • textDocument/publishDiagnostics
      • textDocument/didOpen
      • textDocument/didChange
      • textDocument/didSave
      • textDocument/didClose
      • textDocument/hover
      • textDocument/documentHighlight
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive