)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000002,"name":"Serge Bazanski","display_name":"Serge","email":"serge@monogon.tech","username":"serge","avatars":[{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"a7b4b5d7326b26d8aa186cc8149cbb645a5deb2d","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"9c15e955_7e686626","updated":"2024-04-22 17:59:46.000000000","message":"Can you please split this up into a few smaller changes? Eg.\n\n1. Trivial cases of errors.Wrap -\u003e fmt.Sprintf\n2. Trivial cases of error type assertions -\u003e errors.As\n3. Trivial cases of error comparisons -\u003e errors.As\n4. All the other non-trivial stuff (especially around critical components like TPM)\n\nThis will make this easier to review and make progress on.","commit_id":"dba0f638a1e2093dac30bb96fb5b303896720ba9"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"a810de8a23e7c3e149a79017b56751d8a878610f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"1449bc1f_7173a371","in_reply_to":"9c15e955_7e686626","updated":"2024-04-23 13:16:41.000000000","message":"Done","commit_id":"dba0f638a1e2093dac30bb96fb5b303896720ba9"}],"metropolis/pkg/fsquota/quotactl/quotactl.go":[{"author":{"_account_id":1000038,"name":"Jan Schär","display_name":"Jan","email":"jan@monogon.tech","username":"jan","avatars":[{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8c9fbeccfef29f204528ce124dfe28ce357f6a13","unresolved":true,"context_lines":[{"line_number":109,"context_line":"\t}"},{"line_number":110,"context_line":"\t_, _, errNo :\u003d unix.Syscall6(unix.SYS_QUOTACTL_FD, fd.Fd(), uintptr(Q_QUOTAON|uint(qtype)), uintptr(quotaFormat), uintptr(unsafe.Pointer(pathArg)), 0, 0)"},{"line_number":111,"context_line":"\tif errNo !\u003d unix.Errno(0) {"},{"line_number":112,"context_line":"\t\treturn err"},{"line_number":113,"context_line":"\t}"},{"line_number":114,"context_line":"\treturn nil"},{"line_number":115,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":3,"id":"e5103348_7e521a35","line":112,"updated":"2024-04-22 08:53:03.000000000","message":"```suggestion\n\t\treturn errNo\n```","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"773e5efb3a9488dc6e132d5aedd429363b03093b","unresolved":false,"context_lines":[{"line_number":109,"context_line":"\t}"},{"line_number":110,"context_line":"\t_, _, errNo :\u003d unix.Syscall6(unix.SYS_QUOTACTL_FD, fd.Fd(), uintptr(Q_QUOTAON|uint(qtype)), uintptr(quotaFormat), uintptr(unsafe.Pointer(pathArg)), 0, 0)"},{"line_number":111,"context_line":"\tif errNo !\u003d unix.Errno(0) {"},{"line_number":112,"context_line":"\t\treturn err"},{"line_number":113,"context_line":"\t}"},{"line_number":114,"context_line":"\treturn nil"},{"line_number":115,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":3,"id":"8dbc8245_a82e81fa","line":112,"in_reply_to":"e5103348_7e521a35","updated":"2024-04-22 17:25:05.000000000","message":"Done","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"}],"metropolis/pkg/kmod/syscall.go":[{"author":{"_account_id":1000038,"name":"Jan Schär","display_name":"Jan","email":"jan@monogon.tech","username":"jan","avatars":[{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8c9fbeccfef29f204528ce124dfe28ce357f6a13","unresolved":true,"context_lines":[{"line_number":27,"context_line":"\t\treturn fmt.Errorf(\"unable to get control handle: %w\", ctrlErr)"},{"line_number":28,"context_line":"\t}"},{"line_number":29,"context_line":"\tif errNo !\u003d unix.Errno(0) {"},{"line_number":30,"context_line":"\t\treturn err"},{"line_number":31,"context_line":"\t}"},{"line_number":32,"context_line":"\treturn nil"},{"line_number":33,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":3,"id":"496bd7ba_9ff94bc0","line":30,"updated":"2024-04-22 08:53:03.000000000","message":"```suggestion\n\t\treturn errNo\n```","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"773e5efb3a9488dc6e132d5aedd429363b03093b","unresolved":false,"context_lines":[{"line_number":27,"context_line":"\t\treturn fmt.Errorf(\"unable to get control handle: %w\", ctrlErr)"},{"line_number":28,"context_line":"\t}"},{"line_number":29,"context_line":"\tif errNo !\u003d unix.Errno(0) {"},{"line_number":30,"context_line":"\t\treturn err"},{"line_number":31,"context_line":"\t}"},{"line_number":32,"context_line":"\treturn nil"},{"line_number":33,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":3,"id":"5987c396_b8f6eea7","line":30,"in_reply_to":"496bd7ba_9ff94bc0","updated":"2024-04-22 17:25:05.000000000","message":"Done","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"}],"metropolis/pkg/loop/loop.go":[{"author":{"_account_id":1000038,"name":"Jan Schär","display_name":"Jan","email":"jan@monogon.tech","username":"jan","avatars":[{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8c9fbeccfef29f204528ce124dfe28ce357f6a13","unresolved":true,"context_lines":[{"line_number":193,"context_line":"\tif errNo \u003d\u003d syscall.EINVAL {"},{"line_number":194,"context_line":"\t\treturn nil, errors.New(\"not a loop device\")"},{"line_number":195,"context_line":"\t}"},{"line_number":196,"context_line":"\treturn nil, fmt.Errorf(\"failed to determine state of potential loop device: %w\", err)"},{"line_number":197,"context_line":"}"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"func (d *Device) ensureOpen() error {"}],"source_content_type":"text/x-go","patch_set":3,"id":"1970a8ab_42297421","line":196,"updated":"2024-04-22 08:53:03.000000000","message":"```suggestion\n\treturn nil, fmt.Errorf(\"failed to determine state of potential loop device: %w\", errNo)\n```","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"773e5efb3a9488dc6e132d5aedd429363b03093b","unresolved":false,"context_lines":[{"line_number":193,"context_line":"\tif errNo \u003d\u003d syscall.EINVAL {"},{"line_number":194,"context_line":"\t\treturn nil, errors.New(\"not a loop device\")"},{"line_number":195,"context_line":"\t}"},{"line_number":196,"context_line":"\treturn nil, fmt.Errorf(\"failed to determine state of potential loop device: %w\", err)"},{"line_number":197,"context_line":"}"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"func (d *Device) ensureOpen() error {"}],"source_content_type":"text/x-go","patch_set":3,"id":"280f4e17_68df7b77","line":196,"in_reply_to":"1970a8ab_42297421","updated":"2024-04-22 17:25:05.000000000","message":"Done","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"}],"metropolis/pkg/supervisor/supervisor_processor.go":[{"author":{"_account_id":1000038,"name":"Jan Schär","display_name":"Jan","email":"jan@monogon.tech","username":"jan","avatars":[{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8c9fbeccfef29f204528ce124dfe28ce357f6a13","unresolved":true,"context_lines":[{"line_number":274,"context_line":"\t\treturn"},{"line_number":275,"context_line":"\t}"},{"line_number":276,"context_line":""},{"line_number":277,"context_line":"\t// Find innermost error to check if it\u0027s a context canceled error."},{"line_number":278,"context_line":"\tperr :\u003d r.err"},{"line_number":279,"context_line":"\tfor {"},{"line_number":280,"context_line":"\t\tif inner :\u003d errors.Unwrap(perr); inner !\u003d nil {"}],"source_content_type":"text/x-go","patch_set":3,"id":"3175c887_c85df87e","line":277,"updated":"2024-04-22 08:53:03.000000000","message":"Do we still need this unwrapping with `errors.Is`? I guess you could just do `r.err !\u003d nil \u0026\u0026 errors.Is(r.err, ctx.Err())`","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"773e5efb3a9488dc6e132d5aedd429363b03093b","unresolved":false,"context_lines":[{"line_number":274,"context_line":"\t\treturn"},{"line_number":275,"context_line":"\t}"},{"line_number":276,"context_line":""},{"line_number":277,"context_line":"\t// Find innermost error to check if it\u0027s a context canceled error."},{"line_number":278,"context_line":"\tperr :\u003d r.err"},{"line_number":279,"context_line":"\tfor {"},{"line_number":280,"context_line":"\t\tif inner :\u003d errors.Unwrap(perr); inner !\u003d nil {"}],"source_content_type":"text/x-go","patch_set":3,"id":"7b89c605_dd3403ed","line":277,"in_reply_to":"3175c887_c85df87e","updated":"2024-04-22 17:25:05.000000000","message":"Done","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"}],"metropolis/pkg/tpm/eventlog/eventlog.go":[{"author":{"_account_id":1000038,"name":"Jan Schär","display_name":"Jan","email":"jan@monogon.tech","username":"jan","avatars":[{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/fd0e7f48847aa0e46c8f361df2d6c26b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8c9fbeccfef29f204528ce124dfe28ce357f6a13","unresolved":true,"context_lines":[{"line_number":283,"context_line":"\tif err \u003d\u003d nil {"},{"line_number":284,"context_line":"\t\treturn events, nil"},{"line_number":285,"context_line":"\t}"},{"line_number":286,"context_line":"\tvar replayError ReplayError"},{"line_number":287,"context_line":"\tif errors.As(err, \u0026replayError) {"},{"line_number":288,"context_line":"\t\treturn nil, err"},{"line_number":289,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":3,"id":"cf6961c6_67c89f2b","line":286,"updated":"2024-04-22 08:53:03.000000000","message":"Now that `errors.As` is used in `Verify`, this special case of not wrapping `ReplayError` appears to be not necessary anymore.","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"773e5efb3a9488dc6e132d5aedd429363b03093b","unresolved":false,"context_lines":[{"line_number":283,"context_line":"\tif err \u003d\u003d nil {"},{"line_number":284,"context_line":"\t\treturn events, nil"},{"line_number":285,"context_line":"\t}"},{"line_number":286,"context_line":"\tvar replayError ReplayError"},{"line_number":287,"context_line":"\tif errors.As(err, \u0026replayError) {"},{"line_number":288,"context_line":"\t\treturn nil, err"},{"line_number":289,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":3,"id":"8272078a_45fff202","line":286,"in_reply_to":"cf6961c6_67c89f2b","updated":"2024-04-22 17:25:05.000000000","message":"Yeah tbh we could even go as far as removing the verify function by using replayEvents directly and returning *ReplayError there","commit_id":"b9a8238a31c76f41e8e00934db399440c93a205f"}],"metropolis/pkg/verity/encoder.go":[{"author":{"_account_id":1000002,"name":"Serge Bazanski","display_name":"Serge","email":"serge@monogon.tech","username":"serge","avatars":[{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/52c41428b6369f2c02b9717425216f7d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"dceef0d05024757c1931e9f9ed070ea719118e44","unresolved":true,"context_lines":[{"line_number":180,"context_line":"\t\t// Handle the read errors."},{"line_number":181,"context_line":"\t\tswitch {"},{"line_number":182,"context_line":"\t\tcase err \u003d\u003d nil:"},{"line_number":183,"context_line":"\t\tcase errors.Is(err, io.ErrUnexpectedEOF), err \u003d\u003d io.EOF:"},{"line_number":184,"context_line":"\t\t\t// io.ReadFull returns io.ErrUnexpectedEOF after a partial read,"},{"line_number":185,"context_line":"\t\t\t// and io.EOF if no bytes were read. In both cases it\u0027s possible"},{"line_number":186,"context_line":"\t\t\t// to end up with a partially filled hash block."}],"source_content_type":"text/x-go","patch_set":5,"id":"5bd82cd8_36ff0f7e","line":183,"range":{"start_line":183,"start_character":43,"end_line":183,"end_character":58},"updated":"2024-04-23 14:57:42.000000000","message":"One more thing to convert.","commit_id":"e003c21313b0664ad8184da98e4932e03f0718ee"},{"author":{"_account_id":1000019,"name":"Tim Windelschmidt","display_name":"Tim","email":"tim@monogon.tech","username":"fionera","avatars":[{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/57e6137fdb8185cd15ac27ba188780ff.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"a0dd4082b3be575d00a09f1258d04c2cb45cf8c1","unresolved":false,"context_lines":[{"line_number":180,"context_line":"\t\t// Handle the read errors."},{"line_number":181,"context_line":"\t\tswitch {"},{"line_number":182,"context_line":"\t\tcase err \u003d\u003d nil:"},{"line_number":183,"context_line":"\t\tcase errors.Is(err, io.ErrUnexpectedEOF), err \u003d\u003d io.EOF:"},{"line_number":184,"context_line":"\t\t\t// io.ReadFull returns io.ErrUnexpectedEOF after a partial read,"},{"line_number":185,"context_line":"\t\t\t// and io.EOF if no bytes were read. In both cases it\u0027s possible"},{"line_number":186,"context_line":"\t\t\t// to end up with a partially filled hash block."}],"source_content_type":"text/x-go","patch_set":5,"id":"ebcffd98_0a1cc779","line":183,"range":{"start_line":183,"start_character":43,"end_line":183,"end_character":58},"in_reply_to":"5bd82cd8_36ff0f7e","updated":"2024-04-23 19:40:42.000000000","message":"Done","commit_id":"e003c21313b0664ad8184da98e4932e03f0718ee"}]}
