{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":635435302,"defaultBranch":"main","name":"swift-nio","ownerLogin":"dkz2","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2023-05-02T17:30:30.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/132388278?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1703520542.0","currentOid":""},"activityList":{"items":[{"before":"4c77ef01844a6551c3de441fd0a12174566673af","after":"635b2589494c97e48c62514bc8b37ced762e0a62","ref":"refs/heads/main","pushedAt":"2024-01-22T15:53:13.000Z","pushType":"push","commitsCount":13,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"no confstr on Android (#2627)","shortMessageHtmlLink":"no confstr on Android (apple#2627)"}},{"before":"ee340f15dcbeef609e94eb27796be2893ca058ef","after":"1e9b0108af4eb86807f964aa73d3de632ccce917","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2024-01-21T02:24:23.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"update branch","shortMessageHtmlLink":"update branch"}},{"before":"635b2589494c97e48c62514bc8b37ced762e0a62","after":"4c77ef01844a6551c3de441fd0a12174566673af","ref":"refs/heads/main","pushedAt":"2024-01-21T02:22:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Fix building tests on Swift 5.9.2 Linux (#2610)","shortMessageHtmlLink":"Fix building tests on Swift 5.9.2 Linux (apple#2610)"}},{"before":"826fce4fdbe458f3b8c30b1e2e7b4f24a37d2806","after":"635b2589494c97e48c62514bc8b37ced762e0a62","ref":"refs/heads/main","pushedAt":"2024-01-21T02:21:14.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"no confstr on Android (#2627)","shortMessageHtmlLink":"no confstr on Android (apple#2627)"}},{"before":"57266e928c717bbe34dff6994a5a998097ba3f57","after":"ee340f15dcbeef609e94eb27796be2893ca058ef","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2024-01-13T02:43:00.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Merge branch 'main' of https://github.com/dkz2/swift-nio into fix-sandbox-bind-error","shortMessageHtmlLink":"Merge branch 'main' of https://github.com/dkz2/swift-nio into fix-san…"}},{"before":"0c648c91c691a51fbd2f29eb3f8342d4b974e983","after":"826fce4fdbe458f3b8c30b1e2e7b4f24a37d2806","ref":"refs/heads/main","pushedAt":"2024-01-13T02:42:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Fix `NIOAsyncChannel` allocation benchmarks (#2622)\n\n# Motivation\r\nWe had to disable the benchmarks since they regressed without us noticing and they appear to be flaky.\r\n\r\n# Modification\r\nThis PR fixes the allocation regression and tries to re-enable them.","shortMessageHtmlLink":"Fix NIOAsyncChannel allocation benchmarks (apple#2622)"}},{"before":"6d777bf167a8ed87f476be61141c58fee4f35e69","after":"57266e928c717bbe34dff6994a5a998097ba3f57","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2024-01-13T02:34:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"removed unneeded file","shortMessageHtmlLink":"removed unneeded file"}},{"before":"5f1d8c4e63d702b93a36e618ffa6f77d00b441da","after":"6d777bf167a8ed87f476be61141c58fee4f35e69","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2024-01-13T02:32:49.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Merge branch 'fix-sandbox-bind-error' of https://github.com/dkz2/swift-nio into fix-sandbox-bind-error","shortMessageHtmlLink":"Merge branch 'fix-sandbox-bind-error' of https://github.com/dkz2/swif…"}},{"before":"a4863a8d90acbf42384d7f9c5bc7d51958fdf7eb","after":"5f1d8c4e63d702b93a36e618ffa6f77d00b441da","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2024-01-11T20:09:03.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Merge branch 'apple:main' into fix-sandbox-bind-error","shortMessageHtmlLink":"Merge branch 'apple:main' into fix-sandbox-bind-error"}},{"before":"e13a5b2083fce660955369498b1b5b2c231d83db","after":"a4863a8d90acbf42384d7f9c5bc7d51958fdf7eb","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2024-01-11T19:44:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"cleanup","shortMessageHtmlLink":"cleanup"}},{"before":"4c77ef01844a6551c3de441fd0a12174566673af","after":"0c648c91c691a51fbd2f29eb3f8342d4b974e983","ref":"refs/heads/main","pushedAt":"2024-01-11T19:36:50.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Fix broken tests (#2621)\n\n* Update swift-tools-version to 5.7 in integration tests\r\n\r\n* Fix flaky test\r\n\r\n* Add missing AtomicCounter dependency in generated Package.swift\r\n\r\n* Update swift-tools-version in integration test helper Swift projects\r\n\r\n* Make test clearer\r\n\r\n* Don't run MTELG integration test on Swift 5.11+\r\n\r\nIt hasn't been properly tested","shortMessageHtmlLink":"Fix broken tests (apple#2621)"}},{"before":"7f03ce8ac1e0afb96096a1dc8074d25eefdc00d1","after":"e13a5b2083fce660955369498b1b5b2c231d83db","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2024-01-11T19:22:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"propagate bind up if it fails","shortMessageHtmlLink":"propagate bind up if it fails"}},{"before":"cd40deee1c5e32cd900d1d661fa0cd4f30659bc8","after":"7f03ce8ac1e0afb96096a1dc8074d25eefdc00d1","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2024-01-11T05:53:17.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Merge branch 'fix-sandbox-bind-error' of https://github.com/dkz2/swift-nio into fix-sandbox-bind-error","shortMessageHtmlLink":"Merge branch 'fix-sandbox-bind-error' of https://github.com/dkz2/swif…"}},{"before":"d269c1c5e27aea628191442aa638cc2b259fdf6d","after":"cd40deee1c5e32cd900d1d661fa0cd4f30659bc8","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2023-12-25T16:41:41.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Merge branch 'main' into fix-sandbox-bind-error","shortMessageHtmlLink":"Merge branch 'main' into fix-sandbox-bind-error"}},{"before":null,"after":"d269c1c5e27aea628191442aa638cc2b259fdf6d","ref":"refs/heads/fix-sandbox-bind-error","pushedAt":"2023-12-25T16:09:02.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"fixed sandbox bind error","shortMessageHtmlLink":"fixed sandbox bind error"}},{"before":"853522d90871b4b63262843196685795b5008c46","after":"4c77ef01844a6551c3de441fd0a12174566673af","ref":"refs/heads/main","pushedAt":"2023-12-21T01:47:47.000Z","pushType":"push","commitsCount":18,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Fix building tests on Swift 5.9.2 Linux (#2610)","shortMessageHtmlLink":"Fix building tests on Swift 5.9.2 Linux (apple#2610)"}},{"before":"740fc734f3266e8e374817cea0db48d2da807007","after":"853522d90871b4b63262843196685795b5008c46","ref":"refs/heads/main","pushedAt":"2023-11-06T02:21:01.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"use feature-specific guard for @retroactive (#2581)\n\nMotivation:\r\n\r\nWe should use the more granular guard for uses of @retroactive rather\r\nthan coarse swift versions to guard against corner-cases\r\n\r\nModifications:\r\n\r\nSwitch `#if compiler(>=5.11)` for `#if hasFeature(RetroactiveAttribute)`\r\n\r\nResult:\r\n\r\nNo change in most cases, more protected against corner-cases.","shortMessageHtmlLink":"use feature-specific guard for @retroactive (apple#2581)"}},{"before":"b7c122e09ee93433f834798061451f1daacf25aa","after":"740fc734f3266e8e374817cea0db48d2da807007","ref":"refs/heads/main","pushedAt":"2023-10-26T19:40:29.000Z","pushType":"push","commitsCount":10,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Fix concurrency doc APIs (#2575)\n\nOur Concurrency doc article got a bit outdated when we renamed `inboundStream` and `outboundWriter` to `inbound` and `outbound`","shortMessageHtmlLink":"Fix concurrency doc APIs (apple#2575)"}},{"before":"0fb8cb794730d5acd67701bbb5c72543c8530c1d","after":"b7c122e09ee93433f834798061451f1daacf25aa","ref":"refs/heads/main","pushedAt":"2023-10-18T15:14:41.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Fix flakiness in testDelayedUpgradeBehaviour (#2557)","shortMessageHtmlLink":"Fix flakiness in testDelayedUpgradeBehaviour (apple#2557)"}},{"before":"7954dba6de44c76e9efb7cefa02922b372ba1012","after":"0fb8cb794730d5acd67701bbb5c72543c8530c1d","ref":"refs/heads/main","pushedAt":"2023-10-17T05:07:11.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Add docs for the async NIO APIs (#2549)","shortMessageHtmlLink":"Add docs for the async NIO APIs (apple#2549)"}},{"before":"2910d6b20323ac4f9003ab51711f9bfb7e912c22","after":"7954dba6de44c76e9efb7cefa02922b372ba1012","ref":"refs/heads/main","pushedAt":"2023-10-14T00:52:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Add jitter support to recurring tasks (#2542)\n\n* Add jitter support\r\n\r\n* Add jitter support to all functions managing recurring tasks\r\n\r\n* Fix typo\r\n\r\n* Fix typos\r\n\r\n* PR fixes\r\n\r\n* Remove unnecessary `@preconcurrency` annotations.\r\n\r\n* Fix tests","shortMessageHtmlLink":"Add jitter support to recurring tasks (apple#2542)"}},{"before":"8c3cac7774668e260b7a9d9da8468d82a619829a","after":"2910d6b20323ac4f9003ab51711f9bfb7e912c22","ref":"refs/heads/main","pushedAt":"2023-10-12T19:11:43.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Call `NIOAsyncWriterSinkDelegate` outside of the lock (#2547)\n\n* Call `NIOAsyncWriterSinkDelegate` outside of the lock\r\n\r\n# Motivation\r\nThe current `NIOAsyncWriter` implementation expects that the delegate is called while holding the lock to avoid reentrancy issues. However, this prevents us from executing the delegate calls directly on the `EventLoop` if we are on it already.\r\n\r\n# Modification\r\nThis moves all of the delegate calls outside of the locks and adds protection against reentrancy into the state machine.\r\n\r\n# Result\r\nLess allocations.\r\n\r\nClarify the reentrancy problems in docs and protect against them in the writer\r\n\r\n* Code review","shortMessageHtmlLink":"Call NIOAsyncWriterSinkDelegate outside of the lock (apple#2547)"}},{"before":"e0d85543d7b9f9d9caad9d233ba465b6ad0a4db4","after":"8c3cac7774668e260b7a9d9da8468d82a619829a","ref":"refs/heads/main","pushedAt":"2023-10-11T00:14:43.000Z","pushType":"push","commitsCount":19,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"perf tests: reset BB indices after every iteration (#2544)","shortMessageHtmlLink":"perf tests: reset BB indices after every iteration (apple#2544)"}},{"before":"7d9f892d8339148e9b00b0f4722afafbecfd14e5","after":"e0d85543d7b9f9d9caad9d233ba465b6ad0a4db4","ref":"refs/heads/main","pushedAt":"2023-09-15T03:12:34.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Simplify header separator and crlf (#2513)\n\nEverywhere else in the file uses `crlf` and `headerSeperator` when writing those static strings, we shouldn't be using string literals here","shortMessageHtmlLink":"Simplify header separator and crlf (apple#2513)"}},{"before":"8c2654c9c5d9a53107b7a4827b542806833b50e3","after":"7d9f892d8339148e9b00b0f4722afafbecfd14e5","ref":"refs/heads/main","pushedAt":"2023-08-24T17:48:46.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Support users opting-out of us setting framing headers. (#2508)\n\nMotivation:\r\n\r\nRight now we always set the framing headers in HTTP requests and\r\nresponses that we send. This is a good practice for most users, but\r\nit can cause issues, most notably in responses to CONNECT requests\r\nwhich requires that we do not set framing headers.\r\n\r\nUnfortunately, in NIO's current HTTP/1.1 design it is not possible\r\nfor us to suppress these headers. This is because the HTTP encoders\r\ncome _earlier_ in the pipeline than the decoders, so the HTTP\r\nencoders do not know structurally what requests they are responding\r\nto.\r\n\r\nWhile we could merge the encoders/decoders, that's a fairly\r\nsubstantial change. A better short-term change is to offer users\r\nthe ability to turn off the NIO header manipulation feature. In\r\nthis circumstance, users take on full responsibility for\r\nappropriately framing their HTTP messages.\r\n\r\nModifications\r\n\r\n- Add config to HTTPRequestEncoder and HTTPResponseEncoder.\r\n- Plumb this config through.\r\n- Add a bunch of tests.\r\n\r\nResult\r\n\r\nUsers have way more control of HTTP/1.1 messages.","shortMessageHtmlLink":"Support users opting-out of us setting framing headers. (apple#2508)"}},{"before":"5f542894dd8efbd766d8adf73ef2f947b0cd5e21","after":"8c2654c9c5d9a53107b7a4827b542806833b50e3","ref":"refs/heads/main","pushedAt":"2023-08-13T03:12:19.000Z","pushType":"push","commitsCount":23,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"match casing of reference links to the casing of the actual referenced declaration/module (#2500)","shortMessageHtmlLink":"match casing of reference links to the casing of the actual reference…"}},{"before":"3a88bf6dc02aba6ae62e5e1470ab7d277e48a583","after":"5f542894dd8efbd766d8adf73ef2f947b0cd5e21","ref":"refs/heads/main","pushedAt":"2023-07-15T21:08:49.842Z","pushType":"push","commitsCount":2,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Add configuration for `NIOAsyncChannel` (#2464)\n\n# Motivation\r\nWhile adopting the new `NIOAsyncChannel` type we saw an exploding number of parameters passed to the various connect/bind/configure methods. All these methods had in common that we had to pass configuration for the `NIOAsyncChannel`.\r\n\r\n# Modification\r\nThis PR introduces a new type `NIOAsyncChannel.Configuration` which groups all four configuration parameters into a struct.\r\n\r\n# Result\r\nWe can now write more concise methods that use a single configuration object.","shortMessageHtmlLink":"Add configuration for NIOAsyncChannel (apple#2464)"}},{"before":"3a88bf6dc02aba6ae62e5e1470ab7d277e48a583","after":"5f542894dd8efbd766d8adf73ef2f947b0cd5e21","ref":"refs/heads/main","pushedAt":"2023-07-15T21:08:49.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Add configuration for `NIOAsyncChannel` (#2464)\n\n# Motivation\r\nWhile adopting the new `NIOAsyncChannel` type we saw an exploding number of parameters passed to the various connect/bind/configure methods. All these methods had in common that we had to pass configuration for the `NIOAsyncChannel`.\r\n\r\n# Modification\r\nThis PR introduces a new type `NIOAsyncChannel.Configuration` which groups all four configuration parameters into a struct.\r\n\r\n# Result\r\nWe can now write more concise methods that use a single configuration object.","shortMessageHtmlLink":"Add configuration for NIOAsyncChannel (apple#2464)"}},{"before":"6213ba7a06febe8fef60563a4a7d26a4085783cf","after":"3a88bf6dc02aba6ae62e5e1470ab7d277e48a583","ref":"refs/heads/main","pushedAt":"2023-07-10T11:22:44.812Z","pushType":"push","commitsCount":18,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Restructure `Package.swift` (#2462)\n\nThis might be a controversial PR! 🍿\r\n\r\n# Motivation\r\nIt always bothered me how our `Package.swift` is structured. First, we had a huge list of `targets` at the top that distracted from the `products`. The `products` are the important part for our adopters since those are the actual modules they can use. Secondly, the formatting of the targets made it hard to follow and resulted in unnecessary merge conflicts.\r\n\r\n# Modification\r\nThis PR moves the targets back to the bottom and splits all the various array elements into separate elements.\r\n\r\n# Result\r\nEasier to understand `Package.swift` and less merge conflicts.","shortMessageHtmlLink":"Restructure Package.swift (apple#2462)"}},{"before":"6213ba7a06febe8fef60563a4a7d26a4085783cf","after":"3a88bf6dc02aba6ae62e5e1470ab7d277e48a583","ref":"refs/heads/main","pushedAt":"2023-07-10T11:22:44.000Z","pushType":"push","commitsCount":18,"pusher":{"login":"dkz2","name":"DKZ ","path":"/dkz2","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/132388278?s=80&v=4"},"commit":{"message":"Restructure `Package.swift` (#2462)\n\nThis might be a controversial PR! 🍿\r\n\r\n# Motivation\r\nIt always bothered me how our `Package.swift` is structured. First, we had a huge list of `targets` at the top that distracted from the `products`. The `products` are the important part for our adopters since those are the actual modules they can use. Secondly, the formatting of the targets made it hard to follow and resulted in unnecessary merge conflicts.\r\n\r\n# Modification\r\nThis PR moves the targets back to the bottom and splits all the various array elements into separate elements.\r\n\r\n# Result\r\nEasier to understand `Package.swift` and less merge conflicts.","shortMessageHtmlLink":"Restructure Package.swift (apple#2462)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAD5gIQSwA","startCursor":null,"endCursor":null}},"title":"Activity · dkz2/swift-nio"}