From 656ce46ea0927d5e2cf6c0e8cd10667b4a9f37fa Mon Sep 17 00:00:00 2001
From: davelopez <46503462+davelopez@users.noreply.github.com>
Date: Mon, 15 Feb 2021 13:32:05 +0100
Subject: [PATCH 1/7] Update the main readme with clearer information about the
project
---
README.md | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/README.md b/README.md
index af2eafb..8de5758 100644
--- a/README.md
+++ b/README.md
@@ -1,22 +1,24 @@
-# Galaxy Language Server
+# Galaxy Tools Extension and Galaxy Language Server
[![Actions Status](https://github.com/davelopez/galaxy-language-server/workflows/Language%20Server%20CI/badge.svg)](https://github.com/davelopez/galaxy-language-server/actions)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/galaxy-language-server)
[![PyPI version](https://badge.fury.io/py/galaxy-language-server.svg)](https://badge.fury.io/py/galaxy-language-server)
-The aim of this project is to implement the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) to assist in the development of [Galaxy tool wrappers](https://docs.galaxyproject.org/en/latest/dev/schema.html) inside modern code editors.
+This repository contains two projects, the [Galaxy Language Server](https://github.com/davelopez/galaxy-language-server/tree/master/server) which is a [Python](https://www.python.org/) implementation of the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) and the [Galaxy Tools extension](https://github.com/davelopez/galaxy-language-server/tree/master/client) which is a [Visual Studio Code](https://code.visualstudio.com/) [extension](https://marketplace.visualstudio.com/VSCode) in [Node.js](https://nodejs.org/en/).
-> The idea is to provide realtime XML validation, code completion, help/documentation and other *smart* features to help in following best practices during the development process of XML tool wrappers for Galaxy.
+This project has the following main goals:
-This repository contains both the [server](https://github.com/davelopez/galaxy-language-server/tree/master/server) implementation in [Python](https://www.python.org/) and the [client](https://github.com/davelopez/galaxy-language-server/tree/master/client) implementation of a [Visual Studio Code](https://code.visualstudio.com/) [extension](https://marketplace.visualstudio.com/VSCode) in [Node.js](https://nodejs.org/en/).
+- **Easy onboarding of new Galaxy tool developers**: with the [intelligent code completion](#tag-and-attribute-auto-completion) and the [documentation tooltips](#documentation-on-hover), new developers can reduce the need for memorizing tags and attributes as well as easily discover what they need as they write avoiding syntax and structural errors on the way.
+- **Development speed**: more experienced developers can greatly boost their speed writing tools for Galaxy by using the [code snippets](#snippets) to quickly write code for commonly used tag or even [generating scaffolding code for the tests](#auto-generate-tests) covering most of the *conditional paths* of their tool.
+- **Encourage best practices**: one of the **most important goals** of this project is to assist the developer in writing tools that follow the [best practices established by the Intergalactic Utilities Commission](https://galaxy-iuc-standards.readthedocs.io/en/latest/index.html) by providing features like [attribute sorting](#auto-sort-param-attributes) or [auto-formatting](#document-auto-formatting) and many more to come!
> Please note this is still a work in progress so **bugs and issues are expected**. If you find any, you are welcome to open a new [issue](https://github.com/galaxyproject/galaxy-language-server/issues).
# Table of Contents
- [Getting Started](#getting-started)
- - [Using the Galaxy Language Server](#using-the-galaxy-language-server)
+ - [Using the project](#using-the-project)
- [Contributing](#contributing)
- [Features](#features)
- [Tag and attribute auto-completion](#tag-and-attribute-auto-completion)
@@ -33,9 +35,9 @@ This repository contains both the [server](https://github.com/davelopez/galaxy-l
# Getting Started
-## Using the Galaxy Language Server
+## Using the project
-If you just want to use the Galaxy Language Server, the easiest option is to **install the VSCode extension** from the [Market](https://marketplace.visualstudio.com/items?itemName=davelopez.galaxy-tools) or the [Open VSX registry](https://open-vsx.org/extension/davelopez/galaxy-tools). Additionally, you can download the VSIX package from the [releases](https://github.com/galaxyproject/galaxy-language-server/releases) page and install it manually.
+If you just want to use the features provided by the Galaxy Language Server, the easiest and recommended option is to **install the VSCode extension** from the [Market](https://marketplace.visualstudio.com/items?itemName=davelopez.galaxy-tools) or, if you prefer, you can use [VSCodium](https://github.com/VSCodium/vscodium) and the [Open VSX registry](https://open-vsx.org/extension/davelopez/galaxy-tools). Additionally, you can download the VSIX package from the [releases](https://github.com/galaxyproject/galaxy-language-server/releases) page and install it manually.
## Contributing
From e9db039d424aff0b6733223e3a04e4c38e1a666d Mon Sep 17 00:00:00 2001
From: davelopez <46503462+davelopez@users.noreply.github.com>
Date: Mon, 15 Feb 2021 13:32:54 +0100
Subject: [PATCH 2/7] Add link to the video.
Closes #112
---
README.md | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/README.md b/README.md
index 8de5758..9589a14 100644
--- a/README.md
+++ b/README.md
@@ -47,6 +47,10 @@ To setup your development environment, please check [this guide](docs/CONTRIBUTI
# Features
+You can watch a short video with a tour of some of the features of the Galaxy Tools extension here:
+
+[![Galaxy Tools features video](https://img.youtube.com/vi/MpPrgtNrEcQ/0.jpg)](https://www.youtube.com/watch?v=MpPrgtNrEcQ)
+
## Tag and attribute auto-completion
![Demo feature auto-completion](../assets/feature.autocompletion.gif)
From 6a82c84db6c2b1535796c8092c6a9786dff1551c Mon Sep 17 00:00:00 2001
From: davelopez <46503462+davelopez@users.noreply.github.com>
Date: Mon, 15 Feb 2021 13:45:32 +0100
Subject: [PATCH 3/7] Minor update of extension readme
---
client/README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/client/README.md b/client/README.md
index eb95518..35b8972 100644
--- a/client/README.md
+++ b/client/README.md
@@ -1,6 +1,6 @@
# Galaxy Tools (Visual Studio Code Extension)
-This extension provides XML validation, tags and attributes completion, help/documentation on hover, and other *smart* features to assist in following best practices during the development process of XML tool wrappers for [Galaxy](https://galaxyproject.org/).
+This extension provides XML validation, tags and attributes completion, help/documentation on hover, and other *smart* features to assist in **following best practices** recommended by the [Intergalactic Utilities Commission](https://galaxy-iuc-standards.readthedocs.io/en/latest/index.html) during the development process of XML tool wrappers for [Galaxy](https://galaxyproject.org/).
> Please note this is still a work in progress so **bugs and issues are expected**. If you find any, you are welcome to open a new [issue](https://github.com/galaxyproject/galaxy-language-server/issues).
From 5fc162dfa955006fd687441334548fcf7970f9a5 Mon Sep 17 00:00:00 2001
From: davelopez <46503462+davelopez@users.noreply.github.com>
Date: Mon, 15 Feb 2021 15:15:14 +0100
Subject: [PATCH 4/7] Update server changelog
---
server/CHANGELOG.md | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/server/CHANGELOG.md b/server/CHANGELOG.md
index 91168a6..8f25cb4 100644
--- a/server/CHANGELOG.md
+++ b/server/CHANGELOG.md
@@ -1,5 +1,21 @@
# Galaxy Language Server Changelog
+## [0.4.0] - 2021-02-15
+
+### Added
+
+- A custom command for tests discovery that provides information about the test definitions of all the opened tool documents in the virtual workspace. ([#110](https://github.com/galaxyproject/galaxy-language-server/pull/110))
+
+- A custom command to reorder `` attributes according to the IUC Style Guidelines. ([#104](https://github.com/galaxyproject/galaxy-language-server/pull/104))
+
+### Fixed
+
+- Unexpected errors when generating code were failing silently without providing feedback to the user. Now an error notification will be displayed to the user. ([#113](https://github.com/galaxyproject/galaxy-language-server/pull/113))
+
+- Elements inside macros were not correctly associated with their XSD definition. ([#111](https://github.com/galaxyproject/galaxy-language-server/pull/111))
+
+- An bug in the search algorithm when analyzing the tool input trees with nested conditional sharing the same 'when' value. This was causing the code generation commands to fail. ([#109](https://github.com/galaxyproject/galaxy-language-server/pull/109))
+
## [0.3.2] - 2021-01-24
### Fixed
From 9b269ef88877373044d2ee0961a3064dfc78c842 Mon Sep 17 00:00:00 2001
From: davelopez <46503462+davelopez@users.noreply.github.com>
Date: Mon, 15 Feb 2021 15:31:04 +0100
Subject: [PATCH 5/7] Update extension changelog
---
client/CHANGELOG.md | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/client/CHANGELOG.md b/client/CHANGELOG.md
index 72c4656..d0432ca 100644
--- a/client/CHANGELOG.md
+++ b/client/CHANGELOG.md
@@ -1,5 +1,21 @@
# Galaxy Tools (VS Code Extension) Changelog
+## [0.4.0] - 2021-02-15
+
+### Added
+
+- New settings to integrate [planemo](https://github.com/galaxyproject/planemo) and run `planemo test` inside [Test Explorer UI](https://marketplace.visualstudio.com/items?itemName=hbenl.vscode-test-explorer) for the currently opened tool documents. ([#110](https://github.com/galaxyproject/galaxy-language-server/pull/110))
+
+- Commands to reorder `` attributes (in a single tag `Ctrl+Alt+s Ctrl+Alt+p` or the whole document `Ctrl+Alt+s Ctrl+Alt+d`) according to the IUC Style Guidelines. ([#104](https://github.com/galaxyproject/galaxy-language-server/pull/104))
+
+### Fixed
+
+- Display error notification when a code generation command fails ([#113](https://github.com/galaxyproject/galaxy-language-server/pull/113)).
+
+### Changed
+
+- Update gx-tool snippet to latests IUC best practices ([#94](https://github.com/galaxyproject/galaxy-language-server/pull/94)).
+
## [0.3.2] - 2021-01-24
### Changed
From bfed6c32166c7bae642c9d91e6e9b6877bbdddfa Mon Sep 17 00:00:00 2001
From: davelopez <46503462+davelopez@users.noreply.github.com>
Date: Mon, 15 Feb 2021 15:32:28 +0100
Subject: [PATCH 6/7] Update extension package version
---
client/package.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/client/package.json b/client/package.json
index 92625dd..525e227 100644
--- a/client/package.json
+++ b/client/package.json
@@ -5,7 +5,7 @@
"author": "davelopez",
"publisher": "davelopez",
"license": "Apache-2.0",
- "version": "0.3.2",
+ "version": "0.4.0",
"preview": true,
"repository": {
"type": "git",
From a3d1b2b2a16e81aea1498004613e91e029f471b9 Mon Sep 17 00:00:00 2001
From: Beatriz Serrano-Solano
Date: Mon, 15 Feb 2021 16:29:24 +0100
Subject: [PATCH 7/7] minor changes
---
README.md | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 9589a14..a72efcd 100644
--- a/README.md
+++ b/README.md
@@ -5,13 +5,15 @@
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/galaxy-language-server)
[![PyPI version](https://badge.fury.io/py/galaxy-language-server.svg)](https://badge.fury.io/py/galaxy-language-server)
-This repository contains two projects, the [Galaxy Language Server](https://github.com/davelopez/galaxy-language-server/tree/master/server) which is a [Python](https://www.python.org/) implementation of the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) and the [Galaxy Tools extension](https://github.com/davelopez/galaxy-language-server/tree/master/client) which is a [Visual Studio Code](https://code.visualstudio.com/) [extension](https://marketplace.visualstudio.com/VSCode) in [Node.js](https://nodejs.org/en/).
+This repository contains two projects:
+- [**Galaxy Language Server**](https://github.com/davelopez/galaxy-language-server/tree/master/server): [Python](https://www.python.org/) implementation of the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/).
+- [**Galaxy Tools extension**](https://github.com/davelopez/galaxy-language-server/tree/master/client): [Visual Studio Code](https://code.visualstudio.com/) [extension](https://marketplace.visualstudio.com/VSCode) in [Node.js](https://nodejs.org/en/).
This project has the following main goals:
+- **Encourage best practices**: one of the **most important goals** of this project is to assist the developer in writing tools that follow the [best practices established by the Intergalactic Utilities Commission](https://galaxy-iuc-standards.readthedocs.io/en/latest/index.html) by providing features like [attribute sorting](#auto-sort-param-attributes) or [auto-formatting](#document-auto-formatting) and many more to come!
- **Easy onboarding of new Galaxy tool developers**: with the [intelligent code completion](#tag-and-attribute-auto-completion) and the [documentation tooltips](#documentation-on-hover), new developers can reduce the need for memorizing tags and attributes as well as easily discover what they need as they write avoiding syntax and structural errors on the way.
- **Development speed**: more experienced developers can greatly boost their speed writing tools for Galaxy by using the [code snippets](#snippets) to quickly write code for commonly used tag or even [generating scaffolding code for the tests](#auto-generate-tests) covering most of the *conditional paths* of their tool.
-- **Encourage best practices**: one of the **most important goals** of this project is to assist the developer in writing tools that follow the [best practices established by the Intergalactic Utilities Commission](https://galaxy-iuc-standards.readthedocs.io/en/latest/index.html) by providing features like [attribute sorting](#auto-sort-param-attributes) or [auto-formatting](#document-auto-formatting) and many more to come!
> Please note this is still a work in progress so **bugs and issues are expected**. If you find any, you are welcome to open a new [issue](https://github.com/galaxyproject/galaxy-language-server/issues).