{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":165943056,"defaultBranch":"master","name":"dns","ownerLogin":"cilium","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2019-01-16T00:05:18.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/21054566?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1714988629.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"fe97f442e67c910c64acc98dbb7ac037a6caf2c7","ref":"refs/heads/pr/jrajahalme/id-retry-on-collision","pushedAt":"2024-05-06T09:43:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared_client: Try new id if already in use\n\nOnly fail out if non-conflicting request id can not be found in couple of\ntries.\n\nThis works on the premise that the callers are fine with the request id\nbeing modified at this point. Current use sets a random id just prior to\nExchange call, so this premise is satisfied.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared_client: Try new id if already in use"}},{"before":"b4f3e1110ff0ac274f0d19821b72fa2d04d1ddf4","after":"5724e90d685fa02c593fd1e211bfda1d9f26ace8","ref":"refs/heads/shared-client-bump-id","pushedAt":"2024-04-30T11:22:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared_client: Clean up waiters after timeouts\n\nTell handler to delete waiters after request times out.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared_client: Clean up waiters after timeouts"}},{"before":"b993c3d9e4eb3dd31ba152d6f1b434025e81ced9","after":"b4f3e1110ff0ac274f0d19821b72fa2d04d1ddf4","ref":"refs/heads/shared-client-bump-id","pushedAt":"2024-04-30T11:15:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared_client: Clean up waiters after timeouts\n\nTell handler to delete waiters after request times out.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared_client: Clean up waiters after timeouts"}},{"before":"0171a40a6c3f80c3a9e06ff8b983aff4d5ff31bb","after":"b993c3d9e4eb3dd31ba152d6f1b434025e81ced9","ref":"refs/heads/shared-client-bump-id","pushedAt":"2024-04-29T19:01:52.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared_client: Clean up waiters after timeouts\n\nTell handler to delete waiters after request times out.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared_client: Clean up waiters after timeouts"}},{"before":"2469d2c08d78e79b1ff1e5962d96a36b0374775e","after":"0171a40a6c3f80c3a9e06ff8b983aff4d5ff31bb","ref":"refs/heads/shared-client-bump-id","pushedAt":"2024-04-29T18:56:58.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared_client: Clean up waiters after timeouts\n\nTell handler to delete waiters after request times out.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared_client: Clean up waiters after timeouts"}},{"before":"d47d0dd702a1efa47a3fdd153505b98d9868610a","after":"2469d2c08d78e79b1ff1e5962d96a36b0374775e","ref":"refs/heads/shared-client-bump-id","pushedAt":"2024-04-25T10:14:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared_client: Bump request id\n\nOnly fail out if non-conflicting request id can not be found.\n\nThis works on the premise that the callers are fine with the request id\nbeing modified at this point. Current use sets a random id just prior to\nExchange call, so this premise is satisfied.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared_client: Bump request id"}},{"before":null,"after":"d47d0dd702a1efa47a3fdd153505b98d9868610a","ref":"refs/heads/shared-client-bump-id","pushedAt":"2024-04-25T10:10:01.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared client: Fix global timeout not being respected\n\nThis fixes a bug where the shared client did not respect\n`c.Client.Timeout`, resulting in DNS requests timing out too soon.\n\nA per Go docs, `Client.Timeout` is supposed to also apply to the write\ntimeout. This is implemented in the regular client by using\n`Client.getTimeoutForRequest` to determine the actual timeout. This\ncommit adapts the shared client code to do the same.\n\nSigned-off-by: Sebastian Wicki ","shortMessageHtmlLink":"shared client: Fix global timeout not being respected"}},{"before":"4e6b438d9e058a2ae5224af9978290c91a31b172","after":"d47d0dd702a1efa47a3fdd153505b98d9868610a","ref":"refs/heads/master","pushedAt":"2024-04-16T13:41:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gandro","name":"Sebastian Wicki","path":"/gandro","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50564?s=80&v=4"},"commit":{"message":"shared client: Fix global timeout not being respected\n\nThis fixes a bug where the shared client did not respect\n`c.Client.Timeout`, resulting in DNS requests timing out too soon.\n\nA per Go docs, `Client.Timeout` is supposed to also apply to the write\ntimeout. This is implemented in the regular client by using\n`Client.getTimeoutForRequest` to determine the actual timeout. This\ncommit adapts the shared client code to do the same.\n\nSigned-off-by: Sebastian Wicki ","shortMessageHtmlLink":"shared client: Fix global timeout not being respected"}},{"before":null,"after":"ee3124a8246fcdc74b37059a7ae6c6725ab0b676","ref":"refs/heads/pr/gandro/fix-timeout-not-being-respected","pushedAt":"2024-04-16T12:59:55.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gandro","name":"Sebastian Wicki","path":"/gandro","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50564?s=80&v=4"},"commit":{"message":"shared client: Fix global timeout not being respected\n\nThis fixes a bug where the shared client did not respect\n`c.Client.Timeout`, resulting in DNS requests timing out too soon.\n\nA per Go docs, `Client.Timeout` is supposed to also apply to the write\ntimeout. This is implemented in the regular client by using\n`Client.getTimeoutForRequest` to determine the actual timeout. This\ncommit adapts the shared client code to do the same.\n\nSigned-off-by: Sebastian Wicki ","shortMessageHtmlLink":"shared client: Fix global timeout not being respected"}},{"before":"729345173dc312664bcb060f4eb4808fd66c354b","after":"4e6b438d9e058a2ae5224af9978290c91a31b172","ref":"refs/heads/master","pushedAt":"2024-04-11T20:08:13.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"aanm","name":"André Martins","path":"/aanm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5714066?s=80&v=4"},"commit":{"message":"shared client: add fail-safe mechanism for stuck requests.\n\nSigned-off-by: Marcel Zieba ","shortMessageHtmlLink":"shared client: add fail-safe mechanism for stuck requests."}},{"before":"eaf71f6affd2c7be19424d56decb932a8e4a6f2f","after":"729345173dc312664bcb060f4eb4808fd66c354b","ref":"refs/heads/master","pushedAt":"2023-11-20T14:03:56.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"Merge pull request #9 from cilium/shared-reader-error-fix\n\nshared client: Do not busy loop on errors","shortMessageHtmlLink":"Merge pull request #9 from cilium/shared-reader-error-fix"}},{"before":"b0b6f1827456c0953eb94bb7d4e903827bd8f465","after":"496cd014c318ae397cf94aff464c75e5515bd8ec","ref":"refs/heads/shared-reader-error-fix","pushedAt":"2023-11-20T14:01:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared client: Do not busy loop on errors\n\nChange the receive loop to wait for a trigger from the send loop to\nrestart receiving after errors have been received. On any error all the\ncurrent requests are canceled, so there is no point receiving before a\nnew request is sent. This prevents receiver busy-looping on sticky error\nconditions, such as i/o timeout.\n\nAlso consider io.EOF as a connection close, as the TLS/TCP connections\nare read through the io package, which returns io.EOF on graceful\nconnection close.\n\nExplicitly wait for the write timeout when sending a new request to the\nhandler, as the handler may be quitting at the same time and never\nactually handle the new request.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared client: Do not busy loop on errors"}},{"before":"496cd014c318ae397cf94aff464c75e5515bd8ec","after":"b0b6f1827456c0953eb94bb7d4e903827bd8f465","ref":"refs/heads/shared-reader-error-fix","pushedAt":"2023-11-20T11:00:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared client: Make responses channel buffered\n\nResponses channel must be buffered to remove a deadlock scenario when we\nexit and the receive loop needs to send a response right after we have\ncompleted draining.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared client: Make responses channel buffered"}},{"before":"870e2151b6db340f998d2a4d669238e647fc4b51","after":"496cd014c318ae397cf94aff464c75e5515bd8ec","ref":"refs/heads/shared-reader-error-fix","pushedAt":"2023-11-16T14:19:39.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared client: Do not busy loop on errors\n\nChange the receive loop to wait for a trigger from the send loop to\nrestart receiving after errors have been received. On any error all the\ncurrent requests are canceled, so there is no point receiving before a\nnew request is sent. This prevents receiver busy-looping on sticky error\nconditions, such as i/o timeout.\n\nAlso consider io.EOF as a connection close, as the TLS/TCP connections\nare read through the io package, which returns io.EOF on graceful\nconnection close.\n\nExplicitly wait for the write timeout when sending a new request to the\nhandler, as the handler may be quitting at the same time and never\nactually handle the new request.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared client: Do not busy loop on errors"}},{"before":"1c316c7f2b4b2485b696b01e3b4ad800fb503c6d","after":"870e2151b6db340f998d2a4d669238e647fc4b51","ref":"refs/heads/shared-reader-error-fix","pushedAt":"2023-11-16T13:47:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared client: Do not busy loop on errors\n\nChange the receive loop to wait for a trigger from the send loop to\nrestart receiving after errors have been received. On any error all the\ncurrent requests are canceled, so there is no point receiving before a\nnew request is sent. This prevents receiver busy-looping on sticky error\nconditions, such as i/o timeout.\n\nAlso consider io.EOF as a connection close, as the TLS/TCP connections\nare read through the io package, which returns io.EOF on graceful\nconnection close.\n\nExplicitly wait for the write timeout when sending a new request to the\nhandler, as the handler may be quitting at the same time and never\nactually handle the new request.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared client: Do not busy loop on errors"}},{"before":"50ce2af915e98c904c532e5be4f119811ae7cae7","after":"1c316c7f2b4b2485b696b01e3b4ad800fb503c6d","ref":"refs/heads/shared-reader-error-fix","pushedAt":"2023-11-16T10:48:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared client: Do not busy loop on errors\n\nChange the receive loop to wait for a trigger from the send loop to\nrestart receiving after errors have been received. On any error all the\ncurrent requests are canceled, so there is no point receiving before a\nnew request is sent. This prevents receiver busy-looping on sticky error\nconditions, such as i/o timeout.\n\nAlso consider io.EOF as a connection close, as the TLS/TCP connections\nare read through the io package, which returns io.EOF on graceful\nconnection close.\n\nExplicitly wait for the write timeout when sending a new request to the\nhandler, as the handler may be quitting at the same time and never\nactually handle the new request.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared client: Do not busy loop on errors"}},{"before":null,"after":"50ce2af915e98c904c532e5be4f119811ae7cae7","ref":"refs/heads/shared-reader-error-fix","pushedAt":"2023-11-16T10:15:41.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"shared client: Do not busy loop on errors\n\nChange the receive loop to wait for a trigger from the send loop to\nrestart receiving after errors have been received. On any error all the\ncurrent requests are canceled, so there is no point receiving before a\nnew request is sent. This prevents receiver busy-looping on sticky error\nconditions, such as i/o timeout.\n\nAlso consider io.EOF as a connection close, as the TLS/TCP connections\nare read through the io package, which returns io.EOF on graceful\nconnection close.\n\nExplicitly wait for the write timeout when sending a new request to the\nhandler, as the handler may be quitting at the same time and never\nactually handle the new request.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"shared client: Do not busy loop on errors"}},{"before":"6fba7e4c381bbb26c08241a4b3a8fc11f282144e","after":"eaf71f6affd2c7be19424d56decb932a8e4a6f2f","ref":"refs/heads/master","pushedAt":"2023-11-08T17:50:42.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"Merge pull request #7 from cilium/client-support-sharing\n\nclient: Add shared client support","shortMessageHtmlLink":"Merge pull request #7 from cilium/client-support-sharing"}},{"before":"8f678c93997a4a4e4da0eac921f6beac20841d24","after":"a5479533850510766896daae1d9b659e1c37894e","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-08T17:50:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add shared client support\n\nAdd SharedClient and SharedClients types to support multiple different\nrequests in flight on the same DNS client connection.\n\nSigned-off-by: Jussi Maki \nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add shared client support"}},{"before":"3d09a0a202a110e229be9251db63586ed025480a","after":"8f678c93997a4a4e4da0eac921f6beac20841d24","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-08T17:27:13.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add shared client support\n\nAdd SharedClient and SharedClients types to support multiple different\nrequests in flight on the same DNS client connection.\n\nSigned-off-by: Jussi Maki \nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add shared client support"}},{"before":"6a4a2483871170511f141dd714a4c50672e6b2c0","after":"3d09a0a202a110e229be9251db63586ed025480a","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-08T14:57:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Use goroutines instead of TryLock\n\nGet rid of TryLock by using proper Go structures.\n\nSigned-off-by: Jussi Maki \nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Use goroutines instead of TryLock"}},{"before":"c48e6b742ff442d02c17f1820342a5dd2a391a17","after":"6a4a2483871170511f141dd714a4c50672e6b2c0","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-08T13:27:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Use goroutines instead of TryLock\n\nGet rid of TryLock by using proper Go structures.\n\nSigned-off-by: Jussi Maki \nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Use goroutines instead of TryLock"}},{"before":"6ce6bc644aac52854684db33c715d0aa8b04c02d","after":"c48e6b742ff442d02c17f1820342a5dd2a391a17","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-08T13:25:29.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Use goroutines instead of TryLock\n\nGet rid of TryLock by using proper Go structures.\n\nSigned-off-by: Jussi Maki \nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Use goroutines instead of TryLock"}},{"before":"bba3eb4749544c1e32ac27bd2b400a64c33302f2","after":"6ce6bc644aac52854684db33c715d0aa8b04c02d","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-08T11:32:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add shared client support\n\nAdd SharedClient and SharedClients types to support multiple different\nrequests in flight on the same DNS client connection. Since the DNS\nClient itself is only safe for reading from one thread, we use a reader\nlock to enable requests take turns reading the responses and then pass\nthem to each other using a channel.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add shared client support"}},{"before":"24113b52d7a6d8cbd01f82d477e754978f6ea481","after":"bba3eb4749544c1e32ac27bd2b400a64c33302f2","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-08T09:34:15.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add massively concurrent test, do not deadlock\n\nAdd a massively concurrent unit test.\n\nRemove a chance for a deadlock due to full channel while the recipient is\nblocked on a lock by only ever waking up one waiter when a matching\nresponse has been received and unanswered requests remain.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add massively concurrent test, do not deadlock"}},{"before":"f72d2f9a99dacd318dbd49af5c47cee2035585a1","after":"24113b52d7a6d8cbd01f82d477e754978f6ea481","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-07T23:19:49.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add massively concurrent test, reduce contention\n\nAdd a massively concurrent unit test.\n\nReduce lock contention by only waking up one waiter when a matching\nresponse has been received and unanswered requests remain.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add massively concurrent test, reduce contention"}},{"before":"6f695456a325e2d288b59c3512b793debc312154","after":"f72d2f9a99dacd318dbd49af5c47cee2035585a1","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-07T23:12:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add massively concurrent test, reduce contention\n\nAdd a massively concurrent unit test.\n\nReduce lock contention by only waking up one waiter when a matching\nresponse has been received and unanswered requests remain.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add massively concurrent test, reduce contention"}},{"before":"42a589848da8b8d90eec67eb57cb3ea88ee5cdd4","after":"6f695456a325e2d288b59c3512b793debc312154","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-07T20:07:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add shared client support\n\nAdd SharedClient and SharedClients types.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add shared client support"}},{"before":"cd831ffc06d143a594dc23886625d810bc614311","after":"42a589848da8b8d90eec67eb57cb3ea88ee5cdd4","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-07T19:36:19.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add shared client support\n\nAdd SharedClient and SharedClients types.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add shared client support"}},{"before":"62634b562d722a8d59651b6beedf81dbf076fd56","after":"cd831ffc06d143a594dc23886625d810bc614311","ref":"refs/heads/client-support-sharing","pushedAt":"2023-11-07T18:48:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jrajahalme","name":"Jarno Rajahalme","path":"/jrajahalme","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6518235?s=80&v=4"},"commit":{"message":"client: Add shared client support\n\nAdd SharedClient and SharedClients types.\n\nSigned-off-by: Jarno Rajahalme ","shortMessageHtmlLink":"client: Add shared client support"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEQl6xhwA","startCursor":null,"endCursor":null}},"title":"Activity · cilium/dns"}