Skip to content

Commit caba051

Browse files
SamChou19815facebook-github-bot
authored andcommitted
v0.266.0
Reviewed By: alexmckenley Differential Revision: D71916910 fbshipit-source-id: f4fcbb5bc064beb20c8cdce82c25f9a719922366
1 parent bc6dac0 commit caba051

File tree

9 files changed

+27
-9
lines changed

9 files changed

+27
-9
lines changed

Changelog.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,21 @@
1+
### 0.266.0
2+
3+
Likely to cause new Flow errors:
4+
* Support for `$PropertyType` and `$ElementType` has been removed. Now referencing these types will just resolve to a global type if you have your own definition for them, and result in a `cannot-resolve-name` error otherwise. These types have been replaced by index access types for a long time. You can migrate to index access types by enabling use-indexed-access-type from https://www.npmjs.com/package/eslint-plugin-fb-flow and running the quickfixes. If you are unable to migrate, you can add the following to your global libdefs:
5+
```
6+
type $PropertyType<T, K> = T[K];
7+
type $ElementType<T, K> = T[K];
8+
```
9+
* Now given the subtyping check `component()<: component(ref?: ref_prop)`, Flow will ensure that `ref_prop` is a subtype of `void` instead of a subtype of `React.RefSetter<void>`.
10+
* `React$ComponentType`, which was previously given `[internal-type]` error on every usage, is now removed.
11+
* `React.ComponentType<Props>` is now only an alias of `component(...Props)`, instead of some special cased types. This comes with stricter checks and conversions, such as making Props readonly, erroring on the presence the ref prop instead of silently ignoring them, and ensures that `Props` is a subtype of `{...}`. In addition, the `React$AbstractComponent` type is removed.
12+
13+
Notable bug fixes:
14+
* fixed a subtle unsoundness in the inference of computed-property dictionary object creation (e.g. [try-Flow](https://flow.org/try/#1N4Igxg9gdgZglgcxALlAIwIZoKYBsD6uEEAztvhgE6UYCe+JADpdhgCYowa5kA0I2KAFcAtiRQAXSkOz9sADwxgJ+NPTbYuQ3BMnTZA+Y2yU4IwRO4A6SFBIrGVDGM7c+h46fNRLuKxJIGWh8MeT0ZfhYlCStpHzNsFBAMIQkIEQwJODAQfiEyfBE4eWw2fDgofDBMsAALfAA3KjgsXGxxZC4eAw0G-GhcWn9aY3wWZldu-g1mbGqJUoBaCRHEzrcDEgBrbAk62kXhXFxJ923d-cPRHEpTgyEoMDaqZdW7vKgoOfaSKgOKpqmDA+d4gB5fMA-P6LCCMLLQbiLOoYCqgh6-GDYRYIXYLSgkRZkCR4jpddwPfJLZjpOBkO4AX34kA0SQ0Tyo2AABIDOfJkJz7KYoAgANwAHSgbNwHO5VE5tH5goqoolEts9k5EDQACsAIz84AAbSVwoAuvzdfTOQBeTnACWczmG+Tmzm63gOp20V0AZl4nIA9AHOQB3ODHTkmSgQSgS+ki3IgBomEhwaBJBoABisACYAGwAVisPpA9KAA))
15+
16+
Library Definitions:
17+
* `React.lazy` and `React.memo` is now generic over the presence or absence of ref prop.
18+
119
### 0.265.3
220

321
* Make `@flowtyped` resolution support work on Windows.

flow_parser.opam

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
opam-version: "2.0"
22
name: "flow_parser"
3-
version: "0.265.3"
3+
version: "0.266.0"
44
maintainer: "[email protected]"
55
authors: ["Flow Team <[email protected]>"]
66
homepage: "https://github.com/facebook/flow/tree/master/src/parser"

flowtype.opam

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
opam-version: "2.0"
22
name: "flowtype"
3-
version: "0.265.3"
3+
version: "0.266.0"
44
maintainer: "[email protected]"
55
authors: "Flow Team <[email protected]>"
66
license: "MIT"
@@ -15,7 +15,7 @@ depends: [
1515
"camlp-streams" {>= "5.0.1"}
1616
"dtoa" {>= "0.3.2"}
1717
"fileutils" {>= "0.6.4"}
18-
"flow_parser" {= "0.265.3"}
18+
"flow_parser" {= "0.266.0"}
1919
"inotify" {os = "linux" & >= "2.4.1"}
2020
"ounit2" {with-test}
2121
"lwt" {>= "5.7.0"}

packages/flow-parser-bin/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "flow-parser-bin",
3-
"version": "0.265.3",
3+
"version": "0.266.0",
44
"description": "The Flow JavaScript parser, via bindings to the native OCaml implementation",
55
"main": "index.js",
66
"repository": "https://github.com/facebook/flow.git",

packages/flow-parser/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "flow-parser",
3-
"version": "0.265.3",
3+
"version": "0.266.0",
44
"description": "JavaScript parser written in OCaml. Produces ESTree AST",
55
"homepage": "https://flow.org",
66
"license": "MIT",

packages/flow-remove-types/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "flow-remove-types",
3-
"version": "2.265.3",
3+
"version": "2.266.0",
44
"description": "Removes Flow type annotations from JavaScript files with speed and simplicity.",
55
"author": {
66
"name": "Flow Team",

packages/try-flow-website-js/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "try-flow-website-js",
3-
"version": "0.265.3",
3+
"version": "0.266.0",
44
"description": "An NPM package to hold compiled `flow.js` and libdefs for every Flow version.",
55
"license": "MIT",
66
"repository": "facebook/flow",

src/common/flow_version.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
* LICENSE file in the root directory of this source tree.
66
*)
77

8-
let version = "0.265.3"
8+
let version = "0.266.0"

website/docs/install.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ npm install --save-dev flow-bin
126126
"name": "my-flow-project",
127127
"version": "1.0.0",
128128
"devDependencies": {
129-
"flow-bin": "^0.265.3"
129+
"flow-bin": "^0.266.0"
130130
},
131131
"scripts": {
132132
"flow": "flow"

0 commit comments

Comments
 (0)