hhvm / type-assert

Hack library for converting untyped data to typed data.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Remove all dict/vec/varray/darray/shape/tuple implicit conversions in assert path

fredemmott opened this issue · comments

Related: #48, #18

We're expecting to make darray an alias for dict, varray an alias for vec, and swap the backing store for shapes and tuples to dict/vec respectively in the next 2-8 weeks. Once that has happened in HHVM:

  • this implicit conversion should be removed
  • we should start asserting that a successful assert returns exactly the same value, just with a different type
  • whenever the HHVM default changes, we should make sure there is a type-assert release that works with it and still has the implicit conversions - then bump the major version and resolve this issue
  • we probably want an intermediate release (or option/global flag) to enable notices when implicit conversions happen

We are in a post hadva world. This issue looks very similar to #61.

Sorry, that is not quite true. The old array typed specs are still around. The structural types have been modernized already.