Closed calam1 closed 8 years ago
I am very sorry to hear you are having issues with VS Code. I wonder if this issue is being caused by an installed extension. Can you try to run VS Code without extensions? From the command line, execute: code --disable-extensions
and try your steps again to see if it reproduces. If you see it is an issue with the extension, please file it against the extension repository itself.
Sure thing. One thing weird is on my other MacBook I don't have the crashing issue. It must be an extension I have installed. Thanks for following up. Love your product by the way. Can't wait for tabs
Sent from my iPhone
On Jun 7, 2016, at 10:26 AM, Benjamin Pasero notifications@github.com wrote:
I am very sorry to hear you are having issues with VS Code. I wonder if this issue is being caused by an installed extension. Can you try to run VS Code without extensions? From the command line, execute: code --disable-extensions and try your steps again to see if it reproduces. If you see it is an issue with the extension, please file it against the extension repository itself.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.
i started code up with the extensions disabled but still receive proton crashes I included the crash log, if you want to take a look.
Process: Electron Helper [30034] Path: /Applications/Visual Studio Code.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS/Electron Helper Identifier: Electron Helper Version: 0 Code Type: X86-64 (Native) Parent Process: ??? [1] Responsible: iTerm [338] User ID: 653576615
Date/Time: 2016-06-07 13:18:38.615 -0500 OS Version: Mac OS X 10.11.5 (15F34) Report Version: 11 Anonymous UUID: 44ADAA59-B625-352E-CE91-46E1B8C44E45
Sleep/Wake UUID: D283C751-62C6-42B9-985B-411FC363DBBA
Time Awake Since Boot: 5600 seconds Time Since Wake: 1300 seconds
System Integrity Protection: enabled
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000
Application Specific Information: abort() called
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libsystem_kernel.dylib 0x00007fff92a2ef06 __pthread_kill + 10 1 libsystem_pthread.dylib 0x00007fff9009e4ec pthread_kill + 90 2 libsystem_c.dylib 0x00007fff9bef66e7 abort + 129 3 libnode.dylib 0x000000010a9502aa 0x10a941000 + 62122 4 libnode.dylib 0x000000010ac9f6b0 v8::internal::V8::FatalProcessOutOfMemory(char const*, bool) + 608 5 libnode.dylib 0x000000010af550bb v8::internal::Factory::NewWeakCell(v8::internal::Handlev8::internal::HeapObject)
, v8::internal::PropertyAttributes, v8::internal::Representation, v8::internal::TransitionFlag) + 1081 10 libnode.dylib 0x000000010b06ced9 v8::internal::Map::TransitionToDataProperty(v8::internal::Handlev8::internal::Map, v8::internal::Handlev8::internal::Name, v8::internal::Handlev8::internal::Object, v8::internal::PropertyAttributes, v8::internal::Object::StoreFromKeyed) + 889 11 libnode.dylib 0x000000010b02cb9f v8::internal::LookupIterator::PrepareTransitionToDataProperty(v8::internal::Handlev8::internal::Object, v8::internal::PropertyAttributes, v8::internal::Object::StoreFromKeyed) + 191 12 libnode.dylib 0x000000010b056283 v8::internal::Object::AddDataProperty(v8::internal::LookupIterator, v8::internal::Handlev8::internal::Object, v8::internal::PropertyAttributes, v8::internal::Object::ShouldThrow, v8::internal::Object::StoreFromKeyed) + 563 13 libnode.dylib 0x000000010b05564e v8::internal::Object::SetProperty(v8::internal::LookupIterator, v8::internal::Handlev8::internal::Object, v8::internal::LanguageMode, v8::internal::Object::StoreFromKeyed) + 206 14 libnode.dylib 0x000000010b159865 v8::internal::Runtime::SetObjectProperty(v8::internal::Isolate_, v8::internal::Handlev8::internal::Object, v8::internal::Handlev8::internal::Object, v8::internal::Handlev8::internal::Object, v8::internal::LanguageMode) + 197 15 libnode.dylib 0x000000010b15aff4 v8::internal::RuntimeSetProperty(int, v8::internal::Object**, v8::internal::Isolate) + 164 16 ??? 0x00003b9cee20c1fb 0 + 65545196061179 17 ??? 0x00003b9cee49a289 0 + 65545198740105 18 ??? 0x00003b9cee3f9995 0 + 65545198082453 19 ??? 0x00003b9cee20f6b7 0 + 65545196074679 20 ??? 0x00003b9cee236e64 0 + 65545196236388 21 ??? 0x00003b9cee219a62 0 + 65545196116578 22 libnode.dylib 0x000000010af4b230 0x10a941000 + 6332976 23 libnode.dylib 0x000000010af4af28 v8::internal::Execution::Call(v8::internal::Isolate, v8::internal::Handlev8::internal::Object, v8::internal::Handlev8::internal::Object, int, v8::internal::Handlev8::internal::Object) + 456 24 libnode.dylib 0x000000010acb70ec v8::Function::Call(v8::Localv8::Context, v8::Localv8::Value, int, v8::Localv8::Value) + 300 25 libnode.dylib 0x000000010a943e54 node::AsyncWrap::MakeCallback(v8::Localv8::Function, int, v8::Localv8::Value) + 612 26 libnode.dylib 0x000000010a945a67 node::AsyncWrap::MakeCallback(v8::Localv8::String, int, v8::Localv8::Value_) + 71 27 libnode.dylib 0x000000010a96dd67 0x10a941000 + 183655 28 libnode.dylib 0x000000010aa8d17e 0x10a941000 + 1360254 29 libnode.dylib 0x000000010aa89c39 uv__work_done + 201 30 libnode.dylib 0x000000010aa8b83c 0x10a941000 + 1353788 31 libnode.dylib 0x000000010aa8ba28 0x10a941000 + 1354280 32 libnode.dylib 0x000000010aa99bdf uv__io_poll + 1423 33 libnode.dylib 0x000000010aa8bde2 uv_run + 146 34 com.github.electron.framework 0x00000001068037a5 atom::NodeMain(int, char**) + 357 35 com.github.electron.framework 0x000000010680056e AtomInitializeICUandStartNode + 302 36 com.github.electron.helper 0x00000001067f6e4f main + 31 37 libdyld.dylib 0x00007fff989d85ad start + 1
Thread 1:: Dispatch queue: com.apple.libdispatch-manager 0 libsystem_kernel.dylib 0x00007fff92a2fefa kevent_qos + 10 1 libdispatch.dylib 0x00007fff97340165 _dispatch_mgr_invoke + 216 2 libdispatch.dylib 0x00007fff9733fdcd _dispatch_mgr_thread + 52
Thread 2: 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c728 _pthread_cond_wait + 767 2 libnode.dylib 0x000000010aa954d9 uv_cond_wait + 9 3 libnode.dylib 0x000000010aa89fa3 0x10a941000 + 1347491 4 libnode.dylib 0x000000010aa95139 0x10a941000 + 1392953 5 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 6 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 7 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 3: 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c728 _pthread_cond_wait + 767 2 libnode.dylib 0x000000010aa954d9 uv_cond_wait + 9 3 libnode.dylib 0x000000010aa89fa3 0x10a941000 + 1347491 4 libnode.dylib 0x000000010aa95139 0x10a941000 + 1392953 5 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 6 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 7 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 4: 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c728 _pthread_cond_wait + 767 2 libnode.dylib 0x000000010aa954d9 uv_cond_wait + 9 3 libnode.dylib 0x000000010aa89fa3 0x10a941000 + 1347491 4 libnode.dylib 0x000000010aa95139 0x10a941000 + 1392953 5 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 6 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 7 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 5: 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c728 _pthread_cond_wait + 767 2 libnode.dylib 0x000000010aa954d9 uv_cond_wait + 9 3 libnode.dylib 0x000000010aa89fa3 0x10a941000 + 1347491 4 libnode.dylib 0x000000010aa95139 0x10a941000 + 1392953 5 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 6 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 7 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 6: 0 libsystem_kernel.dylib 0x00007fff92a28f72 mach_msg_trap + 10 1 libsystem_kernel.dylib 0x00007fff92a283b3 mach_msg + 55 2 com.apple.CoreFoundation 0x00007fff956041c4 CFRunLoopServiceMachPort + 212 3 com.apple.CoreFoundation 0x00007fff9560368c CFRunLoopRun + 1356 4 com.apple.CoreFoundation 0x00007fff95602ed8 CFRunLoopRunSpecific
Thread 7:: WorkerPool/15875 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c75e _pthread_cond_wait + 821 2 com.github.electron.framework 0x00000001069fd0fb 0x1067fe000 + 2093307 3 com.github.electron.framework 0x0000000106a0f84d 0x1067fe000 + 2168909 4 com.github.electron.framework 0x0000000106a0fd04 0x1067fe000 + 2170116 5 com.github.electron.framework 0x0000000106a09fdc 0x1067fe000 + 2146268 6 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 7 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 8 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 8: 0 libsystem_kernel.dylib 0x00007fff92a28f72 mach_msg_trap + 10 1 libsystem_kernel.dylib 0x00007fff92a283b3 mach_msg + 55 2 com.apple.CoreFoundation 0x00007fff956041c4 CFRunLoopServiceMachPort + 212 3 com.apple.CoreFoundation 0x00007fff9560368c CFRunLoopRun + 1356 4 com.apple.CoreFoundation 0x00007fff95602ed8 CFRunLoopRunSpecific
Thread 9:: WorkerPool/13579 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c75e _pthread_cond_wait + 821 2 com.github.electron.framework 0x00000001069fd0fb 0x1067fe000 + 2093307 3 com.github.electron.framework 0x0000000106a0f84d 0x1067fe000 + 2168909 4 com.github.electron.framework 0x0000000106a0fd04 0x1067fe000 + 2170116 5 com.github.electron.framework 0x0000000106a09fdc 0x1067fe000 + 2146268 6 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 7 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 8 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 10:: WorkerPool/12303 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c75e _pthread_cond_wait + 821 2 com.github.electron.framework 0x00000001069fd0fb 0x1067fe000 + 2093307 3 com.github.electron.framework 0x0000000106a0f84d 0x1067fe000 + 2168909 4 com.github.electron.framework 0x0000000106a0fd04 0x1067fe000 + 2170116 5 com.github.electron.framework 0x0000000106a09fdc 0x1067fe000 + 2146268 6 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 7 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 8 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 11:: WorkerPool/27403 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c75e _pthread_cond_wait + 821 2 com.github.electron.framework 0x00000001069fd0fb 0x1067fe000 + 2093307 3 com.github.electron.framework 0x0000000106a0f84d 0x1067fe000 + 2168909 4 com.github.electron.framework 0x0000000106a0fd04 0x1067fe000 + 2170116 5 com.github.electron.framework 0x0000000106a09fdc 0x1067fe000 + 2146268 6 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 7 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 8 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 12:: WorkerPool/30035 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c75e _pthread_cond_wait + 821 2 com.github.electron.framework 0x00000001069fd0fb 0x1067fe000 + 2093307 3 com.github.electron.framework 0x0000000106a0f84d 0x1067fe000 + 2168909 4 com.github.electron.framework 0x0000000106a0fd04 0x1067fe000 + 2170116 5 com.github.electron.framework 0x0000000106a09fdc 0x1067fe000 + 2146268 6 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 7 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 8 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 13:: WorkerPool/30215 0 libsystem_kernel.dylib 0x00007fff92a2edb6 __psynch_cvwait + 10 1 libsystem_pthread.dylib 0x00007fff9009c75e _pthread_cond_wait + 821 2 com.github.electron.framework 0x00000001069fd0fb 0x1067fe000 + 2093307 3 com.github.electron.framework 0x0000000106a0f84d 0x1067fe000 + 2168909 4 com.github.electron.framework 0x0000000106a0fd04 0x1067fe000 + 2170116 5 com.github.electron.framework 0x0000000106a09fdc 0x1067fe000 + 2146268 6 libsystem_pthread.dylib 0x00007fff9009b99d _pthread_body + 131 7 libsystem_pthread.dylib 0x00007fff9009b91a _pthread_start + 168 8 libsystem_pthread.dylib 0x00007fff90099351 thread_start + 13
Thread 0 crashed with X86 Thread State (64-bit): rax: 0x0000000000000000 rbx: 0x0000000000000006 rcx: 0x00007fff593ff288 rdx: 0x0000000000000000 rdi: 0x000000000000050f rsi: 0x0000000000000006 rbp: 0x00007fff593ff2b0 rsp: 0x00007fff593ff288 r8: 0x0000000000000040 r9: 0x00007fff7adb11e0 r10: 0x0000000008000000 r11: 0x0000000000000206 r12: 0x00007fff593ffaa0 r13: 0x00007fbb8c003420 r14: 0x00007fff792d8000 r15: 0x00007fff593ffcb0 rip: 0x00007fff92a2ef06 rfl: 0x0000000000000206 cr2: 0x00007fff7adaf008
Logical CPU: 0 Error Code: 0x02000148 Trap Number: 133
Binary Images: 0x1067f6000 - 0x1067f6fff +com.github.electron.helper (0)
<5A31A538-10DE-3E6B-BA3C-700B3953DBFA> /Applications/Visual Studio Code.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS/Electron Helper 0x1067fe000 - 0x10a09d827 +com.github.electron.framework (0) <15853C9C-49E5-3AB3-A56E-BBAE43570FAA> /Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework 0x10a800000 - 0x10a815ff7 +com.github.Squirrel (1.0 - 1)I think I'm having similar problems, if this is unrelated then I'm happy to open a new issue. The app is not crashing, but I'm getting close to 115% CPU from Electron Helper, causing the app to become unresponsive, and close to crashing within minutes. This is the first time I've ever had a problem with VSCode.
I'm getting the same behaviour after disabling extensions and restarting my Mac. I'm using V1.2.0 on MacOSX 10.11.3. Please let me know if there is anything I can provide, or do, to help debug further.
@calam1 looks like VS Code is running out of memory causing the crash. Please provide me with the workspace you see this on if possible so that I can reproduce.
@jack-pallot can you find out which of our processes is running with high CPU? The full command line is needed to identify.
If you mean the default setting when you mention workspace, here it is:
I have an empty settings.json
{
//-------- Editor configuration --------
// Controls the font family.
"editor.fontFamily": "Menlo, Monaco, 'Courier New', monospace",
// Controls the font size.
"editor.fontSize": 12,
// Controls the line height.
"editor.lineHeight": 0,
// Controls visibility of line numbers
"editor.lineNumbers": true,
// Controls visibility of the glyph margin
"editor.glyphMargin": false,
// Columns at which to show vertical rulers
"editor.rulers": [],
// Characters that will be used as word separators when doing word related navigations or operations
"editor.wordSeparators": "`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?",
// The number of spaces a tab is equal to.
"editor.tabSize": 4,
// Insert spaces when pressing Tab.
"editor.insertSpaces": true,
// When opening a file, `editor.tabSize` and `editor.insertSpaces` will be detected based on the file contents.
"editor.detectIndentation": true,
// Controls if selections have rounded corners
"editor.roundedSelection": true,
// Controls if the editor will scroll beyond the last line
"editor.scrollBeyondLastLine": true,
// Controls after how many characters the editor will wrap to the next line. Setting this to 0 turns on viewport width wrapping (word wrapping). Setting this to -1 forces the editor to never wrap.
"editor.wrappingColumn": 300,
// Controls the indentation of wrapped lines. Can be one of 'none', 'same' or 'indent'.
"editor.wrappingIndent": "same",
// A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events
"editor.mouseWheelScrollSensitivity": 1,
// Controls if quick suggestions should show up or not while typing
"editor.quickSuggestions": true,
// Controls the delay in ms after which quick suggestions will show up
"editor.quickSuggestionsDelay": 10,
// Controls if the editor should automatically close brackets after opening them
"editor.autoClosingBrackets": true,
// Controls if the editor should automatically format the line after typing
"editor.formatOnType": false,
// Controls if suggestions should automatically show up when typing trigger characters
"editor.suggestOnTriggerCharacters": true,
// Controls if suggestions should be accepted 'Enter' - in addition to 'Tab'. Helps to avoid ambiguity between inserting new lines or accepting suggestions.
"editor.acceptSuggestionOnEnter": true,
// Controls whether the editor should highlight similar matches to the selection
"editor.selectionHighlight": true,
// Controls the number of decorations that can show up at the same position in the overview ruler
"editor.overviewRulerLanes": 3,
// Controls the cursor blinking animation, accepted values are 'blink', 'visible', and 'hidden'
"editor.cursorBlinking": "blink",
// Controls the cursor style, accepted values are 'block' and 'line'
"editor.cursorStyle": "line",
// Enables font ligatures
"editor.fontLigatures": false,
// Controls if the cursor should be hidden in the overview ruler.
"editor.hideCursorInOverviewRuler": false,
// Controls whether the editor should render whitespace characters
"editor.renderWhitespace": false,
// Controls if the editor shows reference information for the modes that support it
"editor.referenceInfos": true,
// Controls whether the editor has code folding enabled
"editor.folding": true,
// Inserting and deleting whitespace follows tab stops
"editor.useTabStops": true,
// Remove trailing auto inserted whitespace
"editor.trimAutoWhitespace": true,
// Keep peek editors open even when double clicking their content or when hitting Escape.
"editor.stablePeek": false,
// Controls if the diff editor shows the diff side by side or inline
"diffEditor.renderSideBySide": true,
// Controls if the diff editor shows changes in leading or trailing whitespace as diffs
"diffEditor.ignoreTrimWhitespace": true,
//-------- Window configuration --------
// When enabled, will open files in a new window instead of reusing an existing instance.
"window.openFilesInNewWindow": true,
// Controls how folders are being reopened after a restart. Select 'none' to never reopen a folder, 'one' to reopen the last folder you worked on or 'all' to reopen all folders of your last session.
"window.reopenFolders": "one",
// Adjust the zoom level of the window. The original size is 0 and each increment above (e.g. 1) or below (e.g. -1) represents zooming 20% larger or smaller. You can also enter decimals to adjust the zoom level with a finer granularity.
"window.zoomLevel": 0,
//-------- Files configuration --------
// Configure glob patterns for excluding files and folders.
"files.exclude": {
"**/.git": true,
"**/.svn": true,
"**/.DS_Store": true
},
// Configure file associations to languages (e.g. "*.extension": "html"). These have precedence over the default associations of the languages installed.
"files.associations": {},
// The default character set encoding to use when reading and writing files.
"files.encoding": "utf8",
// The default end of line character.
"files.eol": "\n",
// When enabled, will trim trailing whitespace when you save a file.
"files.trimTrailingWhitespace": false,
// Controls auto save of dirty files. Accepted values: "off", "afterDelay", "onFocusChange". If set to "afterDelay" you can configure the delay in "files.autoSaveDelay".
"files.autoSave": "off",
// Controls the delay in ms after which a dirty file is saved automatically. Only applies when "files.autoSave" is set to "afterDelay"
"files.autoSaveDelay": 1000,
// Configure glob patterns of file paths to exclude from file watching. Changing this setting requires a restart. When you experience Code consuming lots of cpu time on startup, you can exclude large folders to reduce the initial load.
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/node_modules/**": true
},
//-------- Emmet configuration --------
// When enabled, emmet abbreviations are expanded when pressing TAB.
"emmet.triggerExpansionOnTab": true,
//-------- File Explorer configuration --------
// Maximum number of working files to show before scrollbars appear.
"explorer.workingFiles.maxVisible": 9,
// Controls if the height of the working files section should adapt dynamically to the number of elements or not.
"explorer.workingFiles.dynamicHeight": true,
// Controls if the explorer should automatically reveal files when opening them.
"explorer.autoReveal": true,
//-------- HTTP configuration --------
// The proxy setting to use. If not set will be taken from the http_proxy and https_proxy environment variables
"http.proxy": "",
// Whether the proxy server certificate should be verified against the list of supplied CAs.
"http.proxyStrictSSL": true,
//-------- Search configuration --------
// Configure glob patterns for excluding files and folders in searches. Inherits all glob patterns from the files.exclude setting.
"search.exclude": {
"**/node_modules": true,
"**/bower_components": true
},
//-------- Update configuration --------
// Configure the update channel to receive updates from. Requires a restart after change.
"update.channel": "default",
//-------- Git configuration --------
// Is git enabled
"git.enabled": true,
// Path to the git executable
"git.path": null,
// Whether auto fetching is enabled.
"git.autofetch": true,
//-------- Telemetry configuration --------
// Enable usage data and errors to be sent to Microsoft.
"telemetry.enableTelemetry": true,
//-------- Markdown preview configuration --------
// A list of URLs or local paths to CSS style sheets to use from the markdown preview.
"markdown.styles": [],
//-------- CSS configuration --------
// Controls CSS validation and problem severities.
// Enables or disables all validations
"css.validate": true,
// When using a vendor-specific prefix make sure to also include all other vendor-specific properties
"css.lint.compatibleVendorPrefixes": "ignore",
// When using a vendor-specific prefix also include the standard property
"css.lint.vendorPrefix": "warning",
// Do not use duplicate style definitions
"css.lint.duplicateProperties": "ignore",
// Do not use empty rulesets
"css.lint.emptyRules": "warning",
// Import statements do not load in parallel
"css.lint.importStatement": "ignore",
// Do not use width or height when using padding or border
"css.lint.boxModel": "ignore",
// The universal selector (*) is known to be slow
"css.lint.universalSelector": "ignore",
// No unit for zero needed
"css.lint.zeroUnits": "ignore",
// @font-face rule must define 'src' and 'font-family' properties
"css.lint.fontFaceProperties": "warning",
// Hex colors must consist of three or six hex numbers
"css.lint.hexColorLength": "error",
// Invalid number of parameters
"css.lint.argumentsInColorFunction": "error",
// Unknown property.
"css.lint.unknownProperties": "warning",
// IE hacks are only necessary when supporting IE7 and older
"css.lint.ieHack": "ignore",
// Unknown vendor specific property.
"css.lint.unknownVendorSpecificProperties": "ignore",
// Property is ignored due to the display. E.g. with 'display: inline', the width, height, margin-top, margin-bottom, and float properties have no effect
"css.lint.propertyIgnoredDueToDisplay": "warning",
// Avoid using !important. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.
"css.lint.important": "ignore",
// Avoid using 'float'. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.
"css.lint.float": "ignore",
// Selectors should not contain IDs because these rules are too tightly coupled with the HTML.
"css.lint.idSelector": "ignore",
//-------- Telemetry configuration --------
// Enable crash reports to be sent to Microsoft.
// This option requires restart to take effect.
"telemetry.enableCrashReporter": true,
//-------- HTML configuration --------
// Maximum amount of characters per line (0 = disable).
"html.format.wrapLineLength": 120,
// List of tags, comma separated, that shouldn't be reformatted. 'null' defaults to all tags listed at https://www.w3.org/TR/html5/dom.html#phrasing-content.
"html.format.unformatted": "a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, script, select, small, span, strong, sub, sup, textarea, tt, var",
// Indent <head> and <body> sections.
"html.format.indentInnerHtml": false,
// Whether existing line breaks before elements should be preserved. Only works before elements, not inside tags or for text.
"html.format.preserveNewLines": true,
// Maximum number of line breaks to be preserved in one chunk. Use 'null' for unlimited.
"html.format.maxPreserveNewLines": null,
// Format and indent {{#foo}} and {{/foo}}.
"html.format.indentHandlebars": false,
// End with a newline.
"html.format.endWithNewline": false,
// List of tags, comma separated, that should have an extra newline before them. 'null' defaults to "head, body, /html".
"html.format.extraLiners": "head, body, /html",
//-------- JSON configuration --------
// Associate schemas to JSON files in the current project
"json.schemas": [],
//-------- LESS configuration --------
// Controls LESS validation and problem severities.
// Enables or disables all validations
"less.validate": true,
// When using a vendor-specific prefix make sure to also include all other vendor-specific properties
"less.lint.compatibleVendorPrefixes": "ignore",
// When using a vendor-specific prefix also include the standard property
"less.lint.vendorPrefix": "warning",
// Do not use duplicate style definitions
"less.lint.duplicateProperties": "ignore",
// Do not use empty rulesets
"less.lint.emptyRules": "warning",
// Import statements do not load in parallel
"less.lint.importStatement": "ignore",
// Do not use width or height when using padding or border
"less.lint.boxModel": "ignore",
// The universal selector (*) is known to be slow
"less.lint.universalSelector": "ignore",
// No unit for zero needed
"less.lint.zeroUnits": "ignore",
// @font-face rule must define 'src' and 'font-family' properties
"less.lint.fontFaceProperties": "warning",
// Hex colors must consist of three or six hex numbers
"less.lint.hexColorLength": "error",
// Invalid number of parameters
"less.lint.argumentsInColorFunction": "error",
// Unknown property.
"less.lint.unknownProperties": "warning",
// IE hacks are only necessary when supporting IE7 and older
"less.lint.ieHack": "ignore",
// Unknown vendor specific property.
"less.lint.unknownVendorSpecificProperties": "ignore",
// Property is ignored due to the display. E.g. with 'display: inline', the width, height, margin-top, margin-bottom, and float properties have no effect
"less.lint.propertyIgnoredDueToDisplay": "warning",
// Avoid using !important. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.
"less.lint.important": "ignore",
// Avoid using 'float'. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.
"less.lint.float": "ignore",
// Selectors should not contain IDs because these rules are too tightly coupled with the HTML.
"less.lint.idSelector": "ignore",
//-------- Sass configuration --------
// Controls Sass validation and problem severities.
// Enables or disables all validations
"sass.validate": true,
// When using a vendor-specific prefix make sure to also include all other vendor-specific properties
"sass.lint.compatibleVendorPrefixes": "ignore",
// When using a vendor-specific prefix also include the standard property
"sass.lint.vendorPrefix": "warning",
// Do not use duplicate style definitions
"sass.lint.duplicateProperties": "ignore",
// Do not use empty rulesets
"sass.lint.emptyRules": "warning",
// Import statements do not load in parallel
"sass.lint.importStatement": "ignore",
// Do not use width or height when using padding or border
"sass.lint.boxModel": "ignore",
// The universal selector (*) is known to be slow
"sass.lint.universalSelector": "ignore",
// No unit for zero needed
"sass.lint.zeroUnits": "ignore",
// @font-face rule must define 'src' and 'font-family' properties
"sass.lint.fontFaceProperties": "warning",
// Hex colors must consist of three or six hex numbers
"sass.lint.hexColorLength": "error",
// Invalid number of parameters
"sass.lint.argumentsInColorFunction": "error",
// Unknown property.
"sass.lint.unknownProperties": "warning",
// IE hacks are only necessary when supporting IE7 and older
"sass.lint.ieHack": "ignore",
// Unknown vendor specific property.
"sass.lint.unknownVendorSpecificProperties": "ignore",
// Property is ignored due to the display. E.g. with 'display: inline', the width, height, margin-top, margin-bottom, and float properties have no effect
"sass.lint.propertyIgnoredDueToDisplay": "warning",
// Avoid using !important. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.
"sass.lint.important": "ignore",
// Avoid using 'float'. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.
"sass.lint.float": "ignore",
// Selectors should not contain IDs because these rules are too tightly coupled with the HTML.
"sass.lint.idSelector": "ignore",
//-------- Integrated terminal configuration --------
// The path of the shell that the terminal uses on Linux.
"terminal.integrated.shell.linux": "/bin/bash",
// The path of the shell that the terminal uses on OS X.
"terminal.integrated.shell.osx": "/bin/bash",
// The path of the shell that the terminal uses on Windows.
"terminal.integrated.shell.windows": "cmd.exe",
// The font family used by the terminal (CSS font-family format).
"terminal.integrated.fontFamily": "Menlo, Monaco, Consolas, \"Droid Sans Mono\", \"Courier New\", monospace, \"Droid Sans Fallback\"",
//-------- External terminal configuration --------
// Customizes which terminal to run on Windows.
"terminal.external.windowsExec": "cmd",
// Customizes which terminal to run on Linux.
"terminal.external.linuxExec": "xterm",
//-------- Open in Github extension configuration --------
// GitHub server address. Modify this setting in your workspace settings of projects using custom GitHub server
"openInGitHub.gitHubAddress": "https://github.com",
//-------- Git History configuration --------
// Informations to display in history as label
"gitHistory.displayLabel": "${name} <${email}> on ${date}",
// Informations to display in history as description
"gitHistory.displayDescription": "${message}",
//-------- amVim configuration --------
// Bind `ctrl+c` as the same behaviour in Vim.
"amVim.bindCtrlC": false,
//-------- TypeScript configuration --------
// Specifies the folder path containing the tsserver and lib*.d.ts files to use.
"typescript.tsdk": null,
// Complete functions with their parameter signature.
"typescript.useCodeSnippetsOnMethodSuggest": false,
// Enable / disable TypeScript validation
"typescript.validate.enable": true,
// Enables tracing of messages send to the TS server
"typescript.tsserver.trace": "off",
// Defines space handling after a comma delimiter
"typescript.format.insertSpaceAfterCommaDelimiter": true,
// Defines space handling after a semicolon in a for statement
"typescript.format.insertSpaceAfterSemicolonInForStatements": true,
// Defines space handling after a binary operator
"typescript.format.insertSpaceBeforeAndAfterBinaryOperators": true,
// Defines space handling after keywords in control flow statement
"typescript.format.insertSpaceAfterKeywordsInControlFlowStatements": true,
// Defines space handling after function keyword for anonymous functions
"typescript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": true,
// Defines space handling after opening and before closing non empty parenthesis
"typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": false,
// Defines space handling after opening and before closing non empty brackets
"typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": false,
// Defines whether an open brace is put onto a new line for functions or not
"typescript.format.placeOpenBraceOnNewLineForFunctions": false,
// Defines whether an open brace is put onto a new line for control blocks or not
"typescript.format.placeOpenBraceOnNewLineForControlBlocks": false,
// Enable / disable JavaScript validation
"javascript.validate.enable": true,
// Defines space handling after a comma delimiter
"javascript.format.insertSpaceAfterCommaDelimiter": true,
// Defines space handling after a semicolon in a for statement
"javascript.format.insertSpaceAfterSemicolonInForStatements": true,
// Defines space handling after a binary operator
"javascript.format.insertSpaceBeforeAndAfterBinaryOperators": true,
// Defines space handling after keywords in control flow statement
"javascript.format.insertSpaceAfterKeywordsInControlFlowStatements": true,
// Defines space handling after function keyword for anonymous functions
"javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": true,
// Defines space handling after opening and before closing non empty parenthesis
"javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": false,
// Defines space handling after opening and before closing non empty brackets
"javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": false,
// Defines whether an open brace is put onto a new line for functions or not
"javascript.format.placeOpenBraceOnNewLineForFunctions": false,
// Defines whether an open brace is put onto a new line for control blocks or not
"javascript.format.placeOpenBraceOnNewLineForControlBlocks": false,
//-------- PHP Configuration options --------
// Whether php validation is enabled or not.
"php.validate.enable": true,
// Points to the php executable.
"php.validate.executablePath": null,
// Whether the linter is run on save or on type.
"php.validate.run": "onSave",
// Enable word based suggestions.
"editor.wordBasedSuggestions": true
}
@calam1 I meant a zip of the contents you are opening Code with that leads you there
ah, you know what. Odd thing I wasn't experiencing this problem this morning. After your response I was thinking what I did differently. I actually opened up code on my home directory, i.e. code .
Apparently this must be spawning threads to load up / index my entire home directory, which is probably causing the problem. I was not aware of the behavior of code in this scenario, when I used it this way.
So this is probably not a real issue, or something that should be lazily done, not sure.
Ok please report back when you see it in other scenarios.
@calam1 do you happen to have a ".git" folder in your home directory?
Adding git.enabled: false
seems to have fixed this issue for me.
I can confirm also that there is a .git file in my home directory, possibly from an old Sourcetree install that isn't used anymore.
OK so this issue is one of the known ones we have around ".git" in home directory.
@jack-pallot given your .git folder in the home directory, have you not noticed many untracked files in the git viewlet when opening a folder with VS Code below that home directory?
We are trying to find out why this issue is suddenly reported with 1.2 when it was actually behaving the same in 1.1.
None whatsoever. The only untracked files that appear are those that are related to the project I have open.
@bpasero no I do not have a .git folder in my home directory. I think code recursively loads the directory and if you happen to have a lot of files, etc it causes an OOM error. Is my guess.
@calam1 Does setting git.enabled
to false
, and restarting, fix it for you?
@joaomoreno I changed the git.enabled to false, but it still crashes with OOM error.
I’m encountering this problem, similar backtrace (FatalProcessOutOfMemory), with no .git directories in my home directory or in the workspaces affected by this problem. The windows crash at random, sitting in the background for several hours, not being interacted with. I see a slow memory leak in the affected window’s Electron Helper, about 2MB per minute. There is a distinct stair-stepping pattern, and the backtrace seems to implicate either a problem with cancelled promises, or a problem with the openAnythingHandler
:
Hope that helps. This is a pretty annoying bug. :)
@csnover really happy with your comment, I am very interested in finding out why there is a constant memory increase and I hope you are willing to help us out here a bit more if you don't mind. First of all I do have a couple of questions:
does the memory grow without you doing anything in the application, just by having it in the background?
Yes, that’s correct.
is this reproducible every time you let Code run in the background?
Nope, I have 3 or 4 open VSCode windows in the background and not all of them are leaking (though to be clear, different windows leak at different times, it is not always the same one window). There is some trigger event that must occur for this to happen, and I am not sure what that is yet.
could you do a memory snapshot between 2 times and compare them so that we learn what objects are actually allocated that cause the 2 MB increase per minute?
The next time I catch it happening I will do this. Unfortunately the window from yesterday ran out of memory and crashed so I can’t profile it.
That would be great, thanks. And I agree it must be some action or environmental thing that causes this because not everyone is hitting it.
I am so curious because it might also be an explanation of our ever green: https://github.com/Microsoft/vscode/issues/508
So, the good news is that I got some heap snapshots of a leaky VSCode window. The bad news is that (1) the window crashed while I was looking through the retainers, and after restoring the heap snapshots I lose the ability to look up referenced functions, (2) it contains proprietary information so I can’t give it to you, and (3) there was no clear smoking gun.
The JS heap grew by 1.3MB between the two snapshots, but comparison shows only a +36kB memory delta, and most of this was for newly compiled code (22kB) and internal arrays (9kB). So, I wonder if this issue might be exasperated by some nasty memory fragmentation or allocation bug in V8.
Anyway, of the newly allocated objects, there was one in particular that raised a flag:
This one is interesting because the backtrace reported earlier mentions __dirname
, I did not see any frees of a corresponding object from SearchService, and the problem seems to possibly be triggered by messing around with the quick open (cmd+p) dialogue. Still, I would have expected to see way more than a single allocation, which is one reason why I am not very sure about this.
There were also quite a few things pointing at telemetry:
This one is interesting because "telemetry.enableTelemetry": false
is in my user configuration, and I also block the telemetry servers at the firewall. So, if the telemetry service is still running and doesn’t know how to fail gracefully or limit the amount of data it collects, that could be another problem. However, as far as I could tell, its allocations were balanced with frees.
Nothing else looked very interesting. The only areas of code that were seemingly implicated by the heap snapshots are the search service, the telemetry service, and the loader. (Well, and maybe V8 itself.)
Doing some book keeping. I am assuming that the one issue remaining here is from @calam1 that memory slowly increases over time when Code runs in the background.
@calam1 could you identify some pattern or workspace that reproduces this issue reliably?
Only happens when I open code in my home directory. On my Mac in my home directory I opened code as such, code .
I think it was loading my entire home directory in the background which caused a memory leak. I don't normally use code that way. But I sometimes use it as an editor more than an ide. So I just don't use code in this manner anymore.
Sent from my iPhone
On Jun 28, 2016, at 9:39 AM, Benjamin Pasero notifications@github.com wrote:
Doing some book keeping. I am assuming that the one issue remaining here is from @calam1 that memory slowly increases over time when Code runs in the background.
@calam1 could you identify some pattern or workspace that reproduces this issue reliably?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.
@bpasero were you unable to identify a leak from the call tree and heap data?
@calam1 do you happen to have a .git folder in your home directory?
@csnover can you attach the profile as zip next time? that allows me to open it
No .git folder in the home directory itself . But in subfolders I do have .git folders. I tried the git enabled false and that didn't work. Plus I lost all the Git functionality of vs code. Which isn't optimal for me.
Sent from my iPhone
On Jun 28, 2016, at 11:54 PM, Benjamin Pasero notifications@github.com wrote:
@calam1 do you happen to have a .git folder in your home directory?
@csnover can you attach the profile as zip next time? that allows me to open it
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.
@calam1 if you configure files.watcherExclude to exclude all from watching (**) does it make a difference?
yes, this appears to fix the issue. Thanks!
On Wed, Jul 6, 2016 at 12:01 AM, Benjamin Pasero notifications@github.com wrote:
@calam1 https://github.com/calam1 if you configure files.watcherExclude to exclude all from watching (**) does it make a difference?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Microsoft/vscode/issues/7323#issuecomment-230671430, or mute the thread https://github.com/notifications/unsubscribe/AA4JXNf1K4Dc7yzLTopV-gTns8Csq-_3ks5qSzaWgaJpZM4Iv5F9 .
Ok this is: https://github.com/Microsoft/vscode/issues/3998
Steps to Reproduce: