{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":685701175,"defaultBranch":"main","name":"swift-memberwise-init-macro","ownerLogin":"gohanlon","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-08-31T20:11:44.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/3375?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1721162338.0","currentOid":""},"activityList":{"items":[{"before":"18704a3597968cccc6ced4c4cc2396edf77e308f","after":"222e635d6acb0a9ca265d7c0b29f00c4fd08a0a5","ref":"refs/heads/main","pushedAt":"2024-07-16T20:28:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Run swift-format","shortMessageHtmlLink":"Run swift-format"}},{"before":"80a8c815394d6b1d24aba525f2c5aa270c9748a6","after":"18704a3597968cccc6ced4c4cc2396edf77e308f","ref":"refs/heads/main","pushedAt":"2024-07-16T20:28:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Prepare README for 0.5.0 release\n\n- Add quick reference and feature sections about the new `@_UncheckedMemberwiseInit` macro.","shortMessageHtmlLink":"Prepare README for 0.5.0 release"}},{"before":"738245b1d4eecc1e8819a80d7a0c900c8701f4b3","after":"1cebd0e59ae64836dc4168045fe0f666d1dbe99a","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-16T20:22:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Prepare README for 0.5.0 release\n\n- Add quick reference and feature sections about the new `@_UncheckedMemberwiseInit` macro.","shortMessageHtmlLink":"Prepare README for 0.5.0 release"}},{"before":"03f16b265fc5e0f5dd5911d4f75b4746609a8180","after":"738245b1d4eecc1e8819a80d7a0c900c8701f4b3","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-16T20:17:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Prepare README for 0.5.0 release","shortMessageHtmlLink":"Prepare README for 0.5.0 release"}},{"before":"3d4e8fb4d808c23b96c8816338e8bda485b3e899","after":"03f16b265fc5e0f5dd5911d4f75b4746609a8180","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-16T20:13:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"503f84f0c83636dc0b8ccc13608ff07386c68812","after":"3d4e8fb4d808c23b96c8816338e8bda485b3e899","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-16T20:12:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"3444c00d95cb0e719eb44242c77e9ab6b0941728","after":"503f84f0c83636dc0b8ccc13608ff07386c68812","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-16T20:03:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"af4f78bac8a8bd829ab131313574401e1f51110c","after":"3444c00d95cb0e719eb44242c77e9ab6b0941728","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-16T19:52:31.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"b15e01575fedca14a69eacf57ab859ebdba4b80a","after":"80a8c815394d6b1d24aba525f2c5aa270c9748a6","ref":"refs/heads/main","pushedAt":"2024-07-16T19:44:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Update `github/apple` org to `swiftlang`","shortMessageHtmlLink":"Update github/apple org to swiftlang"}},{"before":"f7df3279ccc7b141330bf9898e2b8e8c418af474","after":"af4f78bac8a8bd829ab131313574401e1f51110c","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-16T19:36:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"5a2121b24851edc6a1b5f5a1e26b8c7f465a7f06","after":"f7df3279ccc7b141330bf9898e2b8e8c418af474","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-15T23:46:14.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":null,"after":"5a2121b24851edc6a1b5f5a1e26b8c7f465a7f06","ref":"refs/heads/readme-0.5.0","pushedAt":"2024-07-15T23:31:54.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"1edc42e6c7fe00769fe2b8ed158eb07998a052eb","after":"b15e01575fedca14a69eacf57ab859ebdba4b80a","ref":"refs/heads/main","pushedAt":"2024-07-15T23:15:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Add `@_UncheckedMemberwiseInit` macro (#36)\n\nIntroduce a new experimental macro for generating memberwise\ninitializers with reduced safety checks compared to `@MemberwiseInit`.\n\nFeatures of `@_UncheckedMemberwiseInit`:\n- Include all properties in the initializer, regardless of access level\n- Include attributed properties by default (differs from\n `@MemberwiseInit`)\n- Allow exposure of lower access level members without per-member\n annotation\n- Has the same usage as `@MemberwiseInit`\n\n`@_UncheckedMemberwiseInit` provides a trade-off between ease of use and\ncompile-time safety, suitable for scenarios where brevity is preferred\nover strict access control enforcement. Note that the underscore prefix\nindicates this is an experimental feature.\n\nExample:\n\n```swift\n@_UnsafeMemberwiseInit(.public)\npublic struct ViewModel {\n private let title: String\n}\n```\n\nYields:\n\n```swift\n public init(title: String) {\n self.title = title\n }\n```","shortMessageHtmlLink":"Add @_UncheckedMemberwiseInit macro (#36)"}},{"before":"8f41219f1f93edad30264e2940b39328e13dce22","after":"90321dcb97c9bd5621a04626ec0112ebda7b4730","ref":"refs/heads/unchecked-memberwise-init","pushedAt":"2024-07-15T21:47:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Add `@_UncheckedMemberwiseInit` macro (#36)\n\nIntroduce a new experimental macro for generating memberwise\ninitializers with reduced safety checks compared to `@MemberwiseInit`.\n\nFeatures of `@_UncheckedMemberwiseInit`:\n- Include all properties in the initializer, regardless of access level\n- Include attributed properties by default (differs from\n `@MemberwiseInit`)\n- Allow exposure of lower access level members without per-member\n annotation\n- Has the same usage as `@MemberwiseInit`\n\n`@_UncheckedMemberwiseInit` provides a trade-off between ease of use and\ncompile-time safety, suitable for scenarios where brevity is preferred\nover strict access control enforcement. Note that the underscore prefix\nindicates this is an experimental feature.\n\nExample:\n\n```swift\n@_UnsafeMemberwiseInit(.public)\npublic struct ViewModel {\n private let title: String\n}\n```\n\nYields:\n\n```swift\n public init(title: String) {\n self.title = title\n }\n```","shortMessageHtmlLink":"Add @_UncheckedMemberwiseInit macro (#36)"}},{"before":"f6fc281fcabdbf9b04b079d80c549e2a8c4e261e","after":"8f41219f1f93edad30264e2940b39328e13dce22","ref":"refs/heads/unchecked-memberwise-init","pushedAt":"2024-07-14T02:33:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Add `@_UncheckedMemberwiseInit` macro (#36)\n\nA new experimental macro for generating memberwise initializers without\nthe safety checks present in the standard `MemberwiseInit` macro. It\nsimplifies usage by allowing exposure of lower access level members in\ninitializers without per-member annotation, at the cost of losing some\ncompile-time checks.","shortMessageHtmlLink":"Add @_UncheckedMemberwiseInit macro (#36)"}},{"before":"07c2c5032b603ae4ef8e485af323ff0461b7e0f4","after":"f6fc281fcabdbf9b04b079d80c549e2a8c4e261e","ref":"refs/heads/unchecked-memberwise-init","pushedAt":"2024-07-14T02:14:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Add `@_UncheckedMemberwiseInit` macro (#36)\n\nA new experimental macro for generating memberwise initializers without\nthe safety checks present in the standard `MemberwiseInit` macro. It\nsimplifies usage by allowing exposure of lower access level members in\ninitializers without per-member annotation, at the cost of losing some\ncompile-time checks.","shortMessageHtmlLink":"Add @_UncheckedMemberwiseInit macro (#36)"}},{"before":"fe62f6fd4f14d46a884097e8f75c91d7abf9a9fa","after":"07c2c5032b603ae4ef8e485af323ff0461b7e0f4","ref":"refs/heads/unchecked-memberwise-init","pushedAt":"2024-07-14T01:39:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Add `@_UncheckedMemberwiseInit` macro (#36)\n\nA new experimental macro for generating memberwise initializers without\nthe safety checks present in the standard `MemberwiseInit` macro. It\nsimplifies usage by allowing exposure of lower access level members in\ninitializers without per-member annotation, at the cost of losing some\ncompile-time checks.","shortMessageHtmlLink":"Add @_UncheckedMemberwiseInit macro (#36)"}},{"before":null,"after":"fe62f6fd4f14d46a884097e8f75c91d7abf9a9fa","ref":"refs/heads/unchecked-memberwise-init","pushedAt":"2024-07-14T01:36:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Add `@_UncheckedMemberwiseInit` macro (#36)\n\nA new experimental macro for generating memberwise initializers without\nthe safety checks present in the standard `MemberwiseInit` macro. It\nsimplifies usage by allowing exposure of lower access level members in\ninitializers without per-member annotation, at the cost of losing some\ncompile-time checks.","shortMessageHtmlLink":"Add @_UncheckedMemberwiseInit macro (#36)"}},{"before":"5440c343eb5f855a1970c2f10ffb50b8719cdf4c","after":"0bc9b7a40219d13614b73c50baf8d13b303e4e07","ref":"refs/heads/swift-6","pushedAt":"2024-07-12T18:46:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip\n\n- Run on macOS 14 instead of 13\n- Revert `Package.resolved` `version` from 3 back to 2 so that we can\n still test on pre-Swift 6 toolchains, and create a separate\n `Package@swift-6.swift` for Swift 6.","shortMessageHtmlLink":"wip"}},{"before":"a2d6de73d8f697c01f13469739662747e877ab8b","after":"1edc42e6c7fe00769fe2b8ed158eb07998a052eb","ref":"refs/heads/main","pushedAt":"2024-07-12T18:05:13.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Add AttributeRemover600 and conditional usage\n\n- AttributeRemover600 is vendored from SwiftSyntax\n- Conditionally use AttributeRemover600 or AttributeRemover509","shortMessageHtmlLink":"Add AttributeRemover600 and conditional usage"}},{"before":"398e1b05761a73f61f17c27cef2575d5d4052f0b","after":"8dee94c4b628bef28412d425aab48a3fb6056439","ref":"refs/heads/swift-syntax-600","pushedAt":"2024-07-12T05:58:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Add AttributeRemover600 and conditional usage\n\n- AttributeRemover600 is vendored from SwiftSyntax\n- Conditionally use AttributeRemover600 or AttributeRemover509","shortMessageHtmlLink":"Add AttributeRemover600 and conditional usage"}},{"before":"25baaaf11e5fae984f89006673d5036f0d69aa63","after":"398e1b05761a73f61f17c27cef2575d5d4052f0b","ref":"refs/heads/swift-syntax-600","pushedAt":"2024-07-12T01:41:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Update MacroTesting example tests\n\n- Incorporate ObservableMacro and related tests\n- Add DefaultFatalErrorImplementationMacro and tests\n- Introduce SwiftTestingTests to test Swift Testing, Swift's new native\n testing framework\n- Update existing macro examples for compatibility","shortMessageHtmlLink":"Update MacroTesting example tests"}},{"before":"df638c5449d089ea8eb1a1e74061b51103322b37","after":"25baaaf11e5fae984f89006673d5036f0d69aa63","ref":"refs/heads/swift-syntax-600","pushedAt":"2024-07-12T00:25:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":null,"after":"df638c5449d089ea8eb1a1e74061b51103322b37","ref":"refs/heads/swift-syntax-600","pushedAt":"2024-07-11T03:36:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"63327d2f2eea7a6e88512a400ff9b8e358d05289","after":"a2d6de73d8f697c01f13469739662747e877ab8b","ref":"refs/heads/main","pushedAt":"2024-07-10T21:47:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Beta support for Swift Testing\n\n- Support swift-snapshot-testing from 1.17.1\n- Aligns vendored fork of swift-macro-testing with upstream 0.5.0\n- Add support for SnapshotTesting's `Record` configuration\n- Replace `isRecording` with `record` parameter in public API\n- Refactor `assertMacro` to use `withSnapshotTesting`\n- Update error handling to use `recordIssue` instead of `XCTFail`\n- Update CI workflow to set SNAPSHOT_TESTING_RECORD environment variable\n- Bump swift-snapshot-testing and swift-syntax dependencies","shortMessageHtmlLink":"Beta support for Swift Testing"}},{"before":"9bc1ae337fff2862500874c2d48f1ba71c7f2d8f","after":null,"ref":"refs/heads/swift-snapshot-testing-1.17.1","pushedAt":"2024-07-10T21:08:06.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"}},{"before":null,"after":"c6dad29633fdb5b40961c4f38c96d01b0c6eb041","ref":"refs/heads/beta-swift-testing","pushedAt":"2024-07-10T21:04:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"Beta support for Swift Testing\n\n- Support swift-snapshot-testing from 1.17.1\n- Aligns vendored fork of swift-macro-testing with upstream 0.5.0\n- Add support for SnapshotTesting's `Record` configuration\n- Replace `isRecording` with `record` parameter in public API\n- Refactor `assertMacro` to use `withSnapshotTesting`\n- Update error handling to use `recordIssue` instead of `XCTFail`\n- Update CI workflow to set SNAPSHOT_TESTING_RECORD environment variable\n- Bump swift-snapshot-testing and swift-syntax dependencies","shortMessageHtmlLink":"Beta support for Swift Testing"}},{"before":"dbae376197db452298facf166a2f35cdda247824","after":"9bc1ae337fff2862500874c2d48f1ba71c7f2d8f","ref":"refs/heads/swift-snapshot-testing-1.17.1","pushedAt":"2024-07-10T20:56:44.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"c85132bcbce9cd7ea002a43303cda0b244494b31","after":"dbae376197db452298facf166a2f35cdda247824","ref":"refs/heads/swift-snapshot-testing-1.17.1","pushedAt":"2024-07-10T20:43:31.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"dc294bee5aa4ef8462102cc4369e3da4e9b4ce91","after":"c85132bcbce9cd7ea002a43303cda0b244494b31","ref":"refs/heads/swift-snapshot-testing-1.17.1","pushedAt":"2024-07-10T01:35:27.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gohanlon","name":"Galen O’Hanlon","path":"/gohanlon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3375?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0xNlQyMDoyODo1Ni4wMDAwMDBazwAAAASBLXA6","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0xNlQyMDoyODo1Ni4wMDAwMDBazwAAAASBLXA6","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0xMFQwMTozNToyNy4wMDAwMDBazwAAAAR7PGZs"}},"title":"Activity · gohanlon/swift-memberwise-init-macro"}