You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove dependency to shelljs for CLI application, refactor
release/releng commands and introduce bundling with esbuild
## Remove dependency to shelljs
Shelljs has some issues in its core architecture which prevent it from
proper bundling.
We only use a very small subset of shelljs features.
Therefore I opted for removing the dependency alltogether and introduce
replacement functions in our utility library
that directly use node builtins under the hood
## Refactor release/releng commands
- Remove the existing release commands and introduce a new set of releng
commands that
can also be used in CI and enable (partly) automated releases
- These commands have already been used for the 2.5.0 release (i.e. have
been tested and work)
- Introduce helpers for working with (reading, updating etc.) workspace
package jsons
## Bundle application with es build
- Introduce bundling with es build for the CLI package
- Package is now dependency free and ships the CLI app in one bundle (+
source maps)
- Update package scripts accordingly
- Introduce proper watch mode for CLI package
- Introduce vs code lauch config for debugin the CLI application. When
starting the config the desired arguments/commands
can be passed via input box
## Add workflows
- Add dispatch workflow to trigger a new release preparation PR for a
repository
Fixes/issues/1363
@@ -11,6 +11,24 @@ Install `@eclipse-glsp/cli` as a dev dependency in your application.
11
11
yarn add @eclipse-glsp/cli --dev
12
12
```
13
13
14
+
## Usage
15
+
16
+
```console
17
+
Usage: glsp [options] [command]
18
+
19
+
Options:
20
+
-V, --version output the version number
21
+
-h, --help display help for command
22
+
23
+
Commands:
24
+
coverageReport [options] Generate a test coverage report for a glsp component
25
+
checkHeaders [options] <rootDir> Validates the copyright year range (end year) of license header files
26
+
updateNext|u [options] [rootDir] Updates all `next` dependencies in GLSP project to the latest version
27
+
generateIndex [options] <rootDir...> Generate index files in a given source directory.
28
+
releng Commands for GLSP release engineering (Linux only, intended for CI/Maintainer use).
29
+
help [command] display help for command
30
+
```
31
+
14
32
## checkHeaders
15
33
16
34
The `checkHeaders` command can be used to validate the copyright year (range) of license headers.
@@ -23,19 +41,21 @@ $ glsp checkHeaders -h
23
41
24
42
Usage: glsp checkHeaders [options] <rootDir>
25
43
26
-
Validates the copyright year range of license header files
44
+
Validates the copyright year range (end year) of license header files
27
45
28
46
Arguments:
29
47
rootDir The starting directory for the check
30
48
31
49
Options:
32
-
-t, --type <type> The scope of the check. In addition to a full recursive check, is also possible to only consider pending changes or the last commit (choices: "full", "changes", "lastCommit", default:
33
-
"full")
50
+
-t, --type <type> The scope of the check. In addition to a full recursive check, is also possible to only
51
+
consider pending changes or the last commit (choices: "full", "changes", "lastCommit",
52
+
default: "full")
34
53
-f, --fileExtensions <extensions...> File extensions that should be checked (default: ["ts","tsx"])
35
-
-e, --exclude <exclude...> File patterns that should be excluded from the check. New exclude patterns are added to the default patterns (default: [**/@(node_modules|lib|dist|bundle)/**])
36
-
--no-exclude-defaults Disables the default excludes patterns. Only explicitly passed exclude patterns (-e, --exclude) are considered
54
+
-e, --exclude <exclude...> File patterns that should be excluded from the check. New exclude patterns are added to
55
+
the default patterns (default: [**/@(node_modules|lib|dist|bundle)/**])
56
+
--no-exclude-defaults Disables the default excludes patterns. Only explicitly passed exclude patterns (-e,
57
+
--exclude) are considered
37
58
-j, --json Also persist validation results as json file (default: false)
38
-
-s, --severity <severity> The severity of validation results that should be printed. (choices: "error", "warn", "ok", default: "error" (only))
39
59
-a, --autoFix Auto apply & commit fixes without prompting the user (default: false)
Prepare & publish a new release for a glsp component
69
-
70
-
Arguments:
71
-
component The glsp component to be released (choices: "client", "theia-integration", "vscode-integration", "eclipse-integration", "server-node", "server-java")
72
-
releaseType The release type (choices: "major", "minor", "patch", "rc", "custom")
73
-
customVersion Custom version number. Will be ignored if the release type is not "custom"
74
-
75
-
Options:
76
-
-f, --force Enable force mode (default: false)
77
-
-d, --checkoutDir <checkoutDir> The git checkout directory (default: "<cwd>")
78
-
-b, --branch <branch> The git branch to checkout (default: "master")
-r, --repoDir <repoDir> Path to the component repository (default:
221
+
"<cwd>")
222
+
--no-npm Skip npm publishing
223
+
-d, --draft Create a draft GitHub release (default: false)
224
+
-h, --help display help for command
225
+
```
226
+
126
227
## More information
127
228
128
229
For more information, please visit the [Eclipse GLSP Umbrella repository](https://github.com/eclipse-glsp/glsp) and the [Eclipse GLSP Website](https://www.eclipse.org/glsp/).
129
230
If you have questions, please raise them in the [discussions](https://github.com/eclipse-glsp/glsp/discussions) and have a look at our [communication and support options](https://www.eclipse.org/glsp/contact/).
0 commit comments