Repository: galaxyproject/galaxy-language-server (language: python)

Issue:
Prepare release v0.12.0
## Server

- [x] Check/update dependencies
- [x] Update server changelog
- [x] Update server setup.py version

## Extension

- [x] Check/update dependencies
- [x] Update client changelog
- [x] Update client package.json version
- [x] Update client GALAXY_LS_VERSION

## Release

- [x] Review/update readmes
- [ ] Create tag


Discussion / hints:

Fix patch:
diff --git a/client/CHANGELOG.md b/client/CHANGELOG.md
index 6520c26..b1a233d 100644
--- a/client/CHANGELOG.md
+++ b/client/CHANGELOG.md
@@ -1,5 +1,15 @@
 # Galaxy Tools (VS Code Extension) Changelog
 
+## [0.12.0] - 2023-10-14
+
+### Added
+
+-   Support for Document Outline via Document Symbols Provider ([#247](https://github.com/galaxyproject/galaxy-language-server/pull/247)).
+
+### Changed
+
+-   Updated Galaxy Language Server [v0.12.0](./server/CHANGELOG.md#0120)
+
 ## [0.11.0] - 2023-08-30
 
 ### Added
diff --git a/client/README.md b/client/README.md
index 1f32768..0bd8efa 100644
--- a/client/README.md
+++ b/client/README.md
@@ -35,7 +35,8 @@ Since version `0.4.0` you can use some of the cool features of [planemo](https:/
     -   [Run planemo tests in the Test Explorer](#run-planemo-tests-in-the-test-explorer)
     -   [Improved macros support](#improved-macros-support)
     -   [Extract macro](#extract-macro)
-    -   [Full Galaxy tool linter integration](#document-validation) _New feature!_ ✨
+    -   [Full Galaxy tool linter integration](#document-validation)
+    -   [Document Outline](#document-outline) _New feature!_ ✨
 
 # Installation
 
@@ -188,3 +189,9 @@ There are also a lot of features around macros auto-completion. You can now navi
 You can select (a complete) XML element and then extract it to a local macro (directly in the tool wrapper) or into an external macro file. If there are several imported macro files, you can choose where to put them or if there is no imported file it will be created and imported directly.
 
 ![Demo feature expanded macros](../assets/feature.extract.macro.gif)
+
+## Document Outline
+
+You can now see a document outline of the currently opened tool document. This is especially useful when working with large tool documents. You can navigate to the different sections of the document in a quick and convenient way.
+
+![Demo feature document outline](../assets/feature.document.outline.gif)
diff --git a/client/package.json b/client/package.json
index 1973288..765b94f 100644
--- a/client/package.json
+++ b/client/package.json
@@ -5,7 +5,7 @@
   "author": "davelopez",
   "publisher": "davelopez",
   "license": "Apache-2.0",
-  "version": "0.11.0",
+  "version": "0.12.0",
   "preview": true,
   "repository": {
     "type": "git",
diff --git a/client/src/constants.ts b/client/src/constants.ts
index bf3c840..2196761 100644
--- a/client/src/constants.ts
+++ b/client/src/constants.ts
@@ -3,7 +3,7 @@ export namespace Constants {
     export const LS_VENV_NAME = "glsenv";
     export const GALAXY_LS_PACKAGE = "galaxy-language-server";
     export const GALAXY_LS = "galaxyls";
-    export const GALAXY_LS_VERSION = "0.11.0";
+    export const GALAXY_LS_VERSION = "0.12.0";
     export const LANGUAGE_ID = "galaxytool";
     export const TOOL_DOCUMENT_EXTENSION = "xml";
 
diff --git a/server/CHANGELOG.md b/server/CHANGELOG.md
index ddcb6f6..3cd5351 100644
--- a/server/CHANGELOG.md
+++ b/server/CHANGELOG.md
@@ -1,5 +1,11 @@
 # Galaxy Language Server Changelog
 
+## [0.12.0] - 2023-10-14
+
+### Added
+
+- Document Symbol provider ([#247](https://github.com/galaxyproject/galaxy-language-server/pull/247)).
+
 ## [0.11.0] - 2023-08-30
 
 ### Fixed
diff --git a/server/galaxyls/services/context.py b/server/galaxyls/services/context.py
index 2733f4c..8c505e1 100644
--- a/server/galaxyls/services/context.py
+++ b/server/galaxyls/services/context.py
@@ -6,8 +6,10 @@
     Optional,
 )
 
-from lsprotocol.types import Range
-from pygls.workspace import Position
+from lsprotocol.types import (
+    Position,
+    Range,
+)
 
 from galaxyls.services.tools.constants import MACROS
 from galaxyls.services.xml.constants import UNDEFINED_OFFSET
diff --git a/server/galaxyls/version.py b/server/galaxyls/version.py
index b323a1a..6ba8edc 100644
--- a/server/galaxyls/version.py
+++ b/server/galaxyls/version.py
@@ -1,1 +1,1 @@
-GLS_VERSION = "0.11.0"
+GLS_VERSION = "0.12.0"
diff --git a/server/requirements.txt b/server/requirements.txt
index 3397ddb..8ed193d 100644
--- a/server/requirements.txt
+++ b/server/requirements.txt
@@ -1,4 +1,4 @@
-pygls==1.0.2
+pygls==1.1.1
 lxml==4.9.3
-anytree==2.9.0
+anytree==2.10.0
 galaxy-tool-util==23.0.5


Test patch:
diff --git a/server/galaxyls/tests/unit/test_context.py b/server/galaxyls/tests/unit/test_context.py
index 83e4760..29f7aae 100644
--- a/server/galaxyls/tests/unit/test_context.py
+++ b/server/galaxyls/tests/unit/test_context.py
@@ -6,7 +6,7 @@
 )
 
 import pytest
-from pygls.workspace import (
+from lsprotocol.types import (
     Position,
     Range,
 )