{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":161592209,"defaultBranch":"main","name":"RediStack","ownerLogin":"swift-server","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-12-13T06:10:14.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/21047421?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1702380143.0","currentOid":""},"activityList":{"items":[{"before":"622ce440f90d79b58e45f3a3efdd64c51d1dfd17","after":"c8f217fb811bc0e9d01ca7423a39d817ba54fba0","ref":"refs/heads/main","pushedAt":"2024-02-07T11:33:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Add CI for Swift 5.10 (#103)","shortMessageHtmlLink":"Add CI for Swift 5.10 (#103)"}},{"before":"996b843bc10b183f648dac2f1d0c14713e18592e","after":"4f6ae6f0d158ed78e66dabd8b1b4412d8309e26f","ref":"refs/heads/feature/jo/resp-benchmarker","pushedAt":"2023-12-16T10:55:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Joannis","name":"Joannis Orlandos","path":"/Joannis","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1951674?s=80&v=4"},"commit":{"message":"Add benchmarks based on ordo-one's package-benchmark","shortMessageHtmlLink":"Add benchmarks based on ordo-one's package-benchmark"}},{"before":"a476f69cbbe31de5ba040309630d365d13c687f8","after":"622ce440f90d79b58e45f3a3efdd64c51d1dfd17","ref":"refs/heads/main","pushedAt":"2023-12-11T16:24:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Joannis","name":"Joannis Orlandos","path":"/Joannis","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1951674?s=80&v=4"},"commit":{"message":"fix AsyncStream polyfill swift<5.9 (#101)","shortMessageHtmlLink":"fix AsyncStream polyfill swift<5.9 (#101)"}},{"before":null,"after":"6205f04c9b28371c837dcff28b049269adfc97fd","ref":"refs/heads/fb-availability","pushedAt":"2023-12-05T10:32:04.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"FranzBusch","name":"Franz Busch","path":"/FranzBusch","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3491887?s=80&v=4"},"commit":{"message":"Add availability to SwiftPolyfill.swift\n\n# Motivation\r\n\r\nWe are missing an availability annotation on the `AsyncStream` extension that we have written to polyfill with older Swift versions.","shortMessageHtmlLink":"Add availability to SwiftPolyfill.swift"}},{"before":"5a81dd73c96439cc164f780014641f5d4690fcd5","after":"a476f69cbbe31de5ba040309630d365d13c687f8","ref":"refs/heads/main","pushedAt":"2023-11-15T10:26:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Add missing availibility flags (#99)","shortMessageHtmlLink":"Add missing availibility flags (#99)"}},{"before":"4cd8a49da27983a8f990162eb1cc7493bf437d1b","after":"5a81dd73c96439cc164f780014641f5d4690fcd5","ref":"refs/heads/main","pushedAt":"2023-11-15T09:55:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Improve error messages (#97)","shortMessageHtmlLink":"Improve error messages (#97)"}},{"before":"e243c4e26e9e1232be0c21fddb2c04af27c0fa55","after":"4cd8a49da27983a8f990162eb1cc7493bf437d1b","ref":"refs/heads/main","pushedAt":"2023-11-15T09:27:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Remove jazzy from docker images (#98)","shortMessageHtmlLink":"Remove jazzy from docker images (#98)"}},{"before":"334cf92cac91e43b1fbbec4e676e51d0b3ae3622","after":"996b843bc10b183f648dac2f1d0c14713e18592e","ref":"refs/heads/feature/jo/resp-benchmarker","pushedAt":"2023-10-22T20:25:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Joannis","name":"Joannis Orlandos","path":"/Joannis","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1951674?s=80&v=4"},"commit":{"message":"Fix the unit tests","shortMessageHtmlLink":"Fix the unit tests"}},{"before":"55313eaa7ff33f1eb43c3f11cc24685d65a246a3","after":"334cf92cac91e43b1fbbec4e676e51d0b3ae3622","ref":"refs/heads/feature/jo/resp-benchmarker","pushedAt":"2023-10-21T22:49:16.000Z","pushType":"push","commitsCount":13,"pusher":{"login":"Joannis","name":"Joannis Orlandos","path":"/Joannis","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1951674?s=80&v=4"},"commit":{"message":"Merge branch 'main' into feature/jo/resp-benchmarker","shortMessageHtmlLink":"Merge branch 'main' into feature/jo/resp-benchmarker"}},{"before":"f417395b9fcfde080402a74c494c0f2dc6eed03f","after":"55313eaa7ff33f1eb43c3f11cc24685d65a246a3","ref":"refs/heads/feature/jo/resp-benchmarker","pushedAt":"2023-10-21T22:48:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Joannis","name":"Joannis Orlandos","path":"/Joannis","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1951674?s=80&v=4"},"commit":{"message":"Add a variant of RESP3Token that does not do validation, while providing errors when unwrapping the value","shortMessageHtmlLink":"Add a variant of RESP3Token that does not do validation, while provid…"}},{"before":"e45a21ad06ef0500313f786b43058566bea4d77e","after":null,"ref":"refs/heads/0xTim-patch-1","pushedAt":"2023-10-07T08:06:14.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"}},{"before":"10c8c6b813dd5bdb7bbee878601f86565d625f59","after":"e243c4e26e9e1232be0c21fddb2c04af27c0fa55","ref":"refs/heads/main","pushedAt":"2023-10-06T10:35:52.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"0xTim","name":"Tim Condon","path":"/0xTim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9938337?s=80&v=4"},"commit":{"message":"Update README.md (#95)\n\nMaster branch is no more, rename to main","shortMessageHtmlLink":"Update README.md (#95)"}},{"before":null,"after":"e45a21ad06ef0500313f786b43058566bea4d77e","ref":"refs/heads/0xTim-patch-1","pushedAt":"2023-10-05T22:43:46.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"0xTim","name":"Tim Condon","path":"/0xTim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9938337?s=80&v=4"},"commit":{"message":"Update README.md\n\nMaster branch is no more, rename to main","shortMessageHtmlLink":"Update README.md"}},{"before":"f837e2929f6370f7d1ad12bfad44c4290afdee19","after":"10c8c6b813dd5bdb7bbee878601f86565d625f59","ref":"refs/heads/main","pushedAt":"2023-09-20T20:29:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Add `RedisClusterShardDescriptionProtocol` (#93)","shortMessageHtmlLink":"Add RedisClusterShardDescriptionProtocol (#93)"}},{"before":"1b69101da17f298891ac7506c9b54a2d334775c5","after":"f837e2929f6370f7d1ad12bfad44c4290afdee19","ref":"refs/heads/main","pushedAt":"2023-09-19T19:16:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Add DiscardingTaskGroup and Stream polyfills for cluster support (#94)","shortMessageHtmlLink":"Add DiscardingTaskGroup and Stream polyfills for cluster support (#94)"}},{"before":"41b77775e1e31d20e759e868b9040fc0b6f71745","after":"1b69101da17f298891ac7506c9b54a2d334775c5","ref":"refs/heads/main","pushedAt":"2023-09-19T13:29:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Add `RedisClusterNodeDescription` and `RedisClusterNodeID` (#92)","shortMessageHtmlLink":"Add RedisClusterNodeDescription and RedisClusterNodeID (#92)"}},{"before":"9118427c1cc0e865410ae032695aa730bf562c2f","after":"41b77775e1e31d20e759e868b9040fc0b6f71745","ref":"refs/heads/main","pushedAt":"2023-09-18T07:54:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Add RedisHashSlot (#91)","shortMessageHtmlLink":"Add RedisHashSlot (#91)"}},{"before":"e9b4bbb10d29056f89d1cd298c4ece69905e7bd1","after":null,"ref":"refs/heads/feature/jo/found-available-connection-trace-log","pushedAt":"2023-09-15T08:44:21.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"}},{"before":"26299c05712a712c71e066553ae1a83b5206c1f8","after":"9118427c1cc0e865410ae032695aa730bf562c2f","ref":"refs/heads/main","pushedAt":"2023-09-15T08:44:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Change the 'debug' log statement when a connection is grabbed from a connectionpool to 'trace' (#88)","shortMessageHtmlLink":"Change the 'debug' log statement when a connection is grabbed from a …"}},{"before":"32225f9ca22836cb5f8ee243cded550103bf077e","after":"e9b4bbb10d29056f89d1cd298c4ece69905e7bd1","ref":"refs/heads/feature/jo/found-available-connection-trace-log","pushedAt":"2023-09-14T16:03:03.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Merge branch 'main' into feature/jo/found-available-connection-trace-log","shortMessageHtmlLink":"Merge branch 'main' into feature/jo/found-available-connection-trace-log"}},{"before":"44d075548c031809d536e98b8f94db5b9a09cc9b","after":null,"ref":"refs/heads/docs/jo/eventloop","pushedAt":"2023-09-14T16:02:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"}},{"before":"30a43b019569625d2d9972c4fe89e06dbdc09e64","after":"26299c05712a712c71e066553ae1a83b5206c1f8","ref":"refs/heads/main","pushedAt":"2023-09-14T16:02:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Readme: Clarify how to obtain an EventLoop (#89)\n\nFixes a dead link to the EventLoop docs, and add a default way to obtain an EventLoop using NIOSingletons.","shortMessageHtmlLink":"Readme: Clarify how to obtain an EventLoop (#89)"}},{"before":null,"after":"44d075548c031809d536e98b8f94db5b9a09cc9b","ref":"refs/heads/docs/jo/eventloop","pushedAt":"2023-09-03T20:53:31.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Joannis","name":"Joannis Orlandos","path":"/Joannis","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1951674?s=80&v=4"},"commit":{"message":"Clarify how to obtain an EventLoop\n\nFixes a dead link to the EventLoop docs, and add a default way to obtain an EventLoop using NIOSingletons","shortMessageHtmlLink":"Clarify how to obtain an EventLoop"}},{"before":null,"after":"32225f9ca22836cb5f8ee243cded550103bf077e","ref":"refs/heads/feature/jo/found-available-connection-trace-log","pushedAt":"2023-08-07T10:47:47.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Joannis","name":"Joannis Orlandos","path":"/Joannis","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1951674?s=80&v=4"},"commit":{"message":"Change the 'debug' log statement when a connection is grabbed from a connectionpool to 'trace'","shortMessageHtmlLink":"Change the 'debug' log statement when a connection is grabbed from a …"}},{"before":"2d626c89d011f31ddee3e70b4b307b4ab97ebe2b","after":"30a43b019569625d2d9972c4fe89e06dbdc09e64","ref":"refs/heads/main","pushedAt":"2023-08-04T14:06:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Close connection pool even if some connections are leased/in creation (#86)\n\nCurrently closing a pool, that has leased connections or currently creates connections fails. Such a close attempt brings the pool in an unrecoverable closing state and may lead to crashes. This patch changes the pool shutdown behavior to allow closing the pool even if the pool is not a predefined state.","shortMessageHtmlLink":"Close connection pool even if some connections are leased/in creation ("}},{"before":"99cd4a464236b10e32ac7919f2f9beaaf903a18c","after":"2d626c89d011f31ddee3e70b4b307b4ab97ebe2b","ref":"refs/heads/main","pushedAt":"2023-08-04T09:54:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Cherry pick GitLab 187: Graceful connection close without sending QUIT command (#85)\n\nCherry pick: https://gitlab.com/swift-server-community/RediStack/-/merge_requests/187\r\n\r\n> Note: Clients should not use this command. Instead, clients should simply close the connection when they're not used anymore. Terminating a connection on the client side is preferable, as it eliminates TIME_WAIT lingering sockets on the server side.\r\n\r\nhttps://redis.io/commands/quit/","shortMessageHtmlLink":"Cherry pick GitLab 187: Graceful connection close without sending QUI…"}},{"before":"43ea6af8623cb4b93c41719a3cbf9af6439d8b10","after":"99cd4a464236b10e32ac7919f2f9beaaf903a18c","ref":"refs/heads/main","pushedAt":"2023-08-03T11:02:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Mark `RedisConnectionPool` as final (#83)","shortMessageHtmlLink":"Mark RedisConnectionPool as final (#83)"}},{"before":"5c8a78885ec9bf439517b1a0f23c193582d355e3","after":"43ea6af8623cb4b93c41719a3cbf9af6439d8b10","ref":"refs/heads/main","pushedAt":"2023-07-08T12:58:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Make `RedisConnection.Configuration.defaultPort` thread safe (#81)\n\n`RedisConnection.Configuration.defaultPort` is currently unprotected shared mutable state. To ensure thread safety this patch adds an atomic to back this property. Since setting the `defaultPort` doesn't make much sense for adopters, we deprecate the setter. Lastly we mark `RedisConnection.Configuration` as `Sendable`.","shortMessageHtmlLink":"Make RedisConnection.Configuration.defaultPort thread safe (#81)"}},{"before":"97dc6dd15e96731ab40b36748c0f5c1609c27a62","after":"5c8a78885ec9bf439517b1a0f23c193582d355e3","ref":"refs/heads/main","pushedAt":"2023-07-08T08:16:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"fabianfett","name":"Fabian Fett","path":"/fabianfett","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6780861?s=80&v=4"},"commit":{"message":"Add release.yml for better generated release notes (#80)","shortMessageHtmlLink":"Add release.yml for better generated release notes (#80)"}},{"before":"5e50e7a2686a8cf381b24f5d5adb890e8adb9d84","after":"f417395b9fcfde080402a74c494c0f2dc6eed03f","ref":"refs/heads/feature/jo/resp-benchmarker","pushedAt":"2023-07-07T14:05:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Joannis","name":"Joannis Orlandos","path":"/Joannis","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1951674?s=80&v=4"},"commit":{"message":"Remove RediStackPerformanceTester from the package's products","shortMessageHtmlLink":"Remove RediStackPerformanceTester from the package's products"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAD9FwoHgA","startCursor":null,"endCursor":null}},"title":"Activity · swift-server/RediStack"}