marko-js / atom-language-marko

Syntax highlighting in Atom for the Marko templating language
MIT License
33 stars 6 forks source link

Something happened #8

Open phoenix727 opened 7 years ago

phoenix727 commented 7 years ago

[Enter steps to reproduce below:]

  1. ...
  2. ...

Atom Version: 1.10.2 Electron Version: 0.37.8 System: Mac OS X 10.11.6 Thrown From: language-marko package, v2.0.10

Stack Trace

Uncaught Error: Unable to load taglib ([/Users/pecopeland/Node_Projects/feshlist/node_modules/sellerhub-ui-components/marko.json]): Error: Error while applying option of "tags-dir". Cause: EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self'".

at Object.extractTagDef (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/tag-def-from-code.js:55:52)
at scanTagsDir (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/scanTagsDir.js:143:50)
at TaglibLoader.tagsDir (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:210:13)
at invokeHandlers (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/node_modules/property-handlers/lib/index.js:72:29)
at TaglibLoader._load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:72:9)
at Object.exports.loadTaglib (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:312:29)
at Object.load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/index.js:31:25)
at getAllDependencyNames.forEach.e (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:159:43)
at Array.forEach (native)
at Object.find (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:149:40)
at Object.buildLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-lookup/index.js:42:29)
at Object.buildTaglibLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/index.js:177:25)
at SuggestionsBuilder.taglibLookup (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:190:82)
at SuggestionsBuilder.addAttributeValueSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:339:13)
at SuggestionsBuilder.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:147:22)
at Object.module.exports.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/provider.js:26:46)
at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:325:56
at Array.forEach (native)
at AutocompleteManager.module.exports.AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:304:17)
at AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61)
at AutocompleteManager.module.exports.AutocompleteManager.findSuggestions (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:291:19)
at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61 ([/Users/pecopeland/Node_Projects/feshlist/node_modules/sellerhub-ui-components/marko.json])
At /Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:314

Error: Unable to load taglib ([/Users/pecopeland/Node_Projects/feshlist/node_modules/sellerhub-ui-components/marko.json]): Error: Error while applying option of "tags-dir". Cause: EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self'".

    at Object.extractTagDef (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/tag-def-from-code.js:55:52)
    at scanTagsDir (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/scanTagsDir.js:143:50)
    at TaglibLoader.tagsDir (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:210:13)
    at invokeHandlers (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/node_modules/property-handlers/lib/index.js:72:29)
    at TaglibLoader._load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:72:9)
    at Object.exports.loadTaglib (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:312:29)
    at Object.load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/index.js:31:25)
    at getAllDependencyNames.forEach.e (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:159:43)
    at Array.forEach (native)
    at Object.find (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:149:40)
    at Object.buildLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-lookup/index.js:42:29)
    at Object.buildTaglibLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/index.js:177:25)
    at SuggestionsBuilder.taglibLookup (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:190:82)
    at SuggestionsBuilder.addAttributeValueSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:339:13)
    at SuggestionsBuilder.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:147:22)
    at Object.module.exports.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/provider.js:26:46)
    at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:325:56
    at Array.forEach (native)
    at AutocompleteManager.module.exports.AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:304:17)
    at AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61)
    at AutocompleteManager.module.exports.AutocompleteManager.findSuggestions (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:291:19)
    at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61 ([/Users/pecopeland/Node_Projects/feshlist/node_modules/sellerhub-ui-components/marko.json])
    at module.exports (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/node_modules/raptor-util/createError.js:7:50)
    at Object.exports.loadTaglib (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:314:15)
    at Object.load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/index.js:31:25)
    at getAllDependencyNames.forEach.e (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:159:43)
    at Array.forEach (native)
    at Object.find (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:149:40)
    at Object.buildLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-lookup/index.js:42:29)
    at Object.buildTaglibLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/index.js:177:25)
    at SuggestionsBuilder.taglibLookup (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:190:82)
    at SuggestionsBuilder.addAttributeValueSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:339:13)
    at SuggestionsBuilder.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:147:22)
    at Object.module.exports.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/provider.js:26:46)
    at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:325:56
    at Array.forEach (native)
    at AutocompleteManager.module.exports.AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:304:17)
    at AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61)
    at AutocompleteManager.module.exports.AutocompleteManager.findSuggestions (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:291:19)
    at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61
