apcshields / autocomplete-bibtex

Adds Pandoc-style BibTeX citation key autocompletion to autocomplete+ for Atom.
MIT License
44 stars 17 forks source link

Uncaught TypeError: Cannot read property 'length' of undefined #75

Closed alexhagen closed 6 years ago

alexhagen commented 7 years ago

[Enter steps to reproduce below:]

  1. Open Settings
  2. Type anything into the bibtex path (including a valid path to a bibtex file)

Atom Version: 1.13.1 Electron Version: 1.3.13 System: Ubuntu 16.04.1 Thrown From: autocomplete-bibtex package, v0.7.0

Stack Trace

Uncaught TypeError: Cannot read property 'length' of undefined

At /home/ahagen/.atom/packages/autocomplete-bibtex/lib/provider.coffee:101

TypeError: Cannot read property 'length' of undefined
    at ReferenceProvider.module.exports.ReferenceProvider.buildWordList (/home/ahagen/.atom/packages/autocomplete-bibtex/lib/provider.coffee:101:5)
    at ReferenceProvider.buildWordList (/home/ahagen/.atom/packages/autocomplete-bibtex/lib/provider.coffee:1:1)
    at ReferenceProvider.module.exports.ReferenceProvider.buildWordListFromFiles (/home/ahagen/.atom/packages/autocomplete-bibtex/lib/provider.coffee:146:23)
    at ReferenceProvider.buildWordListFromFiles (/home/ahagen/.atom/packages/autocomplete-bibtex/lib/provider.coffee:1:1)
    at /home/ahagen/.atom/packages/autocomplete-bibtex/lib/provider.coffee:27:8
    at /usr/share/atom/resources/app.asar/src/config.js:635:20
    at Function.module.exports.Emitter.simpleDispatch (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:129:28)
    at Config.module.exports.Config.emitChangeEvent (/usr/share/atom/resources/app.asar/src/config.js:826:29)
    at Config.module.exports.Config.setRawValue (/usr/share/atom/resources/app.asar/src/config.js:612:19)
    at Config.module.exports.Config.set (/usr/share/atom/resources/app.asar/src/config.js:227:14)
    at SettingsPanel.module.exports.SettingsPanel.set (/usr/share/atom/resources/app.asar/node_modules/settings-view/lib/settings-panel.js:200:28)
    at /usr/share/atom/resources/app.asar/node_modules/settings-view/lib/settings-panel.js:262:26
    at Function.module.exports.Emitter.simpleDispatch (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:129:28)
    at /usr/share/atom/resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:1417:25

Commands

     -0:40.1.0 core:backspace (input.hidden-input)
     -0:09.1.0 core:confirm (input.hidden-input)

Config

{
  "core": {
    "disabledPackages": [
      "linter-pep8",
      "typewriter"
    ],
    "telemetryConsent": "limited",
    "themes": [
      "one-light-ui",
      "one-light-syntax"
    ]
  },
  "autocomplete-bibtex": {
    "bibtex": [
      "/user"
    ]
  }
}

Installed Packages

# User
autocomplete-bibtex, v0.7.0 (active)
git-time-metric, v1.1.7 (active)
intentions, v1.1.2 (active)
language-latex, v1.0.0 (active)
linter, v1.11.18 (active)
linter-markdown, v3.0.2 (active)
linter-pep8, v1.3.2 (inactive)
linter-spell, v0.12.6 (active)
linter-spell-latex, v0.9.1 (inactive)
markdown-document, v0.2.1 (inactive)
markdown-preview-plus, v2.4.0 (active)
markdown-writer, v2.5.1 (inactive)
preview-inline, v1.4.5 (active)
wordcount, v2.10.3 (active)
Zen, v0.16.4 (inactive)
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 (inactive)
one-light-ui, v1.8.2 (active)
one-dark-syntax, v1.6.0 (inactive)
one-light-syntax, v1.6.0 (active)
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 (active)
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
harlecin commented 7 years ago

I have exactly the same issue. Autocomplete-Bibtex used to work just fine, but when I changed the location of my bib-file and added more entries it stopped working

harlecin commented 7 years ago

I have absolutely no idea why, but after updating a couple of packages, autocomplete-bibtext works again without a problem. Thx for the awesome package by the way!

harlecin commented 7 years ago

