{"push_id":1128760075,"size":126,"distinct_size":126,"ref":"refs/heads/master","head":"d10cc31ea7e04565be67bc9fd5904240fd3eb509","before":"6647eb508e31c56ef7b3ca6a467c35600800da58","commits":[{"sha":"a15095c854bdc0425e52fb750ba2c7d23d743b49","author":{"email":"50659cd1eea2f74e4c186717322028a37a110526@fb.com","name":"Dino Distefano"},"message":"Introducing a mechanism of white/black listing of checks/error reporting based on .inferconfig\n\nReviewed By: jberdine\n\nDifferential Revision: D3212334\n\nfb-gh-sync-id: 9eaccea\nfbshipit-source-id: 9eaccea","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/a15095c854bdc0425e52fb750ba2c7d23d743b49"},{"sha":"b9c9f208926a687208a909196a86893940a4272b","author":{"email":"18a6de6a0925c55116694e1a03e79c0c06251723@fb.com","name":"Jules Villard"},"message":"get encoding from `locale.getdefaultlocale()`\n\nSummary:This enables controlling the encoding chosen by infer via the usual environment\nvariables. For instance:\n\n```\nLC_ALL=\"C\" infer ... # sets LOCALE to \"ascii\"\nLC_ALL=\"en_US.UTF-8\" infer ... # sets LOCALE to \"UTF-8\"\n```\n\nThis gives an easy solution to #320: run `LC_ALL=\"en_US.UTF-8\" infer ...`.\nRight now the only solution is to edit the Python scripts by hand instead!\n\nReviewed By: jberdine\n\nDifferential Revision: D3207573\n\nfb-gh-sync-id: 62d5b98\nfbshipit-source-id: 62d5b98","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/b9c9f208926a687208a909196a86893940a4272b"},{"sha":"cb2d8dbe83e41f1fe3059058257a3c1751bf9951","author":{"email":"18a6de6a0925c55116694e1a03e79c0c06251723@fb.com","name":"Jules Villard"},"message":"update clang command-line flags that we filter out\n\nSummary:Open-source clang has caught up a bit with apple's clang, so we don't need to\nfilter as many compilation flags as we used to.\n\nReviewed By: akotulski, martinoluca\n\nDifferential Revision: D3212553\n\nfb-gh-sync-id: 5638dc8\nfbshipit-source-id: 5638dc8","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/cb2d8dbe83e41f1fe3059058257a3c1751bf9951"},{"sha":"50081c7ccbd57aa88fd3b96d5f269b102500a15b","author":{"email":"4009ed62d41d74cca5b00eb20c99d67f9fcc6555@fb.com","name":"Peter O'Hearn"},"message":"alloc/dealloc model for locks\n\nReviewed By: sblackshear\n\nDifferential Revision: D3207043\n\nfb-gh-sync-id: 6e45d03\nfbshipit-source-id: 6e45d03","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/50081c7ccbd57aa88fd3b96d5f269b102500a15b"},{"sha":"1d909606aab797279174ebfe641fca32ed78e368","author":{"email":"3a1467fae0f0def926fbb117480035591f7e0166@fb.com","name":"Andrzej Kotulski"},"message":"Add option to replace path to clang internal headers\n\nSummary: Provide possibility to replace clang internal headers path if they are overwritten by `-isystem`. User needs to specify path to wrong headers to be replaced with infer's clang.\n\nReviewed By: martinoluca\n\nDifferential Revision: D3212850\n\nfb-gh-sync-id: be3d51c\nfbshipit-source-id: be3d51c","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/1d909606aab797279174ebfe641fca32ed78e368"},{"sha":"83c1bbc83287531a95e972a70a31b11e6c44f657","author":{"email":"50659cd1eea2f74e4c186717322028a37a110526@fb.com","name":"Dino Distefano"},"message":"Implementing a checker to warn initialization of global variables with mehod calls.\n\nReviewed By: dulmarod\n\nDifferential Revision: D3184584\n\nfb-gh-sync-id: dbfc99c\nfbshipit-source-id: dbfc99c","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/83c1bbc83287531a95e972a70a31b11e6c44f657"},{"sha":"808c78c5e798562493c87fbf3c2fe3114d608455","author":{"email":"c6028e844c4df61195c9e04197f9d8f34b9b2c2d@fb.com","name":"jrm"},"message":"fix issue with missing files on GitHub","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/808c78c5e798562493c87fbf3c2fe3114d608455"},{"sha":"5e4e1b5482b2ca5c72cb524f6502b55c68d65348","author":{"email":"18a6de6a0925c55116694e1a03e79c0c06251723@fb.com","name":"Jules Villard"},"message":"script to publish github releases\n\nReviewed By: martinoluca\n\nDifferential Revision: D3218948\n\nfb-gh-sync-id: e0efe4d\nfbshipit-source-id: e0efe4d","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/5e4e1b5482b2ca5c72cb524f6502b55c68d65348"},{"sha":"843bcc1576946449e3176bda6877016673601e90","author":{"email":"9a3f1ca9454a0c8ea4a4ba6cde83caae992c5941@fb.com","name":"Sam Blackshear"},"message":"support tainting of annotated fields\n\nReviewed By: jeremydubreil\n\nDifferential Revision: D3215005\n\nfb-gh-sync-id: 111b839\nfbshipit-source-id: 111b839","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/843bcc1576946449e3176bda6877016673601e90"},{"sha":"77791b7e8e9b1330dff792b0bde955a35d91a305","author":{"email":"9a3f1ca9454a0c8ea4a4ba6cde83caae992c5941@fb.com","name":"Sam Blackshear"},"message":"warn on deref of nullable skip function\n\nReviewed By: jeremydubreil\n\nDifferential Revision: D3204133\n\nfb-gh-sync-id: 2a108f6\nfbshipit-source-id: 2a108f6","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/77791b7e8e9b1330dff792b0bde955a35d91a305"},{"sha":"29891053180474e39b777fcd317f822e38ba272d","author":{"email":"3a1467fae0f0def926fbb117480035591f7e0166@fb.com","name":"Andrzej Kotulski"},"message":"Decrease number of allocations in Prop.typ_normalize\n\nSummary:\nI ran perf on rocksdb analysis and found out that ~40% of time is spent inside ocaml GC originating\nfrom Prop.typ_normalize.\nAfter this change, profile shows that GC is ~2% and Prop.typ_normalize takes 50% of the time.\n\nReviewed By: jberdine\n\nDifferential Revision: D3219113\n\nfb-gh-sync-id: 27c34d9\nfbshipit-source-id: 27c34d9","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/29891053180474e39b777fcd317f822e38ba272d"},{"sha":"3a856aa6f00f197dbc81d7c04cd17f373413c1c7","author":{"email":"c6028e844c4df61195c9e04197f9d8f34b9b2c2d@fb.com","name":"Jeremy Dubreil"},"message":"Add example of lazy dynamic dispatch calling a method from the interface\n\nSummary: Example of dynamic dispatch with interfaces were already working. Adding some tests now so that we don't break this.\n\nReviewed By: sblackshear\n\nDifferential Revision: D3220360\n\nfb-gh-sync-id: 11395dd\nfbshipit-source-id: 11395dd","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/3a856aa6f00f197dbc81d7c04cd17f373413c1c7"},{"sha":"51f4dc7a9a89f1314e287477637ba0ab3d3dacdb","author":{"email":"94e7b64b9eb8ca3fffba2822982562abb50b6274@gmail.com","name":"Luis Cruz"},"message":"added Tenv.get_overriden_method\n\nSummary:\nAs suggested in the discussion https://github.com/facebook/infer/issues/326 this pull request implements\n\n```ocaml\nget_overriden_method : Tenv.t -> Procname.java -> Procname.t\n```\n\nto get the method of a superclass that is being overridden by a specific java pname.\n\nI thought of unit test this, but unfortunately I wasn't able to figure out how to create the proper context with OUnit2. Perhaps the easiest way to test this will be integration tests.\nFeel free to reject the pull request if unit tests are mandatory (or for any other reason, of course).\nCloses https://github.com/facebook/infer/pull/341\n\nReviewed By: jeremydubreil\n\nDifferential Revision: D3221254\n\nPulled By: sblackshear\n\nfb-gh-sync-id: 9c26258\nfbshipit-source-id: 9c26258","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/51f4dc7a9a89f1314e287477637ba0ab3d3dacdb"},{"sha":"b2285848553d3b8b5ce9b66f75d3d48430761e3d","author":{"email":"9a3f1ca9454a0c8ea4a4ba6cde83caae992c5941@fb.com","name":"Sam Blackshear"},"message":"refactoring get_strict_supertyps to use iteration for more flexibility\n\nReviewed By: jeremydubreil\n\nDifferential Revision: D3221249\n\nfb-gh-sync-id: 249aa01\nfbshipit-source-id: 249aa01","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/b2285848553d3b8b5ce9b66f75d3d48430761e3d"},{"sha":"ffc4e2d213bc5fee46c8dd67864384a592cba95e","author":{"email":"9a3f1ca9454a0c8ea4a4ba6cde83caae992c5941@fb.com","name":"Sam Blackshear"},"message":"checking supertypes for annotations\n\nReviewed By: jeremydubreil\n\nDifferential Revision: D3221560\n\nfb-gh-sync-id: 3ac68ef\nfbshipit-source-id: 3ac68ef","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/ffc4e2d213bc5fee46c8dd67864384a592cba95e"},{"sha":"214ef205ca7d81cc96f2904963e96f3cd0243ea8","author":{"email":"c6028e844c4df61195c9e04197f9d8f34b9b2c2d@fb.com","name":"jrm"},"message":"remove scripts/","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/214ef205ca7d81cc96f2904963e96f3cd0243ea8"},{"sha":"0737b9231d068fb037037eb7b89538397b87c8fc","author":{"email":"c6028e844c4df61195c9e04197f9d8f34b9b2c2d@fb.com","name":"Jeremy Dubreil"},"message":"make Tabulation.prop_get_exn_name return an option type\n\nSummary: So that we no longer have to run `Tabulation.prop_is_exn` before running `Tabulation.prop_get_exn_name`.\n\nReviewed By: jberdine\n\nDifferential Revision: D3222545\n\nfb-gh-sync-id: a7faa06\nfbshipit-source-id: a7faa06","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/0737b9231d068fb037037eb7b89538397b87c8fc"},{"sha":"46fc0bb1dc0ced19af375dc0052c2c7708c33688","author":{"email":"9a3f1ca9454a0c8ea4a4ba6cde83caae992c5941@fb.com","name":"Sam Blackshear"},"message":"remove recursive call in try/with\n\nReviewed By: jeremydubreil\n\nDifferential Revision: D3224391\n\nfb-gh-sync-id: a2da993\nfbshipit-source-id: a2da993","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/46fc0bb1dc0ced19af375dc0052c2c7708c33688"},{"sha":"049c353f52f406ee12d032dd0a03e755c472ea2b","author":{"email":"c6028e844c4df61195c9e04197f9d8f34b9b2c2d@fb.com","name":"Jeremy Dubreil"},"message":"Add a model for gzdopen\n\nSummary: Add model for gzdopen\n\nReviewed By: ddino\n\nDifferential Revision: D3223727\n\nfb-gh-sync-id: a4d55fb\nfbshipit-source-id: a4d55fb","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/049c353f52f406ee12d032dd0a03e755c472ea2b"},{"sha":"8072d2c1e568e4eed25776a1253017d45a12a54f","author":{"email":"c6028e844c4df61195c9e04197f9d8f34b9b2c2d@fb.com","name":"Jeremy Dubreil"},"message":"report errors when all the postconditions are error states\n\nSummary:\nThe philosophy of the tracing mode reporting is to not report the errors in a method if reaching this error does depend on information that can be false at call site. Typically with:\n\n  void foo(Object obj, int x) {\n    if (x == 3) {\n      obj.toString();\n    }\n  }\n\nit may be that we always call `foo` with a non-null parameter or `x != 3`.\n\nThechnically, the reporting code matches the pairs of the form (precondition, error) and filtering out the cases where the precondtions was not imposing constraints on the calling context, and report the other cases. So the NPE could be reported in the following case:\n\n  void bar() {\n    foo(null, 3);\n  }\n\nHowever, we were missing the case where there was anyway no way to call a method in a safe way, i.e. all the preconditions were of the form: (precondition, error), for example:\n\n  void baz(boolean b) {\n    if (b) {\n      foo(null, 3);\n    } else {\n      foo(null, 3);\n    }\n  }\n\nIn that case, the summary is of the form\n\n  PRE (1): b = false\n  POST: NullPointerException\n\n  PRE (2): b = true\n  POST: NullPointerException\n\nIn which case it is legit to report  `NullPointerException` in `baz`.\n\nReviewed By: sblackshear, jberdine\n\nDifferential Revision: D3220501\n\nfb-gh-sync-id: 7fb7d70\nfbshipit-source-id: 7fb7d70","distinct":true,"url":"https://api.github.com/repos/yongjhih/infer/commits/8072d2c1e568e4eed25776a1253017d45a12a54f"}]}
{"actor":{"display_login":"yongjhih"}}