{"action":"published","release":{"url":"https://api.github.com/repos/catberry/catberry-locator/releases/2654357","assets_url":"https://api.github.com/repos/catberry/catberry-locator/releases/2654357/assets","upload_url":"https://uploads.github.com/repos/catberry/catberry-locator/releases/2654357/assets{?name,label}","html_url":"https://github.com/catberry/catberry-locator/releases/tag/2.0.0","id":2654357,"tag_name":"2.0.0","target_commitish":"develop","name":"Drop injections, add ES2015 class support, rewrite in ES2015","draft":false,"author":{"login":"pragmadash","id":887952,"avatar_url":"https://avatars.githubusercontent.com/u/887952?v=3","gravatar_id":"","url":"https://api.github.com/users/pragmadash","html_url":"https://github.com/pragmadash","followers_url":"https://api.github.com/users/pragmadash/followers","following_url":"https://api.github.com/users/pragmadash/following{/other_user}","gists_url":"https://api.github.com/users/pragmadash/gists{/gist_id}","starred_url":"https://api.github.com/users/pragmadash/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pragmadash/subscriptions","organizations_url":"https://api.github.com/users/pragmadash/orgs","repos_url":"https://api.github.com/users/pragmadash/repos","events_url":"https://api.github.com/users/pragmadash/events{/privacy}","received_events_url":"https://api.github.com/users/pragmadash/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2016-02-20T14:12:46Z","published_at":"2016-02-20T14:16:24Z","assets":[],"tarball_url":"https://api.github.com/repos/catberry/catberry-locator/tarball/2.0.0","zipball_url":"https://api.github.com/repos/catberry/catberry-locator/zipball/2.0.0","body":"Had to drop current DI feature. It causes a lot of problems when using new JS classes.\r\n\r\nSo, previously we were able to inject services like this:\r\n\r\n```javascript\r\nfunction Module($uhr, $logger, someConfigSection) {\r\n  this._$uhr = $uhr;\r\n  this._$logger = $logger;\r\n  this._config = someConfigSection || {};\r\n}\r\n```\r\n\r\nAnd since Service Locator 2.0:\r\n\r\n```javascript\r\nfunction Module(locator) {\r\n  this._uhr = locator.resolve('uhr');\r\n  this._logger = locator.resolve('logger');\r\n  this._config = locator.resolve('config').someConfigSection;\r\n}\r\n```\r\n\r\nOr with classes: \r\n```javascript\r\nclass Module {\r\n  consructor(locator) {\r\n    this._uhr = locator.resolve('uhr');\r\n    this._logger = locator.resolve('logger');\r\n    this._config = locator.resolve('config').someConfigSection;\r\n  }\r\n}\r\n```\r\n\r\nAlso, better performance and less bundle size is expected because of this.\r\n"}}