<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.7.4">Jekyll</generator><link href="https://nuclide.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://nuclide.io/" rel="alternate" type="text/html" /><updated>2018-12-12T18:01:13+00:00</updated><id>https://nuclide.io/feed.xml</id><title type="html">Nuclide</title><subtitle>Nuclide is built as a single package on top of Atom to provide hackability and the support of an active community.
It provides a first-class development environment for React Native, Hack and Flow projects.
</subtitle><entry><title type="html">Introducing Atom IDE UI</title><link href="https://nuclide.io/blog/2017/09/12/Introducing-Atom-IDE-UI/" rel="alternate" type="text/html" title="Introducing Atom IDE UI" /><published>2017-09-12T00:00:00+00:00</published><updated>2017-09-12T00:00:00+00:00</updated><id>https://nuclide.io/blog/2017/09/12/Introducing-Atom-IDE-UI</id><content type="html" xml:base="https://nuclide.io/blog/2017/09/12/Introducing-Atom-IDE-UI/">&lt;p&gt;Since the beginning, Nuclide has strived to provide a feature-rich IDE
experience on top of Atom, with functionality like
&lt;a href=&quot;https://nuclide.io/docs/languages/flow/#code-diagnostics&quot;&gt;code diagnostics&lt;/a&gt;,
&lt;a href=&quot;https://nuclide.io/docs/languages/flow/#jump-to-definition&quot;&gt;jump to definition&lt;/a&gt;,
and much more. However, over time we’ve heard feedback that the
“one-size-fits-all” philosophy can be overwhelming for many Atom users.&lt;/p&gt;

&lt;p&gt;That’s why we’re proud to announce the new
&lt;a href=&quot;https://atom.io/packages/atom-ide-ui&quot;&gt;Atom IDE UI&lt;/a&gt; package, which is part of
our collaboration with GitHub in the broader
&lt;a href=&quot;https://atom.io/ide&quot;&gt;Atom IDE&lt;/a&gt; initative. Read
more about that on &lt;a href=&quot;http://blog.atom.io/2017/09/12/announcing-atom-ide.html&quot;&gt;the Atom blog&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/static/images/blog/2017-09-12/atom-ide-ui.png&quot; alt=&quot;Screenshot&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Atom IDE UI is fast and lightweight by design. It extracts only the subset of the
core UI features from Nuclide necessary to support Atom’s
&lt;a href=&quot;https://github.com/atom/atom-languageclient&quot;&gt;atom-languageclient&lt;/a&gt;
library in displaying features supported by the &lt;a href=&quot;http://langserver.org/&quot;&gt;language server protocol&lt;/a&gt;. Like Nuclide, it’s a &lt;a href=&quot;https://nuclide.io/blog/2016/01/13/Nuclide-v0.111.0-The-Unified-Package/&quot;&gt;unified package&lt;/a&gt; which
contains the following features:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/diagnostics.md&quot;&gt;Diagnostics&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/definitions.md&quot;&gt;Definitions&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/find-references.md&quot;&gt;Find References&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/outline-view.md&quot;&gt;Outline View&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/datatips.md&quot;&gt;Datatips&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/code-format.md&quot;&gt;Code Formatting&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/code-actions.md&quot;&gt;Code Actions&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/code-highlight.md&quot;&gt;Code Highlight&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/blob/master/docs/busy-signal.md&quot;&gt;Busy Signal&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Atom IDE UI is designed to work out-of-the-box with packages using
&lt;a href=&quot;https://github.com/atom/atom-languageclient&quot;&gt;atom-languageclient&lt;/a&gt;, such as
&lt;a href=&quot;https://atom.io/packages/ide-typescript&quot;&gt;ide-typescript&lt;/a&gt; and our own
&lt;a href=&quot;https://atom.io/packages/ide-flowtype&quot;&gt;ide-flowtype&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As always, these features can be also be used directly via Atom services.
Documentation for these APIs is available inside the
&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui/tree/master/docs&quot;&gt;atom-ide-ui repository&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;getting-started&quot;&gt;Getting started&lt;/h2&gt;

