diff --git a/CHANGELOG.md b/CHANGELOG.md index a757afe..e1a2e34 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,6 @@ # Change Log +## 0.0.7 +- The tslint-language service plugin is now automatically activated, it doesn´t need to be configured in the `tsconfig.json` file. The language service plugin now only needs to be configured inside `tsconfig.json` when you want to configure settings. ## 0.0.1 - Initial release \ No newline at end of file diff --git a/Notes.md b/Notes.md index 6a2fef3..bb0b46e 100644 --- a/Notes.md +++ b/Notes.md @@ -3,4 +3,4 @@ - the language server plugin does not work correctly when typescript is a run time dependency and bundled with the extension. In this case only lint rules that do not need an AST work, e.g. no trailing white space. This works when the extension does not have a dependency on the typescript module. - when removing typescript as a runtime dependency from the extension, then `vsce package` correctly reports that there is a missing peer dependency for tslint-language-service, it has typescript as a peer dependency. - when removing both tslint and typescript as a runtime dependency then the TS plugin cannot find ´tslint´, which is expected since ´tslint´ is only a peer dependency of the tslint-language-service (which is debatable). -- As a workaround the VSIX is produced with typescript and tslint as a runtime dependency but it is then manually removed published vsix is patched and typescript is removed from the VSIX +- As a workaround the VSIX is produced with typescript and tslint as a runtime dependency but it is then manually removed published vsix is patched and typescript is removed from the VSIX and the VSIX is then published using `vsce publish --packagePath vsix`. diff --git a/README.md b/README.md index 0f8da5b..1442c86 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ This is a preview of a work in progress reimplementation of the [vscode-tslint](https://marketplace.visualstudio.com/items?itemName=eg2.tslint) extension. It is published to enable early feedback and testing. The implementation uses the new TypeScript language server plugin support introduced in TypeScript version [2.3](https://marketplace.visualstudio.com/items?itemName=eg2.tslint). It runs `tslint` as a plugin for the TypeScript language server. -The extension can be run side-by-side with the current `vscode-tslint` extension, use the Extensions Viewlet to disable the version of the extension you do not want to use. +The extension can be installed side-by-side with the current `vscode-tslint` extension, use the Extensions Viewlet to disable the version of the extension you do not want to use. # Limitations @@ -12,26 +12,14 @@ Due to an issue in the tslint implementation of the `no-unused-variable rule` ([ # Differences between vscode-tslint (vnext) and vscode-tslint -- enabling of tslint is now done inside the `tsconfig.json` by enabling a TypeScript server plugin (see below). +- configuration options for tslint are now done inside the `tsconfig.json` in `plugins` section (see below). - the implementation as a TypeScript server plugin enables to shares the program representation with TypeScript. This is more efficient than the current vscode-tslint implementation. The current implementation needs to reanalyze a document that has already been analyzed by the TypeScript language server. - vscode-tslint can only lint one file a time. It therefore cannot support [semantic tslint rules](https://palantir.github.io/tslint/usage/type-checking/) that require the type checker. The language service plugin doesn't have this limitation. To overcome this limitation is a key motivation for reimplementing the extension. - the extension bundles a tslint and typescript version. -# Setting up linting +# Configuring the tslint-server-plugin -Enable the tslint-server-plugin in the `tsconfig.json` file of your project: - -```json -{ - "compilerOptions": { - "plugins": [ - { "name": "tslint-language-service"} - ] - } -} -``` - -You can define additional settings for a `plugin` +You can define settings for the `tslint-language-service` plugin in the `tsconfig.json` file. The available settings are documented [here](https://github.com/angelozerr/tslint-language-service#configuration-options): ```json { "compilerOptions": { diff --git a/package.json b/package.json index 513e9c1..64a77cd 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ts-tslint", "displayName": "TSLint (vnext)", "description": "PREVIEW: TSLint as a TypeScript Server Plugin", - "version": "0.0.6", + "version": "0.0.7", "publisher": "eg2", "engines": { "vscode": "^1.20.0"