{"action":"created","issue":{"url":"https://api.github.com/repos/tomchristie/apistar/issues/70","repository_url":"https://api.github.com/repos/tomchristie/apistar","labels_url":"https://api.github.com/repos/tomchristie/apistar/issues/70/labels{/name}","comments_url":"https://api.github.com/repos/tomchristie/apistar/issues/70/comments","events_url":"https://api.github.com/repos/tomchristie/apistar/issues/70/events","html_url":"https://github.com/tomchristie/apistar/issues/70","id":223076844,"number":70,"title":"Schema validation & annotation","user":{"login":"tomchristie","id":647359,"avatar_url":"https://avatars1.githubusercontent.com/u/647359?v=3","gravatar_id":"","url":"https://api.github.com/users/tomchristie","html_url":"https://github.com/tomchristie","followers_url":"https://api.github.com/users/tomchristie/followers","following_url":"https://api.github.com/users/tomchristie/following{/other_user}","gists_url":"https://api.github.com/users/tomchristie/gists{/gist_id}","starred_url":"https://api.github.com/users/tomchristie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomchristie/subscriptions","organizations_url":"https://api.github.com/users/tomchristie/orgs","repos_url":"https://api.github.com/users/tomchristie/repos","events_url":"https://api.github.com/users/tomchristie/events{/privacy}","received_events_url":"https://api.github.com/users/tomchristie/received_events","type":"User","site_admin":false},"labels":[{"id":588098937,"url":"https://api.github.com/repos/tomchristie/apistar/labels/Baseline%20feature","name":"Baseline feature","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/tomchristie/apistar/milestones/1","html_url":"https://github.com/tomchristie/apistar/milestone/1","labels_url":"https://api.github.com/repos/tomchristie/apistar/milestones/1/labels","id":2477271,"number":1,"title":"0.2 Release","description":"","creator":{"login":"tomchristie","id":647359,"avatar_url":"https://avatars1.githubusercontent.com/u/647359?v=3","gravatar_id":"","url":"https://api.github.com/users/tomchristie","html_url":"https://github.com/tomchristie","followers_url":"https://api.github.com/users/tomchristie/followers","following_url":"https://api.github.com/users/tomchristie/following{/other_user}","gists_url":"https://api.github.com/users/tomchristie/gists{/gist_id}","starred_url":"https://api.github.com/users/tomchristie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomchristie/subscriptions","organizations_url":"https://api.github.com/users/tomchristie/orgs","repos_url":"https://api.github.com/users/tomchristie/repos","events_url":"https://api.github.com/users/tomchristie/events{/privacy}","received_events_url":"https://api.github.com/users/tomchristie/received_events","type":"User","site_admin":false},"open_issues":11,"closed_issues":6,"state":"open","created_at":"2017-04-24T14:48:15Z","updated_at":"2017-05-22T23:53:36Z","due_on":"2017-05-16T07:00:00Z","closed_at":null},"comments":1,"created_at":"2017-04-20T13:59:02Z","updated_at":"2017-05-23T04:43:12Z","closed_at":null,"body":"We have some of this in place at the moment, but we still need:\r\n\r\n- [x] Object\r\n- [ ] Array\r\n- [x] Enum\r\n- [x] Documentation\r\n- [x] Defaults on schema types.\r\n- [ ] Nullable\r\n\r\nPlus a whole bunch of finessing around things like:\r\n\r\n* Keyword defaults on handler functions.\r\n* Support `List` in handler input types.\r\n* Coerce primitive types to schema types? (eg. `bool` then handles \"True\"/\"False\" string literals, `str` then trims whitespace by default.)\r\n* Returning aggregated validation errors for multiple parameters.\r\n* Which typing annotations we support in views.\r\n* Native formats such as `datetime` that have a string serialization.\r\n* If we want to constrain the typing system against GraphQL, eg. no general \"Map\" type.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/tomchristie/apistar/issues/comments/303288900","html_url":"https://github.com/tomchristie/apistar/issues/70#issuecomment-303288900","issue_url":"https://api.github.com/repos/tomchristie/apistar/issues/70","id":303288900,"user":{"login":"tomchristie","id":647359,"avatar_url":"https://avatars1.githubusercontent.com/u/647359?v=3","gravatar_id":"","url":"https://api.github.com/users/tomchristie","html_url":"https://github.com/tomchristie","followers_url":"https://api.github.com/users/tomchristie/followers","following_url":"https://api.github.com/users/tomchristie/following{/other_user}","gists_url":"https://api.github.com/users/tomchristie/gists{/gist_id}","starred_url":"https://api.github.com/users/tomchristie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomchristie/subscriptions","organizations_url":"https://api.github.com/users/tomchristie/orgs","repos_url":"https://api.github.com/users/tomchristie/repos","events_url":"https://api.github.com/users/tomchristie/events{/privacy}","received_events_url":"https://api.github.com/users/tomchristie/received_events","type":"User","site_admin":false},"created_at":"2017-05-23T04:43:12Z","updated_at":"2017-05-23T04:43:12Z","body":"@ddorian We can't use marshmallow (or any other existing library) here because they wouldn't fulfil our design criteria of:\r\n\r\n* Actual type subclasses, that we can then validly use as type annotations.\r\n* 1:1 mapping onto JSON Schema."}}
{"actor":{"display_login":"tomchristie"}}