&lt;p&gt;Using Atom IDE UI is as simple as:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Install the &lt;a href=&quot;https://atom.io/packages/atom-ide-ui&quot;&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;atom-ide-ui&lt;/code&gt; Atom package&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Install an “ide-“ package for your favourite language:
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;https://www.typescriptlang.org/&quot;&gt;TypeScript&lt;/a&gt;: &lt;a href=&quot;https://atom.io/packages/ide-typescript&quot;&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;ide-typescript&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;https://flow.org&quot;&gt;Flow&lt;/a&gt;: &lt;a href=&quot;https://atom.io/packages/ide-flowtype&quot;&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;ide-flowtype&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;Java: &lt;a href=&quot;https://atom.io/packages/ide-java&quot;&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;ide-java&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;C#: &lt;a href=&quot;https://atom.io/packages/ide-csharp&quot;&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;ide-csharp&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;https://github.com/atom/atom-languageclient/wiki/List-of-Atom-packages-using-Atom-LanguageClient&quot;&gt;Full list at the atom-languageclient wiki&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Note that if you’re already a Nuclide user, all of Atom IDE UI’s features will
still be bundled inside of Nuclide, so there’s no need to install another
package.&lt;/p&gt;

&lt;h2 id=&quot;roadmap&quot;&gt;Roadmap&lt;/h2&gt;

&lt;p&gt;The list of features in Atom IDE UI doesn’t yet encompass all the features
available in the language service protocol, and over time we’ll be working to
fill in the gaps. In particular, we’re looking to add:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md#textDocument_codeLens&quot;&gt;code lenses&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md#textDocument_rename&quot;&gt;rename support&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/Microsoft/language-server-protocol/blob/master/protocol.md#textDocument_signatureHelp&quot;&gt;function signature help&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Our hope is that other Nuclide features will eventually also become part of the
Atom IDE effort, including key components like the &lt;a href=&quot;https://nuclide.io/docs/features/debugger/&quot;&gt;Nuclide debugger&lt;/a&gt;. Note that we’re still committed to
supporting the open-source Nuclide package for the foreseeable future.&lt;/p&gt;

&lt;p&gt;Contributions and bug reports are welcome over at
&lt;a href=&quot;https://github.com/facebook-atom/atom-ide-ui&quot;&gt;facebook-atom/atom-ide-ui&lt;/a&gt;!&lt;/p&gt;

&lt;p&gt;The Atom IDE UI code is released under the BSD-3-Clause license.&lt;/p&gt;</content><author><name>{&quot;full_name&quot;=&gt;&quot;Hanson Wang&quot;, &quot;fbid&quot;=&gt;505887506}</name></author><summary type="html">Since the beginning, Nuclide has strived to provide a feature-rich IDE experience on top of Atom, with functionality like code diagnostics, jump to definition, and much more. However, over time we’ve heard feedback that the “one-size-fits-all” philosophy can be overwhelming for many Atom users.</summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nuclide.io/static/og_image.png" /></entry><entry><title type="html">Code Search</title><link href="https://nuclide.io/blog/2017/08/31/Code-Search/" rel="alternate" type="text/html" title="Code Search" /><published>2017-08-31T00:00:00+00:00</published><updated>2017-08-31T00:00:00+00:00</updated><id>https://nuclide.io/blog/2017/08/31/Code-Search</id><content type="html" xml:base="https://nuclide.io/blog/2017/08/31/Code-Search/">&lt;p&gt;One of the missing features in the &lt;a href=&quot;/docs/features/quick-open&quot;&gt;Quick Open&lt;/a&gt; pane is searching for
code in your current projects. Internally at Facebook, we have a plugin that provides this
functionality but we never offered a similar tool for the open source world. And we’ve just published this missing feature!!&lt;/p&gt;

&lt;p&gt;Now you can use Quick Open (&lt;em&gt;command + T&lt;/em&gt; on Mac and &lt;em&gt;control + T&lt;/em&gt; on Windows and Linux) and type any
code you want to look for. You can also explore the &lt;em&gt;Code Search&lt;/em&gt; tab.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/static/images/blog/2017-08-31/quick-open.png&quot; width=&quot;700&quot; alt=&quot;Quick Open&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Code Search supports &lt;a href=&quot;https://github.com/BurntSushi/ripgrep&quot;&gt;ripgrep&lt;/a&gt; (rg),
&lt;a href=&quot;https://github.com/ggreer/the_silver_searcher&quot;&gt;silversearcher&lt;/a&gt; (ag) and
&lt;a href=&quot;https://beyondgrep.com/&quot;&gt;ack&lt;/a&gt;. We recommend ripgrep and ag because they are blazing fast. Sadly,
only ripgrep works properly on Windows. You can configure which tool to use in the Nuclide package
settings under the &lt;em&gt;nuclide-code-search&lt;/em&gt; tab.&lt;/p&gt;

