Previously, these registrations were scattered all over the codebase and
required that `global.atom` be defined, which creating weird ordering
issues. Registering them all from the global makes the relationships
clearer and means we don’t have to assign a global to set up a fully-
functional environment.
As part of this, we no longer serialize/deserialize the grammar registry
instance, but instead just restore the grammarOverridesByPath state.
Ultimately I’d like to store these overrides on the editor instead.
If the nearest containing package.json of a test path has an
atomTestRunner field, we’ll require the specified file as a test runner
rather than the default jasmine runner.
For some reason, logging to stderr/stdout from the render process only
works when Atom is run via child_process.spawn, which is how `apm test`
invokes it.
I’m trying to make a convenient interface for running tests directly via
the `atom` command, and this is the only way I could find to long to
stdout from the render process.
I’m also choosing stdout rather than stderr because in this case, you’re
intentionally running the tests and want to see feedback.
Fix the bug where Open With Atom on Windows machines will fail for paths
containing spaces. Wraps quotes around the path to the Atom executable
in the reg key string.
`Gutter::decorateMarker` passes its `decorationParams` object through to
`TextEditor::decorateMarker`. Rather than duplicate documentation and
fall out-of-date (as was surfaced in #8920), link the
`TextEditor::decorateMarker` as the canonical docs location.
GitRepository class documentation references deprecated method
Project::getRepo. This resolves that by instead using the replacement
Project::getRepositories.
Although, it seems as if that will be removed in v2.0, so perhaps we should
update this to instead using the async Project::getDirectories method, coupled
with Project::repositoryForDirectory?
/cc @atom/feedback
Fixes#8971