Caused by: Error: Error while applying option of "tags-dir". Cause: EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self'".

    at Object.extractTagDef (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/tag-def-from-code.js:55:52)
    at scanTagsDir (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/scanTagsDir.js:143:50)
    at TaglibLoader.tagsDir (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:210:13)
    at invokeHandlers (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/node_modules/property-handlers/lib/index.js:72:29)
    at TaglibLoader._load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:72:9)
    at Object.exports.loadTaglib (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:312:29)
    at Object.load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/index.js:31:25)
    at getAllDependencyNames.forEach.e (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:159:43)
    at Array.forEach (native)
    at Object.find (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:149:40)
    at Object.buildLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-lookup/index.js:42:29)
    at Object.buildTaglibLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/index.js:177:25)
    at SuggestionsBuilder.taglibLookup (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:190:82)
    at SuggestionsBuilder.addAttributeValueSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:339:13)
    at SuggestionsBuilder.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:147:22)
    at Object.module.exports.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/provider.js:26:46)
    at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:325:56
    at Array.forEach (native)
    at AutocompleteManager.module.exports.AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:304:17)
    at AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61)
    at AutocompleteManager.module.exports.AutocompleteManager.findSuggestions (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:291:19)
    at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61 ([/Users/pecopeland/Node_Projects/feshlist/node_modules/sellerhub-ui-components/marko.json])
    at error (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/node_modules/property-handlers/lib/index.js:33:17)
    at invokeHandlers (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/node_modules/property-handlers/lib/index.js:75:17)
    at TaglibLoader._load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:72:9)
    at Object.exports.loadTaglib (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/loader-taglib.js:312:29)
    at Object.load (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-loader/index.js:31:25)
    at getAllDependencyNames.forEach.e (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:159:43)
    at Array.forEach (native)
    at Object.find (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-finder/index.js:149:40)
    at Object.buildLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/taglib-lookup/index.js:42:29)
    at Object.buildTaglibLookup (/Users/pecopeland/Node_Projects/feshlist/node_modules/marko/compiler/index.js:177:25)
    at SuggestionsBuilder.taglibLookup (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:190:82)
    at SuggestionsBuilder.addAttributeValueSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:339:13)
    at SuggestionsBuilder.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/SuggestionsBuilder.js:147:22)
    at Object.module.exports.getSuggestions (/Users/pecopeland/.atom/packages/language-marko/src/autocomplete/provider.js:26:46)
    at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:325:56
    at Array.forEach (native)
    at AutocompleteManager.module.exports.AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:304:17)
    at AutocompleteManager.getSuggestionsFromProviders (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61)
    at AutocompleteManager.module.exports.AutocompleteManager.findSuggestions (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:291:19)
    at /Applications/Atom.app/Contents/Resources/app.asar/node_modules/autocomplete-plus/lib/autocomplete-manager.js:3:61

Commands

     -7:47.9.0 tabs:close-other-tabs (li.texteditor.tab.sortable.active.right-clicked)
     -6:23.9.0 editor:newline (atom-text-editor.editor.is-focused)
  2x -6:18.2.0 core:backspace (atom-text-editor.editor.is-focused)
     -6:13.8.0 core:move-right (atom-text-editor.editor.is-focused)
  5x -6:10.7.0 core:backspace (atom-text-editor.editor.is-focused.autocomplete-active)
     -3:52.1.0 core:copy (atom-text-editor.editor.is-focused)
     -3:49.4.0 core:paste (atom-text-editor.editor.is-focused)
     -3:31.2.0 core:undo (atom-text-editor.editor.is-focused)
     -3:27.5.0 core:redo (atom-text-editor.editor.is-focused)
     -1:58.7.0 core:backspace (atom-text-editor.editor.is-focused)
  2x -0:25.7.0 editor:newline (atom-text-editor.editor.is-focused)
     -0:14.1.0 autocomplete-plus:confirm (atom-text-editor.editor.is-focused.autocomplete-active)
  2x -0:09.4.0 core:move-right (atom-text-editor.editor.is-focused.autocomplete-active)
  2x -0:08.3.0 core:save (atom-text-editor.editor.is-focused)
     -0:01.2.0 core:backspace (atom-text-editor.editor.is-focused)

