{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":3897821,"defaultBranch":"master","name":"substanced","ownerLogin":"Pylons","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2012-04-02T05:25:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/452227?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1725212455.0","currentOid":""},"activityList":{"items":[{"before":"085030e5903ffe52ffff056e0f9ae75bd94c0c78","after":"3f008c2f67b342ece8c4de69ea8fe61fa4a31899","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-09-01T17:41:55.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"Merge branch 'master' into tseaver-pyramid2-compat","shortMessageHtmlLink":"Merge branch 'master' into tseaver-pyramid2-compat"}},{"before":"42b5d4584adf192164c647963b54e2f1fb177809","after":null,"ref":"refs/heads/tseaver-315-password_verification_w_bcrypt","pushedAt":"2024-09-01T17:40:55.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"}},{"before":"71c3e6c4dc3f27210b5f133c7b212ed69d1881e9","after":"7998a1651f7f805dcb472d2d314471cb5f7aebb7","ref":"refs/heads/master","pushedAt":"2024-09-01T17:40:52.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"Merge pull request #316 from Pylons/tseaver-315-password_verification_w_bcrypt\n\nfix: password check for users created prior to use of 'bcrypt'","shortMessageHtmlLink":"Merge pull request #316 from Pylons/tseaver-315-password_verification…"}},{"before":null,"after":"42b5d4584adf192164c647963b54e2f1fb177809","ref":"refs/heads/tseaver-315-password_verification_w_bcrypt","pushedAt":"2024-09-01T17:39:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"fix: password check for users created prior to use of 'bcrypt'\n\nCloses #315.","shortMessageHtmlLink":"fix: password check for users created prior to use of 'bcrypt'"}},{"before":"8f8131c1f3355eaaea053be410659417413b4241","after":"085030e5903ffe52ffff056e0f9ae75bd94c0c78","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-09-01T17:09:28.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"Merge branch 'master' into tseaver-pyramid2-compat","shortMessageHtmlLink":"Merge branch 'master' into tseaver-pyramid2-compat"}},{"before":"d743351530fb56f527d613bc67a39fd5d24d3676","after":null,"ref":"refs/heads/tseaver-313-tznames_widget","pushedAt":"2024-09-01T17:08:10.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"}},{"before":"37336c84915c9cba809e38d3a16bc7eb65101a0b","after":"71c3e6c4dc3f27210b5f133c7b212ed69d1881e9","ref":"refs/heads/master","pushedAt":"2024-09-01T17:08:04.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"Merge pull request #314 from Pylons/tseaver-313-tznames_widget\n\nfix: return type of 'tznames_widget'","shortMessageHtmlLink":"Merge pull request #314 from Pylons/tseaver-313-tznames_widget"}},{"before":"43119ef6b4705e0e8e89319af6782128484bbf47","after":"d743351530fb56f527d613bc67a39fd5d24d3676","ref":"refs/heads/tseaver-313-tznames_widget","pushedAt":"2024-09-01T17:06:33.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"fix: return type of 'tznames_widget'\n\n'deform.widget.SelectWidget.serialize' insists it must be an instance\nof 'list', 'tuple', or 'range'.\n\nCloses #313.","shortMessageHtmlLink":"fix: return type of 'tznames_widget'"}},{"before":null,"after":"43119ef6b4705e0e8e89319af6782128484bbf47","ref":"refs/heads/tseaver-313-tznames_widget","pushedAt":"2024-09-01T17:04:43.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"fix: return type of 'tznames_widget'\n\n'deform.widget.SelectWidget.serialize' insists it must be an instance\nof 'list', 'tuple', or 'range'.\n\nCloses #313.","shortMessageHtmlLink":"fix: return type of 'tznames_widget'"}},{"before":"77846384410bab2ef1258eaf0752eecef5f84b1a","after":"8f8131c1f3355eaaea053be410659417413b4241","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-08-30T15:43:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"chore: changelog entry for this branch","shortMessageHtmlLink":"chore: changelog entry for this branch"}},{"before":"19dd2bf45bd96c1d10f9bb104b8eef4b585772c0","after":null,"ref":"refs/heads/tseaver-modernize_python_support","pushedAt":"2024-08-30T15:42:17.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"}},{"before":"759c2f514f9eb52557e466618c770e8a1f57fa71","after":"37336c84915c9cba809e38d3a16bc7eb65101a0b","ref":"refs/heads/master","pushedAt":"2024-08-30T15:42:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"Modernize python support (#307)\n\n* chore: support Python >= 3.8\r\n\r\n* chore: drop support for Python 2.7, 3.5, 3.6, 3.7.\r\n\r\n* chore: remove Python 2.x compat layer\r\n\r\n* Pin `pyramid<2.0dev` to defer 2.0 changes.\r\n\r\n* fix: drop 'cryptacular' in favor of 'bcrypt' (Python 3.12 requirement)\r\n\r\n* replace 'nosetests' with 'pytest'.\r\n\r\n* tests: restore 100% coverage\r\n\r\n* fix: remove use of deprecated 'pyramid.security.authenticated_userid' API\r\n\r\n* fix: remove use of deprecated 'pyramid.session.check_csrf_token' API\r\n\r\n* fix: remove use of deprecated 'pyramid.security.has_permission' API\r\n\r\n* fix: remove use of deprecated 'pyramid.security.effective_principals' API\r\n\r\n* fix: remove use of deprecated 'pyramid.session.UnencryptedCooki...' API\r\n\r\n* chore: silence 'logging' module deprecation\r\n\r\n* chore: silence deprecation spew from 'pkg_resources'\r\n\r\n* chore: catch warning we are emitting about BBB test\r\n\r\n* docs: use 'request.has_permission' in examples\r\n\r\n* fix: remove invalid markup\r\n\r\n* ci: add GHA workflow","shortMessageHtmlLink":"Modernize python support (#307)"}},{"before":"db2d25e54e9fefd5bf1a2272f5f2d3e07ea5fe96","after":"19dd2bf45bd96c1d10f9bb104b8eef4b585772c0","ref":"refs/heads/tseaver-modernize_python_support","pushedAt":"2024-08-30T15:24:28.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"ci: drop 'pypy3.9' for now\n\nTest failure tracked in https://github.com/Pylons/substanced/issues/312","shortMessageHtmlLink":"ci: drop 'pypy3.9' for now"}},{"before":"7f38f50cf474d30f58d8731d11b49c9e78d6fe4a","after":"db2d25e54e9fefd5bf1a2272f5f2d3e07ea5fe96","ref":"refs/heads/tseaver-modernize_python_support","pushedAt":"2024-08-30T15:11:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"ci: add GHA workflow","shortMessageHtmlLink":"ci: add GHA workflow"}},{"before":"34c89156a35e82d3e2b2583bd8b6d0f714671f16","after":"77846384410bab2ef1258eaf0752eecef5f84b1a","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-08-29T22:56:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"chore: changelog entry for this branch","shortMessageHtmlLink":"chore: changelog entry for this branch"}},{"before":"7da43e64875a8cfbc5bb652268c53d247c2e5a62","after":"7f38f50cf474d30f58d8731d11b49c9e78d6fe4a","ref":"refs/heads/tseaver-modernize_python_support","pushedAt":"2024-08-29T22:53:56.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"chore: changelog entry for this branch","shortMessageHtmlLink":"chore: changelog entry for this branch"}},{"before":"a67f76491e52cc2cdf1e08d6b9cbe9e30a9b5844","after":"759c2f514f9eb52557e466618c770e8a1f57fa71","ref":"refs/heads/master","pushedAt":"2024-08-29T22:51:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"chore: garden changelog","shortMessageHtmlLink":"chore: garden changelog"}},{"before":"d90396ffe3a1e7ba3fca112e02478f9cc98236fd","after":"34c89156a35e82d3e2b2583bd8b6d0f714671f16","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-08-29T20:44:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"refactor: make new security policy more uniform/useful\n\nAdd test coverage.","shortMessageHtmlLink":"refactor: make new security policy more uniform/useful"}},{"before":"13bf53cb5fdd289d24c1ff42fbcac15ae0e5e0dd","after":"7da43e64875a8cfbc5bb652268c53d247c2e5a62","ref":"refs/heads/tseaver-modernize_python_support","pushedAt":"2024-08-29T20:43:10.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"fix: remove invalid markup","shortMessageHtmlLink":"fix: remove invalid markup"}},{"before":"4152f4741a28908361a84162e624d3ae7e3a1002","after":null,"ref":"refs/heads/tseaver-310-refidschemanode_serialize","pushedAt":"2024-08-29T20:17:41.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"}},{"before":"e8b1038053a4f5dc601c323add7cf57b533ab27f","after":"a67f76491e52cc2cdf1e08d6b9cbe9e30a9b5844","ref":"refs/heads/master","pushedAt":"2024-08-29T20:17:38.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"Merge pull request #311 from Pylons/tseaver-310-refidschemanode_serialize\n\nfix: add 'ReferenceIdSchemaNodeserialize'","shortMessageHtmlLink":"Merge pull request #311 from Pylons/tseaver-310-refidschemanode_seria…"}},{"before":null,"after":"4152f4741a28908361a84162e624d3ae7e3a1002","ref":"refs/heads/tseaver-310-refidschemanode_serialize","pushedAt":"2024-08-29T20:16:04.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"fix: add 'ReferenceIdSchemaNodeserialize'\n\nCloses #310.","shortMessageHtmlLink":"fix: add 'ReferenceIdSchemaNodeserialize'"}},{"before":"883670c5360b2b52a1b8371612cce632f4a101a5","after":null,"ref":"refs/heads/tseaver-pytest-fixups","pushedAt":"2024-06-23T16:36:41.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"}},{"before":"fa10e00955fd06f2cd488eaf223ab2ac118702be","after":"e8b1038053a4f5dc601c323add7cf57b533ab27f","ref":"refs/heads/master","pushedAt":"2024-06-23T16:36:37.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"Merge pull request #309 from Pylons/tseaver-pytest-fixups\n\ntests: pytest fixups","shortMessageHtmlLink":"Merge pull request #309 from Pylons/tseaver-pytest-fixups"}},{"before":null,"after":"883670c5360b2b52a1b8371612cce632f4a101a5","ref":"refs/heads/tseaver-pytest-fixups","pushedAt":"2024-05-07T15:43:24.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"fix: include precursor config steps to ensure valid total ordering","shortMessageHtmlLink":"fix: include precursor config steps to ensure valid total ordering"}},{"before":"84d02f35152d9f3b1235751cc85912dd33a1676e","after":"d90396ffe3a1e7ba3fca112e02478f9cc98236fd","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-05-05T17:04:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"chore: replace deprecated 'pkg_resources' APIs w/ 'importlib' equivalents","shortMessageHtmlLink":"chore: replace deprecated 'pkg_resources' APIs w/ 'importlib' equival…"}},{"before":"1bafd33072a61872a227e99b120eb80dc1bbd6f9","after":"84d02f35152d9f3b1235751cc85912dd33a1676e","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-05-05T16:13:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"chore: silence 'pkg_resources' deprecation spew more specifcally","shortMessageHtmlLink":"chore: silence 'pkg_resources' deprecation spew more specifcally"}},{"before":"a897f4a0518c51b6e093cc5af39fa326f23752c2","after":"fa10e00955fd06f2cd488eaf223ab2ac118702be","ref":"refs/heads/master","pushedAt":"2024-05-03T16:59:10.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"Merge pull request #306 from timgates42/bugfix_typos\n\ndocs: Fix a few typos","shortMessageHtmlLink":"Merge pull request #306 from timgates42/bugfix_typos"}},{"before":"30631352e8b568c7b0e6c4fc451ae01bbfc4649a","after":"1bafd33072a61872a227e99b120eb80dc1bbd6f9","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-05-03T16:56:52.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"refactor: make new security policy more uniform/useful\n\nAdd test coverage.","shortMessageHtmlLink":"refactor: make new security policy more uniform/useful"}},{"before":null,"after":"30631352e8b568c7b0e6c4fc451ae01bbfc4649a","ref":"refs/heads/tseaver-pyramid2-compat","pushedAt":"2024-05-03T15:44:11.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tseaver","name":"Tres Seaver","path":"/tseaver","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/242750?s=80&v=4"},"commit":{"message":"chore: suppress moar deprectation spew","shortMessageHtmlLink":"chore: suppress moar deprectation spew"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0wMVQxNzo0MTo1NS4wMDAwMDBazwAAAASp8vXO","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNS0wM1QxNTo0NDoxMS4wMDAwMDBazwAAAARA5yJv"}},"title":"Activity · Pylons/substanced"}