{"action":"closed","issue":{"url":"https://api.github.com/repos/messagebird/sachet/issues/24","repository_url":"https://api.github.com/repos/messagebird/sachet","labels_url":"https://api.github.com/repos/messagebird/sachet/issues/24/labels{/name}","comments_url":"https://api.github.com/repos/messagebird/sachet/issues/24/comments","events_url":"https://api.github.com/repos/messagebird/sachet/issues/24/events","html_url":"https://github.com/messagebird/sachet/issues/24","id":237115560,"node_id":"MDU6SXNzdWUyMzcxMTU1NjA=","number":24,"title":"Move providers to their own packages ","user":{"login":"marcelcorso","id":19642,"node_id":"MDQ6VXNlcjE5NjQy","avatar_url":"https://avatars2.githubusercontent.com/u/19642?v=4","gravatar_id":"","url":"https://api.github.com/users/marcelcorso","html_url":"https://github.com/marcelcorso","followers_url":"https://api.github.com/users/marcelcorso/followers","following_url":"https://api.github.com/users/marcelcorso/following{/other_user}","gists_url":"https://api.github.com/users/marcelcorso/gists{/gist_id}","starred_url":"https://api.github.com/users/marcelcorso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marcelcorso/subscriptions","organizations_url":"https://api.github.com/users/marcelcorso/orgs","repos_url":"https://api.github.com/users/marcelcorso/repos","events_url":"https://api.github.com/users/marcelcorso/events{/privacy}","received_events_url":"https://api.github.com/users/marcelcorso/received_events","type":"User","site_admin":false},"labels":[{"id":390649279,"node_id":"MDU6TGFiZWwzOTA2NDkyNzk=","url":"https://api.github.com/repos/messagebird/sachet/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-06-20T07:24:06Z","updated_at":"2018-05-30T20:23:00Z","closed_at":"2018-05-30T20:23:00Z","author_association":"COLLABORATOR","body":"Right now all providers' code lives on the \"sachet\" package. This doesn't scale well. \r\n\r\nFor example different providers may want to implement a Request method like turbosms did [here](https://github.com/dzirg44/sachet/blob/52736377f17a3944e60ecefd6a5ae7ad482684d8/turbosms.go#L88) \r\n\r\nBut since they are all on the same package there will be name collisions. We can try to prevent providers from doing so and stick to methods on the \"provider\" structs like we do on the MessageBird's but using language features is easier and better.  "}}
{"actor":{"display_login":"samwierema"}}