{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":3840902,"defaultBranch":"master","name":"civix","ownerLogin":"totten","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2012-03-27T06:04:40.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1336047?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1719699292.0","currentOid":""},"activityList":{"items":[{"before":"63d66b59b755e8d9e2ca22fa18c7ce91f1809488","after":"8766dc4058e0921955de8b1d032b0943f5395aa6","ref":"refs/heads/master-auto-sql","pushedAt":"2024-07-27T00:29:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"(WIP) generate:upgrader - Move to helper. Reimplement with addClass()","shortMessageHtmlLink":"(WIP) generate:upgrader - Move to helper. Reimplement with addClass()"}},{"before":"57b97c62738529e14f3958244bcf64247b9e45b3","after":"63d66b59b755e8d9e2ca22fa18c7ce91f1809488","ref":"refs/heads/master-auto-sql","pushedAt":"2024-07-27T00:06:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"(WIP) generate:upgrader - Move to helper. Reimplement with addClass()","shortMessageHtmlLink":"(WIP) generate:upgrader - Move to helper. Reimplement with addClass()"}},{"before":"e59394b6147ae161c11974cd1d8ce703dfa99d17","after":null,"ref":"refs/heads/master-cleanup-assertion","pushedAt":"2024-06-29T22:14:52.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"}},{"before":"2d0f8b45e1f238481b0952e9e12483c4ae4549b8","after":"6fc08bf4b7659b3567942ae5a4845c3a9056422b","ref":"refs/heads/master","pushedAt":"2024-06-29T22:14:49.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Merge pull request #361 from totten/master-cleanup-assertion\n\nDrop redundant assertions","shortMessageHtmlLink":"Merge pull request #361 from totten/master-cleanup-assertion"}},{"before":null,"after":"e59394b6147ae161c11974cd1d8ce703dfa99d17","ref":"refs/heads/master-cleanup-assertion","pushedAt":"2024-06-29T22:01:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Drop redundant assertions\n\nAll of these commands use the helper `assertCurrentFormat()`. Among other\nthings, that helper asserts that the extension-type is 'module'.\n\nSo these checks are redundant.","shortMessageHtmlLink":"Drop redundant assertions"}},{"before":"4931342533f690d7bdef4092a1dcb1d83e009daf","after":"57b97c62738529e14f3958244bcf64247b9e45b3","ref":"refs/heads/master-auto-sql","pushedAt":"2024-06-28T06:48:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"entity-types-php@2 - Allow usage on 5.45","shortMessageHtmlLink":"entity-types-php@2 - Allow usage on 5.45"}},{"before":"577810890480e13b91cb3788ef411bfa7259ffdb","after":"4931342533f690d7bdef4092a1dcb1d83e009daf","ref":"refs/heads/master-auto-sql","pushedAt":"2024-06-28T00:45:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"scoper.inc.php - Don't alter library files","shortMessageHtmlLink":"scoper.inc.php - Don't alter library files"}},{"before":"19c22ea63a17537da7016989276891990110f883","after":null,"ref":"refs/heads/master-glob","pushedAt":"2024-06-28T00:32:27.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"}},{"before":"9374b6bd6216fbcfebd669156f5ce2383b3f7982","after":"2d0f8b45e1f238481b0952e9e12483c4ae4549b8","ref":"refs/heads/master","pushedAt":"2024-06-28T00:32:23.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Merge pull request #360 from totten/master-glob\n\nPath::search() - Use a glob implementation that supports PHAR folders","shortMessageHtmlLink":"Merge pull request #360 from totten/master-glob"}},{"before":null,"after":"19c22ea63a17537da7016989276891990110f883","ref":"refs/heads/master-glob","pushedAt":"2024-06-27T23:59:29.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Path::search() - Use a glob implementation that supports PHAR folders","shortMessageHtmlLink":"Path::search() - Use a glob implementation that supports PHAR folders"}},{"before":"ed97d7cbc83439825548f6e7689479b6dd0456cd","after":"577810890480e13b91cb3788ef411bfa7259ffdb","ref":"refs/heads/master-auto-sql","pushedAt":"2024-06-27T23:08:01.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"IdempotentUpgradeTest - If you make an entity, then you should also make an upgrader","shortMessageHtmlLink":"IdempotentUpgradeTest - If you make an entity, then you should also m…"}},{"before":"352a2b48d589bc817a284c42bd94d8ac4829b867","after":"ed97d7cbc83439825548f6e7689479b6dd0456cd","ref":"refs/heads/master-auto-sql","pushedAt":"2024-06-27T22:10:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"IdempotentUpgradeTest - If you make an entity, then you should also make an upgrader","shortMessageHtmlLink":"IdempotentUpgradeTest - If you make an entity, then you should also m…"}},{"before":"8dc936e4f2053d2a3869af015ac9443ab76e2dcb","after":null,"ref":"refs/heads/master-test","pushedAt":"2024-06-27T22:05:13.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"}},{"before":"6f235e61039d33f3dacfd3b882dc6fc6b21291d2","after":"9374b6bd6216fbcfebd669156f5ce2383b3f7982","ref":"refs/heads/master","pushedAt":"2024-06-27T22:05:10.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Merge pull request #359 from totten/master-test\n\ntests/e2e - Isolate each call to civix. More representative of real u…","shortMessageHtmlLink":"Merge pull request #359 from totten/master-test"}},{"before":"56d043ec62c7b8da87850e68439799316f775140","after":"8dc936e4f2053d2a3869af015ac9443ab76e2dcb","ref":"refs/heads/master-test","pushedAt":"2024-06-27T21:39:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"tests/e2e - Isolate each call to civix. More representative of real usage.","shortMessageHtmlLink":"tests/e2e - Isolate each call to civix. More representative of real u…"}},{"before":null,"after":"56d043ec62c7b8da87850e68439799316f775140","ref":"refs/heads/master-test","pushedAt":"2024-06-27T21:19:03.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"tests/e2e - Isolate each call to civix. More representative of real usage.","shortMessageHtmlLink":"tests/e2e - Isolate each call to civix. More representative of real u…"}},{"before":"a5ecaad7cde99c59b0aa322214b4e46e70d23861","after":"352a2b48d589bc817a284c42bd94d8ac4829b867","ref":"refs/heads/master-auto-sql","pushedAt":"2024-06-27T08:44:00.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Replace `CRM_Core_DAO_Base` with (mostly) static alias `CRM_*_DAO_Base`\n\n* This approach defines `CRM_*_DAO_Base`.\n\n* When deployed on 5.74+, `CRM_*_DAO_Base` will be exactly the same as `CRM_Core_DAO_Base`\n In other words:\n\n class CRM_Foo_DAO_MyData extends CRM_Foo_DAO_Base {}\n class_alias('CRM_Core_DAO_Base', 'CRM_Foo_DAO_Base');\n class CRM_Core_DAO_Base extends CRM_Core_DAO {}\n\n* When deployed on <5.74, `CRM_*_DAO_Base` will use the anonymous backport\n variant from civimix. In other words:\n\n class CRM_Foo_DAO_MyData extends CRM_Foo_DAO_Base {}\n class_alias('CiviMix\\Schema\\Foo\\DAO', 'CRM_Foo_DAO_Base');\n ^^ Read anonymous class... which extends CRM_Core_DAO\n\n* In this arrangement, the anonymous DAO implementation is -only- used on\n old versions. Once you get to 5.74+, you use the local base. This should\n provide better IDE hints and simpler callstacks. You presumptively do not\n get backports of changes/improvements in the DAO base.","shortMessageHtmlLink":"Replace CRM_Core_DAO_Base with (mostly) static alias CRM_*_DAO_Base"}},{"before":"b122378469b8fe20c30e8594ffca80fdcea3701b","after":"96e6e4879742f3d3d71f56c7c741e5eb7d9df0f5","ref":"refs/heads/master-auto-sql-dynamicy","pushedAt":"2024-06-27T08:42:13.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Replace `CRM_Core_DAO_Base` with CiviMix\\Schema\\*\\DAO\n\nIn this arrangement, the anonymous DAO implementation is used on any\nenvironment.\n\nThis means that it will choose the highest available version of the DAO-base\nat the moment of loading, so it presumptively supports future backporting.\n\nHowever, there may be some micro-optimization questions in this implementation.\n\nThis variant has... OK support for IDE hints/PHPStorm. The drill-down will\ntechnically point to the wrong file (eg taking you to\n`CRM/Core/DAO/Base.php` instead of `mixin/lib/civimix-schema/src/DAO.php`).\nHowever, the autocomplete suggestions should be on-point.","shortMessageHtmlLink":"Replace CRM_Core_DAO_Base with CiviMix\\Schema\\*\\DAO"}},{"before":null,"after":"b122378469b8fe20c30e8594ffca80fdcea3701b","ref":"refs/heads/master-auto-sql-dynamicy","pushedAt":"2024-06-27T08:39:40.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Replace `CRM_Core_DAO_Base` with CiviMix\\Schema\\*\\DAO\n\nIn this arrangement, the anonymous DAO implementation is used on any\nenvironment.\n\nThis means that it will choose the highest available version of the DAO-base\nat the moment of loading, so it presumptively supports future backporting.\n\nHowever, there may be some micro-optimization questions in this implementation.\n\nThis variant has... OK support for IDE hints/PHPStorm. The drill-down will\ntechnically point to the wrong file (eg taking you to\n`CRM/Core/DAO/Base.php` instead of `mixin/lib/civimix-schema/src/DAO.php`).\nHowever, the autocomplete suggestions should be on-point.","shortMessageHtmlLink":"Replace CRM_Core_DAO_Base with CiviMix\\Schema\\*\\DAO"}},{"before":null,"after":"352a2b48d589bc817a284c42bd94d8ac4829b867","ref":"refs/heads/master-auto-sql-staticy","pushedAt":"2024-06-27T08:26:56.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Replace `CRM_Core_DAO_Base` with (mostly) static alias `CRM_*_DAO_Base`\n\n* This approach defines `CRM_*_DAO_Base`.\n\n* When deployed on 5.74+, `CRM_*_DAO_Base` will be exactly the same as `CRM_Core_DAO_Base`\n In other words:\n\n class CRM_Foo_DAO_MyData extends CRM_Foo_DAO_Base {}\n class_alias('CRM_Core_DAO_Base', 'CRM_Foo_DAO_Base');\n class CRM_Core_DAO_Base extends CRM_Core_DAO {}\n\n* When deployed on <5.74, `CRM_*_DAO_Base` will use the anonymous backport\n variant from civimix. In other words:\n\n class CRM_Foo_DAO_MyData extends CRM_Foo_DAO_Base {}\n class_alias('CiviMix\\Schema\\Foo\\DAO', 'CRM_Foo_DAO_Base');\n ^^ Read anonymous class... which extends CRM_Core_DAO\n\n* In this arrangement, the anonymous DAO implementation is -only- used on\n old versions. Once you get to 5.74+, you use the local base. This should\n provide better IDE hints and simpler callstacks. You presumptively do not\n get backports of changes/improvements in the DAO base.","shortMessageHtmlLink":"Replace CRM_Core_DAO_Base with (mostly) static alias CRM_*_DAO_Base"}},{"before":"516ed6a20e490fa66c562202c41a8d135daa5abf","after":"a5ecaad7cde99c59b0aa322214b4e46e70d23861","ref":"refs/heads/master-auto-sql","pushedAt":"2024-06-27T03:29:36.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"generate:entity - Use entity-types-php@2","shortMessageHtmlLink":"generate:entity - Use entity-types-php@2"}},{"before":"1b1754dfe878e6edefab8cbc0311ee01eb65ebdf","after":"6f235e61039d33f3dacfd3b882dc6fc6b21291d2","ref":"refs/heads/master","pushedAt":"2024-06-27T02:46:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"composer.json - Update php-array-doc","shortMessageHtmlLink":"composer.json - Update php-array-doc"}},{"before":"6d3a9944399e71b7b888879c0830a4628365b1bc","after":"516ed6a20e490fa66c562202c41a8d135daa5abf","ref":"refs/heads/master-auto-sql","pushedAt":"2024-06-27T02:21:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"AddEntityTest - Convert example FK's from XML-schema to PHP-schema","shortMessageHtmlLink":"AddEntityTest - Convert example FK's from XML-schema to PHP-schema"}},{"before":"bc5caab5699041f1c6b909a46ed9c25e28f40931","after":"1b1754dfe878e6edefab8cbc0311ee01eb65ebdf","ref":"refs/heads/master","pushedAt":"2024-06-27T00:22:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"composer.json - Update php-array-doc","shortMessageHtmlLink":"composer.json - Update php-array-doc"}},{"before":"b25afbb0ded4ab940af03b7f325a1fbde055764a","after":"6d3a9944399e71b7b888879c0830a4628365b1bc","ref":"refs/heads/master-auto-sql","pushedAt":"2024-06-26T23:48:26.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"generate:entity should provide empty DAO along with empty BAO","shortMessageHtmlLink":"generate:entity should provide empty DAO along with empty BAO"}},{"before":"23a7e41537edde1771d9dd7cef670b42e900a732","after":null,"ref":"refs/heads/master-phparray","pushedAt":"2024-06-26T22:02:00.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"}},{"before":"7febd9bc9f3e475ac4795593a1f700cb27fc8b6d","after":"bc5caab5699041f1c6b909a46ed9c25e28f40931","ref":"refs/heads/master","pushedAt":"2024-06-26T22:01:56.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"Merge pull request #358 from totten/master-phparray\n\nPhpData - Use structured document instead of regex","shortMessageHtmlLink":"Merge pull request #358 from totten/master-phparray"}},{"before":"060611a11519e05d02ac1a7b7b7a814f2cbf8ef6","after":"23a7e41537edde1771d9dd7cef670b42e900a732","ref":"refs/heads/master-phparray","pushedAt":"2024-06-26T21:41:04.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"PhpData - Use PhpArrayDocument","shortMessageHtmlLink":"PhpData - Use PhpArrayDocument"}},{"before":"b3333d49410e1e554a84dada5b417752f5af96a2","after":"060611a11519e05d02ac1a7b7b7a814f2cbf8ef6","ref":"refs/heads/master-phparray","pushedAt":"2024-06-26T19:06:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"PhpData - Use PhpArrayDocument","shortMessageHtmlLink":"PhpData - Use PhpArrayDocument"}},{"before":null,"after":"b3333d49410e1e554a84dada5b417752f5af96a2","ref":"refs/heads/master-phparray","pushedAt":"2024-06-26T11:08:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"totten","name":"Tim Otten","path":"/totten","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336047?s=80&v=4"},"commit":{"message":"PhpData - Use PhpArrayDocument","shortMessageHtmlLink":"PhpData - Use PhpArrayDocument"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEinvsOQA","startCursor":null,"endCursor":null}},"title":"Activity · totten/civix"}