A shape should support unknown fields when declared with '...' even if 'promote_nulla...
commit28e6d92ce61182c7326f3be36027026478013a9f
authorMichael Tingley <tingley@fb.com>
Thu, 13 Jul 2017 16:29:50 +0000 (13 09:29 -0700)
committerHhvm Bot <hhvm-bot@users.noreply.github.com>
Thu, 13 Jul 2017 16:42:48 +0000 (13 09:42 -0700)
treec91738c04596e1d43bcb77644023dee24e9b0e1c
parentb98bcf9e727735ac515f133b966bbfca4829e003
A shape should support unknown fields when declared with '...' even if 'promote_nullable_to_optional_in_shapes' is disabled

Summary:
The intention with the `promote_nullable_to_optional_in_shapes` experiment was, when enabled, to modify the interpretation of any shape such that:

  1. Each of its nullable fields are considered optional as well
  2. The shape always supports unknown fields

I made a mistake when I originally made this experiment, and accidentally set `si_allows_unknown_fields` to be **equal** to the experiment's value. This means, if I were to disable the experiment, that shapes explicitly declared as supporting unknown fields (e.g., `shape(...)`) would not be interpreted as such.

Reviewed By: dlreeves

Differential Revision: D5412505

fbshipit-source-id: 239d9ba6d65987cbf2ed19df60773ae8130644a8
hphp/hack/src/parser/parser_hack.ml