{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":183179437,"defaultBranch":"master","name":"swift-nio","ownerLogin":"yim-lee","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2019-04-24T08:04:30.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/12647725?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1707512250.0","currentOid":""},"activityList":{"items":[{"before":"53965cc3487f3417226f07b9791940c4b25be76c","after":"8a9a3b1db55572f91bbf7ad54202a4fb3aa2b8d7","ref":"refs/heads/main","pushedAt":"2024-02-19T21:02:01.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"yim-lee","name":"Yim Lee","path":"/yim-lee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12647725?s=80&v=4"},"commit":{"message":"Introduce `assumeIsolated()` methods on `EventLoop`, `EventLoopPromise` and `EventLoopFuture` (#2657)\n\n* Introduce `assumeIsolated()` methods on `EventLoop`, `EventLoopPromise` and `EventLoopFuture`\r\n\r\n> All methods/types are currently `internal` so we don't have to bikeshed just yet but we can move forward to get `NIOCore` warning free under strict concurrency\r\n\r\n# Motivation\r\n\r\nMethods on the above types are often called from the same event loop; however, we cannot prove to the compiler that this is true so we had to mark many methods on those types with `@Sendable` or require the generic type to be `Sendable`. This leads to unnecessary usage of `NIOLoopBound` when instead we should just dynamically assert that we are on the event loop. @dnadoba opened a very similar PR https://github.com/apple/swift-nio/pull/2228.\r\n\r\n# Modification\r\n\r\nThis PR provides a method called `assumeIsolated()` on the three types that returns a type which re-declaration of all methods of the wrapped typed that have `Sendable` annotations. This new type is asserting at runtime that we are on the right event loop; hence, we don't need a `Sendable` value.\r\n\r\n# Result\r\n\r\nThis PR makes it easier for our adopters to avoid newly introduced `Sendable` warnings\r\n\r\n* Review","shortMessageHtmlLink":"Introduce assumeIsolated() methods on EventLoop, `EventLoopPromis…"}},{"before":"f47ffb822b29c4244e9c2c3bd79832b4bf57ae89","after":null,"ref":"refs/heads/br-offset","pushedAt":"2024-02-09T20:57:30.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"yim-lee","name":"Yim Lee","path":"/yim-lee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12647725?s=80&v=4"}},{"before":null,"after":"f47ffb822b29c4244e9c2c3bd79832b4bf57ae89","ref":"refs/heads/br-offset","pushedAt":"2024-02-08T17:15:38.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"yim-lee","name":"Yim Lee","path":"/yim-lee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12647725?s=80&v=4"},"commit":{"message":"Pass initial offset to BufferedReader.init\n\nMotivation:\nThere is a bug in `ReadableFileHandleProtocol.bufferedReader(startingAtAbsoluteOffset:capacity:)` where we are hardcoding initial offset to 0 instead of passing the actual param value.\n\nModifications:\nPass the actual param value.","shortMessageHtmlLink":"Pass initial offset to BufferedReader.init"}},{"before":"2d8e6ca36fe3e8ed74b0883f593757a45463c34d","after":"53965cc3487f3417226f07b9791940c4b25be76c","ref":"refs/heads/main","pushedAt":"2024-02-08T17:10:21.000Z","pushType":"push","commitsCount":136,"pusher":{"login":"yim-lee","name":"Yim Lee","path":"/yim-lee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12647725?s=80&v=4"},"commit":{"message":"Only compile FileSystem on some platforms (#2636)\n\nMotivation:\r\n\r\nSwiftNIO doesn't compile for visionOS because NIOFileSystem depends on\r\nSwift System which doesn't yet support visionOS.\r\n\r\nAs NIOFileSystem isn't yet stable API we can define it out on some\r\nplatforms.\r\n\r\nModifications:\r\n\r\n- Only define NIOFileSystem on macOS, iOS, tvOS, watchOS, Linux and\r\n Android.\r\n- Only include Swift System on the same platforms\r\n\r\nResult:\r\n\r\nSwiftNIO compiles on visionOS, albeit without NIOFileSystem.","shortMessageHtmlLink":"Only compile FileSystem on some platforms (apple#2636)"}},{"before":"e0cc6dd6ffa8e6a6f565938acd858b24e47902d0","after":"2d8e6ca36fe3e8ed74b0883f593757a45463c34d","ref":"refs/heads/main","pushedAt":"2023-05-15T22:55:05.032Z","pushType":"push","commitsCount":17,"pusher":{"login":"yim-lee","name":"Yim Lee","path":"/yim-lee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12647725?s=80&v=4"},"commit":{"message":"Tolerate sending data after close(mode: .output) (#2421)\n\nMotivation\r\n\r\nWe shouldn't crash on somewhat likely user error.\r\n\r\nModifications\r\n\r\nPass on writes after close(mode: .output) instead of crashing.\r\n\r\nResult\r\n\r\nUser code is more robust to weird edge cases.","shortMessageHtmlLink":"Tolerate sending data after close(mode: .output) (apple#2421)"}},{"before":"8a0352645a487457350f070c75034b19b83c47c9","after":"eae0f98baf72bebe7a719c5be1b1623c99949806","ref":"refs/heads/docker-swift59","pushedAt":"2023-04-13T09:49:21.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Lukasa","name":"Cory Benfield","path":"/Lukasa","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1382556?s=80&v=4"},"commit":{"message":"Merge branch 'main' into docker-swift59","shortMessageHtmlLink":"Merge branch 'main' into docker-swift59"}},{"before":null,"after":"8a0352645a487457350f070c75034b19b83c47c9","ref":"refs/heads/docker-swift59","pushedAt":"2023-04-12T21:13:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"yim-lee","name":"Yim Lee","path":"/yim-lee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12647725?s=80&v=4"},"commit":{"message":"Add docker-compose file for Swift 5.9","shortMessageHtmlLink":"Add docker-compose file for Swift 5.9"}},{"before":"901e9692b91cf5dc9d168e837833961fd6dc6764","after":"e0cc6dd6ffa8e6a6f565938acd858b24e47902d0","ref":"refs/heads/main","pushedAt":"2023-04-12T21:11:39.000Z","pushType":"push","commitsCount":113,"pusher":{"login":"yim-lee","name":"Yim Lee","path":"/yim-lee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12647725?s=80&v=4"},"commit":{"message":"Throw `CancellationError` instead of returning `nil` during early cancellation. (#2401)\n\n### Motivation:\r\nFollow up PR for https://github.com/apple/swift-nio/pull/2399\r\n\r\nWe currently still return `nil` if the current `Task` is canceled before the first call to `NIOThrowingAsyncSequenceProducer.AsyncIterator.next()` but it should throw `CancellationError` too.\r\n\r\nIn addition, the generic `Failure` type turns out to be a problem. Just throwing a `CancellationError` without checking that `Failure` type is `any Swift.Error` or `CancellationError` introduced a type safety violation as we throw an unrelated type.\r\n\r\n### Modifications:\r\n\r\n- throw `CancellationError` on eager cancellation\r\n- deprecates the generic `Failure` type of `NIOThrowingAsyncSequenceProducer`. It now must always be `any Swift.Error`. For backward compatibility we will still return nil if `Failure` is not `any Swift.Error` or `CancellationError`.\r\n\r\n### Result:\r\n\r\n`CancellationError` is now correctly thrown instead of returning `nil` on eager cancelation. Generic `Failure` type is deprecated.","shortMessageHtmlLink":"Throw CancellationError instead of returning nil during early can…"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAD_wqskAA","startCursor":null,"endCursor":null}},"title":"Activity · yim-lee/swift-nio"}