{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":15426394,"defaultBranch":"3.x","name":"library","ownerLogin":"octobercms","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2013-12-24T23:02:25.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/5554805?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1714870563.0","currentOid":""},"activityList":{"items":[{"before":"1e5308bb7f4fceae8b4a1b12943e1fb5f405c727","after":"ba495f97b394d6bd03b05478b4f3b0b8c0e92034","ref":"refs/heads/3.x","pushedAt":"2024-04-25T23:37:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Adds getMultisiteKey helper to match getKey","shortMessageHtmlLink":"Adds getMultisiteKey helper to match getKey"}},{"before":"60f7f95bbafc9a210ff3db61390ad12430a6fcaa","after":"1e5308bb7f4fceae8b4a1b12943e1fb5f405c727","ref":"refs/heads/3.x","pushedAt":"2024-04-19T00:23:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Many relations will never resolve to null","shortMessageHtmlLink":"Many relations will never resolve to null"}},{"before":"804d300232912b6298f19f19fe6a91632682f771","after":"60f7f95bbafc9a210ff3db61390ad12430a6fcaa","ref":"refs/heads/3.x","pushedAt":"2024-04-16T04:45:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Enable user-based middleware\n\nThese will become available in the RainLab.User v3 coming shortly","shortMessageHtmlLink":"Enable user-based middleware"}},{"before":"d24fda657bd2d78535ef20b90f6c9977fae3d52a","after":"804d300232912b6298f19f19fe6a91632682f771","ref":"refs/heads/3.x","pushedAt":"2024-04-14T06:41:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Remove temporary file assignment after validation\n\nThis can cause problems when the relation is set to a HttpObject and validation fails, during the update, the relation is now set to something invalid for rendering. So we should unset it","shortMessageHtmlLink":"Remove temporary file assignment after validation"}},{"before":"5973b2a5e13afde882d2686d6c966c03ef6fbf4b","after":"d24fda657bd2d78535ef20b90f6c9977fae3d52a","ref":"refs/heads/3.x","pushedAt":"2024-04-14T05:58:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Fixes setting attach relation to null","shortMessageHtmlLink":"Fixes setting attach relation to null"}},{"before":"d38b8275c59ebdc8ccc1d05964c3262ec602edf1","after":"5973b2a5e13afde882d2686d6c966c03ef6fbf4b","ref":"refs/heads/3.x","pushedAt":"2024-04-12T01:26:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Docs SiteCollection","shortMessageHtmlLink":"Docs SiteCollection"}},{"before":"a9566ca160354be28a871cc9bfb230827b1391af","after":"d38b8275c59ebdc8ccc1d05964c3262ec602edf1","ref":"refs/heads/3.x","pushedAt":"2024-04-11T07:12:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Micro optimization","shortMessageHtmlLink":"Micro optimization"}},{"before":"10d8d898e6ad37034bc9fdd8dfd93baec08d9776","after":"a9566ca160354be28a871cc9bfb230827b1391af","ref":"refs/heads/3.x","pushedAt":"2024-04-11T07:08:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Retry b2a6fe69c672a45ee51926b44f647635cb63f65d","shortMessageHtmlLink":"Retry b2a6fe6"}},{"before":"069775f114c65de7545e8f545a008941b3a182ff","after":null,"ref":"refs/tags/v3.6.13","pushedAt":"2024-04-11T06:51:49.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"}},{"before":"069775f114c65de7545e8f545a008941b3a182ff","after":"10d8d898e6ad37034bc9fdd8dfd93baec08d9776","ref":"refs/heads/3.x","pushedAt":"2024-04-11T06:51:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Revert \"Update ExtendableTrait.php get_parent_class function to remove deprecation error php 8.3\"\n\nThis reverts commit b2a6fe69c672a45ee51926b44f647635cb63f65d.","shortMessageHtmlLink":"Revert \"Update ExtendableTrait.php get_parent_class function to remov…"}},{"before":"275fd24bc0ddaa0d1a18892f095de0b91fddaaf6","after":"069775f114c65de7545e8f545a008941b3a182ff","ref":"refs/heads/3.x","pushedAt":"2024-04-11T01:31:31.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Merge pull request #626 from theshado40/patch-1\n\nUpdate ExtendableTrait.php get_parent_class function to remove deprec…","shortMessageHtmlLink":"Merge pull request #626 from theshado40/patch-1"}},{"before":"8472a91b7510ce341c5e27ff9deb26e31ecf71e1","after":"275fd24bc0ddaa0d1a18892f095de0b91fddaaf6","ref":"refs/heads/3.x","pushedAt":"2024-04-10T05:50:46.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Merge branch 'develop' into 3.x","shortMessageHtmlLink":"Merge branch 'develop' into 3.x"}},{"before":"dac483d2ea7bdd7b0c09ab9113b4acf8e395719f","after":"8472a91b7510ce341c5e27ff9deb26e31ecf71e1","ref":"refs/heads/3.x","pushedAt":"2024-04-10T00:29:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"These chars are permitted in html names, but not for IDs","shortMessageHtmlLink":"These chars are permitted in html names, but not for IDs"}},{"before":"6f574f95ba2aefde6406aceda48df99484053cea","after":"0142280b48fa9866cfc6d6ca6862d7c0d3a317d2","ref":"refs/heads/develop","pushedAt":"2024-04-05T05:35:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Adds setExpandoAttributes","shortMessageHtmlLink":"Adds setExpandoAttributes"}},{"before":"dac483d2ea7bdd7b0c09ab9113b4acf8e395719f","after":"6f574f95ba2aefde6406aceda48df99484053cea","ref":"refs/heads/develop","pushedAt":"2024-04-05T03:12:01.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Adds sensible defaults to expando","shortMessageHtmlLink":"Adds sensible defaults to expando"}},{"before":"24af0ca6b33c54ac134a19317e00e198ad802d55","after":"dac483d2ea7bdd7b0c09ab9113b4acf8e395719f","ref":"refs/heads/develop","pushedAt":"2024-04-03T12:38:40.000Z","pushType":"push","commitsCount":22,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Adds deep hashing to CSS imports","shortMessageHtmlLink":"Adds deep hashing to CSS imports"}},{"before":"8d297df4c5e9119267e565f967252af0ef2dc6c9","after":"dac483d2ea7bdd7b0c09ab9113b4acf8e395719f","ref":"refs/heads/3.x","pushedAt":"2024-04-03T09:46:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Adds deep hashing to CSS imports","shortMessageHtmlLink":"Adds deep hashing to CSS imports"}},{"before":"fed6f027179643e128dc5ddf3ad89b9934b0f07c","after":"8d297df4c5e9119267e565f967252af0ef2dc6c9","ref":"refs/heads/3.x","pushedAt":"2024-04-02T00:39:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Fixes query string on default file name","shortMessageHtmlLink":"Fixes query string on default file name"}},{"before":"0f77e235c141b689ca8d0ae8058bed652eb605c3","after":"fed6f027179643e128dc5ddf3ad89b9934b0f07c","ref":"refs/heads/3.x","pushedAt":"2024-04-02T00:21:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Exposes `except` option for multisite replication","shortMessageHtmlLink":"Exposes except option for multisite replication"}},{"before":"81d825b064df262af4820159ce44d885ce88dc6a","after":"0f77e235c141b689ca8d0ae8058bed652eb605c3","ref":"refs/heads/3.x","pushedAt":"2024-03-27T01:02:14.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Fixes bug in hasmanythrough defined constraints","shortMessageHtmlLink":"Fixes bug in hasmanythrough defined constraints"}},{"before":"94c0c34ce5703d5df80a44ea6a33ef99657a4d6d","after":"81d825b064df262af4820159ce44d885ce88dc6a","ref":"refs/heads/3.x","pushedAt":"2024-03-15T06:06:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Leaving morphToMany as untested for now","shortMessageHtmlLink":"Leaving morphToMany as untested for now"}},{"before":"9e46fede5eb9ffaff16ada2d96a9ce813e67fd58","after":"94c0c34ce5703d5df80a44ea6a33ef99657a4d6d","ref":"refs/heads/3.x","pushedAt":"2024-03-15T05:54:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"morphToMany is observed to use relatedKey when propagatable","shortMessageHtmlLink":"morphToMany is observed to use relatedKey when propagatable"}},{"before":"84bf79822318c208dab86a5299e2f9404b8a7af6","after":"9e46fede5eb9ffaff16ada2d96a9ce813e67fd58","ref":"refs/heads/3.x","pushedAt":"2024-03-15T04:04:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"daftspunk","name":"daft","path":"/daftspunk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1392869?s=80&v=4"},"commit":{"message":"Widen multisite relation scope","shortMessageHtmlLink":"Widen multisite relation scope"}},{"before":"ea3fa78d570e83abb330c206bc0eb56d8fa54b57","after":"84bf79822318c208dab86a5299e2f9404b8a7af6","ref":"refs/heads/3.x","pushedAt":"2024-03-07T20:26:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Allow forcing validation via the public property","shortMessageHtmlLink":"Allow forcing validation via the public property"}},{"before":"f3902acf2cbb87ea023a2e6b64fc5f094f3c1095","after":"ea3fa78d570e83abb330c206bc0eb56d8fa54b57","ref":"refs/heads/3.x","pushedAt":"2024-03-06T21:08:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Adds missing method\n\nFixes https://github.com/octobercms/october/issues/5790","shortMessageHtmlLink":"Adds missing method"}},{"before":"67bea34bcfebe093d42735b3cecd30d044efef58","after":"f3902acf2cbb87ea023a2e6b64fc5f094f3c1095","ref":"refs/heads/3.x","pushedAt":"2024-03-06T03:02:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Update PHP test version targets","shortMessageHtmlLink":"Update PHP test version targets"}},{"before":"845e5d1a187048da533e3f33c44e537ed486c22d","after":"67bea34bcfebe093d42735b3cecd30d044efef58","ref":"refs/heads/3.x","pushedAt":"2024-03-05T00:49:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Swap to the better Laravel `allRelatedIds` parent logic\n\nThis is needed since the previous query used with multisite would return duplicate keys, eg: [1,2,2,2,2,2] since it joined in shared relations (scopes and other constraints were not applied to this query). This would cause integrity violations in the database when saving the duplicates. We looked at adding the following additional constraint:\n\n```php\nprotected function applyMultisiteConstraint()\n{\n $model = $this->related;\n if (\n $model &&\n $model->isClassInstanceOf(\\October\\Contracts\\Database\\MultisiteInterface::class) &&\n $model->isMultisiteEnabled() &&\n !Site::hasGlobalContext()\n ) {\n $this->where($model->getQualifiedSiteIdColumn(), Site::getSiteIdFromContext());\n }\n}\n```\n\nHowever, this is getting too complicated now. The Laravel query just hits the join table and we researched why deferred binding was needed in the first place...\n\n- 58f1b1c6ab741d45b17aa63589aff81cf572948c: Added deferred binding to simple value lookup since it was needed for validation\n\n- 1828fbb39debb3336e8e92e7a540cc80edf08fa9: Removed the use of simple value in validation for nested attribute validation\n\n- b0329f2a68bdf5c601a3facb49da578bccc77180: Added deferred binding to the validation lookup itself\n\nYet the unused logic still remains. Internally, we can use the much simpler logic found in Laravel instead. Externally, the equivalent functionality is found with a `withDeferred()->pluck('id')->all()` call.","shortMessageHtmlLink":"Swap to the better Laravel allRelatedIds parent logic"}},{"before":"be22a4f4832f165174fcf1870dbbfb29437c27f3","after":"845e5d1a187048da533e3f33c44e537ed486c22d","ref":"refs/heads/3.x","pushedAt":"2024-03-01T08:34:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Skip validation for propagation","shortMessageHtmlLink":"Skip validation for propagation"}},{"before":"5610592ac392d9d79e4451d6d9aa6c2fa6be6db3","after":"be22a4f4832f165174fcf1870dbbfb29437c27f3","ref":"refs/heads/3.x","pushedAt":"2024-03-01T03:37:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Fixes missing icon","shortMessageHtmlLink":"Fixes missing icon"}},{"before":"1e23041a41186b6d60606111676dc59c1e660889","after":"5610592ac392d9d79e4451d6d9aa6c2fa6be6db3","ref":"refs/heads/3.x","pushedAt":"2024-02-29T02:28:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"samgeorges","name":"Sam Georges","path":"/samgeorges","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4927493?s=80&v=4"},"commit":{"message":"Adds --design option to create:Controller","shortMessageHtmlLink":"Adds --design option to create:Controller"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEOqpuAQA","startCursor":null,"endCursor":null}},"title":"Activity · octobercms/library"}