{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":722998366,"defaultBranch":"main","name":"blake3.cr","ownerLogin":"ysbaddaden","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2023-11-24T12:45:39.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/47380?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1715776505.0","currentOid":""},"activityList":{"items":[{"before":"6dea59dbe4e186c94fcf6f7a9d1f7f39a70b8b8f","after":null,"ref":"refs/heads/patch-1","pushedAt":"2024-05-15T12:35:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ysbaddaden","name":"Julien Portalier","path":"/ysbaddaden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47380?s=80&v=4"}},{"before":"b5d821c676a9483250d598404d34e1bafde0e9cf","after":"6dea59dbe4e186c94fcf6f7a9d1f7f39a70b8b8f","ref":"refs/heads/patch-1","pushedAt":"2023-11-24T15:48:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ysbaddaden","name":"Julien Portalier","path":"/ysbaddaden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47380?s=80&v=4"},"commit":{"message":"Speedup .digest, .hexdigest and .base64digest class methods\n\nAllocating the hasher in HEAP memory (+ maybe the whole class and\nmethod calls) are destroying the performance of BLAKE3 so much that it\nwas slightly slower than Digest::SHA256!\n\nThis patch overrides the methods from Digest::ClassMethods to allocate\nthe hasher on the stack and directly call the C functions, so BLAKE3 is\nnow 3 to 4 times faster than Digest::SHA256.\n\nI tried to wrap the hasher into a struct, and share the implementation\nbetween the class and the class methods, but performance got destroyed\nagain (only 1.5 times faster than Digest::SHA256). I have no explanation\nfor this huge performance drop.","shortMessageHtmlLink":"Speedup .digest, .hexdigest and .base64digest class methods"}},{"before":null,"after":"f203c5e6ae71cbfbafc9c9ed442d13dc5a643b28","ref":"refs/heads/upgrade/blake3-150","pushedAt":"2023-11-24T13:11:22.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ysbaddaden","name":"Julien Portalier","path":"/ysbaddaden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47380?s=80&v=4"},"commit":{"message":"BLAKE3 1.5.0","shortMessageHtmlLink":"BLAKE3 1.5.0"}},{"before":"4639990b7f3b76b69653089af142ee6bed855e58","after":"b5d821c676a9483250d598404d34e1bafde0e9cf","ref":"refs/heads/patch-1","pushedAt":"2023-11-24T12:50:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ysbaddaden","name":"Julien Portalier","path":"/ysbaddaden","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/47380?s=80&v=4"},"commit":{"message":"Fix: Digest::Blake3 must extend Digest::ClassMethods\n\nThis allows accessing oneline methods like `.digest` or `.hexdigest` when you don't need to stream.","shortMessageHtmlLink":"Fix: Digest::Blake3 must extend Digest::ClassMethods"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAESoYtMQA","startCursor":null,"endCursor":null}},"title":"Activity ยท ysbaddaden/blake3.cr"}