{"push_id":997919266,"size":15,"distinct_size":15,"ref":"refs/heads/master","head":"4dac6d45fd97732d4ef80cd0677acd966fcf5aed","before":"1e0b7dbdd247870cd42231fb3e951e459d396894","commits":[{"sha":"e5ee4eba535c783023da76cd1507c10200467bdf","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Add worker pool\n\nA worker pool is needed whenever something should be done concurrently.\nThis small library makes it easy to create a worker pool by specifying\nchannels, concurrency and a function that should be executed for each\njob and returns a result and an error.","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/e5ee4eba535c783023da76cd1507c10200467bdf"},{"sha":"ee422110c8fec7c23e19d082c20e0fc00a7ac48f","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Make worker pools input/output chans symmetric\n\nInput and output channel are now both of type `chan Job`, this makes it\npossible to chain multiple worker pools together.","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/ee422110c8fec7c23e19d082c20e0fc00a7ac48f"},{"sha":"4cb4a3ac7f9e5d743442c5bfa9163c8cae54d57e","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Add separate goroutine that closes the output chan\n\nThis allows iterating over the output channel without having to start\nanother Goroutine outside of the worker pool. This also removes the need\nfor calling Wait().","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/4cb4a3ac7f9e5d743442c5bfa9163c8cae54d57e"},{"sha":"b114ab7108523af2539e4fea8b50321e5144e1cb","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"cmd_dump: Allow dumping all blobs in all packs\n\nI had the suspicion that one of my repositories contained redundant\ndata blobs that is not recorder in the index. In order to check this I\nneeded to dump information about the pack files without consulting the\nindex. The code here iterates over all packs and dumps the headers, and\ndumps information about them in JSON (so we can use other tools to parse\nthat information again).","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/b114ab7108523af2539e4fea8b50321e5144e1cb"},{"sha":"482fc9f51d4de6df237baba487755e79a82394a2","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Add backend.readSeeker\n\nThis struct implements an io.ReadSeeker on top of a backend. This is the\neasiest way to make the packer compatible to the new backend without\nloading a complete pack into a bytes.Buffer.","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/482fc9f51d4de6df237baba487755e79a82394a2"},{"sha":"21a99397ffdea01786c43ecf92df3aff014a2149","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"worker: fix tests\n\nThe test failed on Windows, probably because the machine used for CI was\ntoo slow. The new test doesn't depend on timing any more.","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/21a99397ffdea01786c43ecf92df3aff014a2149"},{"sha":"090920039f67340b1400e0fa87703c7dcac4eb65","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"pack: Add test with backend.NewReadSeeker\n\nThis uses the new backend ReadSeeker with the unpacker.","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/090920039f67340b1400e0fa87703c7dcac4eb65"},{"sha":"bc911f4609cbb15af3fffb6313aba392b0e2ad9b","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"cmd_dump: Only load pack header","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/bc911f4609cbb15af3fffb6313aba392b0e2ad9b"},{"sha":"4cefd456bb3fb77adcc5bb68e16f42b23239c132","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Refactor rebuild-index code\n\nThis code reads all pack headers from all packs and rebuilds the index\nfrom scratch. Afterwards, all indexes are removed. This is needed\nbecause in #434 the command `optimize` produced a broken index that\ndid not contain a blob any more. Running `rebuild-index` should fix\nthis.","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/4cefd456bb3fb77adcc5bb68e16f42b23239c132"},{"sha":"5ce1375ddd6a320233283beb41c784d4b84aaa4a","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Rename non-exported function","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/5ce1375ddd6a320233283beb41c784d4b84aaa4a"},{"sha":"a613e23e34d9454ec6f31ea0be188b03ed11564d","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"checker: Use backend.IDSet instead of custom struct","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/a613e23e34d9454ec6f31ea0be188b03ed11564d"},{"sha":"9386bfbafa8dde8dfcd9984491e9e935ee213db9","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"checker: Do not use reference in checker errors","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/9386bfbafa8dde8dfcd9984491e9e935ee213db9"},{"sha":"04b3ce00e2fd4fd20c6b99e2ed7c41b39951bd67","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Remove command 'optimize'\n\nIt was discovered that the current code may delete still-referenced\nblobs, so we'll remove the command for now.\n\nThis closes #434","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/04b3ce00e2fd4fd20c6b99e2ed7c41b39951bd67"},{"sha":"8d1a5731f3d405d3ef210b38c5b8a5923b311f54","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Remove integration test for 'optimize'","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/8d1a5731f3d405d3ef210b38c5b8a5923b311f54"},{"sha":"4dac6d45fd97732d4ef80cd0677acd966fcf5aed","author":{"email":"e46fc836cca3acec03944314d1457c2ae6c68ef3@bumpern.de","name":"Alexander Neumann"},"message":"Merge pull request #459 from restic/debug-434\n\nDebug issue #434","distinct":true,"url":"https://api.github.com/repos/jmelfi/restic/commits/4dac6d45fd97732d4ef80cd0677acd966fcf5aed"}]}