{"action":"created","issue":{"url":"https://api.github.com/repos/msgpack/msgpack-python/issues/48","labels_url":"https://api.github.com/repos/msgpack/msgpack-python/issues/48/labels{/name}","comments_url":"https://api.github.com/repos/msgpack/msgpack-python/issues/48/comments","events_url":"https://api.github.com/repos/msgpack/msgpack-python/issues/48/events","html_url":"https://github.com/msgpack/msgpack-python/issues/48","id":11197865,"number":48,"title":"Stream processing requires knowledge of the data","user":{"login":"mitsuhiko","id":7396,"avatar_url":"https://avatars.githubusercontent.com/u/7396?v=3","gravatar_id":"","url":"https://api.github.com/users/mitsuhiko","html_url":"https://github.com/mitsuhiko","followers_url":"https://api.github.com/users/mitsuhiko/followers","following_url":"https://api.github.com/users/mitsuhiko/following{/other_user}","gists_url":"https://api.github.com/users/mitsuhiko/gists{/gist_id}","starred_url":"https://api.github.com/users/mitsuhiko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mitsuhiko/subscriptions","organizations_url":"https://api.github.com/users/mitsuhiko/orgs","repos_url":"https://api.github.com/users/mitsuhiko/repos","events_url":"https://api.github.com/users/mitsuhiko/events{/privacy}","received_events_url":"https://api.github.com/users/mitsuhiko/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/msgpack/msgpack-python/labels/0.5","name":"0.5","color":"006b75"}],"state":"open","locked":false,"assignee":{"login":"methane","id":199592,"avatar_url":"https://avatars.githubusercontent.com/u/199592?v=3","gravatar_id":"","url":"https://api.github.com/users/methane","html_url":"https://github.com/methane","followers_url":"https://api.github.com/users/methane/followers","following_url":"https://api.github.com/users/methane/following{/other_user}","gists_url":"https://api.github.com/users/methane/gists{/gist_id}","starred_url":"https://api.github.com/users/methane/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/methane/subscriptions","organizations_url":"https://api.github.com/users/methane/orgs","repos_url":"https://api.github.com/users/methane/repos","events_url":"https://api.github.com/users/methane/events{/privacy}","received_events_url":"https://api.github.com/users/methane/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/msgpack/msgpack-python/milestones/3","html_url":"https://github.com/msgpack/msgpack-python/milestones/0.4","labels_url":"https://api.github.com/repos/msgpack/msgpack-python/milestones/3/labels","id":271601,"number":3,"title":"0.4","description":null,"creator":{"login":"methane","id":199592,"avatar_url":"https://avatars.githubusercontent.com/u/199592?v=3","gravatar_id":"","url":"https://api.github.com/users/methane","html_url":"https://github.com/methane","followers_url":"https://api.github.com/users/methane/followers","following_url":"https://api.github.com/users/methane/following{/other_user}","gists_url":"https://api.github.com/users/methane/gists{/gist_id}","starred_url":"https://api.github.com/users/methane/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/methane/subscriptions","organizations_url":"https://api.github.com/users/methane/orgs","repos_url":"https://api.github.com/users/methane/repos","events_url":"https://api.github.com/users/methane/events{/privacy}","received_events_url":"https://api.github.com/users/methane/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":0,"state":"open","created_at":"2013-02-20T16:08:03Z","updated_at":"2013-02-20T16:08:03Z","due_on":null,"closed_at":null},"comments":12,"created_at":"2013-02-20T13:59:49Z","updated_at":"2015-11-07T14:46:29Z","closed_at":null,"body":"I was just trying to use the recent updated msgpack library for stream processing but it still requires knowledge of the data that's incoming which I don't have in all cases.  What I want is a function that works roughly like this:\r\n\r\n```pycon\r\n>>> u = msgpack.Unpacker(StringIO('\\x94\\x01\\x02\\x03\\x04'))\r\n>>> u.next_marker()\r\n('map_start', 4)\r\n>>> u.next_marker()\r\n('value', 1)\r\n>>> u.next_marker()\r\n('value', 2)\r\n>>> u.next_marker()\r\n('value', 3)\r\n>>> u.next_marker()\r\n('value', 4)\r\n```\r\n\r\nEg: next marker returns a tuple in the form `(marker, value)` where marker is one of `map_start` / `array_start` or `value`.  if it's `value` it will have the actual value as second item, if it's a container marker then it has the size in there.  This would allow trivial stream processing.  (a value marker would never contain a map or array, just scalar values)."},"comment":{"url":"https://api.github.com/repos/msgpack/msgpack-python/issues/comments/154712048","html_url":"https://github.com/msgpack/msgpack-python/issues/48#issuecomment-154712048","issue_url":"https://api.github.com/repos/msgpack/msgpack-python/issues/48","id":154712048,"user":{"login":"ThomasWaldmann","id":356103,"avatar_url":"https://avatars.githubusercontent.com/u/356103?v=3","gravatar_id":"","url":"https://api.github.com/users/ThomasWaldmann","html_url":"https://github.com/ThomasWaldmann","followers_url":"https://api.github.com/users/ThomasWaldmann/followers","following_url":"https://api.github.com/users/ThomasWaldmann/following{/other_user}","gists_url":"https://api.github.com/users/ThomasWaldmann/gists{/gist_id}","starred_url":"https://api.github.com/users/ThomasWaldmann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ThomasWaldmann/subscriptions","organizations_url":"https://api.github.com/users/ThomasWaldmann/orgs","repos_url":"https://api.github.com/users/ThomasWaldmann/repos","events_url":"https://api.github.com/users/ThomasWaldmann/events{/privacy}","received_events_url":"https://api.github.com/users/ThomasWaldmann/received_events","type":"User","site_admin":false},"created_at":"2015-11-07T14:46:29Z","updated_at":"2015-11-07T14:46:29Z","body":"note: this is only item in 0.4 milestone. but at same time labelled \"0.5\"."}}