{"push_id":1050897083,"size":22,"distinct_size":22,"ref":"refs/heads/v2","head":"890c5391c51d186d13960c9020c14d8a04558ba0","before":"e4efbffccb140c18d9305316439ce755c0d7c946","commits":[{"sha":"c9f8a471f31df318c01e8d22e06dd53e5bfa8e6a","author":{"email":"7335407aefcb6e4c6e110926c5c658752beb8848@gmail.com","name":"Mojo Talantikite"},"message":"Run go fmt to fix formatting","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/c9f8a471f31df318c01e8d22e06dd53e5bfa8e6a"},{"sha":"ac8739ef0e09d4b93d33dd52acda41fe48973e81","author":{"email":"7335407aefcb6e4c6e110926c5c658752beb8848@gmail.com","name":"Mojo Talantikite"},"message":"Trim null \\x00 byte","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/ac8739ef0e09d4b93d33dd52acda41fe48973e81"},{"sha":"52fc927d915609653c3008cd37b50e40eb0626ae","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"Merge pull request #2 from mojotalantikite/master\n\nStrip \\x00 from filename in RQ, go fmt","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/52fc927d915609653c3008cd37b50e40eb0626ae"},{"sha":"efc7792775e7947a768f993847e47e17ccb14a86","author":{"email":"387225cd66f97dc812a00599dbc5b6544a73295c@develer.com","name":"Giovanni Bajo"},"message":"Correctly read block of fixed size from the pipe.\n\nBefore this patch, the code was using io.Reader.Read(), which returns\nwhatever block of data is available on the pipe. If the client code\nwrote into the pipe small chunk of data, Read() would return them\nas-is. This meant that the code would send to the network blocks\nsmaller than the configured size, which the TFTP client would interpret\nas file terminators.\n\nBy using io.ReadFull() we guarantee that we always read and fill a\nfull block of data, unless a EOF occurs. This fixes the transfer for\nclient code writing chunk of arbitrary size to the pipe.","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/efc7792775e7947a768f993847e47e17ccb14a86"},{"sha":"b8363c622702c741e80d430f9063c12ac4a414b8","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"Basic Put -> Get -> Compare unit test and SmallWrites unit test.\n\nAside from the shameful lack of tests for this package, the\nmotivation to add at least this very basic and high-level unit test\nis to reproduce a bug Giovanni Bajo fixed with\n\nhttps://github.com/pin/tftp/pull/3","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/b8363c622702c741e80d430f9063c12ac4a414b8"},{"sha":"8f9b4988e8c453eccdf2139311836cbfd7e545a0","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"Travis CI configuration file added.","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/8f9b4988e8c453eccdf2139311836cbfd7e545a0"},{"sha":"a44af2883a18f7af89b2d90d4b84e988247b5eeb","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"Merge pull request #4 from pin/put-get-unit-test\n\nBasic Put -> Get -> Compare unit test and SmallWrites unit test.","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/a44af2883a18f7af89b2d90d4b84e988247b5eeb"},{"sha":"34392eccc9ccf587f0f909db2220edc287e1dfe9","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"Merge pull request #3 from rasky/master\n\nCorrectly read blocks of fixed size from the pipe.","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/34392eccc9ccf587f0f909db2220edc287e1dfe9"},{"sha":"eb9c876d0506ac27824907f797326e024e5da12f","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"verify ~512 bytes files transmission in unit-tests","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/eb9c876d0506ac27824907f797326e024e5da12f"},{"sha":"e63b98cf227fc79e55a39da1d32a99678ade4587","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"brutal locking to avoid race in tests","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/e63b98cf227fc79e55a39da1d32a99678ade4587"},{"sha":"6b87b33dc3b204ec8b76a53773ace505b3436fa8","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"Merge pull request #5 from pin/more-unit-tests\n\nverify ~512 bytes files transmission in unit-tests","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/6b87b33dc3b204ec8b76a53773ace505b3436fa8"},{"sha":"015a4cedd6d91a837c96e9c28fb46b3a1cc5ba04","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"avoid redundant indirection in packet parser","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/015a4cedd6d91a837c96e9c28fb46b3a1cc5ba04"},{"sha":"fc349fbb7f00249c87654412d4d1f6f6a135d27b","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"sender/receiver run method is unexported","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/fc349fbb7f00249c87654412d4d1f6f6a135d27b"},{"sha":"0bd32f0b9cc04daed88432bfed96a12b0a0e4073","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"distinct timeout errors and send/receive timeout test","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/0bd32f0b9cc04daed88432bfed96a12b0a0e4073"},{"sha":"fa07ff151c82d22bbd83374183a3ce3b40afae98","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"Merge pull request #6 from pin/misc-stuff\n\nMisc stuff from George","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/fa07ff151c82d22bbd83374183a3ce3b40afae98"},{"sha":"f0245e003fd6fa30cba0336db1d7fba0ace942d1","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"avoid send/receive handlers export","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/f0245e003fd6fa30cba0336db1d7fba0ace942d1"},{"sha":"275aaead199ad0773ea8aa7c5288792d763a0ddc","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"big refactoring","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/275aaead199ad0773ea8aa7c5288792d763a0ddc"},{"sha":"0c4964959ce6bf337936bdf0c21bb66485d832b8","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"README update","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/0c4964959ce6bf337936bdf0c21bb66485d832b8"},{"sha":"66b40958cad3692e7200e39fb431a80cfc00df95","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"rebase","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/66b40958cad3692e7200e39fb431a80cfc00df95"},{"sha":"9f1f1881ac0d0f7651ddf2ee59bceff81ec7c0da","author":{"email":"fe96dd39756ac41b74283a9292652d366d73931f@cv.dp-net.com","name":"Dmitri Popov"},"message":"trying better formatting","distinct":true,"url":"https://api.github.com/repos/pin/tftp/commits/9f1f1881ac0d0f7651ddf2ee59bceff81ec7c0da"}]}