crucialfelix / atom-supercollider

SuperCollider development environment for Atom.io
MIT License
84 stars 12 forks source link

CompileError #81

Closed tatecarson closed 7 years ago

tatecarson commented 7 years ago

I've been getting this compile error the first time I try to compile, but not the second time.

Steps to reproduce:

  1. From startup command + shift + k

Atom Version: 1.13.1 Electron Version: 1.3.13 System: Mac OS X 10.11.6 Thrown From: supercollider package, v0.7.2

Stack Trace

Uncaught Error: [object Object]

At /Users/tatecarson/.atom/packages/supercollider/node_modules/q/q.js:155

Error: [object Object]
    at process.<anonymous> (/Users/tatecarson/.atom/packages/supercollider/node_modules/dryadic/lib/DryadPlayer.js:35:11)
    at emitTwo (events.js:111:20)
    at process.emit (events.js:191:7)
    at /Users/tatecarson/.atom/packages/supercollider/node_modules/q/q.js:1059:25
    at runSingle (/Users/tatecarson/.atom/packages/supercollider/node_modules/q/q.js:137:13)
    at flush (/Users/tatecarson/.atom/packages/supercollider/node_modules/q/q.js:130:13)
    at _combinedTickCallback (internal/process/next_tick.js:67:7)
    at process._tickCallback (internal/process/next_tick.js:98:9)

Commands

     -1:41.1.0 deprecation-cop:view (atom-workspace.workspace.scrollbars-visible-when-scrolling.theme-spacegray-atom-dark-syntax.theme-atom-dark-ui)
     -0:54.1.0 core:confirm (input.hidden-input)
     -0:20.2.0 vim-mode:activate-insert-mode (input.hidden-input)
     -0:18.7.0 supercollider:recompile (input.hidden-input)

Config

{
  "core": {
    "disabledPackages": [
      "goto",
      "emmet",
      "symbols-view",
      "markdown-preview",
      "ever-notedown",
      "todo-list",
      "atom-python-run"
    ],
    "excludeVcsIgnoredPaths": false,
    "telemetryConsent": "limited",
    "themes": [
      "atom-dark-ui",
      "spacegray-atom-dark-syntax"
    ]
  },
  "supercollider": {
    "debug": true
  }
}

Installed Packages

