quintanar401 / autocomplete-kdb-q

Autocomplete/linter for KDB-Q
MIT License
13 stars 6 forks source link

Uncaught TypeError: Cannot read property 'push' of undefined #4

Closed cheduo closed 7 years ago

cheduo commented 7 years ago

[Enter steps to reproduce below:]

  1. ...
  2. ...

Atom Version: 1.13.0 Electron Version: 1.3.13 System: Microsoft Windows 7 Enterprise Thrown From: autocomplete-kdb-q package, v0.5.4

Stack Trace

Uncaught TypeError: Cannot read property 'push' of undefined

At /C:/Users/chenduo/.atom/packages/autocomplete-kdb-q/lib/parser.coffee:218

TypeError: Cannot read property 'push' of undefined
    at Parser.module.exports.Parser.parseLine (file:///C:/Users/chenduo/.atom/packages/autocomplete-kdb-q/lib/parser.coffee:127:23)
    at Parser.module.exports.Parser.parseFile (file:///C:/Users/chenduo/.atom/packages/autocomplete-kdb-q/lib/parser.coffee:114:20)
    at file:///C:/Users/chenduo/.atom/packages/autocomplete-kdb-q/lib/parser.coffee:38:18
    at Function.module.exports.Emitter.simpleDispatch (C:\ProgramData\chenduo\atom\app-1.13.0\resources\app.asar\node_modules\event-kit\lib\emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (C:\ProgramData\chenduo\atom\app-1.13.0\resources\app.asar\node_modules\event-kit\lib\emitter.js:129:28)
    at TokenBuffer.module.exports.TokenBuffer.updateNextChunk (file:///C:/Users/chenduo/.atom/packages/autocomplete-kdb-q/lib/tokenBuffer.coffee:62:16)
    at file:///C:/Users/chenduo/.atom/packages/autocomplete-kdb-q/lib/tokenBuffer.coffee:71:17
    at C:\Users\chenduo\.atom\packages\autocomplete-kdb-q\node_modules\underscore\underscore.js:666:47

Commands

     -9:59.9.0 autocomplete-plus:confirm (input.hidden-input)
     -9:59 core:undo (input.hidden-input)
  3x -9:57.6.0 kdb-q:doc (input.hidden-input)
     -1:18.9.0 editor:newline (input.hidden-input)
     -1:18.6.0 bookmarks:jump-to-next-bookmark (input.hidden-input)
  2x -1:15.9.0 core:move-up (input.hidden-input)
     -1:15.4.0 core:move-down (input.hidden-input)
  2x -1:15.1.0 core:move-right (input.hidden-input)
  2x -1:14.3.0 core:backspace (input.hidden-input)
     -1:12.8.0 core:move-left (input.hidden-input)
  2x -1:11.7.0 kdb-q:doc (input.hidden-input)
  2x -1:10.4.0 core:move-right (input.hidden-input)
  8x -0:49.1.0 kdb-q:references (input.hidden-input)
  2x -0:37.8.0 kdb-q:definition (input.hidden-input)
     -0:36.4.0 autocomplete-plus:confirm (input.hidden-input)
  5x -0:35.3.0 kdb-q:definition (input.hidden-input)

Config

{
  "core": {
    "closeEmptyWindows": false,
    "disabledPackages": [
      "activate-power-mode",
      "welcome"
    ],
    "telemetryConsent": "no"
  }
}

Installed Packages

# User
activate-power-mode, v1.2.0 (inactive)
atom-coffee-repl, v0.1.0 (inactive)
auto-indent, v0.5.0 (active)
autocomplete-kdb-q, v0.5.4 (active)
coffee-compile, v0.24.0 (active)
comment, v0.5.0 (active)
compare-files, v0.8.0 (active)
connect-kdb-q, v0.4.4 (active)
default-language, v0.3.0 (active)
eval-javascript, v1.2.0 (inactive)
highlight-selected, v0.12.0 (active)
Hydrogen, v1.5.3 (inactive)
javascript-snippets, v1.2.1 (active)
language-kdb-q, v0.3.0 (active)
node-debugger, v1.10.0 (active)
atom-dark-syntax, v0.28.0 (inactive)
atom-dark-ui, v0.53.0 (inactive)
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 (active)
one-light-ui, v1.8.2 (inactive)
one-dark-syntax, v1.6.0 (active)
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.1 (active)
metrics, v1.1.2 (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 (inactive)
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
quintanar401 commented 7 years ago

This error seems to be caused by a particular Q file where "(" symbol is at an unusual place. Could you provide this file (or the part that causes the exception) otherwise it will be difficult to understand what is wrong.

cheduo commented 7 years ago

Hi, Thank you for your reply. Currently I can't reproduce this problem again. Should delete this issue? Otherwise I can send you the detail, once this problem appears again...

cheduo commented 7 years ago

I find one situation:

  1. when I write a code (I run code line by line), I use \a in a function, (so there's some blank space (tab) in front of it), it doesn't work
  2. then I delete these blank space and the I press enter, the code works, but I get the error of 'push'.
quintanar401 commented 7 years ago

I've found the bug. Fixed in the patch release.