<p dir="auto">I'm not sure what the best medium to have this discussion in, so let's just use an issue for now.</p>
<h3 dir="auto">WorkspaceView</h3>
<p dir="auto"><strong>Add</strong></p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::eachPaneView # Rename of WorkspaceView::eachPane</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::getPaneViews # Rename of WorkspaceView::getPanes</li>
</ul>
<p dir="auto"><strong>Keep</strong></p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::appendToBottom</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::appendToLeft</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::appendToRight</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::appendToTop</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::prependToBottom</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::prependToLeft</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::prependToRight</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::prependToTop</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::eachEditorView</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::getActivePaneView</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::setTitle</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::updateTitle</li>
</ul>
<p dir="auto"><strong>Deprecate or Remove</strong></p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::getPanes # Renamed</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::eachPane # Renamed</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::confirmClose</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::focusNextPane</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::focusPaneAbove</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::focusPaneBelow</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::focusPaneOnLeft</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::focusPaneOnRight</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::focusPreviousPane</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::getActivePaneItem # This belongs on Workspace</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::getActivePane</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::getActiveView</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::getFocusedPane</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> WorkspaceView::indexOfPane</li>
</ul>
<h3 dir="auto">Workspace</h3>
<p dir="auto"><strong>Add</strong></p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::getPanes</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::getActivePane</li>
<li><del>Workspace::getActivePaneItem</del></li>
</ul>
<p dir="auto"><strong>Keep</strong></p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::getEditors</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::eachEditor</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::getActiveEditor</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::open</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::registerOpener</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::unregisterOpener</li>
</ul>
<p dir="auto"><strong>Deprecate or Remove</strong></p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::destroyActivePane # This should be Pane::destroy() or Pane::close()</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::saveActivePaneItem</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::saveActivePaneItemAs</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::reopenItemSync</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Workspace::destroyActivePaneItem</li>
</ul>
<p dir="auto">Not sure how to describe this or what actually caused it. After hitting cmd+z a few times, the debugger opened and code started duplicating in my file strangely. I restarted atom and tried to open the folder again, but the window stays white and I get this in the console:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="TypeError: Cannot call method 'addMarkerAtLevel' of undefined
    at IntervalSkipList.module.exports.IntervalSkipList.placeMarker (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/node_modules/interval-skip-list/lib/interval-skip-list.js:309:14)
    at IntervalSkipList.module.exports.IntervalSkipList.insert (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/node_modules/interval-skip-list/lib/interval-skip-list.js:116:12)
    at IntervalSkipList.module.exports.IntervalSkipList.update (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/node_modules/interval-skip-list/lib/interval-skip-list.js:140:19)
    at ArrayMarker.module.exports.ArrayMarker.updateIndices (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/array-marker.js:678:51)
    at new ArrayMarker (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/array-marker.js:44:12)
    at Array.module.exports.Array.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/array.js:79:30)
    at Map.module.exports.Map.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/map.js:54:15)
    at Array.module.exports.Array.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/array.js:97:15)
    at Map.module.exports.Map.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/map.js:54:15)
    at Map.module.exports.Map.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/map.js:54:15)
    at Database.module.exports.Database.applyOperations (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/database.js:282:18)
    at Function.module.exports.Database.deserialize (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/database.js:49:16)
    at Function.module.exports.Document.deserialize (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/document.js:48:32)
    at Atom.module.exports.Atom.loadWindowState (/Applications/Atom.app/Contents/Resources/app/src/atom.js:472:24)
    at Atom.module.exports.Atom.getWindowState (/Applications/Atom.app/Contents/Resources/app/src/atom.js:498:33)
    at Atom.module.exports.Atom.initialize (/Applications/Atom.app/Contents/Resources/app/src/atom.js:93:73)
    at Atom.module.exports.Atom.setUpEnvironment (/Applications/Atom.app/Contents/Resources/app/src/atom.js:98:19)
    at Object.&lt;anonymous&gt; (/Applications/Atom.app/Contents/Resources/app/src/window-bootstrap.js:17:8)
    at Object.&lt;anonymous&gt; (/Applications/Atom.app/Contents/Resources/app/src/window-bootstrap.js:25:4)
    at Module._compile (module.js:471:26)
    at Object.Module._extensions..js (module.js:489:10)
    at Module.load (/Applications/Atom.app/Contents/Resources/app/node_modules/coffee-script/lib/coffee-script/coffee-script.js:211:36)
    at Function.Module._load (module.js:327:12)
    at Module.require (module.js:379:17)
    at require (module.js:395:17)
    at window.onload (file:///Applications/Atom.app/Contents/Resources/app/static/index.html:12:9) index.html:20
window.onload"><pre class="notranslate"><code class="notranslate">TypeError: Cannot call method 'addMarkerAtLevel' of undefined
    at IntervalSkipList.module.exports.IntervalSkipList.placeMarker (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/node_modules/interval-skip-list/lib/interval-skip-list.js:309:14)
    at IntervalSkipList.module.exports.IntervalSkipList.insert (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/node_modules/interval-skip-list/lib/interval-skip-list.js:116:12)
    at IntervalSkipList.module.exports.IntervalSkipList.update (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/node_modules/interval-skip-list/lib/interval-skip-list.js:140:19)
    at ArrayMarker.module.exports.ArrayMarker.updateIndices (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/array-marker.js:678:51)
    at new ArrayMarker (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/array-marker.js:44:12)
    at Array.module.exports.Array.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/array.js:79:30)
    at Map.module.exports.Map.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/map.js:54:15)
    at Array.module.exports.Array.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/array.js:97:15)
    at Map.module.exports.Map.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/map.js:54:15)
    at Map.module.exports.Map.finalizeCreation (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/map.js:54:15)
    at Database.module.exports.Database.applyOperations (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/database.js:282:18)
    at Function.module.exports.Database.deserialize (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/database.js:49:16)
    at Function.module.exports.Document.deserialize (/Applications/Atom.app/Contents/Resources/app/node_modules/telepath/lib/document.js:48:32)
    at Atom.module.exports.Atom.loadWindowState (/Applications/Atom.app/Contents/Resources/app/src/atom.js:472:24)
    at Atom.module.exports.Atom.getWindowState (/Applications/Atom.app/Contents/Resources/app/src/atom.js:498:33)
    at Atom.module.exports.Atom.initialize (/Applications/Atom.app/Contents/Resources/app/src/atom.js:93:73)
    at Atom.module.exports.Atom.setUpEnvironment (/Applications/Atom.app/Contents/Resources/app/src/atom.js:98:19)
    at Object.&lt;anonymous&gt; (/Applications/Atom.app/Contents/Resources/app/src/window-bootstrap.js:17:8)
    at Object.&lt;anonymous&gt; (/Applications/Atom.app/Contents/Resources/app/src/window-bootstrap.js:25:4)
    at Module._compile (module.js:471:26)
    at Object.Module._extensions..js (module.js:489:10)
    at Module.load (/Applications/Atom.app/Contents/Resources/app/node_modules/coffee-script/lib/coffee-script/coffee-script.js:211:36)
    at Function.Module._load (module.js:327:12)
    at Module.require (module.js:379:17)
    at require (module.js:395:17)
    at window.onload (file:///Applications/Atom.app/Contents/Resources/app/static/index.html:12:9) index.html:20
window.onload
</code></pre></div>
<p dir="auto">I resolved the problem with this:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="rm -fr ~/.atom/storage"><pre class="notranslate"><code class="notranslate">rm -fr ~/.atom/storage
</code></pre></div>