{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":163541830,"defaultBranch":"master","name":"web","ownerLogin":"standardebooks","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-12-29T21:21:27.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/10159941?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726208335.0","currentOid":""},"activityList":{"items":[{"before":"c8868d0ceff05e97b94c305b9fbd4ab6bfde7010","after":"7bffbd09bd7904530c8cc8e74fc0d80771bb256d","ref":"refs/heads/master","pushedAt":"2024-09-21T23:10:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"2246becb59623d871655fbe56d830daaff8b49d8","after":"c8868d0ceff05e97b94c305b9fbd4ab6bfde7010","ref":"refs/heads/master","pushedAt":"2024-09-19T16:16:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"8b02a0ab3966c426588255a771cfd31e30329a96","after":"2246becb59623d871655fbe56d830daaff8b49d8","ref":"refs/heads/master","pushedAt":"2024-09-19T00:12:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Better support for soft credit donors from funds","shortMessageHtmlLink":"Better support for soft credit donors from funds"}},{"before":"44901cf3e2e945fc9f7de184ebd69e7dbfff7195","after":"8b02a0ab3966c426588255a771cfd31e30329a96","ref":"refs/heads/master","pushedAt":"2024-09-18T16:45:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Remove commas from payment values when processing payments","shortMessageHtmlLink":"Remove commas from payment values when processing payments"}},{"before":"99cec8e51c026b685556f19faf4082173f22c9b7","after":"10f93e64051e4677e0e0984e4bec3e916a722b1a","ref":"refs/heads/db-rewrite","pushedAt":"2024-09-17T23:52:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"colagrosso","name":"Mike Colagrosso","path":"/colagrosso","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/136965?s=80&v=4"},"commit":{"message":"Explicitly set sort order for sources, contributors, and toc entries\n\nThis is just to avoid any future undefined behavior. The current DB table implementation returns these rows in insertion order, but it might not be wise to depend on that. Either way, the result sets of these queries are small and can be sorted quickly.","shortMessageHtmlLink":"Explicitly set sort order for sources, contributors, and toc entries"}},{"before":"9c3c2b1cc9678e3155336091aeca0a617cfb61d7","after":"99cec8e51c026b685556f19faf4082173f22c9b7","ref":"refs/heads/db-rewrite","pushedAt":"2024-09-17T23:10:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"colagrosso","name":"Mike Colagrosso","path":"/colagrosso","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/136965?s=80&v=4"},"commit":{"message":"Ebook tags: Store UrlName so it can be queried","shortMessageHtmlLink":"Ebook tags: Store UrlName so it can be queried"}},{"before":"854ec6b9df0fb1c92f38e7978eb22454cfe928a3","after":"44901cf3e2e945fc9f7de184ebd69e7dbfff7195","ref":"refs/heads/master","pushedAt":"2024-09-15T18:50:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Add Db::QueryBool() and some code style updates","shortMessageHtmlLink":"Add Db::QueryBool() and some code style updates"}},{"before":"df9d5e03e39f77ef07c47ef9cb85baf9f7ae9aed","after":"854ec6b9df0fb1c92f38e7978eb22454cfe928a3","ref":"refs/heads/master","pushedAt":"2024-09-13T17:01:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update framework standards","shortMessageHtmlLink":"Update framework standards"}},{"before":"545f82a67200c9d72bc384b45aa3a22c1ac9a156","after":"df9d5e03e39f77ef07c47ef9cb85baf9f7ae9aed","ref":"refs/heads/master","pushedAt":"2024-09-13T16:19:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Add stretched words to the list of manual typogrify checks\n\nThe regex picks up a lot of words that don’t need non-breaking hyphens unfortunately, but I can’t think of anything better. Changing it to just vowels means ignoring “hm-m” or “stop-p-p”.","shortMessageHtmlLink":"Add stretched words to the list of manual typogrify checks"}},{"before":null,"after":"a0530b340d64d3dc44362e8832a57680f27c0388","ref":"refs/heads/non-breaking-hyphen-warning","pushedAt":"2024-09-13T06:18:55.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"robinwhittleton","name":"Robin Whittleton","path":"/robinwhittleton","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7414?s=80&v=4"},"commit":{"message":"Add stretched words to the list of manual typogrify checks\n\nThe regex picks up a lot of words that don’t need non-breaking hyphens unfortunately, but I can’t think of anything better. Changing it to just vowels means ignoring “hm-m” or “stop-p-p”.","shortMessageHtmlLink":"Add stretched words to the list of manual typogrify checks"}},{"before":"a44508907cc71e57286b12abb37299839f0ee849","after":"545f82a67200c9d72bc384b45aa3a22c1ac9a156","ref":"refs/heads/master","pushedAt":"2024-09-13T02:58:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Tweak wording on artwork submission page","shortMessageHtmlLink":"Tweak wording on artwork submission page"}},{"before":"36a6e3b072ec7ff76486141f2a2622286786051d","after":"a44508907cc71e57286b12abb37299839f0ee849","ref":"refs/heads/master","pushedAt":"2024-09-13T02:45:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Fix typos in error pages","shortMessageHtmlLink":"Fix typos in error pages"}},{"before":"22b884a37c583fc4b94787d2a8eb65f94b938118","after":"9c3c2b1cc9678e3155336091aeca0a617cfb61d7","ref":"refs/heads/db-rewrite","pushedAt":"2024-09-10T15:04:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Ebook tags: Store UrlName so it can be queried","shortMessageHtmlLink":"Ebook tags: Store UrlName so it can be queried"}},{"before":"6093ec3af196898f89d2cf5b297a3af007902ab9","after":"22b884a37c583fc4b94787d2a8eb65f94b938118","ref":"refs/heads/db-rewrite","pushedAt":"2024-09-10T15:04:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"FilterEbooks: Require an exact match for search","shortMessageHtmlLink":"FilterEbooks: Require an exact match for search"}},{"before":"bade3cd4e2be587a19074c54ab15c6e18225e91f","after":"36a6e3b072ec7ff76486141f2a2622286786051d","ref":"refs/heads/master","pushedAt":"2024-09-10T01:34:32.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update framework standards","shortMessageHtmlLink":"Update framework standards"}},{"before":"06e0b1dd48f22ea2e74916740f48d77a77f4e96a","after":"bade3cd4e2be587a19074c54ab15c6e18225e91f","ref":"refs/heads/master","pushedAt":"2024-09-06T21:45:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"a749bd640901d26a58bcb01b9ddec755d6c2da2b","after":"6093ec3af196898f89d2cf5b297a3af007902ab9","ref":"refs/heads/db-rewrite","pushedAt":"2024-09-05T04:57:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"colagrosso","name":"Mike Colagrosso","path":"/colagrosso","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/136965?s=80&v=4"},"commit":{"message":"Fix PHPStan errors for CollectionType enum\n\nUse the `value` property of PHP enums to get the underlying string for functions that expect a string.\n\nFollowup to #392","shortMessageHtmlLink":"Fix PHPStan errors for CollectionType enum"}},{"before":"a9eae06b3f2c223135898b2107002b00a27d9403","after":"06e0b1dd48f22ea2e74916740f48d77a77f4e96a","ref":"refs/heads/master","pushedAt":"2024-09-03T19:16:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"a406b2f19b6058fbb603a3435c31627d5abb9cda","after":"a749bd640901d26a58bcb01b9ddec755d6c2da2b","ref":"refs/heads/db-rewrite","pushedAt":"2024-09-02T04:38:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"colagrosso","name":"Mike Colagrosso","path":"/colagrosso","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/136965?s=80&v=4"},"commit":{"message":"Fix PHPStan errors for CollectionType enum\n\nUse the `value` property of PHP enums to get the underlying string for functions that expect a string.\n\nFollowup to #392","shortMessageHtmlLink":"Fix PHPStan errors for CollectionType enum"}},{"before":"09f21af1e823e6c5eea28c69ceece8d2f73bed3d","after":"a406b2f19b6058fbb603a3435c31627d5abb9cda","ref":"refs/heads/db-rewrite","pushedAt":"2024-09-02T02:21:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"colagrosso","name":"Mike Colagrosso","path":"/colagrosso","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/136965?s=80&v=4"},"commit":{"message":"Add missing comma\n\nMySQL 10.11.8 (on Ubuntu 24.04) flagged the missing comma as an error.","shortMessageHtmlLink":"Add missing comma"}},{"before":"bbe511605f71c26f2f9d57bb2e81c16a181b9670","after":"a9eae06b3f2c223135898b2107002b00a27d9403","ref":"refs/heads/master","pushedAt":"2024-08-31T16:10:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"ccca6c4991bcf7df740f829bc97a589aa1a7f46a","after":"bbe511605f71c26f2f9d57bb2e81c16a181b9670","ref":"refs/heads/master","pushedAt":"2024-08-30T02:52:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"6da499cb7c48c1d9bea91b7717d5849105213fa9","after":"ccca6c4991bcf7df740f829bc97a589aa1a7f46a","ref":"refs/heads/master","pushedAt":"2024-08-29T20:24:20.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"009909c3981633b74757c4f9e61a540adaf24ff2","after":"6da499cb7c48c1d9bea91b7717d5849105213fa9","ref":"refs/heads/master","pushedAt":"2024-08-27T01:13:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"7837b874e643f7304dc85805f6185448b685a2d1","after":"009909c3981633b74757c4f9e61a540adaf24ff2","ref":"refs/heads/master","pushedAt":"2024-08-25T00:23:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"EmmaSweeney","name":"Emma Sweeney","path":"/EmmaSweeney","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/56360562?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"623d9aa39f8e477887b668570ce3514d6b414b07","after":"09f21af1e823e6c5eea28c69ceece8d2f73bed3d","ref":"refs/heads/db-rewrite","pushedAt":"2024-08-23T21:30:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Make collection type (series, set) an enum","shortMessageHtmlLink":"Make collection type (series, set) an enum"}},{"before":"67767c5aba8de5c1dd881df6a5520d9440eb66da","after":"623d9aa39f8e477887b668570ce3514d6b414b07","ref":"refs/heads/db-rewrite","pushedAt":"2024-08-23T20:24:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"colagrosso","name":"Mike Colagrosso","path":"/colagrosso","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/136965?s=80&v=4"},"commit":{"message":"Move array definition to the function that uses it","shortMessageHtmlLink":"Move array definition to the function that uses it"}},{"before":"183bf839723f97d5e56b712de43d5cfb688e1995","after":"67767c5aba8de5c1dd881df6a5520d9440eb66da","ref":"refs/heads/db-rewrite","pushedAt":"2024-08-23T19:22:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"colagrosso","name":"Mike Colagrosso","path":"/colagrosso","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/136965?s=80&v=4"},"commit":{"message":"Add properties that were previously omitted\n\nPHP 8.3 (part of Ubuntu 24.04) outputs a deprecated warning for properties that\nwere not in the class definition. Error below. There were a few of these\nmissing from the `Ebook`, `GitCommit`, `CollectionMembership`, `EbookSource`,\nand `Contributor` classes. Adding them doesn't change any functionality, but it\ndoes make it clearer what properties a class has.\n\nSome of these properties are never set for `Ebook` instances created from the\nfilesystem, i.e., `Created` and `Updated`, and some of them need to be manually\nset to make `Ebook` instances from the filesystem and the database match, e.g.,\n`GitCommitId`, `CollectionEbookId`, `EbookSourceId`, and `ContributorId`.\nMaking the `Ebook` instances from the filesystem and the database match each\nother makes it easier to spot bugs in the future.\n\nPrevious errors with PHP 8.3:\n\n```\nPHP Deprecated: Creation of dynamic property Ebook::$Created is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42\nPHP Deprecated: Creation of dynamic property Ebook::$Updated is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42\nPHP Deprecated: Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property CollectionMembership::$CollectionEbookId is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42\nPHP Deprecated: Creation of dynamic property CollectionMembership::$EbookId is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42\nPHP Deprecated: Creation of dynamic property CollectionMembership::$CollectionId is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42\nPHP Deprecated: Creation of dynamic property EbookSource::$EbookSourceId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property EbookSource::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property EbookSource::$EbookSourceId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property EbookSource::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property Contributor::$ContributorId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property Contributor::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\nPHP Deprecated: Creation of dynamic property Contributor::$SortOrder is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286\n```","shortMessageHtmlLink":"Add properties that were previously omitted"}},{"before":"a9c570327bedee404a1dd10a28a1f291bd2dd25b","after":"7837b874e643f7304dc85805f6185448b685a2d1","ref":"refs/heads/master","pushedAt":"2024-08-23T16:30:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}},{"before":"b076321027fa97133ccc474f5fc8b4bec9008070","after":"a9c570327bedee404a1dd10a28a1f291bd2dd25b","ref":"refs/heads/master","pushedAt":"2024-08-16T16:12:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"acabal","name":"Alex Cabal","path":"/acabal","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/866144?s=80&v=4"},"commit":{"message":"Update wanted ebooks list","shortMessageHtmlLink":"Update wanted ebooks list"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMVQyMzoxMDozOC4wMDAwMDBazwAAAAS865bO","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMVQyMzoxMDozOC4wMDAwMDBazwAAAAS865bO","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0xNlQxNjoxMjowNy4wMDAwMDBazwAAAAScTtKZ"}},"title":"Activity · standardebooks/web"}