# User
aligner, v0.22.3 (active)
AtLilyPond, v1.2.0 (active)
atom-beautify, v0.29.17 (inactive)
atom-bootstrap3, v1.2.12 (inactive)
atom-cursor-indent, v0.1.1 (active)
atom-html-preview, v0.1.22 (active)
atom-material-ui, v1.3.9 (inactive)
atom-python-run, v0.7.3 (inactive)
atom-wrap-in-tag, v0.6.0 (inactive)
auto-indent, v0.5.0 (active)
auto-replace-in-selection, v4.0.0 (inactive)
autocomplete-bibtex, v0.7.0 (active)
autocomplete-python, v1.8.37 (active)
double-click-tree-view, v1.1.0 (active)
ever-notedown, v0.2.24 (inactive)
ex-mode, v0.13.1 (inactive)
guess-indent, v0.1.0 (inactive)
hyperclick, v0.0.40 (active)
indent-guide-improved, v1.4.12 (active)
jade, v1.1.0 (inactive)
kite, v0.7.10 (active)
language-latex, v1.0.0 (active)
language-pfm, v0.82.0 (active)
language-pug, v0.0.19 (active)
language-tex, v0.4.0 (active)
latexer, v0.3.0 (active)
latextools, v0.8.5 (active)
linter, v1.11.21 (active)
linter-pug-lint, v0.2.0 (active)
markdown-pdf, v1.5.0 (inactive)
markdown-preview-plus, v2.4.1 (active)
markdown-writer, v2.6.3 (inactive)
marked, v0.1.10 (inactive)
p5xjs-autocomplete, v0.11.0 (active)
pdf-view, v0.54.0 (active)
processing, v0.13.0 (inactive)
processing-autocomplete, v0.2.0 (active)
processing-language, v0.2.0 (active)
project-manager, v3.3.3 (active)
python-debugger, v0.2.0 (inactive)
python-indent, v1.0.0 (active)
python-tools, v0.6.9 (active)
sane-indentation, v0.1.2 (active)
schelp-syntax, v0.6.3 (inactive)
script, v3.14.1 (inactive)
source-preview-pug, v0.2.0 (active)
spacegray-atom-dark-syntax, v1.3.2 (active)
supercollider, v0.7.2 (active)
symbol-gen, v1.3.1 (active)
terminal-plus, v0.14.5 (active)
tidalcycles, v0.8.5 (inactive)
todo-list, v1.0.0 (inactive)
tree-view-copy-project-path, v1.0.1 (inactive)
tree-view-copy-relative-path, v1.0.1 (inactive)
typewriter, v0.5.0 (active)
vim-mode, v0.66.0 (active)
vim-surround, v0.8.1 (active)
zotero-citations, v0.19.1 (inactive)
atom-dark-syntax, v0.28.0 (inactive)
atom-dark-ui, v0.53.0 (active)
atom-light-syntax, v0.29.0 (inactive)
atom-light-ui, v0.46.0 (inactive)
base16-tomorrow-dark-theme, v1.4.0 (inactive)
base16-tomorrow-light-theme, v1.4.0 (inactive)
one-dark-ui, v1.8.2 (inactive)
one-light-ui, v1.8.2 (inactive)
one-dark-syntax, v1.6.0 (inactive)
one-light-syntax, v1.6.0 (inactive)
solarized-dark-syntax, v1.1.1 (inactive)
solarized-light-syntax, v1.1.1 (inactive)
about, v1.7.2 (active)
archive-view, v0.62.0 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.14.1 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.33.1 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.29.0 (inactive)
autosave, v0.23.2 (active)
background-tips, v0.26.1 (active)
bookmarks, v0.43.2 (active)
bracket-matcher, v0.85.1 (active)
command-palette, v0.39.1 (inactive)
deprecation-cop, v0.55.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.40.0 (active)
find-and-replace, v0.204.5 (inactive)
fuzzy-finder, v1.4.0 (active)
git-diff, v1.2.0 (active)
go-to-line, v0.31.2 (inactive)
grammar-selector, v0.48.2 (active)
image-view, v0.60.0 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.1 (active)
link, v0.31.2 (inactive)
markdown-preview, v0.159.3 (inactive)
metrics, v1.1.3 (active)
notifications, v0.65.1 (active)
open-on-github, v1.2.1 (inactive)
package-generator, v1.0.2 (inactive)
settings-view, v0.244.0 (active)
snippets, v1.0.4 (active)
spell-check, v0.68.5 (active)
status-bar, v1.6.0 (active)
styleguide, v0.48.0 (active)
symbols-view, v0.113.1 (inactive)
tabs, v0.103.1 (active)
timecop, v0.33.2 (active)
tree-view, v0.211.1 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.35.1 (active)
whitespace, v0.35.0 (active)
wrap-guide, v0.39.0 (active)
language-c, v0.54.0 (active)
language-clojure, v0.22.1 (active)
language-coffee-script, v0.48.1 (active)
language-csharp, v0.13.0 (active)
language-css, v0.40.1 (active)
language-gfm, v0.88.0 (active)
language-git, v0.15.0 (active)
language-go, v0.43.0 (active)
language-html, v0.47.1 (active)
language-hyperlink, v0.16.1 (active)
language-java, v0.24.0 (active)
language-javascript, v0.122.0 (active)
language-json, v0.18.3 (active)
language-less, v0.29.6 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.37.0 (active)
language-php, v0.37.3 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.1 (active)
language-ruby, v0.70.2 (active)
language-ruby-on-rails, v0.25.1 (active)
language-sass, v0.57.0 (active)
language-shellscript, v0.23.0 (active)
language-source, v0.9.0 (active)
language-sql, v0.25.0 (active)
language-text, v0.7.1 (active)
language-todo, v0.29.1 (active)
language-toml, v0.18.1 (active)
language-xml, v0.34.12 (active)
language-yaml, v0.27.1 (active)

# Dev
No dev packages
tatecarson commented 7 years ago

Atom update to 1.14.4 fixes problem.

crucialfelix commented 7 years ago

Ah, it is actually my fault, but it isn't my error. If you follow me.

There was something in DryadPlayer that throws an exception if any Promise does not handle an error. This is a common problem with Promises: if you don't explicitly handle the error then all errors get silently swallowed. You have to handle the error at the top of your Promise chain.

This should not have been done as that is a global hook.

So some other package failed to handle a Promise error, and my package stepped up and caught it and threw the error. So it looks like atom-supercollider failed.

I've already since removed the naughty code but I'm not sure if I have updated atom-supercollider with that yet.

tatecarson commented 7 years ago

The latest atom update actually didn't fix the problem, as you probably knew. Thanks for the explanation, looking forward to atom-sc updates.