Sry, I was to quick with the second comment: when I try to change the location of the bibtex file I get the same error as described above. For some reason, autocomplete-bibtex seems to cached some old bibtex file. I replaced the bibtex file with a newer version containing more entries, but those are not loaded

mangecoeur commented 7 years ago

It does cache the file to speed up loading, however it should detect if the new file has a more recent modified date. Check the modification date of your files. Are they maybe stored on a network drive?

On 27 Mar 2017 18:41, "Harlecin" notifications@github.com wrote:

Sry, I was to quick with the second comment: when I try to change the location of the bibtex file I get the same error as described above. For some reason, autocomplete-bibtex seems to cached some old bibtex file. I replaced the bibtex file with a newer version containing more entries, but those are not loaded

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/apcshields/autocomplete-bibtex/issues/75#issuecomment-289413624, or mute the thread https://github.com/notifications/unsubscribe-auth/AAtYVP4b3iRoJncWFuezvwV_NojQ8WlSks5rp43_gaJpZM4Lx3Pu .

harlecin commented 7 years ago

Hey, the file is stored in a dropbox folder on my local drive. Strangely, when I change the path, to a different file, I get the 'undefined' length error. When I ignore it and restart Atom, it loads my old bibtex file. My bibtex file is generated by Mendeley, same as your test example. Thx for any help!

Here is the error message I get:

[Enter steps to reproduce:]

  1. Change bibtex path in the GUI: the moment I enter any path, I get this error, same if I change it in config file
  2. Restarting Atom loads an old cached library

Atom: 1.14.1 x64 Electron: 1.3.13 OS: Mac OS X 10.11.6 Thrown From: autocomplete-bibtex package 0.7.0

Stack Trace

Uncaught TypeError: Cannot read property 'length' of undefined

At /Users/username/.atom/packages/autocomplete-bibtex/lib/provider.coffee:101

TypeError: Cannot read property 'length' of undefined
    at ReferenceProvider.module.exports.ReferenceProvider.buildWordList (/packages/autocomplete-bibtex/lib/provider.coffee:101:5)
    at ReferenceProvider.buildWordList (/packages/autocomplete-bibtex/lib/provider.coffee:1:1)
    at ReferenceProvider.module.exports.ReferenceProvider.buildWordListFromFiles (/packages/autocomplete-bibtex/lib/provider.coffee:146:23)
    at ReferenceProvider.buildWordListFromFiles (/packages/autocomplete-bibtex/lib/provider.coffee:1:1)
    at /packages/autocomplete-bibtex/lib/provider.coffee:27:8
    at /app.asar/src/config.js:635:20
    at Function.module.exports.Emitter.simpleDispatch (/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/app.asar/node_modules/event-kit/lib/emitter.js:129:28)
    at Config.module.exports.Config.emitChangeEvent (/app.asar/src/config.js:826:29)
    at Config.module.exports.Config.setRawValue (/app.asar/src/config.js:612:19)
    at Config.module.exports.Config.set (/app.asar/src/config.js:227:14)
    at SettingsPanel.module.exports.SettingsPanel.set (/app.asar/node_modules/settings-view/lib/settings-panel.js:200:28)
    at /app.asar/node_modules/settings-view/lib/settings-panel.js:262:26
    at Function.module.exports.Emitter.simpleDispatch (/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/app.asar/node_modules/event-kit/lib/emitter.js:129:28)
    at /app.asar/node_modules/text-buffer/lib/text-buffer.js:1368:25

Commands

Non-Core Packages

advanced-open-file 0.16.6 
atom-runner 2.7.1 
autocomplete-bibtex 0.7.0 
autocomplete-python 1.8.62 
busy-signal 1.3.0 
file-icons 2.1.1 
Hydrogen 1.7.0 
intentions 1.1.2 
language-latex 1.0.0 
latex 0.42.4 
latexer 0.3.0 
lazy-motion 0.7.0 
linter 2.1.2 
linter-chktex 1.3.0 
linter-flake8 2.1.5 
linter-python-pep8 0.2.0 
linter-ui-default 1.2.1 
markdown-folder 0.5.0 
markdown-preview-plus 2.4.9 
pdf-view 0.57.0 
platformio-ide-terminal 2.5.0 
project-manager 3.3.4 
vim-mode-plus 0.84.1 
mangecoeur commented 6 years ago

should be fixed in development version, testing is welcome