diff --git a/atom-extensions/atom-boot-properties/DEVELOPER-NOTES.md b/atom-extensions/atom-boot-properties/DEVELOPER-NOTES.md deleted file mode 100644 index eec8eab4e..000000000 --- a/atom-extensions/atom-boot-properties/DEVELOPER-NOTES.md +++ /dev/null @@ -1,53 +0,0 @@ -# Atom package for Spring Boot Application Properties - -[![macOS Build Status](https://travis-ci.org/spring-projects/atom-boot-properties.svg?branch=master)](https://travis-ci.org/spring-projects/atom-boot-properties) [![Windows Build Status](https://ci.appveyor.com/api/projects/status/1jvknxt9jhykgrxo?svg=true)](https://ci.appveyor.com/project/spring-projects/atom-boot-properties/branch/master) [![Dependency Status](https://david-dm.org/spring-projects/atom-boot-properties.svg)](https://david-dm.org/spring-projects/atom-boot-properties) - -Atom package and Language Server providing support for editing `application.properties` -and `application.yml` files containing Spring Boot configuration properties. - -## Installation: - -Install it from Atom `Install Packages`, search for `boot-properties` - -## Usage: - -The extension will automatically activate when you edit files with the following -name patterns: - - - `application.properties` => activates support for .properties file format. - - `application.yml` => activates support for .yml file format. - -For all other files select grammar to be `Spring-Boot-Properties` for `properties` file format or `Spring-Boot-Properties-YAML` for 'YAML' file format - -# Developer notes - -## Bulding and Running - -To build all these pieces you normally only need to run: - - npm install - -Now you can link it to Atom: - - apm link . - -Open Atom or execute `Refresh Window` in the opened instance (Packages -> Command Palette -> Toggle then search for the command). - -## Debugging - -**Client Side Debugging**: Open Atom's `Developer Tools` view - View -> Developer -> Toggle Developer Tools - -**Server Side Debugging**: Change `launchVmArgs(version)` implementation in `lib/main.js` to be: -``` - launchVmArgs(version) { - return Promise.resolve([ - '-Xdebug', - '-agentlib:jdwp=transport=dt_socket,server=y,address=7999,suspend=n', - '-Dorg.slf4j.simpleLogger.logFile=boot-properties.log', - '-Dorg.slf4j.simpleLogger.defaultLogLevel=debug', - ]); - } - -``` -(Then setup the remote debugger from your IDE on the same port `7999`) - diff --git a/atom-extensions/atom-boot-properties/README.md b/atom-extensions/atom-boot-properties/README.md index 46b9f7cdf..16e21ac02 100644 --- a/atom-extensions/atom-boot-properties/README.md +++ b/atom-extensions/atom-boot-properties/README.md @@ -1,64 +1,3 @@ -# Atom package and Language Server for Spring Boot Application Properties +# Atom package and Language Server for Spring Boot Application Properties __(Obsolete)__ -Atom package and Language Server providing support for working with Spring Boot -`application.properties` and `application.yml` files. - -# Usage: - -The package will automatically activate when you edit files with the following -name patterns: - - - `application.properties` => activates support for Spring Boot properties in `.properties`format. - - `application.yml` => activates support for Spring Boot properties in `.yml` format. - -For all other files select grammar to be `Spring-Boot-Properties` for `properties` file format or `Spring-Boot-Properties-YAML` for 'YAML' file format - -# Functionality - -This package analyzes your project's classpath and parses and indexes any [Spring Boot -Properties Metadata](https://docs.spring.io/spring-boot/docs/current/reference/html/configuration-metadata.html) it finds. Both Maven and Gradle projects are supported. - -The data in the index is used to provide validation, code completions and information -hovers while editing Spring Boot Properties in either `.properties` or `.yml` format. - -## Validation - -Property keys as well as property values are validated. Property keys are validated for being known properties and values are checked for being of expected type as well being a valid value - -![application-yaml-validation][yaml-validation] -![application-properties-validation][properties-validation] - -## Code Completions - -Both YAML and Properties formats have support for Content Assist on property keys and values helping to write valid Spring Boot configuration files right from the start. - -![application-yaml-completions][yaml-completion] - -![application-properties-completions][properties-completion] - -## Information Hovers - -Hovering over property keys provide valuable documentation about the purpose of the property and expected type for its value in a small popup window. - -![application-yaml-hovers][yaml-hovers] - -## Issues and Feature Requests - -Please report bugs, issues and feature requests on the [Github STS4 issue tracker](https://github.com/spring-projects/sts4/issues). - -# Releases: - -Released versions of this extension can be installed directly from the vscode marketplace. - -There are also development snapshots available with the latest fixes and improvements as a `.tgz` file -that can be donwloaded from -[here](http://dist.springsource.com/snapshot/STS4/nightly-distributions.html). To install it: -1. Unpack into a folder `` (this folder should have `package.json` file) -2. Execute `apm link .` from that folder -3. Execute `Window Reload` (Package -> Command Palette -> Toggle then search for it) command in the opened Atom instance or open an Atom instance - -[yaml-completion]: https://github.com/spring-projects/sts4/blob/714c6bbb519f714ebba9f9fc5968ac2e619159f8/atom-extensions/atom-boot-properties/readme-imgs/yaml-completion.png -[properties-completion]: https://github.com/spring-projects/sts4/blob/714c6bbb519f714ebba9f9fc5968ac2e619159f8/atom-extensions/atom-boot-properties/readme-imgs/properties-completion.png -[yaml-validation]: https://github.com/spring-projects/sts4/blob/714c6bbb519f714ebba9f9fc5968ac2e619159f8/atom-extensions/atom-boot-properties/readme-imgs/yaml-validation.png -[properties-validation]: https://github.com/spring-projects/sts4/blob/714c6bbb519f714ebba9f9fc5968ac2e619159f8/atom-extensions/atom-boot-properties/readme-imgs/properties-validation.png -[yaml-hovers]: https://github.com/spring-projects/sts4/blob/714c6bbb519f714ebba9f9fc5968ac2e619159f8/atom-extensions/atom-boot-properties/readme-imgs/yaml-hovers.png +It has been merged with Spring Boot support and has moved to [Spring Boot](https://github.com/spring-projects/atom-spring-boot) diff --git a/atom-extensions/atom-boot-properties/coffeelint.json b/atom-extensions/atom-boot-properties/coffeelint.json deleted file mode 100644 index d6c3236aa..000000000 --- a/atom-extensions/atom-boot-properties/coffeelint.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "max_line_length": { - "level": "ignore" - }, - "no_empty_param_list": { - "level": "error" - }, - "arrow_spacing": { - "level": "error" - }, - "no_interpolation_in_single_quotes": { - "level": "error" - }, - "no_debugger": { - "level": "error" - }, - "prefer_english_operator": { - "level": "error" - }, - "colon_assignment_spacing": { - "spacing": { - "left": 0, - "right": 1 - }, - "level": "error" - }, - "braces_spacing": { - "spaces": 0, - "level": "error" - }, - "spacing_after_comma": { - "level": "error" - }, - "no_stand_alone_at": { - "level": "error" - } -} \ No newline at end of file diff --git a/atom-extensions/atom-boot-properties/grammars/boot-properties-yaml.cson b/atom-extensions/atom-boot-properties/grammars/boot-properties-yaml.cson deleted file mode 100644 index f4bbd68c0..000000000 --- a/atom-extensions/atom-boot-properties/grammars/boot-properties-yaml.cson +++ /dev/null @@ -1,8 +0,0 @@ -'scopeName': 'source.boot-properties-yaml' -'name': 'Spring-Boot-Properties-YAML' -'fileTypes': [ - 'application.yml' -] -'patterns': [ - { 'include': 'source.yaml' } -] \ No newline at end of file diff --git a/atom-extensions/atom-boot-properties/grammars/boot-properties.cson b/atom-extensions/atom-boot-properties/grammars/boot-properties.cson deleted file mode 100644 index 18b873b83..000000000 --- a/atom-extensions/atom-boot-properties/grammars/boot-properties.cson +++ /dev/null @@ -1,8 +0,0 @@ -'scopeName': 'source.boot-properties' -'name': 'Spring-Boot-Properties' -'fileTypes': [ - 'application.properties' -] -'patterns': [ - { 'include': 'source.java-properties' } -] diff --git a/atom-extensions/atom-boot-properties/lib/main.js b/atom-extensions/atom-boot-properties/lib/main.js index bb7fef693..87ba746be 100644 --- a/atom-extensions/atom-boot-properties/lib/main.js +++ b/atom-extensions/atom-boot-properties/lib/main.js @@ -1,20 +1,13 @@ -const path = require('path'); -const { JavaProcessLanguageClient } = require('pivotal-atom-languageclient-commons'); -const PROPERTIES = require('../properties.json'); +const {AutoLanguageClient} = require('atom-languageclient'); -class BootPropertiesClient extends JavaProcessLanguageClient { +class BootPropertiesClient extends AutoLanguageClient { constructor() { - //noinspection JSAnnotator - super( - PROPERTIES.jarUrl, - path.join(__dirname, '..', 'server'), - 'boot-properties-language-server.jar' - ); + super(); } getGrammarScopes() { - return ['source.boot-properties','source.boot-properties-yaml']; + return []; } getLanguageName() { @@ -26,20 +19,20 @@ class BootPropertiesClient extends JavaProcessLanguageClient { } activate() { - // replace the example argument 'linter-ruby' with the name of this Atom package - require('atom-package-deps') - .install('boot-properties') - .then(() => console.debug('All dependencies installed, good to go')); + const notification = atom.notifications.addInfo('`boot-properties` Extension __NOT__ Functional', { + dismissable: true, + detail: '`boot-properties` extension starting from 0.1.4 is obsolete', + description: 'The `boot-properties` extension is obsolete and no longer functional. Please uninstall it and install the `spring-boot` extension instead.', + buttons: [{ + text: 'OK', + onDidClick: () => { + notification.dismiss(); + } + }] + }); super.activate(); } - launchVmArgs(version) { - return Promise.resolve([ - '-Dorg.slf4j.simpleLogger.logFile=boot-properties.log', - '-Dorg.slf4j.simpleLogger.defaultLogLevel=debug', - ]); - } - } module.exports = new BootPropertiesClient(); diff --git a/atom-extensions/atom-boot-properties/package.json b/atom-extensions/atom-boot-properties/package.json index 947ea95bb..36ed4f61e 100644 --- a/atom-extensions/atom-boot-properties/package.json +++ b/atom-extensions/atom-boot-properties/package.json @@ -10,74 +10,12 @@ "atom": ">=1.21.0" }, "files": [ - "grammars/", - "settings/", - "lib/", - "server/", - "properties.json" + "lib/" ], "dependencies": { - "atom-package-deps": "^4.6.0", - "download": "^6.2.5", - "pivotal-atom-languageclient-commons": "0.0.19" - }, - "devDependencies": { - "coffeelint": "^1.10.1" + "atom-languageclient": "0.8.0" }, "scripts": { - "clean": "rm -fr node_modules", - "postinstall": "node script.js" - }, - "package-deps": [ - "atom-ide-ui" - ], - "consumedServices": { - "linter-indie": { - "versions": { - "2.0.0": "consumeLinterV2" - } - }, - "datatip": { - "versions": { - "0.1.0": "consumeDatatip" - } - } - }, - "providedServices": { - "autocomplete.provider": { - "versions": { - "2.0.0": "provideAutocomplete" - } - }, - "code-actions": { - "versions": { - "0.1.0": "provideCodeActions" - } - }, - "code-format.range": { - "versions": { - "0.1.0": "provideCodeFormat" - } - }, - "code-highlight": { - "versions": { - "0.1.0": "provideCodeHighlight" - } - }, - "definitions": { - "versions": { - "0.1.0": "provideDefinitions" - } - }, - "find-references": { - "versions": { - "0.1.0": "provideFindReferences" - } - }, - "outline-view": { - "versions": { - "0.1.0": "provideOutlines" - } - } + "clean": "rm -fr node_modules" } } diff --git a/atom-extensions/atom-boot-properties/properties.json b/atom-extensions/atom-boot-properties/properties.json deleted file mode 100644 index 08faad106..000000000 --- a/atom-extensions/atom-boot-properties/properties.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "jarUrl": "https://s3-us-west-1.amazonaws.com/s3-test.spring.io/sts4/fatjars/snapshots/boot-properties-language-server-0.0.10-201711231810.jar" -} diff --git a/atom-extensions/atom-boot-properties/readme-imgs/properties-completion.png b/atom-extensions/atom-boot-properties/readme-imgs/properties-completion.png deleted file mode 100644 index 6bcfe6872..000000000 Binary files a/atom-extensions/atom-boot-properties/readme-imgs/properties-completion.png and /dev/null differ diff --git a/atom-extensions/atom-boot-properties/readme-imgs/properties-validation.png b/atom-extensions/atom-boot-properties/readme-imgs/properties-validation.png deleted file mode 100644 index 9c94f4e67..000000000 Binary files a/atom-extensions/atom-boot-properties/readme-imgs/properties-validation.png and /dev/null differ diff --git a/atom-extensions/atom-boot-properties/readme-imgs/yaml-completion.png b/atom-extensions/atom-boot-properties/readme-imgs/yaml-completion.png deleted file mode 100644 index c393531c6..000000000 Binary files a/atom-extensions/atom-boot-properties/readme-imgs/yaml-completion.png and /dev/null differ diff --git a/atom-extensions/atom-boot-properties/readme-imgs/yaml-hovers.png b/atom-extensions/atom-boot-properties/readme-imgs/yaml-hovers.png deleted file mode 100644 index 576492f25..000000000 Binary files a/atom-extensions/atom-boot-properties/readme-imgs/yaml-hovers.png and /dev/null differ diff --git a/atom-extensions/atom-boot-properties/readme-imgs/yaml-validation.png b/atom-extensions/atom-boot-properties/readme-imgs/yaml-validation.png deleted file mode 100644 index c774e240d..000000000 Binary files a/atom-extensions/atom-boot-properties/readme-imgs/yaml-validation.png and /dev/null differ diff --git a/atom-extensions/atom-boot-properties/script.js b/atom-extensions/atom-boot-properties/script.js deleted file mode 100644 index ace21f274..000000000 --- a/atom-extensions/atom-boot-properties/script.js +++ /dev/null @@ -1,34 +0,0 @@ -const fs = require('fs'); -const path = require('path'); -const download = require('download'); -const PROPERTIES = require('./properties.json'); - -let fileExists = function(path) { - return new Promise((resolve, reject) => { - fs.access(path, fs.R_OK, error => { - resolve(!error || error.code !== 'ENOENT'); - }) - }); -}; - -const serverDownloadUrl = PROPERTIES.jarUrl; - -const serverHome = path.join(__dirname, 'server'); - -const localFileName = path.join(serverHome, 'boot-properties-language-server.jar'); - -fileExists(localFileName).then(exists => { - if (!exists) { - console.log(`Downloading ${serverDownloadUrl} to ${localFileName}`); - fileExists(serverHome) - .then(doesExist => { if (!doesExist) fs.mkdir(serverHome) }) - .then(() => download(serverDownloadUrl)) - .then(data => fs.writeFileSync(localFileName, data)) - .then(() => fileExists(localFileName)) - .then(doesExist => { if (!doesExist) throw Error(`Failed to install the ${this.getServerName()} language server`) }) - .then(() => console.log(`Successfully downloaded ${serverDownloadUrl}`)); - } -}); - - - diff --git a/atom-extensions/atom-boot-properties/settings/language-boot-properties-yaml.cson b/atom-extensions/atom-boot-properties/settings/language-boot-properties-yaml.cson deleted file mode 100644 index fddef6740..000000000 --- a/atom-extensions/atom-boot-properties/settings/language-boot-properties-yaml.cson +++ /dev/null @@ -1,8 +0,0 @@ -'.source.boot-properties-yaml': - 'editor': - 'autoIndentOnPaste': false - 'commentStart': '# ' - 'foldEndPattern': '^\\s*$|^\\s*\\}|^\\s*\\]|^\\s*\\)' - 'increaseIndentPattern': '^\\s*.*(:|-) ?(&\\w+)?(\\{[^}"\']*|\\([^)"\']*)?$' - 'decreaseIndentPattern': '^\\s+\\}$' -'tabType': 'soft' \ No newline at end of file