&lt;p&gt;If you don’t specifically select a tool, Nuclide will try to use any available one. On Windows, it
will only try rg.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/static/images/blog/2017-08-31/settings.png&quot; width=&quot;700&quot; alt=&quot;Settings&quot; /&gt;&lt;/p&gt;</content><author><name>{&quot;full_name&quot;=&gt;&quot;Walter Erquinigo&quot;, &quot;fbid&quot;=&gt;750002794}</name></author><summary type="html">One of the missing features in the Quick Open pane is searching for code in your current projects. Internally at Facebook, we have a plugin that provides this functionality but we never offered a similar tool for the open source world. And we’ve just published this missing feature!!</summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nuclide.io/static/og_image.png" /></entry><entry><title type="html">Command + Click: You Have One Job</title><link href="https://nuclide.io/blog/2017/02/27/Command-Click-You-Have-One-Job/" rel="alternate" type="text/html" title="Command + Click: You Have One Job" /><published>2017-02-27T00:00:00+00:00</published><updated>2017-02-27T00:00:00+00:00</updated><id>https://nuclide.io/blog/2017/02/27/Command-Click-You-Have-One-Job</id><content type="html" xml:base="https://nuclide.io/blog/2017/02/27/Command-Click-You-Have-One-Job/">&lt;p&gt;One of the cool things about Nuclide is that, even though it’s an IDE with a ton
of awesome IDE features, it still belongs to the TextMate/Sublime/Atom lineage
of modern text editors. Unfortunately, sometimes these two things come into
conflict. Such is the case with command click.&lt;/p&gt;

&lt;p&gt;See, in the Atom family of editors, command + click (control + click on Windows
and Linux) means multiple cursors. But if you’re coming from an IDE, you’re
probably used to using command + click to jump to a definition (“Hyperclick”).&lt;/p&gt;

&lt;p&gt;Since Nuclide is both of these things, we’ve always tried to do both: if you
clicked on something that we could get a definition for, we’d take you to it;
otherwise, we’d let Atom do its default behavior (add another cursor). This way
we only interfered with expected Atom behavior when we knew we were supposed to.
Perfect! Right?&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/static/images/blog/2017-02-27/poll.png&quot; width=&quot;400&quot; alt=&quot;An internal poll&quot; /&gt;&lt;/p&gt;

&lt;p&gt;It turns out that, in trying to accommodate everybody, we hadn’t made command +
click predictable to anybody. It’s true: when you command click on something,
you may want to go to its definition. Or you may want to add another cursor. But
nobody wants to sometimes go to its definition and sometimes add a cursor. Sorry
about that.&lt;/p&gt;

&lt;p&gt;So as of &lt;a href=&quot;https://github.com/facebook/nuclide/releases/tag/v0.207.0&quot;&gt;v0.207&lt;/a&gt; (rolled out last week!), command clicking will always jump
to definition.&lt;/p&gt;

&lt;h1 id=&quot;upgrade-path&quot;&gt;Upgrade Path&lt;/h1&gt;

&lt;p&gt;We know that these kind of breaking changes are disruptive, so the first time
you command + click, we’ll show you a one-time notification explaining the
situation:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/static/images/blog/2017-02-27/notification.png&quot; alt=&quot;&quot; width=&quot;450&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Don’t despair, multicursor fans!  command + option + click still works! (In
Sublime too.) Or if you really insist on using command + click for multiple
cursors, you can change the  Hyperclick trigger to something else in the Nuclide
package’s settings.&lt;/p&gt;</content><author><name>{&quot;full_name&quot;=&gt;&quot;Matthew Dapena-Tretter&quot;, &quot;fbid&quot;=&gt;100002839212206}</name></author><summary type="html">One of the cool things about Nuclide is that, even though it’s an IDE with a ton of awesome IDE features, it still belongs to the TextMate/Sublime/Atom lineage of modern text editors. Unfortunately, sometimes these two things come into conflict. Such is the case with command click.</summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nuclide.io/static/og_image.png" /></entry><entry><title type="html">Nuclide v0.111.0: The Unified Package</title><link href="https://nuclide.io/blog/2016/01/13/Nuclide-v0.111.0-The-Unified-Package/" rel="alternate" type="text/html" title="Nuclide v0.111.0: The Unified Package" /><published>2016-01-13T00:00:00+00:00</published><updated>2016-01-13T00:00:00+00:00</updated><id>https://nuclide.io/blog/2016/01/13/Nuclide-v0.111.0-The-Unified-Package</id><content type="html" xml:base="https://nuclide.io/blog/2016/01/13/Nuclide-v0.111.0-The-Unified-Package/">&lt;p&gt;This is a significant release for Nuclide that is mainly aimed at improving and simplifying Nuclide as an open source project. The most apparent and important change is moving Nuclide from many Atom
packages—44 of them to be exact—to just one: &lt;code class=&quot;highlighter-rouge&quot;&gt;nuclide&lt;/code&gt;. We will discuss below why we are excited
about moving to a single package and how it improves Nuclide for everyone, but first we will cover
how to get going with the new release.&lt;/p&gt;

