atom / timecop Goto Github PK
View Code? Open in Web Editor NEWShow where Atom spends time
License: MIT License
Show where Atom spends time
License: MIT License
Normally, if you switch themes, the stylesheets need to be regenerated, reload and they're not re-generated. Okay, cool.
Uninstall/disable/update some packages and every reload takes the same amount of rebuilds and the start time increases.
Without a detailed view, or tooltip, or something, this is now impossible to debug...
Deprecation cop provides the nice feature of quickly letting you file a bug for a package that uses a deprecated function. It'd be great if time cop let me do a similar thing with packages that are very slow to load or activate.
I imagine sometimes packages are just randomly slow because the whole system is slow, so this might need to be mediated by some other service to compute whether the slowness is a repeated thing.
To help diagnose storage file size issues when reading the window state from the ~/.atom/storage
folder.
# lsb-release -a
LSB Version: core-2.0-noarch:core-3.2-noarch:core-4.0-noarch:core-2.0-x86_64:core-3.2-x86_64:core-4.0-x86_64:desktop-4.0-amd64:desktop-4.0-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.2-amd64:graphics-3.2-noarch:graphics-4.0-amd64:graphics-4.0-noarch
Distributor ID: openSUSE Tumbleweed
Description: openSUSE Tumbleweed
Release: 20170213
Codename: n/a
# uname -a
Linux machine 4.10.9-1-default #1 SMP PREEMPT Sat Apr 8 15:30:03 UTC 2017 (195f937) x86_64 x86_64 x86_64 GNU/Linux
# atom -v
Atom : 1.17.0-beta3
Electron: 1.3.14
Chrome : 52.0.2743.82
Node : 6.5.0
Running atom --safe
and checking timecop shows:
Can only reproduce when Atom starts with no projects.
With all the new features for lazy loading of packages, we should add a list of packages that activate immediately on startup so that package authors can see or be notified that they should take advantage of the new features.
It may comes handy to find which package(s) is causing the unresponsive window dialog to appear.
Rather than posting screenshots for comparison like in atom/atom#3405, it would be great if we could click a button and dump all the stats into a text file to paste into a GitHub Issue or Discuss post.
Makes it searchable too!
I just saw that the top* package is one I've never used.
It should be easy to remove offending packages.
A link could work, although there could be a more prominent (and direct) button to uninstall it as well
I was about to say maybe just have uninstall buttons for packages in the red, but that would be a bad idea.
*for loading. For package activation, status-bar is coming in at a whopping 2308ms
Very minor indeed, but should the order of the first two items in the Startup Time section: namely 'Window load time' and 'Shell load time' be switched?
Currently:
Window load time
Shell load time
...
Re-ordered:
Shell load time
Window load time
...
This would seem to be the more logical order taking into account the other three items that follow.
See issue atom/atom#2654
The actual time it takes from typing atom [mydir]
to seeing an editor can be double of what timecop says the start time is. The startup below actually took 3 seconds (timed on my phone). More examples can be found in the linked issue above.
Directly from Deprecation Cop:
You have the core package "timecop" installed as a community package. See https://github.com/atom/dalek for how this causes problems and instructions on how to correct the situation.
<unknown> (<embedded>:13400:20)
Generator.next (null:null:null)
step (<embedded>:13387:279)
<unknown> (null:null:null)
process._tickCallback (internal/process/next_tick.js:109:7)
I don't know what it means, I hope it'll be helpful.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.