When adding a new dependency, make sure we add its signature dependencies
commit0e4cb9c89cd9b10a038de9eff2e28411c9826a25
authorSasha Manzyuk <manzyuk@fb.com>
Thu, 26 Sep 2019 18:10:37 +0000 (26 11:10 -0700)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Thu, 26 Sep 2019 18:16:02 +0000 (26 11:16 -0700)
tree4ed50b24e68e663d08c590c755f46bc8721e1a64
parent3d5a20440e382bcc335e68b4b427fde6c9db96b3
When adding a new dependency, make sure we add its signature dependencies

Summary: Dependency collection happens in two steps: first we typecheck the function or the class of the method we want to extract, then we fetch signature dependencies of the dependencies we collected during the first step. However, the dependencies in the second step might have their own signature dependencies, e.g. ancestors for classes. In this commit we call `add_signature_dependencies` every time we add a new dependency to the set of dependencies.

Reviewed By: CatherineGasnier

Differential Revision: D16984655

fbshipit-source-id: 3298609503c79fdd0ccd02a6111d4ed15962dd95
hphp/hack/src/server/serverExtractStandalone.ml
hphp/hack/test/integration/data/dependencies/expected/__nonexistent_dependency.php.exp