)]}' { "commit": "29d326226d996bd8c2f57183a739ed2d12f713b5", "tree": "214afafd88ee2913b1ef409557d50e6cab9e6c77", "parents": [ "180c77ae3ef202072de54f141d210cf4e277c0e7" ], "author": { "name": "Nate Bosch", "email": "nbosch1@gmail.com", "time": "Fri Jan 03 13:25:34 2020 -0800" }, "committer": { "name": "GitHub", "email": "noreply@github.com", "time": "Fri Jan 03 13:25:34 2020 -0800" }, "message": "Synchronously finalize headers (#359)\n\nFixes #351\r\n\r\nAn `async*` method is not started until after the stream has a listener,\r\nif a caller reads the headers before listening to the stream, they would\r\nsee the value before they have been set. Move the header assignment and\r\nother finalization work to the wrapping method and keep the `async*`\r\nmethod handling only the stream content.\r\n", "tree_diff": [ { "type": "modify", "old_id": "119227f486aef53c978985ddff31d6ef87f4ab77", "old_mode": 33188, "old_path": "CHANGELOG.md", "new_id": "c87e445e0e9caea3ac8b27ce8f4ba3959efff67c", "new_mode": 33188, "new_path": "CHANGELOG.md" }, { "type": "modify", "old_id": "699c64321bb3d0e096cd6b7c0381679a34588cf1", "old_mode": 33188, "old_path": "lib/src/multipart_request.dart", "new_id": "4d89c6cfeb86d582b5c8def1fe07e4241a110b45", "new_mode": 33188, "new_path": "lib/src/multipart_request.dart" }, { "type": "modify", "old_id": "f8c83f76a80ed156e89f061e88f5eb96e2e74293", "old_mode": 33188, "old_path": "test/io/client_test.dart", "new_id": "25bbd6b42e9a473ab268dedb02a5b50dddb50407", "new_mode": 33188, "new_path": "test/io/client_test.dart" } ] }