./lang/py-pygls, Pythonic generic implementation of the Language Server Protocol

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.3.1, Package name: py311-pygls-1.3.1, Maintainer: pkgsrc-users

pygls (pronounced like "pie glass") is a pythonic generic implementation
of the Language Server Protocol for use as a foundation for writing
language servers using Python (e.g. Python, XML, etc.). It allows
you to write your own language server in just a few lines of code.


Required to run:
[devel/py-setuptools] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 44.46 KB

Version history: (Expand)


CVS history: (Expand)


   2024-04-05 12:54:28 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-pygls: update to 1.3.1.

What's Changed

    Typo: Apache License missing dash: Affects PyPI License Declaration by \ 
@WilliamRoyNelson in #435
    Add systemd-language-server to implementations by @psacawa in #436
    Update Implementations.md with Chapel's language server by @DanilaFe in #439
    build: v1.3.1 by @tombh in #444
   2024-02-06 22:45:58 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pygls: updated to 1.3.0

1.3.0

Bug Fixes

Add missing value to pygls.trace.server

CI

Don't let Pyodide test fail the whole build
Don't trigger CI on both push and pull_request

Features

Drop Python 3.7 support
Update dependencies to latest(ish)
Enable debugging of servers in the playground

Miscellaneous Tasks

Update CHANGELOG.md
Update CONTRIBUTORS.md
Cattrs is a direct dependency
Update pytest-asyncio
Add pytest-lsp and lsp-devtools to Implementations.md
Update lsprotocol to 2023.0.1
   2023-12-07 09:43:32 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-pygls: update to 1.2.1.

What's Changed

    chore: clean CHANGELOG by @tombh in #415
    handle ResponseErrors correctly by @dimbleby in #416
    build: v1.2.1 by @tombh in #419
   2023-11-19 17:14:07 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-pygls: update to 1.2.0.

What's Changed

    Remove dependency on typeguard by @karthiknadig in #411
    Simplify vscode-playground setup and fix Python discovery by @alcarney in #374
    chore: pin lsprotocol to 2023.0.0 by @alcarney in #414
    build: v1.2.0 by @tombh in #412
   2023-11-02 09:33:13 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pygls: updated to 1.1.2

1.1.2

Documentation

Correct doc comment for PositionCodec.client_num_units

Miscellaneous Tasks

Update CHANGELOG.md
Update CONTRIBUTORS.md
Split protocol.py into own folder/files

Build

Bump urllib3 from 2.0.6 to 2.0.7
Allow installation with typeguard 4.x
   2023-10-28 21:57:26 by Thomas Klausner | Files touched by this commit (516) | Package updated
Log message:
python/wheel.mk: simplify a lot, and switch to 'installer' for installation

This follows the recommended bootstrap method (flit_core, build, installer).

However, installer installs different files than pip, so update PLISTs
for all packages using wheel.mk and bump their PKGREVISIONs.
   2023-10-20 13:19:08 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-pygls: updated to 1.1.1

v1.1.1

chore: manual changes for v1.1.0 release
build(deps-dev): bump urllib3 from 2.0.5 to 2.0.6
explicit exports from pygls.workspace
fix: prevent AttributeError root_path when no workspace
ci: fix release process
build: v1.1.1
   2023-10-04 23:27:48 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-pygls: updated to 1.1.0

1.1.0

Bug Fixes

Fix broken link and outdated comment
Correctly cast from UTF16 positions
Ensure server commands can be executed
Mypy lints
Error code of JsonRpcInternalError
Only show code action when there's no sum
Don't include trailing whitespace in code action title
'bool' object has no attribute 'resolve_provider'
Computation of formatting and diagnostic provider capabilities

CI

Migrate to Poetry and modernise
Linter for conventional commits
Autogenerate changelog with git-cliff
Automate CONTRIBUTORS.md
Retry Pyodide tests
Test against Python 3.12
Use matrix.python-version in cache key
Update json-extension pipeline
Pin poetry to 1.5.1
Do not install chromium/chromedriver
Enable coverage reporting
Run all lints even when some fail
Increase Pyodide CI retries to 6

Documentation

Use autodoc to document client methods
Update docstrings
Change specification for commit messages
Typo in vscode-playground README.md
Add api docs for servers, protocol and workspace
Align docstring formatting
Handle methods starting with $/
Update links and code snippets
Rename advanced usage to user guide
Instructions for using plain text files with vscode-playground

Features

Add document diagnostic capability
Add workspace symbol resolve
Add workspace diagnostic support
Adds inline value support
Adds type hierarchy request support
Add await syntax support for sending edit request to client
Allow servers to provide NotebookDocumentSyncOptions
Initial support for notebook document syncronisation
Add notebook support to example inlay_hints.py server
Accept PositionEncoding client capability
Support UTF32 ans UTF8 position encoding

Miscellaneous Tasks

Update autogenerated Pygls client
Introduce black formatting
Add .git-blame-ignore-revs file
Delete fountain-vscode-extension
Update README.md
Bump lsprotocol version
Fix deprecation warning, set chrome path
Disable body-max-line-length check
Add .readthedocs.yaml
Strict types in uris.py and workspace.py
Move workspace/doc/position into own files
Fix mypy types
Maintain Workspace backwards compat
Fix use of deprecated methods in tests/test_language_server.py

Refactor

Move example json-server to examples/servers
Rename json-vscode-extension/ -> vscode-playground
Simplify end-to-end test client fixture definition
Rename Client -> JsonRPCClient
Rename LanguageClient -> BaseLanguageClient
Rename <verb>_document to <verb>_text_document
Expose workspace via a property
Server Position class
Rename server Position to PositionCodec, instantiate it in Workspace
Reference types via types module
Make default argument mandatory, add type annotations

Testing

Test that the client provided token is used
Remove a useless sleep
Test cases of server initiated progress
Base Pyodide wheel deps off poetry.lock

Build

Bump semver in /examples/fountain-vscode-extension
Bump semver in /examples/json-vscode-extension
Bump word-wrap in /examples/json-vscode-extension
Lock min Python version to 3.7.9
Cache specific Python minor version
Bump lsprotocol to 2023.0.0b1
Release v1.1.0

Json-extension

Support cancellation in progress example

Progress

Support work done progress cancellation from client

Server

Add a type annotation to help completions in editor

Added

Add LanguageClient with LSP methods autogenerated from type annotations in lsprotocol
Add base JSON-RPC Client with support for running servers in a subprocess and \ 
communicating over stdio.
Support work done progress cancel
Add support for textDocument/inlayHint and inlayHint/resolve requests

Fixed

pygls no longer overrides the event loop for the current thread when given an \ 
explicit loop to use.
Fixed MethodTypeNotRegisteredError when registering a TEXT_DOCUMENT_DID_SAVE \ 
feature with options.
Fixed detection of LanguageServer type annotations when using string-based \ 
annotations.