Config

{
  "core": {
    "allowPendingPaneItems": false,
    "disabledPackages": [
      "markdown-preview",
      "jslint",
      "autocomplete-marko"
    ],
    "openEmptyEditorOnStart": false
  }
}

Installed Packages

# User
atom-beautify, v0.29.13 (active)
autocomplete-marko, v2.0.0 (inactive)
file-icons, v1.7.20 (active)
highlight-selected, v0.11.2 (active)
hyperclick-marko, v2.0.0 (active)
js-hyperclick, v1.8.1 (active)
jslint, v1.5.1 (inactive)
language-marko, v2.0.10 (active)
markdown-preview-plus, v2.4.0 (active)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.52.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.44.0 (inactive)
base16-tomorrow-dark-theme, v1.1.0 (inactive)
base16-tomorrow-light-theme, v1.1.1 (inactive)
one-dark-ui, v1.5.0 (active)
one-light-ui, v1.5.0 (inactive)
one-dark-syntax, v1.3.0 (active)
one-light-syntax, v1.3.0 (inactive)
solarized-dark-syntax, v1.0.2 (inactive)
solarized-light-syntax, v1.0.2 (inactive)
about, v1.5.3 (active)
archive-view, v0.61.1 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.11.2 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.31.1 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (active)
background-tips, v0.26.1 (active)
bookmarks, v0.41.0 (active)
bracket-matcher, v0.82.1 (active)
command-palette, v0.38.0 (inactive)
deprecation-cop, v0.54.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.39.0 (active)
find-and-replace, v0.201.0 (active)
fuzzy-finder, v1.3.0 (active)
git-diff, v1.1.0 (active)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.1 (active)
image-view, v0.58.2 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.0 (active)
link, v0.31.1 (inactive)
markdown-preview, v0.158.0 (inactive)
metrics, v0.53.1 (active)
notifications, v0.65.0 (active)
open-on-github, v1.2.0 (inactive)
package-generator, v1.0.0 (inactive)
settings-view, v0.242.2 (active)
snippets, v1.0.2 (active)
spell-check, v0.67.1 (active)
status-bar, v1.4.1 (active)
styleguide, v0.47.0 (active)
symbols-view, v0.113.0 (inactive)
tabs, v0.100.2 (active)
timecop, v0.33.2 (active)
tree-view, v0.208.2 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.34.0 (active)
whitespace, v0.33.0 (active)
wrap-guide, v0.38.1 (active)
language-c, v0.52.1 (active)
language-clojure, v0.21.0 (active)
language-coffee-script, v0.47.2 (active)
language-csharp, v0.12.1 (active)
language-css, v0.37.1 (active)
language-gfm, v0.88.0 (active)
language-git, v0.15.0 (active)
language-go, v0.42.1 (active)
language-html, v0.45.1 (active)
language-hyperlink, v0.16.0 (active)
language-java, v0.23.0 (active)
language-javascript, v0.119.0 (active)
language-json, v0.18.2 (active)
language-less, v0.29.5 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.35.0 (active)
language-php, v0.37.2 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.0 (active)
language-ruby, v0.69.0 (active)
language-ruby-on-rails, v0.25.0 (active)
language-sass, v0.56.0 (active)
language-shellscript, v0.22.4 (active)
language-source, v0.9.0 (active)
language-sql, v0.23.0 (active)
language-text, v0.7.1 (active)
language-todo, v0.28.0 (active)
language-toml, v0.18.0 (active)
language-xml, v0.34.9 (active)
language-yaml, v0.26.0 (active)

# Dev
No dev packages
phoenix727 commented 7 years ago

@mlrawlings did this ☝️

patrick-steele-idem commented 7 years ago

This is a known issue. Atom doesn't seem to allow eval and we need to come up with a good way to skip over taglibs that can't be loaded in Atom.

To avoid this problem, it's recommended to move your tag definition to an external marko-tag.json file instead of inlining it in the JavaScript code.

phoenix727 commented 7 years ago

I know, you have mentioned this to me before, Mike just saw it pop up in my project and pasted it here.