{"push_id":776782850,"size":23,"distinct_size":0,"ref":"refs/heads/fix_imports","head":"5b23d0efb6ccb8143f4a2bf355409e1905af4a57","before":"d0b73fc20a5bf82985b3554e602d06d08ccc7673","commits":[{"sha":"dc044fe1fd55ff486002d39beaa80aa1c9df00a4","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"fix Issue 14669 - auto attribute on function parameter should be error always","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/dc044fe1fd55ff486002d39beaa80aa1c9df00a4"},{"sha":"9779b69e84ea6a3f8ae27e3fa24208ca5d4d6d01","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Improve diagnostic message for the invalid auto attribute on function parameters","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/9779b69e84ea6a3f8ae27e3fa24208ca5d4d6d01"},{"sha":"fe4e16356ed9eb90600024d03a8af6e9647a8e62","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Error for auto ref without IFTI should not depend on the instantiation order","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/fe4e16356ed9eb90600024d03a8af6e9647a8e62"},{"sha":"0dd91169910202e41c524962b4bc00dc16c67c2b","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"fix Issue 14802 - Template argument deduction depends on order of arguments","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/0dd91169910202e41c524962b4bc00dc16c67c2b"},{"sha":"0d6eff4506e0d62b395d3bbf2769c9758a5efdc5","author":{"email":"faea5242a00c52da62a0f00df168c199b7ab748d@luismarques.eu","name":"Luís Marques"},"message":"man.d: use the configured browser, don't hardcode Safari\n\nOn OS X, `open` directly opens URLs. You don't have to specify the browser application and the URL as an argument. Directly opening URLs with `open` will respect the user's choice of browser. To be sure that this works, the argument must be an actual URL with a protocol, and not a plain URI. This was added as a debug precondition check.","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/0d6eff4506e0d62b395d3bbf2769c9758a5efdc5"},{"sha":"5c3661172940f158fbe136764012916ef703843c","author":{"email":"7b34c86e54d03a8595b091abe33ebf48b4d04b3b@gmx.de","name":"Rainer Schuetze"},"message":"fix failing assert due to removed \"jplace\"","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/5c3661172940f158fbe136764012916ef703843c"},{"sha":"91884c6f5425d2b506185a6984d511b2ef699ad2","author":{"email":"7681abd955033353452d3cfcec32879228885f3e@gmail.com","name":"Daniel Murphy"},"message":"Merge pull request #4997 from rainers/remove_jpatch\n\nfix failing assert due to removed \"jplace\"","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/91884c6f5425d2b506185a6984d511b2ef699ad2"},{"sha":"90fe10c35f398d6c787d81eec83fd46df7192f46","author":{"email":"dc9186a06078733915a6fcbab34e59120be2b484@thecybershadow.net","name":"Vladimir Panteleev"},"message":"fix Issue 14709 - dmd/samples/listener.d socket.accept exception handling is incorrect","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/90fe10c35f398d6c787d81eec83fd46df7192f46"},{"sha":"969c85db595b56664c31c3291ed1a5992486886e","author":{"email":"78e1b7dce8d2ae950bfa4e55e60adbc238e684ff@gmail.com","name":"Dmitry Olshansky"},"message":"Merge pull request #5000 from CyberShadow/pull-20150831-100433\n\nfix Issue 14709 - dmd/samples/listener.d socket.accept exception hand…","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/969c85db595b56664c31c3291ed1a5992486886e"},{"sha":"d902de1dd9d254c8efd7e7ae4057adb1184513a1","author":{"email":"7681abd955033353452d3cfcec32879228885f3e@gmail.com","name":"Daniel Murphy"},"message":"Merge pull request #4818 from 9rnsr/fix14802\n\nIssue 14802 - Template argument deduction depends on order of arguments","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/d902de1dd9d254c8efd7e7ae4057adb1184513a1"},{"sha":"2ba1045c54521ee11d7ac315f71d346add93559f","author":{"email":"7681abd955033353452d3cfcec32879228885f3e@gmail.com","name":"Daniel Murphy"},"message":"Merge pull request #4729 from 9rnsr/fix14669\n\nIssue 14669 - auto attribute on function parameter should be error always","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/2ba1045c54521ee11d7ac315f71d346add93559f"},{"sha":"f13f044416bede01d39d1d5f2f2c380317f406d0","author":{"email":"f18f9d8baa2fa0cb58562a87b426733853e0a4e9@walterbright.com","name":"Walter Bright"},"message":"Merge pull request #4996 from luismarques/use_osx_user_browser\n\nman.d: use the configured browser, don't hardcode Safari","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/f13f044416bede01d39d1d5f2f2c380317f406d0"},{"sha":"754e93bd22acbac4ee059a7adf5825db961b5098","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Refactor: fix Import.addMember position","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/754e93bd22acbac4ee059a7adf5825db961b5098"},{"sha":"b79a6fd18994027b80fa80b233d68d657824a8aa","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Add DsymbolTable parameter to Package.resolve() to handle local package tree","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/b79a6fd18994027b80fa80b233d68d657824a8aa"},{"sha":"39ef2cb919b3dfe2c84507a970a7b61d7c718436","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Package now can become an alias to Module or Import","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/39ef2cb919b3dfe2c84507a970a7b61d7c718436"},{"sha":"ebda587b97901551b14dff5d15013cab74a37135","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Build local package tree in Import.addMember","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/ebda587b97901551b14dff5d15013cab74a37135"},{"sha":"15528fa3b41c60bd471698a2aee583e95a01fd17","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Distinguish public imports in module/class members\n\nIn a derived scope of module (== the scope where it's imported) or class\n(the member scope of its derived class), the full package name of those\npublic imports should be visible. To do that, those FQNs will be pulled\ninto the local package tree of the derived scope.","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/15528fa3b41c60bd471698a2aee583e95a01fd17"},{"sha":"0be51f77ccbbf3162bf00d87e0ece10381b62985","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Fix search functions and its callers not to see invisible symbols","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/0be51f77ccbbf3162bf00d87e0ece10381b62985"},{"sha":"aca146895826e5a3f7d94263a2db195144e1bf4a","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"Fix issue 313 & 314 done - explanation commit log and add/fix test cases\n\nPoints:\n\n1. Most of import declarations will insert their fully qualified names in local symbol table.\n\nCurrently, it is stored only in one place - `Module.modules`. After this change, in addition to that,\neach `ScopeDsymbol.symtab` will have the \"local package tree\" which represents the scope local imports.\n\nFor example:\n\n```d\nclass C {\n    import core.stdc.stdio;\n    import core.stdc.stdlib : malloc;\n    import core.stdc.stdlib : free;\n    void func() {\n        import core.stdc.string;\n    }\n}\n```\n\n`symtab` of class `C` and `C.func` will have following package object trees:\n\n```\n// in C\nPackage('core') <----------+\n + Package('stdc') <-------|--+\n    + Import('stdio')      |  |\n    + Import('stdlib')     |  |\n        names = [\"malloc\"] |  |\n  +---- overnext           |  |\n  |                        |  |\n  +-> Import('stdlib')     |  |\n        names = [\"free\"]   |  |\n                           |  |\n// in C.func()             |  |\nPackage('core') aliassym --+  |\n + Package('stdc') aliassym -+\n    + Import('string')\n```\n\nIn there, `Import` object will be the leaf of the tree.\nIt's done by `Import.addPackage`.\n\n2. A part of local package tree will be merged into other tree.\n\nThis example case of public import should work.\n\n```d\nmodule a;\npublic import std.stdio;\n```\n```d\nmodule b;\nimport a;\nimport std.algorithm;\nstd.stdio.writeln();    // point\n```\n\nIn module b, 'std.stdio' should be visible. To realize it, import declarations will pull\nthe fully qualified name of public imports in the imported module.\nFinally, module b will have the package tree:\n\n```d\nPackage('std')\n + Package('algorithm')\n + Package('stdio')   <--- Pulled from module a, by `import a;`\n```\n\nSame work is necessary on class inheritance. Public/protected imports in base class scope\nshould be pulled in the derived class scope.","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/aca146895826e5a3f7d94263a2db195144e1bf4a"},{"sha":"ba48ffff19311f6aa63eccfbe38d9b4f580a9d9d","author":{"email":"8447246b5d7be8399c45cc3d849f13607adf2233@gmail.com","name":"k-hara"},"message":"fix Issue 313 - [module] Fully qualified names bypass private imports","distinct":false,"url":"https://api.github.com/repos/9rnsr/dmd/commits/ba48ffff19311f6aa63eccfbe38d9b4f580a9d9d"}]}