Atom thinks this is the same as #476, but discussion there suggests a separate issue. Filing separately, just to be safe.
Atom Version: 1.13.0
Electron Version: 1.3.13
System: Microsoft Windows 10 Pro Insider Preview
Thrown From: file-icons package, v2.0.9
Failed to activate the file-icons package
At Cannot read property 'Symbol(Symbol.iterator)' of undefined
TypeError: Cannot read property 'Symbol(Symbol.iterator)' of undefined
at StrategyManager.query (C:\Users\Mike\.atom\packages\file-icons\lib\service\strategy-manager.js:82:25)
at IconDelegate.getCurrentIcon (C:\Users\Mike\.atom\packages\file-icons\lib\service\icon-delegate.js:167:20)
at new IconNode (C:\Users\Mike\.atom\packages\file-icons\lib\service\icon-node.js:43:20)
at new TreeEntry (C:\Users\Mike\.atom\packages\file-icons\lib\consumers\tree-entry.js:41:19)
at TreeView.track (C:\Users\Mike\.atom\packages\file-icons\lib\consumers\tree-view.js:72:25)
at TreeView.rebuild (C:\Users\Mike\.atom\packages\file-icons\lib\consumers\tree-view.js:63:9)
at TreeView.activate (C:\Users\Mike\.atom\packages\file-icons\lib\consumers\tree-view.js:53:8)
at TreeView.updateStatus (C:\Users\Mike\.atom\packages\file-icons\lib\consumers\consumer.js:166:9)
at TreeView.init (C:\Users\Mike\.atom\packages\file-icons\lib\consumers\tree-view.js:30:8)
at ConsumerManager.init (C:\Users\Mike\.atom\packages\file-icons\lib\consumers\all.js:55:13)
at Object.activate (C:\Users\Mike\.atom\packages\file-icons\lib\main.js:19:13)
at Package.module.exports.Package.activateNow (C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\package.js:191:19)
at C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\package.js:164:32
at Package.module.exports.Package.measure (C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\package.js:94:15)
at C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\package.js:157:26
at Package.module.exports.Package.activate (C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\package.js:154:34)
at PackageManager.module.exports.PackageManager.activatePackage (C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\package-manager.js:550:34)
at C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\settings-view\lib\package-manager.js:439:29
at exit (C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\settings-view\lib\package-manager.js:73:16)
at triggerExitCallback (C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\buffered-process.js:299:11)
at C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\buffered-process.js:312:11
at Socket.<anonymous> (C:\Users\Mike\AppData\Local\atom\app-1.13.0\resources\app.asar\src\buffered-process.js:181:9)
at emitOne (events.js:101:20)
at Socket.emit (events.js:188:7)
at Pipe._handle.close [as _onclose] (net.js:493:12)
-0:38.9.0 sync-settings:restore (atom-workspace.workspace.scrollbars-visible-always.theme-solarized-light-syntax.theme-one-light-ui)
-0:19.6.0 core:confirm (input.hidden-input)
-0:02.1.0 tree-view:show (atom-workspace.workspace.scrollbars-visible-always.theme-solarized-light-syntax.theme-one-light-ui)
{
"core": {
"telemetryConsent": "limited",
"themes": [
"one-light-ui",
"solarized-light-syntax"
]
}
}
# User
editorconfig, v2.2.0 (active)
file-icons, v2.0.9 (inactive)
git-control, v0.8.2 (inactive)
sync-settings, v0.8.1 (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 (inactive)
one-light-ui, v1.8.2 (active)
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 (active)
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 (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
same issue
atom 1.13.0
file-icons 2.0.9
macOS Sierra 10.12.1
Same issue here
Atom 1.14.0-beta0
file-icons 2.0.9
Windows 10 Pro
Mine too.
file-icons 2.0.9
Atom 1.13.0
macOS 10.11.6
Okay, I'm back in action now. Am in a position to actually fix this.
Atom 1.14-beta1 64bit
Windows 10 64bit
file icon 2.0.9
Same error
Bug confirmed here.
file-icons 2.0.9
Atom 1.13.0
Mac OS X 10.11.6
Noticed before decativating and deactivating that in tree view no visible icons, but I think it's related - not fully activating. Thanks in advance for the fix, really appreciate this package. 馃憤
THIS JUST IN, AUSSIE INTERNET SUCKS A BOWL OF ARSE.
Third time Vagrant's timed out while downloading an Ubuntu box. I was hoping of getting the spec-runner setup to test for an Ubuntu environment, but screw it, bugging you guys to clone and test locally might be easier.
Sorry in advance. :(
Might have to setup the Virtualbox VM manually.
this is with a fresh install of Atom, I believe the updates are causing the issue.

To anybody wondering, I'm concentrating on fixing the package's spec-runner, which I recently noticed isn't working on Windows. Once the spec-runner's working properly across all platforms, I can fix this issue without worrying about introducing another unseen regression... :\
Also, our spec-runner is spiffy as fuck. Juuuust sayin'... 馃懠

Kicks the shit out of Atom's default spec-runner.
bump
... could you not.
+1
file-icons 2.0.9
Atom 1.13.0
Ubuntu 16.04 LTS
+1
file-icons 2.0.9
Atom 1.13.0
OSX 10.12.2
I was facing the Same issue but after restart it's working
file-icons 2.0.9
Atom 1.12.4
Ubuntu 16.04 LTS
Well, i'm completely re-install Atom.
And now all fine, plugin install without error 馃拑
I swear I read this instead:
~js
[
"Applications/Atom.app",
home + "/.atom",
"/usr/local/bin/atom tool",
"/usr/local/bin/apm tool",
"~/Library/Preferences/com.github.atom.plist file"
].map(value => delete value);
~
The amount of JavaScript I write is beginning to have a psychological toll.
(Ignore the meaningless use of the delete operator, you know what I meant...).
Error shows after install only. After restart the plugin works.
Errors apears after install.
After restart icons OK.
Atom - 1.13.0
file-icons 2.0.9
I'm so sorry for the slow response, guys. :( Been preoccupied with trying to fix other issues (specifically, unemployment/money/real-world crap, etc).
Fixed, and will cut a release shortly.
Just noting it still happens after update to latest release.
Simply after starting Atom error is thrown, but it seems to behave just fine.
Maybe it's cause for issue #529? (just random thought)
===
Atom Version: 1.11.2
Electron Version: 0.37.8
System: Ubuntu 16.04.1
Thrown From: file-icons package, v2.0.13
Uncaught TypeError: document.styleSheets[Symbol.iterator] is not a function
At /home/jeyj0/.atom/packages/file-icons/lib/ui.js:151
TypeError: document.styleSheets[Symbol.iterator] is not a function
at UI.getStyleElement (/home/jeyj0/.atom/packages/file-icons/lib/ui.js:151:33)
at UI.getThemeColour (/home/jeyj0/.atom/packages/file-icons/lib/ui.js:161:27)
at UI.checkMotif (/home/jeyj0/.atom/packages/file-icons/lib/ui.js:176:23)
at Immediate.setImmediate (/home/jeyj0/.atom/packages/file-icons/lib/ui.js:24:29)
at tryOnImmediate (timers.js:534:15)
at processImmediate [as _immediateCallback] (timers.js:514:5)
-0:00.7.0 tree-view:show (atom-workspace.workspace.scrollbars-visible-always.tinted-tab-bar.panel-shadows.panel-contrast.use-animations.compact-tree-view.blend-tree-view.paint-cursor.theme-one-dark-syntax.theme-atom-material-ui)
{
"core": {
"packagesWithKeymapsDisabled": [
"autocomplete-plus"
],
"telemetryConsent": "no",
"themes": [
"atom-material-ui",
"one-dark-syntax"
]
}
}
# User
atom-material-ui, v1.3.9 (active)
autoclose-html, v0.23.0 (active)
autocomplete-paths, v1.0.5 (active)
emmet, v2.4.3 (active)
file-icons, v2.0.13 (active)
git-plus, v7.0.7 (active)
gpp-compiler, v3.0.7 (active)
highlight-line, v0.11.2 (active)
language-latex, v1.0.0 (inactive)
language-lua, v0.9.11 (inactive)
latextools, v0.8.5 (active)
pdf-view, v0.54.0 (active)
pigments, v0.37.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.2.0 (inactive)
base16-tomorrow-light-theme, v1.2.0 (inactive)
one-dark-ui, v1.6.0 (inactive)
one-light-ui, v1.6.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.7.0 (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.42.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.40.0 (active)
find-and-replace, v0.201.1 (inactive)
fuzzy-finder, v1.4.0 (active)
git-diff, v1.1.0 (active)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.2 (active)
image-view, v0.59.0 (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 (active)
metrics, v1.0.0 (active)
notifications, v0.65.1 (active)
open-on-github, v1.2.0 (inactive)
package-generator, v1.0.0 (inactive)
settings-view, v0.242.2-hotfix1 (active)
snippets, v1.0.2 (active)
spell-check, v0.68.2 (active)
status-bar, v1.4.1 (active)
styleguide, v0.47.0 (active)
symbols-view, v0.113.1 (inactive)
tabs, v0.101.0 (active)
timecop, v0.33.2 (active)
tree-view, v0.209.3 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.35.1 (active)
whitespace, v0.33.0 (active)
wrap-guide, v0.38.2 (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
This right here is what's concerning me:
TypeError: document.styleSheets[Symbol.iterator] is not a function
That should NEVER not be an iterable; it's part of the DOM standard. The fact this error seems Ubuntu-specific leads me to believe the document global is being shadowed somewhere.
Of course, I'd be in a position to find out more about this if I had access to a working Ubuntu box...
Well, Ubuntu-specificy rules this issue out as cause for the other. If you point me in a direction I could try helping...? No experience with Atom development though.
File a new issue, please. It's clearly unrelated to this one.
@jeyj0 The next time this happens, please open the devtools and run this snippet:
~js
console.log(document);
console.log(document.constructor);
console.log(document.styleSheets);
console.log(document.styleSheets.constructor);
~
Then screencap the output, which should ideally look like this:

If either the document global or its styleSheets property has been tampered with, the results will be different (possibly even throwing an error). In which case, please screencap as much output as possible. Additionally, if either function HTMLDocument() or function StyleSheetList() (pictured above) do NOT end with { [native code] }, right click on them and click Show function definition:

This should open a file in the Sources tab - I need its path, and the row/column it opened to.
I admit I'm clutching at straws, but I'm still in the dark as to how the hell this is happening, let alone why.
I think i'm having the same issue, i'm using ubuntu 14.04 though. Output does not seem off in any way, could it be that the document just isn't ready yet?

I settled on doing this the unintelligent way - checking document.styleSheets exists before iterating. If not, no biggie. All this chunk of code is doing is determining whether you're using a light or dark-coloured theme (which affects the colour palette of certain icons for clarity's sake).
Just installed PlatformIO from the main site and I'm seeing this error for every new window opened on OSX 10.11.6. I ran the snippet described above, but the output is the same as yours.
I'm not sure my version has the committed changes you linked to above as I've installed from the main distribution from http://platformio.org. If I run the update tool, it shows I'm up-to-date.
@ivankravets How often does PlatformIO update its copy of the file-icons package? This is the second time a PlatformIO user has experienced issues with that've already been fixed.
I don't know how PlatformIO works, or how users go about upgrading their packages...
@Alhadis We use "pre-cached" packages in PlatformIO IDE 1.0 installer. npm is very slow and "hard" package manager. We need dozen minutes to install all dependencies in "native mode". With pre-compiled packages, we need ~1-2 minutes to install the whole IDE.
This logic will be improved in PIO IDE 2.0 (in progress). Nevertheless, I don't see here any problems. Users are able to update own packages manually, as they do that in a generic way.
In any case, I've just removed that cache and all our dependencies are regenerated again.
@cmenscher Are you sure that you don't see updates? Could you try to re-start Atom? Maybe they cache something.
@ivankravets I've tried restarting it several times. Each time it gives me the error. Checking for updates from the menu returns nothing. Is there a way to force delete the cache?
Checking for updates from the menu returns nothing.
That is not "PlatformIO" package. You should check for Atom updates, not PlatformIO. Also, you should have notification located in bottom right corner (N updates...). Or click on Settings 鈿欙笍 > Updates
@ivankravets Ah! Right. Alas, it says "All of your installed packages are up to date", even after a manual check.
@cmenscher and what do you see in Settings > Packages > Filter "file-icons"? Which version? Tryuninstall` and "Settings > Install > file-icons".
@ivankravets initial installation was version 2.0.13. I uninstalled and the Install dialog for file-icons presented me with 1.7.25, stating "Version 1.7.25 is not the latest version available for this package, but it's the latest that is compatible with your version of Atom." I installed that, and the error now no longer appears!
So, it seems that the version of Atom+PlatformIO that is downloadable from platformio.org has incompatible versions in the bundle.
@cmenscher I got the problem. You have an old version of Atom. What is your OS? Atom version?
@ivankravets I'm using Atom version 1.9.9, on OSX 10.11.6. This version of Atom is what was distributed via the download link on platformio.org. As I mentioned before, when I use Atom's "check for update" menu item, nothing happens. What version should I be using?
@cmenscher I didn't know that auto-updater is broken in 1.9.9 for macOS. I'll rebuild all our distribution. Temporary, please download Atom from https://atom.io
@ivankravets SUCCESS! Updated Atom, ran the updater in settings. Everything fully up-to-date and no errors. Thanks for the help.
@ivankravets Just an FYI...installing the most recent version of Atom (v1.12.3) and PlatformIO separately results in inoperative Terminal and Serial Monitor windows,with "Path must be a string. Received null" errors like this https://github.com/platformio/platformio-atom-ide-terminal/issues/131. I wasn't able to debug, so I'm going back to Atom version 1.9.9 for now and will install file-icons 1.7.25.
installing the most recent version of Atom (v1.12.3)
Where did you find this info?
@ivankravets In the developer tools console. The result of the error is a completely blank (black) pane for both the terminal and the serial monitor.
I've just deployed new PlatformIO IDE bundle based on Atom 1.3.1. Could you try it from our site? Thanks!
OK just tried it...same result as when I installed manually. Here's a dump of the console after I launch Atom and bring up the Terminal. The first 6 lines are warnings and info...the "Path must be a string" is the error that is triggered when the Terminal is opened. I'm including the warnings as they may be related...
/Users/coreymenscher/Desktop/Atom.app/Contents/Resources/app.asar/src/config.js:680 'platformio-ide-terminal.core.shell' could not set the default. Attempted default: undefined; Schema: {"title":"Shell Override","description":"Override the default shell instance to launch.","type":"string"}
/Users/coreymenscher/.atom/packages/platformio-ide/lib/init/command.js:401 File watch added: /Users/coreymenscher/Dropbox/code/ESP32/platform-espressif32/examples/arduino-blink/platformio.ini
/Users/coreymenscher/.atom/packages/platformio-ide/lib/init/command.js:407 Directory watch added: /Users/coreymenscher/.platformio/lib
/Users/coreymenscher/.atom/packages/platformio-ide/lib/init/command.js:407 Directory watch added: /Users/coreymenscher/Dropbox/code/ESP32/platform-espressif32/examples/arduino-blink/lib
/Users/coreymenscher/.atom/packages/platformio-ide/lib/init/command.js:407 Directory watch added: /Users/coreymenscher/Dropbox/code/ESP32/platform-espressif32/examples/arduino-blink/.piolibdeps
/Users/coreymenscher/Desktop/Atom.app/Contents/Resources/app.asar/src/task.js:49 Module version mismatch. Expected 49, got 47.
/Users/coreymenscher/Desktop/Atom.app/Contents/Resources/app.asar/src/task.js:52 Path must be a string. Received null TypeError: Path must be a string. Received null
at assertPath (path.js:7:11)
at Object.basename (path.js:1357:5)
at Object.module.exports (/Users/coreymenscher/.atom/packages/platformio-ide-terminal/lib/process.coffee:32:24)
at process.<anonymous> (/Users/coreymenscher/Desktop/Atom.app/Contents/Resources/app.asar/src/task-bootstrap.js:84:10)
at emitTwo (events.js:106:13)
at process.emit (events.js:191:7)
at process.nextTick (internal/child_process.js:744:12)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)(anonymous function) @ /Users/coreymenscher/Desktop/Atom.app/Contents/Resources/app.asar/src/task.js:52
@cmenscher Please open Developer Console and type process.versions.modules. What do you see?
@ivankravets It returns "49".
@cmenscher Let's don't flood in this thread. Please mail [email protected]
Thanks for your help, @ivankravets! Really appreciate it. =)
To everybody else: I'm locking this so users will file new issues instead of commenting on old ones. The last few posts have dealt with unrelated bugs, with similar-looking error messages. It's clear Atom's becoming confused with linking to correct issues.
Any users who are still experiencing problems are strongly encouraged to file a new issue. If anybody here has questions, please e-mail me directly.
Most helpful comment
I'm so sorry for the slow response, guys. :( Been preoccupied with trying to fix other issues (specifically, unemployment/money/real-world crap, etc).
Fixed, and will cut a release shortly.