&lt;h2 id=&quot;installing-nuclide-v01110&quot;&gt;Installing Nuclide v0.111.0&lt;/h2&gt;

&lt;p&gt;Nuclide v0.111.0 is a single Atom package. To install it, you can either search for the
&lt;a href=&quot;https://atom.io/packages/nuclide&quot;&gt;‘nuclide’ Atom package&lt;/a&gt; in &lt;em&gt;Atom &amp;gt; Packages &amp;gt; Install&lt;/em&gt; or install
it from the command line with &lt;code class=&quot;highlighter-rouge&quot;&gt;apm&lt;/code&gt;. While this release focuses on moving to a single package, it
does include fixes and improvements that you can find in the
&lt;a href=&quot;https://github.com/facebook/nuclide/blob/v0.111.0/CHANGELOG.md&quot;&gt;CHANGELOG.md&lt;/a&gt;.&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nv&quot;&gt;$ &lt;/span&gt;apm install nuclide
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h4 id=&quot;installing-nuclide-server-v01110&quot;&gt;Installing Nuclide Server v0.111.0&lt;/h4&gt;

&lt;p&gt;Nuclide’s server has moved into the &lt;a href=&quot;https://www.npmjs.com/package/nuclide&quot;&gt;‘nuclide’ NPM package&lt;/a&gt;.
The server is required only if you intend to edit remote files from within Atom+Nuclide, and it
should be installed on the host where the remote files live. We recommend installing the server as
a global module using NPM’s &lt;code class=&quot;highlighter-rouge&quot;&gt;-g&lt;/code&gt; flag so its binaries are available in ‘/usr/local/bin’.&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nv&quot;&gt;$ &lt;/span&gt;npm install &lt;span class=&quot;nt&quot;&gt;-g&lt;/span&gt; nuclide
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3 id=&quot;new-version-scheme&quot;&gt;New Version Scheme&lt;/h3&gt;

&lt;p&gt;The last version of the Nuclide packages that were published was v0.0.35. Internally, however, the
server was last released as v0.108.0. This release adopts our internal version scheme so the
versions stay in sync with open source releases.&lt;/p&gt;

&lt;h3 id=&quot;migrating-from-previous-versions&quot;&gt;Migrating from Previous Versions&lt;/h3&gt;

&lt;p&gt;If you previously installed Nuclide via the &lt;code class=&quot;highlighter-rouge&quot;&gt;nuclide-installer&lt;/code&gt; package or by installing &lt;code class=&quot;highlighter-rouge&quot;&gt;nuclide-&lt;/code&gt;
packages individually, you should uninstall them first. Follow the
&lt;a href=&quot;/docs/editor/uninstall/#v0-0-35-and-prior&quot;&gt;v0.0.35 uninstall instructions&lt;/a&gt; to ensure previous
versions of Nuclide are removed.&lt;/p&gt;

&lt;p&gt;The new ‘nuclide’ package will automatically disable any deprecated ‘nuclide-*’ packages and warn
you on start up that you should uninstall them to ensure everything works as expected.&lt;/p&gt;

&lt;h2 id=&quot;configuring-single-package-nuclide&quot;&gt;Configuring Single-package Nuclide&lt;/h2&gt;

