{"push_id":1992916628,"size":7,"distinct_size":7,"ref":"refs/heads/master","head":"f0c7f034bc90197ad1fe26f419fd1a2051088109","before":"fd3e0a192bc193c256bd65a224c99e222356d222","commits":[{"sha":"5983b11a272f00cf51ebc7445e80615c8560dc3a","author":{"name":"Greg Nisbet","email":"8687e91311f88b076f51a72fe1f5298ee200fe60@fb.com"},"message":"WIP - remove lexer allocations\n\nSummary:\ncut down on unnecessary lexer allocations\n\nthe strategy here is to take lexer-producing functions\nwritten in a recursive style with many intermediate lexers\nand change them to an iterative style with an int ref keeping\ntrack of the amount to advance.\n\nI'm rewriting the low hanging fruit first ... and avoiding complex mutually recursive functions.\n\nDifferential Revision: D5833444\n\nfbshipit-source-id: fcf0b1279d05d27e942a6687ae36e3510a463ba8","distinct":true,"url":"https://api.github.com/repos/facebook/hhvm/commits/5983b11a272f00cf51ebc7445e80615c8560dc3a"},{"sha":"76e9f16e52cee695883293729f4330f3b20c17c3","author":{"name":"Mark Williams","email":"fd4a6f92a8a6afb6b81b9f6e4a42823acc4ed720@fb.com"},"message":"Fix some issues with inline analysis and constant folding\n\nSummary:\nWe can't call anything that inspects the bytecode of another function\nfrom the optimize phase, including analyze_func_inline. This is\nguarded by Index::frozen(), but we weren't setting that during the\nconstant folding pass, and some new code is starting to trigger crashes.\n\nWe have heuristics for marking functions and classes as non-persistent\nif you apply the class_exists or function_exists builtins directly to\nthem. analyze_func_inline can cause a lot more of these calls to be\nresolved - so disable that heuristic while doing inline analysis.\n\nReviewed By: ricklavoie\n\nDifferential Revision: D5853110\n\nfbshipit-source-id: 9e0d07bf02c30c239dcc1e710cab39f78985df9c","distinct":true,"url":"https://api.github.com/repos/facebook/hhvm/commits/76e9f16e52cee695883293729f4330f3b20c17c3"},{"sha":"6a0c532cc0196cd9315bf173c796e3cd72580dcd","author":{"name":"Lucian Wischik","email":"1ae0d3824b2dadae0bba17b00e86859e6802d0fb@fb.com"},"message":"Autostart in case of build id mismatch\n\nSummary:\nIn an earlier diff we switched over to \"never autostart\" -- with the expectation that hh_server is always running, and if it's not then something weird has happened, and it's right to ask the user for manual intervention in the form of clicking the Restart button.\n\nBut actually there's one (and only one) case where autostart is appropriate: in case of build id mismatch.\n\n* If the server discovers that [version] in .hhconfig has changed, then the server will quit, but the monitor will go ahead and restart it\\! ... clientLsp will detect that the persistent connection closed, and will observe that the version has changed, and clientLsp will terminate, and VSCode/Nuclide will relaunch the correct newer version of clientLsp.\n\n* If a newer version of clientLsp or any other hh command attempts to connect to an older version of hh_server (or vice versa), then hh_server terminates and the monitor terminates and the connection attempt raises Exit_with Build_id_mismatch.\n\nIn this scenario, the right and proper thing is for the client to do a second connection attempt with {autostart=true}. This will launch the right version of the server. This is the only mechanism we have for launching the right version of the server.\n\nThis diff does the right and proper thing.\n\nBUT I'm worried about \"version mismatch battles\", e.g. if one tool is invoking one version of hh, and another tool (e.g. Nuclide) is invoking a different version, then each will keep terminating the other. In this sort of case we should bail on autostarting, and leave the decision in the hands of the user.\n\nThis diff achieves that: it only allows the autostart-after-mismatch once for a given lifetime of clientLsp, and only if there hasn't yet been a successful connection attempt.\n\nReviewed By: arxanas\n\nDifferential Revision: D5850382\n\nfbshipit-source-id: 0eb3b4c01b122b9e8eaa2ef03d5dba9f705ba677","distinct":true,"url":"https://api.github.com/repos/facebook/hhvm/commits/6a0c532cc0196cd9315bf173c796e3cd72580dcd"},{"sha":"b076138788c1282d2d30cbf508fa3d2a02db6ffa","author":{"name":"Lucian Wischik","email":"1ae0d3824b2dadae0bba17b00e86859e6802d0fb@fb.com"},"message":"Flush logs\n\nSummary: Flushes the logs, just like the server does inside serverIdle.ml\n\nReviewed By: arxanas\n\nDifferential Revision: D5850778\n\nfbshipit-source-id: ba401be5a76363c50992952ff39663335477e1d4","distinct":true,"url":"https://api.github.com/repos/facebook/hhvm/commits/b076138788c1282d2d30cbf508fa3d2a02db6ffa"},{"sha":"3d7c54c8924751a31d71ea3a649f3b42c3d7c075","author":{"name":"Michael O'Farrell","email":"07ba10442024df486e79fbdd20c25af15256968b@fb.com"},"message":"Implement object properties.\n\nSummary: This implements properties.  It also adds support for the ternary operator.  This is included because it allows branching within an expression.\n\nReviewed By: swtaarrs\n\nDifferential Revision: D5769449\n\nfbshipit-source-id: 9c47eb125da0895833cbc3118be5434f176f54ea","distinct":true,"url":"https://api.github.com/repos/facebook/hhvm/commits/3d7c54c8924751a31d71ea3a649f3b42c3d7c075"},{"sha":"dba38fb0547857943f8fe14b34f52d5a075195bb","author":{"name":"Michael O'Farrell","email":"07ba10442024df486e79fbdd20c25af15256968b@fb.com"},"message":"Support include require eval.\n\nReviewed By: swtaarrs\n\nDifferential Revision: D5775472\n\nfbshipit-source-id: 220817a2ddc6132dd2c1b055a0b5f54cd3d435e5","distinct":true,"url":"https://api.github.com/repos/facebook/hhvm/commits/dba38fb0547857943f8fe14b34f52d5a075195bb"},{"sha":"f0c7f034bc90197ad1fe26f419fd1a2051088109","author":{"name":"Michael O'Farrell","email":"07ba10442024df486e79fbdd20c25af15256968b@fb.com"},"message":"Add argument count error added in PHP7.1\n\nSummary:\nThis error was added in PHP7.1, and adding it allows more tests to pass.\n\nDepends on D5775472\n\nReviewed By: swtaarrs\n\nDifferential Revision: D5787941\n\nfbshipit-source-id: 9b7b1f5be0061d203a56a58958b2c657c8f0f09c","distinct":true,"url":"https://api.github.com/repos/facebook/hhvm/commits/f0c7f034bc90197ad1fe26f419fd1a2051088109"}]}
{"actor":{"display_login":"hhvm-bot"}}