{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":68841963,"defaultBranch":"main","name":"grpc-swift","ownerLogin":"grpc","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2016-09-21T17:35:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/7802525?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726772873.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"20269e0c4c8258c31b36025d71096df0e2721830","ref":"refs/heads/release/1.x","pushedAt":"2024-09-19T19:07:53.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Standardise some naming (#2063)\n\nMotivation:\r\n\r\nIn v2 we've predominantly used 'max' instead of 'maximum' and 'config'\r\ninstead of 'configuration'. We should apply these consistently.\r\n\r\nModifications:\r\n\r\n- Replaces occurrences of 'maximum' with 'max', and 'configuration' with\r\n'config'.\r\n\r\nResult:\r\n\r\nMore consistent naming","shortMessageHtmlLink":"Standardise some naming (#2063)"}},{"before":"7789f1ef69c5b714a7fb22707e78548e35745cb9","after":"20269e0c4c8258c31b36025d71096df0e2721830","ref":"refs/heads/main","pushedAt":"2024-09-19T16:01:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Standardise some naming (#2063)\n\nMotivation:\r\n\r\nIn v2 we've predominantly used 'max' instead of 'maximum' and 'config'\r\ninstead of 'configuration'. We should apply these consistently.\r\n\r\nModifications:\r\n\r\n- Replaces occurrences of 'maximum' with 'max', and 'configuration' with\r\n'config'.\r\n\r\nResult:\r\n\r\nMore consistent naming","shortMessageHtmlLink":"Standardise some naming (#2063)"}},{"before":"78da46d6182e81c2a6742db40acc1fcd3ed6ba85","after":"7789f1ef69c5b714a7fb22707e78548e35745cb9","ref":"refs/heads/main","pushedAt":"2024-09-19T15:24:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Propagate context to server RPC handlers (#2059)\n\nMotivation:\r\n\r\nThe interceptors API has a context which, at the moment, only includes\r\nthe name of the RPC. This information is generally useful so should be\r\npropagated to the server handler too. Information on the context can\r\nalso be extended later to include things like the identity of the remote\r\npeer, or info about the state of the RPC.\r\n\r\nModifications:\r\n\r\n- Rename 'ServerInterceptorContext' to 'ServerContext'\r\n- Make the transport the source of the context and have that provide it\r\n to the 'listen' method. Propagate this through the server stack to the\r\n generated stubs.\r\n- Update code generator to include the context\r\n- Update generated code\r\n- Update services\r\n\r\nResults:\r\n\r\nRPC handlers have a context provided by a transport","shortMessageHtmlLink":"Propagate context to server RPC handlers (#2059)"}},{"before":"07123ed731671e800ab8d641006613612e954746","after":"78da46d6182e81c2a6742db40acc1fcd3ed6ba85","ref":"refs/heads/main","pushedAt":"2024-09-18T14:21:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Raise minimum Swift version to 5.9 (#2064)\n\nMotivation:\r\n\r\nWe support the last three released versions of Swift. Now that Swift 6.0\r\nhas been released that's 6.0, 5.10, and 5.9. We no longer need to\r\nsupport Swift 5.8.\r\n\r\nModifications:\r\n\r\n- Update CI\r\n- Update docs\r\n- Remove swift-testing package dependency for Swift 6 as it's now\r\nincluded in the toolchain\r\n\r\nResult:\r\n\r\nSwift 5.8 is no longer supported","shortMessageHtmlLink":"Raise minimum Swift version to 5.9 (#2064)"}},{"before":"971b53e4de9f40547574c9c3c0f0ec5d7dc6b881","after":"07123ed731671e800ab8d641006613612e954746","ref":"refs/heads/main","pushedAt":"2024-09-18T14:04:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Adopt swift-testing for MethodConfig tests (#2055)\n\nMotivation:\r\n\r\nswift-testing has a number of advantages over XCTest (parameterisation,\r\norganisation, failure messages etc.), we should start using it instead\r\nof XCTest.\r\n\r\nModifications:\r\n\r\n- Convert the MethodConfig coding tests\r\n- Fixed a couple of bugs found by additional testing\r\n\r\nResults:\r\n\r\nFewer bugs, better tests","shortMessageHtmlLink":"Adopt swift-testing for MethodConfig tests (#2055)"}},{"before":"573d430cc985312fd65d2a54b21ab083f8f7fb50","after":"971b53e4de9f40547574c9c3c0f0ec5d7dc6b881","ref":"refs/heads/main","pushedAt":"2024-09-18T12:03:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Rename client interceptor context (#2061)\n\nMotivation:\r\n\r\nThe `ServerInterceptorContext` was renamed to `ServerContext`. The same\r\nshould be done for the client.\r\n\r\nModifications:\r\n\r\n- Rename `ClientInterceptorContext` to `ClientContext`\r\n\r\nResult:\r\n\r\nMore consistent naming","shortMessageHtmlLink":"Rename client interceptor context (#2061)"}},{"before":"f3380d217ebd7f5a939115736bcc19fe1752fee9","after":"573d430cc985312fd65d2a54b21ab083f8f7fb50","ref":"refs/heads/main","pushedAt":"2024-09-18T11:55:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Bump version number to 1.23.1 (#2062)\n\nMotivation:\r\n\r\nWe plan on tagging a release soon.\r\n\r\nModifications:\r\n\r\n- Bump the version to 1.23.1\r\n\r\nResult:\r\n\r\nThe version in the default user-agent string will match the released\r\nversion.","shortMessageHtmlLink":"Bump version number to 1.23.1 (#2062)"}},{"before":"c51784ed350eba463cbe6dc1606264ca69ec8a84","after":"f3380d217ebd7f5a939115736bcc19fe1752fee9","ref":"refs/heads/main","pushedAt":"2024-09-16T16:08:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Factor out shared http2 server transport code (#2058)\n\nMotivation:\r\n\r\nThe NIOPosix and NIOTS HTTP/2 server transports have quite a lot of\r\nshared code. The only meaningfull difference between them is how they\r\ncreate their channels.\r\n\r\nModification:\r\n\r\n- Factor out the shared parts to a `CommonHTTP2ServerTransport`\r\n- Allow each tranport to inject a factory for creating a listener\r\n\r\nResult:\r\n\r\nLess duplication","shortMessageHtmlLink":"Factor out shared http2 server transport code (#2058)"}},{"before":"b036fb7c7f0a1faea61eb33520549f0dc475eb7a","after":"c51784ed350eba463cbe6dc1606264ca69ec8a84","ref":"refs/heads/main","pushedAt":"2024-09-11T14:50:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Adopt swift-testing for Timeout tests (#2051)\n\nMotivation:\r\n\r\nswift-testing has a number of advantages over XCTest (parameterisation,\r\norganisation, failure messages etc.), we should start using it instead\r\nof XCTest.\r\n\r\nModifications:\r\n\r\n- Convert the Timeout tests\r\n\r\nResults:\r\n\r\nBetter tests","shortMessageHtmlLink":"Adopt swift-testing for Timeout tests (#2051)"}},{"before":"a98b0f327eccad2076585b9d45befe6aff4b948a","after":"b036fb7c7f0a1faea61eb33520549f0dc475eb7a","ref":"refs/heads/main","pushedAt":"2024-09-11T14:38:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gjcairo","name":"Gus Cairo","path":"/gjcairo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5359423?s=80&v=4"},"commit":{"message":"Add `NIOTransportServices` H2 client transport (#2054)\n\nAdd a `NIOTransportServices` H2 client transport to gRPC v2.","shortMessageHtmlLink":"Add NIOTransportServices H2 client transport (#2054)"}},{"before":"cd019f66f9a2dc3c2f35e67b7be6748eaca16bbe","after":"a98b0f327eccad2076585b9d45befe6aff4b948a","ref":"refs/heads/main","pushedAt":"2024-09-11T09:48:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Update plugin bundling script (#2053)\n\nMotivation:\r\n\r\nThe plugin bundling script which is used when we do a release doesn't\r\nupdate the dependencies so will just use whatever version is currently\r\nresolved. This means protobuf might not be up-to-date and an older\r\nversion of `protoc-gen-swift` might get build.\r\n\r\nModifications:\r\n\r\n- Run package update before building\r\n\r\nResult:\r\n\r\nThe bundled `protoc-gen-swift` should be up-to-date","shortMessageHtmlLink":"Update plugin bundling script (#2053)"}},{"before":"40f316eeace7011bab5ba237b04bfb13e1c4c470","after":"cd019f66f9a2dc3c2f35e67b7be6748eaca16bbe","ref":"refs/heads/main","pushedAt":"2024-09-10T09:57:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Enable Swift 6 language mode in GRPCCore (#2046)\n\nMotivation:\r\n\r\nv2 should use Swift 6 language mode to take full advantage of the\r\ncompilers data race checking.\r\n\r\nModifications:\r\n\r\n- Enable Swift 6 language more for the code module\r\n- Add a bunch of missing explicit 'Sendable's\r\n\r\nResult:\r\n\r\n- Compiles with Swift 6 lang mode","shortMessageHtmlLink":"Enable Swift 6 language mode in GRPCCore (#2046)"}},{"before":"f8184b871593f86d19124f5675922481b2da3824","after":"40f316eeace7011bab5ba237b04bfb13e1c4c470","ref":"refs/heads/main","pushedAt":"2024-09-09T16:26:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Adopt swift-testing for metadata tests (#2050)\n\nMotivation:\r\n\r\nswift-testing has a number of advantages over XCTest (parameterisation,\r\norganisation, failure messages etc.), we should start using it instead\r\nof XCTest.\r\n\r\nModifications:\r\n\r\n- Convert the Metadata tests\r\n\r\nResults:\r\n\r\nBetter tests","shortMessageHtmlLink":"Adopt swift-testing for metadata tests (#2050)"}},{"before":"62b7f850a6698f10d4f67d418b752243d8141649","after":"f8184b871593f86d19124f5675922481b2da3824","ref":"refs/heads/main","pushedAt":"2024-09-09T16:05:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Add support for TLS on H2 NIOTS server transport (#2040)\n\n## Motivation\r\nWe currently have a NIOTS server transport implementation in gRPC v2,\r\nbut it doesn't support TLS.\r\n\r\n## Modifications\r\nThis PR adds support for TLS in the NIOTS-backed HTTP/2 implementation\r\nof the server transport for gRPC v2.\r\nIt also adds support for ALPN, to validate that the negotiated protocol,\r\nif required, is HTTP2 or `grpc-exp`. If it's not, an error will be\r\nfired/the channel will be closed, since we don't support H1.\r\n\r\n## Result\r\nWe now support TLS/ALPN when using the NIOTS server transport in gRPC\r\nV2.","shortMessageHtmlLink":"Add support for TLS on H2 NIOTS server transport (#2040)"}},{"before":"17b2054451d61c52f4d87e40e5507a149237fdbe","after":"62b7f850a6698f10d4f67d418b752243d8141649","ref":"refs/heads/main","pushedAt":"2024-09-09T13:44:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Add TLS support for NIOPosix H2 client (#2036)\n\n## Motivation\r\nWe currently have a `NIOPosix` client transport implementation in gRPC\r\nv2, but it doesn't support TLS.\r\n\r\n## Modifications\r\nThis PR adds support for TLS in the NIOPosix-backed HTTP/2\r\nimplementation of the client transport for gRPC v2.\r\n\r\n## Result\r\nWe now support TLS when using the NIOPosix client transport in gRPC V2.","shortMessageHtmlLink":"Add TLS support for NIOPosix H2 client (#2036)"}},{"before":"d3ef09d71e75c8260f9dcc9a1180dd625b057f75","after":"17b2054451d61c52f4d87e40e5507a149237fdbe","ref":"refs/heads/main","pushedAt":"2024-09-09T12:04:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Adopt swift-testing for status tests (#2049)\n\nMotivation:\r\n\r\nswift-testing has a number of advantages over XCTest (parameterisation,\r\norganisation, failure messages etc.), we should start using it instead\r\nof XCTest.\r\n\r\nModifications:\r\n\r\n- Convert the Status tests\r\n- Add a dependency on swift-testing on Linux (this can be removed when\r\nit's included as part of the toolchain)\r\n\r\nResults:\r\n\r\nBetter tests","shortMessageHtmlLink":"Adopt swift-testing for status tests (#2049)"}},{"before":"1b060a32100d125a31e554d38c78b5b556fc1784","after":"d3ef09d71e75c8260f9dcc9a1180dd625b057f75","ref":"refs/heads/main","pushedAt":"2024-09-09T11:22:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gjcairo","name":"Gus Cairo","path":"/gjcairo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5359423?s=80&v=4"},"commit":{"message":"Default `UseAccessLevelOnImports` to `false` (#2047)\n\n## Motivation\r\n\r\nAfter the discussion on\r\nhttps://github.com/grpc/grpc-swift/pull/2042#discussion_r1746796122, I\r\nplayed a bit more with `InternalImportsByDefault` and the different\r\ngenerator options, got to the following conclusions:\r\n\r\n- If you add `import Foo` to some file, where `Foo` is also being\r\nimported with an explicit `internal` access-level modifier _in the\r\ngenerated code_, it will work as long as `InternalImportsByDefault` is\r\nenabled.\r\n- If you disable `InternalImportsByDefault` for the corresponding target\r\nin `Package.swift`, you get an `\"Ambiguous implicit access level for\r\nimport of 'Foo'; it is imported as 'internal' elsewhere\"` **error** (not\r\na warning). This means that if the code generator plugin(s) begin adding\r\nthe access level modifiers by default based on how they're built, they\r\ncould cause source-breakages for users unintentionally.\r\n- _This isn't any different between language mode 5 or 6_ - I tried\r\nchanging the target's language mode and the behaviour is the same as\r\ndescribed above in either case.\r\n\r\nGiven all this, defaulting `UseAccessLevelOnImports` to `false`\r\n**always** for now may be the easiest (and least surprising, from a\r\nusers' perspective) thing to do, until `InternalImportsByDefault` are\r\nenabled by default in a future Swift >6.0 version (as the proposal\r\nstates), where we can default to `true` again:\r\n```\r\n#if compiler(>=6.x) // where x is the version where internal imports by default is enabled\r\n// default to true\r\n#else\r\n// default to false\r\n#endif\r\n```\r\n\r\nThe rationale behind this is that adding access levels to imports on\r\nyour code is currently totally optional. If you choose to start adding\r\nthem explicitly, then it's okay to also have to tell your\r\ntooling/generators that they should also add them explicitly. If you\r\ndon't, they'll keep generating things the exact same way they've been\r\ndoing it, which is what users of the generator would expect.\r\n\r\n## Modifications\r\n- Default `UseAccessLevelOnImports` to `false` always.\r\n- Regenerate protos\r\n- Remove `InternalImportsByDefault` from test and executable targets,\r\nsince it doesn't make a lot of sense to have access level modifiers on\r\nimports here anyways as these targets cannot be imported.","shortMessageHtmlLink":"Default UseAccessLevelOnImports to false (#2047)"}},{"before":"d4d1a2ef1daec8ffe3093033e4ac6d1dffa44269","after":"1b060a32100d125a31e554d38c78b5b556fc1784","ref":"refs/heads/main","pushedAt":"2024-09-06T10:57:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Enable `InternalImportsByDefault` in remaining modules (#2042)\n\nThis PR enables `InternalImportsByDefault` on `GRPCHealth` and\r\n`InteroperabilityTests`.\r\nIt also regenerates the protos with the latest version of swift-protobuf\r\n(v1.28.1), and increases its min version to 1.28.1 to make sure that we\r\ndon't get build failures when using earlier generators.","shortMessageHtmlLink":"Enable InternalImportsByDefault in remaining modules (#2042)"}},{"before":"6f396ca3aed37ecb4f9c7b4d6fbb0b98df883860","after":"d4d1a2ef1daec8ffe3093033e4ac6d1dffa44269","ref":"refs/heads/main","pushedAt":"2024-09-05T13:44:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Make 'finish()' 'async' (#2044)\n\nMotivation:\r\n\r\nFinishing writes should be `async` as the underlying writer may need to\r\nflush and write out any buffered data.\r\n\r\nModifications:\r\n\r\n- Mark `finish()` as `async`\r\n- Refactor the in-proc client transport slightly to avoid async calls\r\nwhile holding a lock\r\n\r\nResult:\r\n\r\n`finish` is `async`","shortMessageHtmlLink":"Make 'finish()' 'async' (#2044)"}},{"before":"0a6b49f4e93ab5461d9d1697644bb0273fcb95da","after":"6f396ca3aed37ecb4f9c7b4d6fbb0b98df883860","ref":"refs/heads/main","pushedAt":"2024-09-05T13:31:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Use SwiftProtobuf's new CodeGenerator interface (#2043)\n\nMotivation:\r\n\r\nSwiftProtobuf 1.27.0 added a new `CodeGenerator` interface in 1.27.0 and\r\ndeprecated the old API. This didn't include (non-deprecated) access to\r\nthe source proto which is required for reflection data, however, this\r\nwas added in 1.28.0.\r\n\r\nModification:\r\n\r\n- Rename `options.swift` to `Options.swift`\r\n- Rewrite `main` as `GenerateGRPC`, the functionality is unchanged but\r\ndid require a bit of code shuffling. As part of this some global methods\r\nbecame private methods on the new `GenerateGRPC` `struct`.\r\n- Add support for protobuf editions.\r\n\r\nResult:\r\n\r\n- Fewer warnings\r\n- Can use protobuf editions","shortMessageHtmlLink":"Use SwiftProtobuf's new CodeGenerator interface (#2043)"}},{"before":"3be62d5ac7e4a9f1f43edd5774c947c3d30ceb93","after":"0a6b49f4e93ab5461d9d1697644bb0273fcb95da","ref":"refs/heads/main","pushedAt":"2024-09-05T12:34:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Remove swift-atomics from v2 (#2041)\n\nMotivation:\r\n\r\nSwift 6 includes built-in support for atomics in the Synchronization\r\nmodule. Currently we depend on the swift-atomics package which is no\r\nlonger necessary.\r\n\r\nModifications:\r\n\r\nRemove usages of swift-atomics from v2\r\n\r\nResult:\r\n\r\nFewer dependencies","shortMessageHtmlLink":"Remove swift-atomics from v2 (#2041)"}},{"before":"a06ade33b22b51ac1137bfb10f69fd9582983bd7","after":"3be62d5ac7e4a9f1f43edd5774c947c3d30ceb93","ref":"refs/heads/main","pushedAt":"2024-09-05T12:16:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Stop using deprecated protobuf API (#2045)\n\nMotivation:\r\n\r\nswift-protobuf 1.27.0 deprecated the `init` from `serializedData` in\r\nfavor of the `serializedBytes` variant.\r\n\r\nModifications:\r\n\r\n- Stop using `serializedData`\r\n\r\nResult:\r\n\r\nFewer warnings","shortMessageHtmlLink":"Stop using deprecated protobuf API (#2045)"}},{"before":"63168d007b52d8d5d7493af3f5feb4cf8cb7c801","after":"a06ade33b22b51ac1137bfb10f69fd9582983bd7","ref":"refs/heads/main","pushedAt":"2024-09-04T09:08:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Improve the names of a few commonly used APIs (#2014)\n\nMotivation:\r\n\r\nNaming is important; it should be clear and concise.\r\n\r\nModifications:\r\n\r\nThe follow renames all offer more precise names:\r\n- Rename `server.run()` to `server.serve()`\r\n- Rename `server.stopListening()` to `server.beginGracefulShutdown()`\r\n- Rename `client.close()` to `client.beginGracefulShutdown()`\r\n\r\nResult:\r\n\r\nClearer APIs","shortMessageHtmlLink":"Improve the names of a few commonly used APIs (#2014)"}},{"before":"493dbefc0a39d3e7c8cbeba474de3eb404d5ebc1","after":"63168d007b52d8d5d7493af3f5feb4cf8cb7c801","ref":"refs/heads/main","pushedAt":"2024-09-02T14:55:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Add the route-guide example for v2 (#2028)\n\nMotivation:\r\n\r\nExamples help illustrate how to use gRPC. The route guide example\r\nis also the base for one of the \"standard\" gRPC tutorials.\r\n\r\nModifications:\r\n\r\n- Add a route-guide example for v2\r\n\r\nResult:\r\n\r\nMore examples.","shortMessageHtmlLink":"Add the route-guide example for v2 (#2028)"}},{"before":"c450c1a78a5d648b2dfb0e7750020f50677b1bab","after":"493dbefc0a39d3e7c8cbeba474de3eb404d5ebc1","ref":"refs/heads/main","pushedAt":"2024-09-02T14:28:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Adopt `Mutex` where possible (#2026)\n\nMotivation:\r\n\r\nSwift 6 has a `Mutex` which we can use in place of `LockedValueBox` or\r\n`NIOLockedValueBox` in a bunch of places.\r\n\r\nModifications:\r\n\r\n- Use `Mutex` where possible\r\n- This causes a number of other changes too as `Mutex` doesn't allocate:\r\nthe allocations move to the type holding it instead. This makes sense as\r\nthe objects which were previously structs didn't have value semantics.\r\n\r\nResult:\r\n\r\nFewer uses of our own lock, no uses of NIOs lock","shortMessageHtmlLink":"Adopt Mutex where possible (#2026)"}},{"before":"d13926b0225defef5b38d4054bfac3167398ada8","after":"c450c1a78a5d648b2dfb0e7750020f50677b1bab","ref":"refs/heads/main","pushedAt":"2024-09-02T14:15:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gjcairo","name":"Gus Cairo","path":"/gjcairo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5359423?s=80&v=4"},"commit":{"message":"Remove 'BufferedStream' (#2018)\n\nMotivation:\r\n\r\nWe use buffered stream in a couple of places which don't require\r\nbackpressure.\r\n\r\nModifications:\r\n\r\n- Replace occurrences with `AsyncStream`\r\n\r\nResult:\r\n\r\nLess code to maintain\r\n\r\n---------\r\n\r\nCo-authored-by: Gus Cairo ","shortMessageHtmlLink":"Remove 'BufferedStream' (#2018)"}},{"before":"3713967b74a76c97fbb25b219c6bc68c75725c28","after":"d13926b0225defef5b38d4054bfac3167398ada8","ref":"refs/heads/main","pushedAt":"2024-09-02T12:21:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Improve error message for missing reflection data (#2038)\n\nMotivation:\r\n\r\nThe message for missing reflection data isn't very helpful as it doesn't\r\nindicate what reflection data is missing.\r\n\r\nModifications:\r\n\r\n- Improve the error message\r\n- Add note about well-known-types\r\n\r\nResult:\r\n\r\nClearer error message","shortMessageHtmlLink":"Improve error message for missing reflection data (#2038)"}},{"before":"962608aafa25000371b1129f1e4bf1d6204dc924","after":"3713967b74a76c97fbb25b219c6bc68c75725c28","ref":"refs/heads/main","pushedAt":"2024-09-02T12:08:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"},"commit":{"message":"Regenerate protos (#2039)\n\nswift-protobuf 1.28.1 includes generated code changes, our. CI fails\r\nwithout regenerating.","shortMessageHtmlLink":"Regenerate protos (#2039)"}},{"before":"397dcf7ba97d4f17d5589c398454264a392ed1cd","after":"962608aafa25000371b1129f1e4bf1d6204dc924","ref":"refs/heads/main","pushedAt":"2024-08-27T15:35:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gjcairo","name":"Gus Cairo","path":"/gjcairo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5359423?s=80&v=4"},"commit":{"message":"Regenerate protos after swift-protobuf update to 1.28.0 (#2035)\n\n`swift-protobuf` [released\r\n1.28.0](https://github.com/apple/swift-protobuf/releases/tag/1.28.0)\r\nyesterday, and it changed the headers in the generated files to disable\r\n`swiftlint` (see https://github.com/apple/swift-protobuf/pull/1627).\r\nThis means that our CI is now failing the sanity step when it checks the\r\ngenerated files match the expected output of the `generate.sh` script.\r\n\r\nThis PR regenerates the protos with swift-protobuf 1.28.0 to include the\r\nupdated headers.","shortMessageHtmlLink":"Regenerate protos after swift-protobuf update to 1.28.0 (#2035)"}},{"before":"31b20015edcc86aad5b385c3cb71dc30c61f2b5a","after":null,"ref":"refs/heads/glbrntt-patch-3","pushedAt":"2024-08-26T08:33:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"glbrntt","name":"George Barnett","path":"/glbrntt","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047671?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEuzrzowA","startCursor":null,"endCursor":null}},"title":"Activity ยท grpc/grpc-swift"}