&lt;p&gt;Because Nuclide is now a single Atom Package, its settings are unified under the ‘nuclide’ package
in &lt;em&gt;Atom &amp;gt; Packages &amp;gt; nuclide &amp;gt; Settings&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/static/images/blog/nuclide-atom-settings.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Features you may have been familiar with as separate packages before, such as Hyperclick,
Diagnostics, and File Tree, are now listed as features in Nuclide’s Settings page and are togglable
as if they were Atom packages. If you want to use only one or a few of the features of Nuclide, you
can disable the rest of Nuclide without incurring any load time for the disabled features’ code. All
features are enabled by default.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/static/images/blog/nuclide-feature-settings.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;migrating-settings-from-previous-packages&quot;&gt;Migrating Settings from Previous Packages&lt;/h3&gt;

&lt;p&gt;If you changed settings in any of Nuclide’s previous packages, the settings will be automatically
migrated to their new location in the &lt;code class=&quot;highlighter-rouge&quot;&gt;nuclide.&lt;/code&gt; namespace when you first launch Atom after
installing the ‘nuclide’ package. The settings will be configurable like before but under the
&lt;em&gt;Atom &amp;gt; Packages &amp;gt; nuclide &amp;gt; Settings&lt;/em&gt; rather than under the package’s name.&lt;/p&gt;

&lt;h2 id=&quot;why-a-single-atom-package&quot;&gt;Why a Single Atom Package?&lt;/h2&gt;

&lt;p&gt;The Atom ecosystem is centered around modular packages that can be installed and updated
independently, and Nuclide took that same approach from the start. We wrote scripts to let our code
live in a single repository but be released as many Atom packages. Nuclide releases were actually
simultaneous releases of 40+ Atom packages. While this fit well with the Atom model, it meant we
also had to distribute a “installer” package that oversaw the installation of top-level Atom
packages.&lt;/p&gt;

&lt;p&gt;In practice, the installer process was computationally expensive, difficult to
troubleshoot, and took roughly 40 minutes partially due to large amounts of network traffic. When
all Nuclide packages were installed, they filled over 3GB of disk space. Nuclide packages are
heavily interdependent, and because they were installed as top-level Atom packages they each had
their own ‘node_modules’ directory with largely duplicate dependencies.&lt;/p&gt;

&lt;p&gt;By unifying Nuclide into a single Atom package, we aimed to improve installation, updates, and
maintenance. The single ‘nuclide’ package does not require a special installer, only &lt;code class=&quot;highlighter-rouge&quot;&gt;apm install&lt;/code&gt;
like other Atom packages. This simplifies installation for everyone and makes Nuclide updates fast.
Once installed, the ‘nuclide’ package takes under 110MB of disk space, a 95%+ reduction in disk use,
and subsequently, network use during installation. The dramatic drop in disk use was possible
because Nuclide’s features now share a single ‘node_modules’ directory and use relative paths to
require one another, eliminating the duplicate dependencies present when Nuclide was 40+ top-level
Atom packages.&lt;/p&gt;

&lt;h2 id=&quot;whats-next&quot;&gt;What’s Next?&lt;/h2&gt;

&lt;p&gt;We are excited to greatly improve the experience of Nuclide for users outside Facebook. This release
should solve many of the most common installation and upgrade issues that have been reported, and it
paves the way for more frequent and more stable releases. We hope that simplifying the installation
process will make &lt;a href=&quot;https://github.com/facebook/nuclide&quot;&gt;Nuclide’s source&lt;/a&gt; more familiar to other
Atom developers and make it easier for anyone to contribute.&lt;/p&gt;

&lt;p&gt;If you run into issues with the upgrade process, or if you run into any issue at all, open a
&lt;a href=&quot;https://github.com/facebook/nuclide/issues&quot;&gt;Nuclide GitHub issue&lt;/a&gt; so we can help out.&lt;/p&gt;</content><author><name>{&quot;full_name&quot;=&gt;&quot;Andres Suarez&quot;, &quot;fbid&quot;=&gt;18700343}</name></author><summary type="html">This is a significant release for Nuclide that is mainly aimed at improving and simplifying Nuclide as an open source project. The most apparent and important change is moving Nuclide from many Atom packages—44 of them to be exact—to just one: nuclide. We will discuss below why we are excited about moving to a single package and how it improves Nuclide for everyone, but first we will cover how to get going with the new release.</summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://nuclide.io/static/og_image.png" /></entry></feed>