{"push_id":862164466,"size":357,"distinct_size":357,"ref":"refs/heads/master","head":"d54ce47c0d0d59689d166e8afa6f5a5c58a22d1b","before":"0762f75f960eb8787ea9f0496bea96c7c76e3872","commits":[{"sha":"abf95f997881de795725c2eeec785bf72f21b693","author":{"email":"f7a3a5c0528e7657f3f7816faa0a5e2de16317f6@fb.com","name":"Sara Golemon"},"message":"Support PHP7's unserialize() allowed_classes option\n\nSummary: HHVM introduced a similar piece of functionality 2.5 years ago\nwith somewhat different semantics.\n\nIn https://github.com/facebook/hhvm/commit/6a93844442a0f014b309e11ad296f6ef90b35ffc\nthe whilelist argument is only validated if an INI setting is enabled,\nand even then might only warn of the attempted deserialization,\nbut not actually block it.\n\nThis diff introduces PHP7's \"always on\" filtering described in:\nhttps://wiki.php.net/rfc/secure_unserialize\n(note: scroll down to see how the final version was implemented).\n\nWhen performing the whitelist check, we first check to see if the\nPHP7 style whitelisting is used (by the presence of an\n\"allowed_classes\" key.\nIf this option is present, it takes precedence and behaves like PHP7.\n\nIf this option is not present, we then check the RuntimeOption:\nUnserializationWhitelistCheck, and warn/error/continue as appropriate.\n\nCloses https://github.com/facebook/hhvm/issues/6052\n\nReviewed By: @jwatzman\n\nDifferential Revision: D2510411\n\nfb-gh-sync-id: c0d30d144aec2ab1493dd05a3f6a94dce24b50d1","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/abf95f997881de795725c2eeec785bf72f21b693"},{"sha":"3af85a5d151cb9667a0d466de43ba468c6a97b08","author":{"email":"521b71b66118ece0fda08843b612c77cfd6c2588@fb.com","name":"Jez Ng"},"message":"Add comments to daemon.ml\n\nSummary: Read it\n\nReviewed By: @​achow\n\nDifferential Revision: D2530920\n\nfb-gh-sync-id: 4a2ba4b3e3e54a86bff69eeb48115eaabd379be8","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/3af85a5d151cb9667a0d466de43ba468c6a97b08"},{"sha":"00df52b85751aee15cf74ef0449134697d5019e8","author":{"email":"742f369ad534c009ebc10a712ed3435855fea20f@gmail.com","name":"Orvid King"},"message":"Stub out the unwind mechanics under MSVC\n\nSummary: MSVC's exception handling code is significantly different from GCC's, meaning none of this code is actually going to work correctly for MSVC, so just stub it out for now so that we can compile.\nCloses https://github.com/facebook/hhvm/pull/6007\n\nReviewed By: @jwatzman\n\nDifferential Revision: D2389405\n\nfb-gh-sync-id: a34634d18c8d6f1944fda8318d83f143fa1eacd6","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/00df52b85751aee15cf74ef0449134697d5019e8"},{"sha":"ee81ae87d9266cf2582b102b559c624dffbfa3d2","author":{"email":"8fe4eacdc8aaa79406accb1339d17293db96da99@fb.com","name":"Paul Bissonnette"},"message":"Revert \"Remove some impossible branches from HNI callpath\"\n\nSummary: This reverts commit 1c71f47a92735d9e5fa2a0bd6df1df8b942090cb.\n\nThis breaks FCallBuiltin in the interpreter because it calls through to\nNative::coerceFCallArgs(...) to handle both IDLs and HNIs. I've been seeing\nassertions in perflab when running under dbgo. The iop function is misleading\nbecause the else branch always assumes param-coerce-mode, this is because\ncoercion can't fail for IDLs.\n\ndiffusion/FBCODE/browse/master/hphp/runtime/vm/bytecode.cpp$6515?view=undefined\n\nReviewed By: @alexmalyshev\n\nDifferential Revision: D2534981\n\nfb-gh-sync-id: 32e5c9a9720deb4b747d2e8ca3b50b2baa5b70bc","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/ee81ae87d9266cf2582b102b559c624dffbfa3d2"},{"sha":"5a2fad570d64bb0c0f63286e1c76262a968c2ee2","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@kaustav.me","name":"kaustav haldar"},"message":"feat(cli/modules): Added the modules flag -m to hhvms cli\n\nSummary: feat(cli/modules):\n\nAdded the --modules flag to the cli, +1 towards feature parity with the zend cli.\nCloses https://github.com/facebook/hhvm/pull/6270\n\nReviewed By: @jwatzman\n\nDifferential Revision: D2459135\n\nfb-gh-sync-id: bf68023457263ef91fe54a6b7e2a17836145abef","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/5a2fad570d64bb0c0f63286e1c76262a968c2ee2"},{"sha":"d7d502ac9460ceef818391ab56c63ace7f1cdb68","author":{"email":"363321912c8af25d1104fb33c2c64b848c097226@fb.com","name":"Joel Marcey"},"message":"Add norepo to preg_replace_callback_array_basic test\n\nSummary: We use `create_function()` in the test and that is a no-no in RepoAuth\nmode\n\nReviewed By: @binliu19\n\nDifferential Revision: D2536667\n\nfb-gh-sync-id: 6280435c92a6d3e6067876269bca264deb59f3dc","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/d7d502ac9460ceef818391ab56c63ace7f1cdb68"},{"sha":"3e61099226385084e532ff763b7296fcd83338e4","author":{"email":"759376f09ce839cb1610fb60cf13ce76b67e3857@fb.com","name":"Shai Duvdevani"},"message":"Adding frame pointers to fb_setProfile\n\nSummary: fb_setProfile does not provide an easy way of matching exits to enters. The only way to do this right now is based on function name and creating your own stack. Adding the frame pointer as part of the frame data array should make it easier to manage the context map on the PHP side.\n\nAnother difficulty in fb_setProfile is for profilers to do exclusive calculations. It was hard tracking current frame without having frame_ptr, but tracking parent frame required calling debug_backtrace or relying on execution order; hoping the previously entered frame was the parent of the current entered frame (which is a wrong thing to do since async messes up execution order).\n\nReviewed By: @markw65\n\nDifferential Revision: D2516526\n\nfb-gh-sync-id: 4d74591486cbfaccf78cf443575dbd00433d1937","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/3e61099226385084e532ff763b7296fcd83338e4"},{"sha":"ca02847c2548fff4178646716ebb81e24e9fbb33","author":{"email":"742f369ad534c009ebc10a712ed3435855fea20f@gmail.com","name":"Orvid King"},"message":"Hide the ENABLE_EXTENSION_* variables for required extensions\n\nSummary: This hides the ENABLE_EXTENSION_* variables from the CMake GUI on Windows, because you can't disable those extensions to begin with.\n\nThis was originally [#5941](https://github.com/facebook/hhvm/pull/5941), but that got shot down quickly, as it was removing the actual variables. This keeps the variables but hides them from the UI.\nCloses https://github.com/facebook/hhvm/pull/6345\n\nReviewed By: @jwatzman\n\nDifferential Revision: D2515551\n\nfb-gh-sync-id: a9acd4f92ab32d07765de9c7d77f9dc54d97d96f","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/ca02847c2548fff4178646716ebb81e24e9fbb33"},{"sha":"83f138dd23c3c796c15a48ad35a30f9cc4ec9540","author":{"email":"dd49afe9cada02f4615956664416427cbff52ba1@fb.com","name":"Josh Watzman"},"message":"Fix Mac undefined symbols\n\nSummary: Just a config thing -- these symbols are gone, on both Linux\nand OS X, but apparently the OS X linker doesn't like them here.\n\nReviewed By: @sgolemon\n\nDifferential Revision: D2531843\n\nfb-gh-sync-id: 41e664d5d9fe9c32b7768e977ec87f8124ba50ee","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/83f138dd23c3c796c15a48ad35a30f9cc4ec9540"},{"sha":"e5d73ca6fe85cd6c77ad669bb2075ef549c8799c","author":{"email":"742f369ad534c009ebc10a712ed3435855fea20f@gmail.com","name":"Orvid King"},"message":"Fix linking errors with static versions of ICU\n\nSummary: ICU defines MessageFormatAdapter::getArgTypeList itself internally, and when we link against it as a static lib under MSVC, we get errors because it's defined in multiple places.\nTo solve this, just name it something different.\nCloses https://github.com/facebook/hhvm/pull/6222\n\nReviewed By: @​jwatzman\n\nDifferential Revision: D2432686\n\nfb-gh-sync-id: 649817b613b86759fec0d8745051571527fc4cdc","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/e5d73ca6fe85cd6c77ad669bb2075ef549c8799c"},{"sha":"079c9434cb4eb037850ae272496aff9f6e84252f","author":{"email":"742f369ad534c009ebc10a712ed3435855fea20f@gmail.com","name":"Orvid King"},"message":"Add MSVC support to ext_thrift\n\nSummary: This required moving the `htolell` and `letohll` defines into `util/htonll.h`, and using that instead of define it itself.\nCloses https://github.com/facebook/hhvm/pull/6241\n\nReviewed By: @​jwatzman\n\nDifferential Revision: D2445140\n\nfb-gh-sync-id: fa82302701f1ba05b5d346bc3fc60801ea4612a2","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/079c9434cb4eb037850ae272496aff9f6e84252f"},{"sha":"1eb3ed542ed4483b297a410d474b36491a81687c","author":{"email":"97b43d69a660495408fc532b291d65f46348da6b@fb.com","name":"Herman Venter"},"message":"Do not run type checker twice when doing check --ai\n\nSummary: When in check mode and running the AI component, we do not need to do the initial type check since this is repeated as part of the AI component.\n\nReviewed By: @​jezng\n\nDifferential Revision: D2530097\n\nfb-gh-sync-id: e5bd966b6412127e649f1788463ff0acf96ce448","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/1eb3ed542ed4483b297a410d474b36491a81687c"},{"sha":"013be769f5363d03b4808d7a7c7877042a28bc82","author":{"email":"b8eeaacbfbefa77cd4cb0a961f265cafd2a8213e@fb.com","name":"Guilherme Ottoni"},"message":"Fix RegionDesc's dot-printer\n\nSummary: D2489098 accidentally deleted the closing `}'.\n\nReviewed By: @swtaarrs\n\nDifferential Revision: D2536932\n\nfb-gh-sync-id: 170de89ec1c5eea99d6b81e09ef4a4bf5ae31743","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/013be769f5363d03b4808d7a7c7877042a28bc82"},{"sha":"b27bc9997a245047f9571ea2c28e32dfedc4d9ad","author":{"email":"df54bda933ce8081bd0b4ff5915133853de6aa02@fb.com","name":"Duy Nguyen Truong"},"message":"Add unit tests for Matcher.find_matches_expr\n\nSummary: As title\n\nReviewed By: @hermanventer\n\nDifferential Revision: D2530551\n\nfb-gh-sync-id: 17124cc14aeb90f2cdf86e4d1e2b49ff2297153b","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/b27bc9997a245047f9571ea2c28e32dfedc4d9ad"},{"sha":"0d1e4602963e9cf8bbdb357c3df2d37c83769b6a","author":{"email":"df54bda933ce8081bd0b4ff5915133853de6aa02@fb.com","name":"Duy Nguyen Truong"},"message":"Add unit tests for Matcher.patch_expr\n\nSummary: As title\n\nReviewed By: @hermanventer\n\nDifferential Revision: D2530916\n\nfb-gh-sync-id: 236a7ad24e723405c3bc6120f0481cda837b5bfa","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/0d1e4602963e9cf8bbdb357c3df2d37c83769b6a"},{"sha":"08ff21a47141e20dd555a0de0a3d013446fe8fc0","author":{"email":"363321912c8af25d1104fb33c2c64b848c097226@fb.com","name":"Joel Marcey"},"message":"Remove old style constructor in finfo\n\nSummary: In deprecating support for old style constructors in D2515710, it was noticed\nthat one of our extensions actually uses one -- `finfo`. This diff removes\nthat old-style constructor and replaces it with `__construct`.\n\nDoing this will allow us to remove the \"workaround this problem `isBuiltin` check\"\nin D2515710.\n\nOne of the currently good zend tests used it, actually, so it had to be moved\nto bad.\n\nReviewed By: @jwatzman\n\nDifferential Revision: D2521039\n\nfb-gh-sync-id: f171d34aa35effc59cffb6e200ed32ec2667dd22","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/08ff21a47141e20dd555a0de0a3d013446fe8fc0"},{"sha":"93d84e4f89d2d73b982af9e0036477e91aedbccf","author":{"email":"363321912c8af25d1104fb33c2c64b848c097226@fb.com","name":"Joel Marcey"},"message":"Deprecate old-style PHP 4 constructors in HHVM PHP 7 mode\n\nSummary: This diff deprecates old-style PHP 4 constructors when we are in PHP 7\nmode. Old style is\n\n```\nclass A {\n  function A() {}\n}\n```\n\nThe deprecation is based on the conditions in this RFC\n\nhttps://wiki.php.net/rfc/remove_php4_constructors\n\nThis can be a breaking change depending on how you are handling errors.\n\nFixes #6041\n\nReviewed By: @jwatzman\n\nDifferential Revision: D2515710\n\nfb-gh-sync-id: c9a83348fcd6013e32e67a2807137bfab4b109ed","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/93d84e4f89d2d73b982af9e0036477e91aedbccf"},{"sha":"508035604b406ac1d36c05b822a85fce8b0c15f2","author":{"email":"111c1a05f30dcdac81af7f2a8e32f8ff05836fe8@fb.com","name":"David Bliss"},"message":"Fix many grammatical errors involving the word \"won't\"\n\nSummary: Fix many grammatical errors involving the word \"won't\".  Updates\nboth code and tests that depend on this misspelling.\n\nReviewed By: @markw65\n\nDifferential Revision: D2517698\n\nfb-gh-sync-id: c829025d8c1d81315c7433faeaff4af9b05a8dc9","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/508035604b406ac1d36c05b822a85fce8b0c15f2"},{"sha":"24b6fd8acfaa00a2bbb6086942d084eb28bcc9d7","author":{"email":"43293424662417ef47778d90f514540cf7a51fae@fb.com","name":"Kasper Kopec"},"message":"Complete/generalize type_mapper and replace fully_expand function with it\n\nSummary: There is some repeated mapping over the types in our codebase. In one of my next diffs it seemed that I will need another one, duplicating the functionality of Typing_expand.fully expand with a slight twist. It looks like the reason for all this duplication are subtle differences between those mapping function that made it hard to re-use one function for another. Looking at code in type_mapper, fully_expand and grow/shrink_shape, typeVisitor.ml they differ by those things:\n\n- how deep do we want to go: should we recursively visit the type of values in vector, or do we just care about going inside Tunresolved and nowhere more\n- how do we treat Tvars: ignore, expand, modify?\n- is the typing environment threaded through and available?\n- typing reasons: are they part of the mapping and can we modify them?\n\nSince I already started writing type mapper in {D2511073}, in this diff I generalize it to be flexible in all those dimensions. Most of the code is ported from fully_expand, and this function is then deleted.\n\nTODO: rewrite grow_shape/shrink_shape functions with that, maybe think about unifying it with typeVisitor.ml (by adding a polymorphic accumulator to mapping environment).\n\nReviewed By: @dlreeves\n\nDifferential Revision: D2525999\n\nfb-gh-sync-id: e9bf290eeca7853cec8e228cb5d796aa19c0faa2","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/24b6fd8acfaa00a2bbb6086942d084eb28bcc9d7"},{"sha":"1736ad829093b1c2ef00d5495ea9d7a9ce0566ee","author":{"email":"43293424662417ef47778d90f514540cf7a51fae@fb.com","name":"Kasper Kopec"},"message":"Basic typing_suggest for AKshapes\n\nSummary: I was going to skip that (since array() initializer never suggested anything anyway, so we were not loosing any pre-existing suggestions), but coming changes to array(... => ..., ) initializer would actually be a regression, so let's add at least some support.\n\nReviewed By: @int3\n\nDifferential Revision: D2526063\n\nfb-gh-sync-id: 4473311cbfd6de9c816d7e8f59c88ee2d3d9fad4","distinct":true,"url":"https://api.github.com/repos/apaloma/hhvm/commits/1736ad829093b1c2ef00d5495ea9d7a9ce0566ee"}]}