{"ref":"refs/heads/master","commits":[{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"3d0bc3d123d51b15e61b3ffba4aa636193750465","message":"add Dancer::Core::Role::DSL\n\nRefactored any generic part of Dancer::Core::DSL into that role so that we can\nbuild new DSL extensions (aka plugins) more easily with code reuse.\n\nmst++ for the great idea.","url":"https://api.github.com/repos/geistteufel/dancer2/commits/3d0bc3d123d51b15e61b3ffba4aa636193750465"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"910a2e193af4449940fd2e9043d3e242d14b5702","message":"Dancer::Core::DSL is just a defaut consumation of Dancer::Core::Role::DSL","url":"https://api.github.com/repos/geistteufel/dancer2/commits/910a2e193af4449940fd2e9043d3e242d14b5702"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"118e5ce0906f687d806026504eb2453c4a81c97a","message":"Dancer's import calls ->export_symbols_to instead of doing it manually","url":"https://api.github.com/repos/geistteufel/dancer2/commits/118e5ce0906f687d806026504eb2453c4a81c97a"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"fba2ad7ade26cf009bc90257e89408443e1209f1","message":"sort DSL keywords","url":"https://api.github.com/repos/geistteufel/dancer2/commits/fba2ad7ade26cf009bc90257e89408443e1209f1"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"568d8419b258f2f0f439c17fd8f9e75c8928f61c","message":"fix register in DSL Role","url":"https://api.github.com/repos/geistteufel/dancer2/commits/568d8419b258f2f0f439c17fd8f9e75c8928f61c"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"8d1d17c75a3e8a87dfeab2ca5b554e7ccc3962cd","message":"first version of Dancer::Plugin that uses roles","url":"https://api.github.com/repos/geistteufel/dancer2/commits/8d1d17c75a3e8a87dfeab2ca5b554e7ccc3962cd"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"7cfa6a47e94706877869572b9355194725c1ea27","message":"test for plugins","url":"https://api.github.com/repos/geistteufel/dancer2/commits/7cfa6a47e94706877869572b9355194725c1ea27"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"5fd06f1af8250ca602bd54b2b737abf3372063c7","message":"Dancer::Plugin works now as a syntactic sugar layer over DSL roles.\n\nThat fixes the issue #20 as long as the plugin is written with a new syntax:\n\n    register some_keyword => sub {\n        my $self = shift;\n\n        $self->some_dancer_keyword ...\n    };\n\n    register_plugin;\n\nSee t/lib/FooPlugin.pm and t/plugins.t for a working example.","url":"https://api.github.com/repos/geistteufel/dancer2/commits/5fd06f1af8250ca602bd54b2b737abf3372063c7"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"6c0aeb41ff4f9c0e38287db0e6b38dac497f9ec1","message":"a plugin is a Moo::Role, transparently","url":"https://api.github.com/repos/geistteufel/dancer2/commits/6c0aeb41ff4f9c0e38287db0e6b38dac497f9ec1"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"16a577469717c741535377e4581568b20d9851df","message":"Merge branch 'topic/DSL-as-roles'","url":"https://api.github.com/repos/geistteufel/dancer2/commits/16a577469717c741535377e4581568b20d9851df"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"4f16a4d8d7f3fdc39f4a7a62738bc0683b23a0df","message":"contrib section with plugins","url":"https://api.github.com/repos/geistteufel/dancer2/commits/4f16a4d8d7f3fdc39f4a7a62738bc0683b23a0df"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"19e65110c2d076779cdd1dc44b9e2aa83439b474","message":"test plugin","url":"https://api.github.com/repos/geistteufel/dancer2/commits/19e65110c2d076779cdd1dc44b9e2aa83439b474"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"7282bc77b68b09da00137771184acf7d6baa9e6b","message":"support for old syntax in Dancer::Plugin","url":"https://api.github.com/repos/geistteufel/dancer2/commits/7282bc77b68b09da00137771184acf7d6baa9e6b"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"cec06883d0edaa56a93594c4198b55af08fed5ac","message":"rename t/plugins.t into t/plugin_register.t and keep only register stuff inside.","url":"https://api.github.com/repos/geistteufel/dancer2/commits/cec06883d0edaa56a93594c4198b55af08fed5ac"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"766485a89eddaf95388e91d1600fcb7338216c5b","message":"Resolved the bug that occured when Dancer was used more than once.\n\nThe DSL role now avoid to export a symbol if it's already existing in the\ncaller's namespace. That fixes the bug and is - I think - much cleaner than\nsilent pollution.","url":"https://api.github.com/repos/geistteufel/dancer2/commits/766485a89eddaf95388e91d1600fcb7338216c5b"},{"author":{"name":"Alexis Sukrieh","email":"128eb0243c7e0e37c89f20e2bb45c3fbb4d12ec2@sukria.net"},"sha":"d9ab4ffa891a5b7f24f7a6fa13451593b992a825","message":"Merge branch 'topic/DSL-as-roles'","url":"https://api.github.com/repos/geistteufel/dancer2/commits/d9ab4ffa891a5b7f24f7a6fa13451593b992a825"}],"head":"d9ab4ffa891a5b7f24f7a6fa13451593b992a825","size":16,"push_id":51483574}