atomlinter / linter-gjslint Goto Github PK
View Code? Open in Web Editor NEWAtom linter plugin for JavaScript, using gjslint.
Atom linter plugin for JavaScript, using gjslint.
In the v2.3.0 release of linter
support for the v1 API was removed, breaking semver. This means that this provider is no longer supported by the current version of linter
.
To get this provider working again it will need to be upgrade to the v2 API, a guide for accomplishing that can be found here: Upgrading to Standard Linter v2.
Until this is fixed in order to use this provider you will need to downgrade to the last version of linter
that supports the v1 API, you can do this with apm install [email protected]
.
[Enter steps to reproduce below:]
Atom Version: 0.199.0
System: Mac OS X 10.10.4
Thrown From: linter-gjslint package, v0.0.4
Failed to activate the linter-gjslint package
At 0 is not a valid selector in /Users/william/.atom/packages/linter-gjslint/package.json
SyntaxError: 0 is not a valid selector in /Users/william/.atom/packages/linter-gjslint/package.json
at exports.validateSelector (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/clear-cut/index.js:115:19)
at CommandRegistry.module.exports.CommandRegistry.add (/Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:44:9)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package.js:751:70
at Package.module.exports.Package.subscribeToActivationCommands (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:780:11)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package.js:217:30
at Package.module.exports.Package.measure (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:163:15)
at Package.module.exports.Package.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:211:14)
at PackageManager.module.exports.PackageManager.activatePackage (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:435:21)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:419:29
at Config.module.exports.Config.transact (/Applications/Atom.app/Contents/Resources/app.asar/src/config.js:311:16)
at /Users/william/.atom/packages/linter-gjslint/package.json:1:1
{
"core": {},
"linter-gjslint": {
"gjslintExecutablePath": "/usr/local/bin/gjslint",
"gjslintIgnoreList": []
}
}
# User
atom-alignment, v0.12.1
atom-html-preview, v0.1.6
atom-jshint, v1.5.0
block-cursor, v0.12.5
change-case, v0.5.1
color-picker, v1.7.0
editor-stats, v0.17.0
emmet, v2.3.9
file-icons, v1.5.5
filetype-color, v0.1.4
jshint, v1.3.6
linter, v0.12.2
linter-csslint, v0.0.12
linter-htmlhint, v0.0.15
linter-jscs, v1.11.0
linter-jshint, v0.1.4
pigments, v0.3.0
# Dev
No dev packages
[Enter steps to reproduce below:]
Atom Version: 0.189.0
System: Microsoft Windows 7 Professional
Thrown From: linter-gjslint package, v0.0.4
Uncaught TypeError: Cannot read property 'join' of undefined
At C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\node_modules\q\q.js:128
TypeError: Cannot read property 'join' of undefined
at C:\Users\prasannar\.atom\packages\linter-gjslint\lib\linter-gjslint.coffee:33:41
at Config.module.exports.Config.observeKeyPath (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\config.js:612:7)
at Config.module.exports.Config.observe (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\config.js:126:21)
at new LinterGjslint (C:\Users\prasannar\.atom\packages\linter-gjslint\lib\linter-gjslint.coffee:31:17)
at LinterView.initLinters (C:\Users\prasannar\.atom\packages\linter\lib\linter-view.coffee:51:27)
at new LinterView (C:\Users\prasannar\.atom\packages\linter\lib\linter-view.coffee:33:6)
at C:\Users\prasannar\.atom\packages\linter\lib\init.coffee:88:24
at C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\workspace.js:287:16
at C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\workspace.js:344:18
at Emitter.module.exports.Emitter.emit (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\node_modules\event-kit\lib\emitter.js:82:11)
at PaneContainer.module.exports.PaneContainer.addedPaneItem (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\pane-container.js:375:27)
at C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\pane-container.js:362:26
at Emitter.module.exports.Emitter.emit (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\node_modules\event-kit\lib\emitter.js:82:11)
at Pane.module.exports.Pane.addItem (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\pane.js:363:20)
at Pane.module.exports.Pane.activateItem (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\pane.js:336:14)
at C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\src\workspace.js:532:16
at _fulfilled (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\node_modules\q\q.js:794:54)
at self.promiseDispatch.done (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\node_modules\q\q.js:823:30)
at Promise.promise.promiseDispatch (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\node_modules\q\q.js:756:13)
at C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\node_modules\q\q.js:564:44
at flush (C:\Users\prasannar\AppData\Local\atom\app-0.189.0\resources\app\node_modules\q\q.js:110:17)
at process._tickCallback (node.js:357:13)
-30:36.2 fuzzy-finder:toggle-file-finder (div.settings-view.pane-item)
2x -30:29.2 core:move-down (atom-text-editor.editor.mini)
-30:27.9 editor:move-to-first-character-of-line (atom-text-editor.editor.mini)
2x -30:27.5 core:move-right (atom-text-editor.editor.mini)
-30:26.9 core:delete (atom-text-editor.editor.mini)
-30:26.3 core:move-right (atom-text-editor.editor.mini)
-30:24.8 core:confirm (atom-text-editor.editor.mini)
{
"core": {
"disabledPackages": [
"hex",
"js-refactor",
"local-server",
"vertical-align",
"vim-mode",
"zentabs",
"scope-inspector",
"regex-railroad-diagram",
"refactor",
"project-colorize",
"pomodoro",
"neon-selection",
"mobile-preview",
"Zen",
"block-travel",
"git-difftool",
"angularjs",
"merge-conflicts",
"language-objective-c",
"archive-view",
"background-tips",
"dev-live-reload",
"language-c",
"language-clojure",
"language-coffee-script",
"language-csharp",
"language-gfm",
"language-go",
"language-java",
"language-mustache",
"language-make",
"language-perl",
"language-php",
"language-python",
"language-ruby",
"language-ruby-on-rails",
"language-toml",
"open-on-github",
"package-generator",
"welcome"
]
}
}
# User
autocomplete-plus, v2.8.0
column-select, v0.2.0
highlight-selected, v0.9.1
linter, v0.12.0
linter-csslint, v0.0.11
linter-jscs, v1.9.0
linter-jshint, v0.1.0
linter-jsonlint, v0.1.2
linter-less, v0.3.1
linter-scss-lint, v0.0.14
open-recent, v2.2.0
quick-jump, v0.0.4
word-jumper, v0.2.0
# Dev
No dev packages
AtomLinter v0.X.Y API has been deprecated. Please refer to the Linter docs to update and the latest API: https://github.com/atom-community/linter/wiki/Migrating-to-the-new-API
LinterGjslint.Linter (/Users/derek/.atom/packages/linter/lib/linter.coffee:60:4)
new LinterGjslint (/Users/derek/.atom/packages/linter-gjslint/lib/linter-gjslint.coffee:25:4)
Object.lint (/Users/derek/.atom/packages/linter/lib/legacy.coffee:61:21)
<unknown> (/Users/derek/.atom/packages/linter/lib/editor-linter.coffee:69:25)
currentLinter (/Users/derek/.atom/packages/linter/lib/editor-linter.coffee:68:19)
<unknown> (/Users/derek/.atom/packages/linter/lib/editor-linter.coffee:82:22)
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
These updates have been manually edited so Renovate will no longer make changes. To discard all commits and start over, click on a checkbox.
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
package.json
atom-linter ^10.0.0
atom-package-deps ^5.0.0
xregexp ^4.0.0
It looks like this linter does not currently have any specs written for it, adding it to the list being maintained here for tracking.
Specs do not need to be super detailed, as they should mainly test whether the package is properly running the linter plugin and parsing its messages. Leave testing of the linter functionality to the author of the linter.
If you need any help feel free to ask!
When I try to use this plugin I get this error:
Error: Traceback (most recent call last):
File "/usr/bin/gjslint", line 9, in <module>
load_entry_point('closure-linter==2.3.13', 'console_scripts', 'gjslint')()
File "/usr/lib/python2.7/site-packages/closure_linter/gjslint.py", line 236, in main
argv = flags.FLAGS(sys.argv)
File "/usr/lib/python2.7/site-packages/gflags.py", line 1319, in __call__
raise UnrecognizedFlagError(opt, value)
gflags.UnrecognizedFlagError: Unknown command line flag 'quiet'
at parameters.exit (/home/wil93/.atom/packages/linter-gjslint/node_modules/atom-linter/lib/helpers.js:74:20)
at triggerExitCallback (/usr/share/atom/resources/app.asar/src/buffered-process.js:213:47)
at /usr/share/atom/resources/app.asar/src/buffered-process.js:220:18
at Socket.<anonymous> (/usr/share/atom/resources/app.asar/src/buffered-process.js:98:18)
at emitOne (events.js:82:20)
at Socket.emit (events.js:169:7)
at Pipe._onclose (net.js:469:12)
I have closure-linter
installed (2.3.13), and I get a similar error if I run gjslint --quiet filename.js
, so it seems that --quiet
is just not a correct flag.
We're in the process of replacing linter
with a rewrite. Our central issue for tracking the plan is https://github.com/AtomLinter/linter-plus/issues/29. We're working hard to make this a smooth transition for you and for your users.
Please let us know here if you'd prefer to do the work yourself. If you have any questions or concerns please join us in our room on gitter.
[Enter steps to reproduce below:]
Atom Version: 0.198.0
System: Mac OS X 10.10.3
Thrown From: linter-gjslint package, v0.0.4
Failed to activate the linter package
At Cannot read property 'join' of undefined
TypeError: Cannot read property 'join' of undefined
at /Users/ligf/.atom/packages/linter-gjslint/lib/linter-gjslint.coffee:33:41
at Config.module.exports.Config.observeKeyPath (/Applications/Atom.app/Contents/Resources/app.asar/src/config.js:555:7)
at Config.module.exports.Config.observe (/Applications/Atom.app/Contents/Resources/app.asar/src/config.js:135:21)
at new LinterGjslint (/Users/ligf/.atom/packages/linter-gjslint/lib/linter-gjslint.coffee:31:17)
at LinterView.initLinters (/Users/ligf/.atom/packages/linter/lib/linter-view.coffee:51:27)
at new LinterView (/Users/ligf/.atom/packages/linter/lib/linter-view.coffee:33:6)
at /Users/ligf/.atom/packages/linter/lib/init.coffee:103:24
at Workspace.module.exports.Workspace.observeTextEditors (/Applications/Atom.app/Contents/Resources/app.asar/src/workspace.js:267:9)
at LinterInitializer.activate (/Users/ligf/.atom/packages/linter/lib/init.coffee:100:39)
at Package.module.exports.Package.activateNow (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:242:19)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package.js:223:30
at Package.module.exports.Package.measure (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:167:15)
at Package.module.exports.Package.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:215:14)
at PackageManager.module.exports.PackageManager.activatePackage (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:434:21)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:418:29
at Config.module.exports.Config.transact (/Applications/Atom.app/Contents/Resources/app.asar/src/config.js:311:16)
at PackageManager.module.exports.PackageManager.activatePackages (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:413:19)
at PackageManager.module.exports.PackageManager.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:394:46)
at Atom.module.exports.Atom.startEditorWindow (/Applications/Atom.app/Contents/Resources/app.asar/src/atom.js:623:21)
at Object.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/src/window-bootstrap.js:12:8)
at Object.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/src/window-bootstrap.js:23:4)
at Module._compile (module.js:452:26)
at Object.loadFile [as .js] (/Applications/Atom.app/Contents/Resources/app.asar/src/babel.js:162:21)
at Module.load (module.js:347:32)
at Function.Module._load (module.js:302:12)
at Module.require (module.js:357:17)
at require (module.js:376:17)
at setupWindow (file:///Applications/Atom.app/Contents/Resources/app.asar/static/index.js:86:23)
at window.onload (file:///Applications/Atom.app/Contents/Resources/app.asar/static/index.js:38:7)
{
"core": {
"audioBeep": false,
"themes": [
"seti-ui",
"solarized-dark-syntax"
]
}
}
# User
autocomplete-plus, v2.16.3
docblockr, v0.7.1
go-plus, v3.3.10
highlight-line, v0.10.2
highlight-selected, v0.9.2
language-todo, v0.21.0
linter, v0.12.2
minimap, v4.8.0
project-manager, v1.15.5
script, v2.23.0
seti-ui, v0.7.1
sync-settings, v0.2.2
# Dev
No dev packages
[Enter steps to reproduce below:]
atom filename.coffee
gjslint is in /usr/local/bin/ which is on my process.env.PATH
Looks like the problem is lines 32 and 33 of linter-gjslint.coffee
ignoreList = atom.config.get 'linter-gjslint.gjslintIgnoreList'
@cmd += " --disable " + ignoreList.join()
On my computer at least, atom.config.get 'linter-gjslint.gjslintIgnoreList'
returns undefined
, which obviously doesn't have a .join()
method.
Atom Version: 0.188.0
System: Mac OS X 10.9.5
Thrown From: linter-gjslint package, v0.0.4
Failed to activate the linter package
At Cannot read property 'join' of undefined
TypeError: Cannot read property 'join' of undefined
at /hlpUsers/awatts/.atom/packages/linter-gjslint/lib/linter-gjslint.coffee:33:41
at Config.module.exports.Config.observeKeyPath (/Applications/Atom.app/Contents/Resources/app/src/config.js:612:7)
at Config.module.exports.Config.observe (/Applications/Atom.app/Contents/Resources/app/src/config.js:126:21)
at new LinterGjslint (/hlpUsers/awatts/.atom/packages/linter-gjslint/lib/linter-gjslint.coffee:31:17)
at LinterView.initLinters (/hlpUsers/awatts/.atom/packages/linter/lib/linter-view.coffee:51:27)
at new LinterView (/hlpUsers/awatts/.atom/packages/linter/lib/linter-view.coffee:33:6)
at /hlpUsers/awatts/.atom/packages/linter/lib/init.coffee:88:24
at Workspace.module.exports.Workspace.observeTextEditors (/Applications/Atom.app/Contents/Resources/app/src/workspace.js:282:9)
at LinterInitializer.activate (/hlpUsers/awatts/.atom/packages/linter/lib/init.coffee:85:39)
at Package.module.exports.Package.activateNow (/Applications/Atom.app/Contents/Resources/app/src/package.js:240:19)
at /Applications/Atom.app/Contents/Resources/app/src/package.js:221:30
at Package.module.exports.Package.measure (/Applications/Atom.app/Contents/Resources/app/src/package.js:167:15)
at Package.module.exports.Package.activate (/Applications/Atom.app/Contents/Resources/app/src/package.js:214:14)
at PackageManager.module.exports.PackageManager.activatePackage (/Applications/Atom.app/Contents/Resources/app/src/package-manager.js:461:21)
at /Applications/Atom.app/Contents/Resources/app/src/package-manager.js:445:29
at Config.module.exports.Config.transact (/Applications/Atom.app/Contents/Resources/app/src/config.js:343:16)
at PackageManager.module.exports.PackageManager.activatePackages (/Applications/Atom.app/Contents/Resources/app/src/package-manager.js:440:19)
at PackageManager.module.exports.PackageManager.activate (/Applications/Atom.app/Contents/Resources/app/src/package-manager.js:423:46)
at Atom.module.exports.Atom.startEditorWindow (/Applications/Atom.app/Contents/Resources/app/src/atom.js:625:21)
at Object.<anonymous> (/Applications/Atom.app/Contents/Resources/app/src/window-bootstrap.js:12:8)
at Object.<anonymous> (/Applications/Atom.app/Contents/Resources/app/src/window-bootstrap.js:23:4)
at Module._compile (module.js:475:26)
at Object.loadFile [as .js] (/Applications/Atom.app/Contents/Resources/app/src/babel.js:162:21)
at Module.load (module.js:370:32)
at Function.Module._load (module.js:325:12)
at Module.require (module.js:380:17)
at require (module.js:399:17)
at window.onload (file:///Applications/Atom.app/Contents/Resources/app/static/index.js:51:25)
{
"core": {}
}
# User
Sublime-Style-Column-Selection, v1.2.3
atom-color-highlight, v3.0.8
atom-jinja2, v0.5.0
autoclose-html, v0.15.0
autocomplete-css, v0.6.0
autocomplete-haxe, v0.2.0
autocomplete-paths, v1.0.2
autocomplete-plus, v2.6.0
autocomplete-plus-async, v0.22.0
autocomplete-snippets, v1.2.0
coffee-compile, v0.11.0
editorconfig, v0.3.3
emmet, v2.3.4
file-icons, v1.5.2
git-log, v0.3.0
highlight-selected, v0.9.1
language-actionscript3, v0.2.0
language-latex, v0.4.1
language-liquid, v0.2.0
linter, v0.12.0
linter-coffeelint, v0.2.0
linter-csslint, v0.0.11
linter-flake8, v1.3.0
linter-js-yaml, v1.0.0
linter-jshint, v0.1.0
linter-pep257, v0.2.0
linter-pylint, v0.2.1
linter-rubocop, v0.2.2
linter-scalac, v0.3.3
linter-scss-lint, v0.0.14
minimap, v4.6.0
minimap-git-diff, v4.1.2
minimap-highlight-selected, v4.2.0
project-manager, v1.15.5
save-session, v0.12.3
symbols-tree-view, v0.8.3
# Dev
No dev packages
gjslint has a useful --strict flag that I'd like to be able to configure linter-gjslint to use.
We could either add support for each of the flags as separate options (nicer UI) but then that becomes a maintenance burden. So a simple text field that lets you specify extra flags that will be passed to the gjslint executable would probably be a good solution.
AtomLinter v0.X.Y API has been deprecated. Please refer to the Linter docs to update and the latest API: https://github.com/AtomLinter/Linter/wiki/Migrating-to-the-new-API
Object.activate (/Users/rs/.atom/packages/linter/lib/main.coffee:57:8)
Package.activateNow (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:240:19)
<unknown> (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:221:30)
Package.measure (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:165:15)
Package.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:213:14)
PackageManager.activatePackage (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:452:21)
I get the following error on atom 1.5.0-beta3, Kubuntu 15.10:
Error: Column start (16) greater than line length (9)
at Object.rangeFromLineNumber (/home/dodekeract/.atom/packages/linter-gjslint/node_modules/atom-linter/lib/helpers.js:191:11)
at /home/dodekeract/.atom/packages/linter-tidy/lib/main.coffee:41:29
at process._tickCallback (node.js:368:9)
This seems to be related to AtomLinter/linter-tidy/issues/24 though, so I'm not sure, which package is "broken".
installed
on reopening atom 1.14.2
I got this err:
Error: spawn gjslint ENOENT
File 0Project 0No Issues~/Documents/fcc challenges/forEachfromJSON.js1:1
LFUTF-8JavaScript
Error: spawn gjslint ENOENT
Error: spawn gjslint ENOENT
at exports._errnoException (util.js:1026:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
gjslint does not show up in the dropdown Packages and when I ran clear tabs the error message popped up again:
Error: spawn gjslint ENOENT
Error: spawn gjslint ENOENT
at exports._errnoException (util.js:1026:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.