Version-0.19.0
This post announced Flow v0.19.0. For current features and behavior, see the Flow documentation.
Flow v0.19.0 was deployed today! It has a ton of changes, which the Changelog summarizes. The Changelog can be a little concise, though, so here are some longer explanations for some of the changes. Hope this helps!
@noflow
Flow is opt-in by default (you add @flow to a file). However we noticed that
sometimes people would add Flow annotations to files that were missing @flow.
Often, these people didn't notice that the file was being ignored by Flow. So
we decided to stop allowing Flow syntax in non-Flow files. This is easily fixed
by adding either @flow or @noflow to your file. The former will make the
file a Flow file. The latter will tell Flow to completely ignore the file.
Declaration files
Files that end with .flow are now treated specially. They are the preferred
provider of modules. That is if both foo.js and foo.js.flow exist, then
when you write import Foo from './foo', Flow will use the type exported from
foo.js.flow rather than foo.js.
We imagine two main ways people will use .flow files.