{"action":"created","issue":{"url":"https://api.github.com/repos/nymag/amphora/issues/398","repository_url":"https://api.github.com/repos/nymag/amphora","labels_url":"https://api.github.com/repos/nymag/amphora/issues/398/labels{/name}","comments_url":"https://api.github.com/repos/nymag/amphora/issues/398/comments","events_url":"https://api.github.com/repos/nymag/amphora/issues/398/events","html_url":"https://github.com/nymag/amphora/issues/398","id":224259049,"number":398,"title":"Component Versioning","user":{"login":"jonwinton","id":4906712,"avatar_url":"https://avatars0.githubusercontent.com/u/4906712?v=3","gravatar_id":"","url":"https://api.github.com/users/jonwinton","html_url":"https://github.com/jonwinton","followers_url":"https://api.github.com/users/jonwinton/followers","following_url":"https://api.github.com/users/jonwinton/following{/other_user}","gists_url":"https://api.github.com/users/jonwinton/gists{/gist_id}","starred_url":"https://api.github.com/users/jonwinton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonwinton/subscriptions","organizations_url":"https://api.github.com/users/jonwinton/orgs","repos_url":"https://api.github.com/users/jonwinton/repos","events_url":"https://api.github.com/users/jonwinton/events{/privacy}","received_events_url":"https://api.github.com/users/jonwinton/received_events","type":"User","site_admin":false},"labels":[{"id":189090600,"url":"https://api.github.com/repos/nymag/amphora/labels/question","name":"question","color":"cc317c","default":true}],"state":"open","locked":false,"assignee":{"login":"jonwinton","id":4906712,"avatar_url":"https://avatars0.githubusercontent.com/u/4906712?v=3","gravatar_id":"","url":"https://api.github.com/users/jonwinton","html_url":"https://github.com/jonwinton","followers_url":"https://api.github.com/users/jonwinton/followers","following_url":"https://api.github.com/users/jonwinton/following{/other_user}","gists_url":"https://api.github.com/users/jonwinton/gists{/gist_id}","starred_url":"https://api.github.com/users/jonwinton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonwinton/subscriptions","organizations_url":"https://api.github.com/users/jonwinton/orgs","repos_url":"https://api.github.com/users/jonwinton/repos","events_url":"https://api.github.com/users/jonwinton/events{/privacy}","received_events_url":"https://api.github.com/users/jonwinton/received_events","type":"User","site_admin":false},"assignees":[{"login":"jonwinton","id":4906712,"avatar_url":"https://avatars0.githubusercontent.com/u/4906712?v=3","gravatar_id":"","url":"https://api.github.com/users/jonwinton","html_url":"https://github.com/jonwinton","followers_url":"https://api.github.com/users/jonwinton/followers","following_url":"https://api.github.com/users/jonwinton/following{/other_user}","gists_url":"https://api.github.com/users/jonwinton/gists{/gist_id}","starred_url":"https://api.github.com/users/jonwinton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonwinton/subscriptions","organizations_url":"https://api.github.com/users/jonwinton/orgs","repos_url":"https://api.github.com/users/jonwinton/repos","events_url":"https://api.github.com/users/jonwinton/events{/privacy}","received_events_url":"https://api.github.com/users/jonwinton/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/nymag/amphora/milestones/5","html_url":"https://github.com/nymag/amphora/milestone/5","labels_url":"https://api.github.com/repos/nymag/amphora/milestones/5/labels","id":2477485,"number":5,"title":"Amphora Next","description":"A catch-all for features desired/upcoming in Amphora. Issues here usually need triage before being assigned.","creator":{"login":"jonwinton","id":4906712,"avatar_url":"https://avatars0.githubusercontent.com/u/4906712?v=3","gravatar_id":"","url":"https://api.github.com/users/jonwinton","html_url":"https://github.com/jonwinton","followers_url":"https://api.github.com/users/jonwinton/followers","following_url":"https://api.github.com/users/jonwinton/following{/other_user}","gists_url":"https://api.github.com/users/jonwinton/gists{/gist_id}","starred_url":"https://api.github.com/users/jonwinton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonwinton/subscriptions","organizations_url":"https://api.github.com/users/jonwinton/orgs","repos_url":"https://api.github.com/users/jonwinton/repos","events_url":"https://api.github.com/users/jonwinton/events{/privacy}","received_events_url":"https://api.github.com/users/jonwinton/received_events","type":"User","site_admin":false},"open_issues":4,"closed_issues":0,"state":"open","created_at":"2017-04-24T15:54:35Z","updated_at":"2017-04-27T20:31:36Z","due_on":null,"closed_at":null},"comments":5,"created_at":"2017-04-25T20:16:03Z","updated_at":"2017-05-02T15:51:34Z","closed_at":null,"body":"What are the requirements for component versioning?"},"comment":{"url":"https://api.github.com/repos/nymag/amphora/issues/comments/298676728","html_url":"https://github.com/nymag/amphora/issues/398#issuecomment-298676728","issue_url":"https://api.github.com/repos/nymag/amphora/issues/398","id":298676728,"user":{"login":"jonwinton","id":4906712,"avatar_url":"https://avatars0.githubusercontent.com/u/4906712?v=3","gravatar_id":"","url":"https://api.github.com/users/jonwinton","html_url":"https://github.com/jonwinton","followers_url":"https://api.github.com/users/jonwinton/followers","following_url":"https://api.github.com/users/jonwinton/following{/other_user}","gists_url":"https://api.github.com/users/jonwinton/gists{/gist_id}","starred_url":"https://api.github.com/users/jonwinton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonwinton/subscriptions","organizations_url":"https://api.github.com/users/jonwinton/orgs","repos_url":"https://api.github.com/users/jonwinton/repos","events_url":"https://api.github.com/users/jonwinton/events{/privacy}","received_events_url":"https://api.github.com/users/jonwinton/received_events","type":"User","site_admin":false},"created_at":"2017-05-02T15:51:34Z","updated_at":"2017-05-02T15:51:34Z","body":"@amycheng this is for when a developer updates the `schema.yml` file for a component, either by:\r\n\r\n- Removing a property\r\n- Adding a property\r\n- Renaming a property (which is just an add + remove)\r\n\r\nThe problem is that when schema's change templates usually do as well. The aim of this is to provide Amphora a way of knowing which version of a component's data we're dealing with and then providing a transformation if some change is necessary to get a component to the most recent version. \r\n\r\n- Yes, components have unlimited versions, we're just following semver\r\n- No, a new version is created when a developer increments the `_version` property in a component's schema\r\n- No, users cannot choose which version. We're not saving each individual version instance of data, a component's instance is still its one source of data. We're just providing a way to keep schema changes and previously saved data in sync.\r\n- Kiln doesn't care about the correct version because transforms are run anytime data is retrieved and then saved as the latest version. Basically, if you're looking at data for a component you can rest assured you're looking at the latest version.\r\n\r\nWith this method you could actually update ALL your component's instance by just performing a GET to each instance. Otherwise components will be upgraded on the fly as they're requested by users."}}
{"actor":{"display_login":"jonwinton"}}