{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":3119517,"defaultBranch":"main","name":"pypdf","ownerLogin":"py-pdf","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2012-01-06T17:13:38.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/102914013?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1727628078.0","currentOid":""},"activityList":{"items":[{"before":"3cd5cc40a1558958dfc37d4e2d840014fcfb4c31","after":"2a7a3c0236c6a71b5a44bf4e2390231ab07ff7d3","ref":"refs/heads/gh-pages","pushedAt":"2024-09-29T16:43:49.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":"add Python Benchmark with pytest-benchmark (pytest) benchmark result for 8e1799e7836e77a637291dea9cb766b6a873f43b","shortMessageHtmlLink":"add Python Benchmark with pytest-benchmark (pytest) benchmark result …"}},{"before":"8a4f5075b15aa12cbe849e1d2241e4029016243d","after":null,"ref":"refs/heads/codec-lzw-encode-maint","pushedAt":"2024-09-29T16:41:18.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"}},{"before":"42de71aa3b9ff3929a144d7a59f4547621fcd641","after":"8e1799e7836e77a637291dea9cb766b6a873f43b","ref":"refs/heads/main","pushedAt":"2024-09-29T16:41:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"STY: Code reuse within LzwCodec.encode (#2885)","shortMessageHtmlLink":"STY: Code reuse within LzwCodec.encode (#2885)"}},{"before":null,"after":"8a4f5075b15aa12cbe849e1d2241e4029016243d","ref":"refs/heads/codec-lzw-encode-maint","pushedAt":"2024-09-29T15:09:05.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"STY: Code reuse within LzwCodec.encode","shortMessageHtmlLink":"STY: Code reuse within LzwCodec.encode"}},{"before":"2960792535632adcb1b310dfc5fa887977f68576","after":"3cd5cc40a1558958dfc37d4e2d840014fcfb4c31","ref":"refs/heads/gh-pages","pushedAt":"2024-09-29T14:01:04.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":"add Python Benchmark with pytest-benchmark (pytest) benchmark result for 42de71aa3b9ff3929a144d7a59f4547621fcd641","shortMessageHtmlLink":"add Python Benchmark with pytest-benchmark (pytest) benchmark result …"}},{"before":"65647683cf6dc73ee8415b554ab6da59d50b7932","after":null,"ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T13:58:40.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"}},{"before":"ab21802a7f18b4aff2caa9d37fedf5c60797dd50","after":"42de71aa3b9ff3929a144d7a59f4547621fcd641","ref":"refs/heads/main","pushedAt":"2024-09-29T13:58:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"TST: Add LzwCodec for encoding (#2883)\n\nThis PR adds an abstract Codec class as well as an LzwCodec encoder implementation.\r\n\r\nWhile we might only need decoding for pypdf, having both decoding and encoding in one class massively helps with testing. We can still get it wrong, but it's harder to get both the encoder and the decoder wrong in a consistent way.","shortMessageHtmlLink":"TST: Add LzwCodec for encoding (#2883)"}},{"before":"5d1248d64cbbcd1dd299863d5e64a16a92e23b21","after":"65647683cf6dc73ee8415b554ab6da59d50b7932","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T12:29:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"Test encoded value","shortMessageHtmlLink":"Test encoded value"}},{"before":"1ab81632b0cbdba0c80cc3e79b0c1a9f98e90b21","after":"5d1248d64cbbcd1dd299863d5e64a16a92e23b21","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T12:23:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"Make it private","shortMessageHtmlLink":"Make it private"}},{"before":"553c0c1789241e4dcb33a314b2ef8a415ef6f588","after":"1ab81632b0cbdba0c80cc3e79b0c1a9f98e90b21","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T10:55:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"pass data to init","shortMessageHtmlLink":"pass data to init"}},{"before":"42a2d981297f9a2efda2bf35fe7ee32a33caa864","after":"553c0c1789241e4dcb33a314b2ef8a415ef6f588","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T10:53:57.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"Merge branch 'main' into lzw-refactoring","shortMessageHtmlLink":"Merge branch 'main' into lzw-refactoring"}},{"before":"a98950410659e63957aec36b665def457cb20300","after":"2960792535632adcb1b310dfc5fa887977f68576","ref":"refs/heads/gh-pages","pushedAt":"2024-09-29T09:37:11.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":"add Python Benchmark with pytest-benchmark (pytest) benchmark result for ab21802a7f18b4aff2caa9d37fedf5c60797dd50","shortMessageHtmlLink":"add Python Benchmark with pytest-benchmark (pytest) benchmark result …"}},{"before":"79345ed519723fb82c27db2375c88e231bc3137c","after":"ab21802a7f18b4aff2caa9d37fedf5c60797dd50","ref":"refs/heads/main","pushedAt":"2024-09-29T09:34:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"pubpub-zz","name":null,"path":"/pubpub-zz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4083478?s=80&v=4"},"commit":{"message":"REL: 5.0.1 (#2884)\n\n## Version 5.0.1, 2024-09-29\r\n\r\n### New Features (ENH)\r\n- Add `full` parameter to PdfWriter constructor (#2865)\r\n\r\n### Bug Fixes (BUG)\r\n- Update pyproject.toml with minimum Python version of 3.8 (#2859)\r\n- Cope with unbalanced delimiters in dictionary object (#2878)\r\n- Cope with encoding with too many differences (#2873)\r\n- Missing spaces in extract_text() method (#1328) (#2868)\r\n- Tolerate truncated files and no warning when jumping startxref (#2855)\r\n\r\n### Robustness (ROB)\r\n- Repair PDF with invalid Root object (#2880)\r\n- Continue parsing dictionary object when error is detected (#2872)\r\n- Merge documents with invalid pages in named destinations (#2857)\r\n- Tolerate comments in arrays (#2856)\r\n\r\n### Developer Experience (DEV)\r\n- Use latest Python version for benchmarking (#2879)\r\n\r\n### Maintenance (MAINT)\r\n- Add tests to source distributions (#2874)\r\n- Refactor _update_field_annotation (#2862)\r\n\r\n[Full Changelog](https://github.com/py-pdf/pypdf/compare/5.0.0...5.0.1)","shortMessageHtmlLink":"REL: 5.0.1 (#2884)"}},{"before":"9e12a4ac6e36291df497f8b353f6d040d8719918","after":"42a2d981297f9a2efda2bf35fe7ee32a33caa864","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T08:46:45.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"Add ABC","shortMessageHtmlLink":"Add ABC"}},{"before":"5cc104896d6cb5669a1d626621eca8324b611c02","after":"9e12a4ac6e36291df497f8b353f6d040d8719918","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T08:27:35.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"Merge branch 'main' into lzw-refactoring","shortMessageHtmlLink":"Merge branch 'main' into lzw-refactoring"}},{"before":"32c18bca701b740a5492f3b6604eba25d3d874ba","after":"5cc104896d6cb5669a1d626621eca8324b611c02","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T08:21:14.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"Fix off-by-one errors","shortMessageHtmlLink":"Fix off-by-one errors"}},{"before":"609cd7a96952d0fb5354c9a1856bf7eb57d3498a","after":"32c18bca701b740a5492f3b6604eba25d3d874ba","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-29T08:00:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"Use Codec-class","shortMessageHtmlLink":"Use Codec-class"}},{"before":"54491463c6100eaee67187222c6fb0e42c174dd1","after":"a98950410659e63957aec36b665def457cb20300","ref":"refs/heads/gh-pages","pushedAt":"2024-09-28T12:51:33.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":"add Python Benchmark with pytest-benchmark (pytest) benchmark result for 79345ed519723fb82c27db2375c88e231bc3137c","shortMessageHtmlLink":"add Python Benchmark with pytest-benchmark (pytest) benchmark result …"}},{"before":"c8220c6443ff94955b2cef6bf3f9411e51c2018e","after":"79345ed519723fb82c27db2375c88e231bc3137c","ref":"refs/heads/main","pushedAt":"2024-09-28T12:49:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stefan6419846","name":"Stefan","path":"/stefan6419846","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/96178532?s=80&v=4"},"commit":{"message":"ROB: Repair PDF with invalid Root object (#2880)\n\nCloses #2875.","shortMessageHtmlLink":"ROB: Repair PDF with invalid Root object (#2880)"}},{"before":"8a34e3f9d0393d25310936db48e0a742b8c8367f","after":"609cd7a96952d0fb5354c9a1856bf7eb57d3498a","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-28T12:37:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"Add failing test","shortMessageHtmlLink":"Add failing test"}},{"before":null,"after":"8a34e3f9d0393d25310936db48e0a742b8c8367f","ref":"refs/heads/lzw-refactoring","pushedAt":"2024-09-28T11:13:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"MartinThoma","name":"Martin Thoma","path":"/MartinThoma","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1658117?s=80&v=4"},"commit":{"message":"TST: Add lzw.lzw_encode","shortMessageHtmlLink":"TST: Add lzw.lzw_encode"}},{"before":"009c7fb964864a9606536346bb39746ac9d72c20","after":"54491463c6100eaee67187222c6fb0e42c174dd1","ref":"refs/heads/gh-pages","pushedAt":"2024-09-27T17:39:17.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":"add Python Benchmark with pytest-benchmark (pytest) benchmark result for c8220c6443ff94955b2cef6bf3f9411e51c2018e","shortMessageHtmlLink":"add Python Benchmark with pytest-benchmark (pytest) benchmark result …"}},{"before":"bf47dcf3be9b5b4d94dabf6a857864812587931f","after":null,"ref":"refs/heads/benchmark-with-latest","pushedAt":"2024-09-27T17:36:50.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"pubpub-zz","name":null,"path":"/pubpub-zz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4083478?s=80&v=4"}},{"before":"2e69836e7795b1ed8c5772fe9bcf248f9b9e0671","after":"c8220c6443ff94955b2cef6bf3f9411e51c2018e","ref":"refs/heads/main","pushedAt":"2024-09-27T17:36:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"pubpub-zz","name":null,"path":"/pubpub-zz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4083478?s=80&v=4"},"commit":{"message":"DEV: Use latest Python version for benchmarking (#2879)\n\n* DEV: Use latest Python version for benchmarking\r\n\r\n* fix requirements","shortMessageHtmlLink":"DEV: Use latest Python version for benchmarking (#2879)"}},{"before":"5265cf0e3426fa590cfc396cf1a76853b8c0e3dd","after":"bf47dcf3be9b5b4d94dabf6a857864812587931f","ref":"refs/heads/benchmark-with-latest","pushedAt":"2024-09-27T17:25:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"stefan6419846","name":"Stefan","path":"/stefan6419846","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/96178532?s=80&v=4"},"commit":{"message":"fix requirements","shortMessageHtmlLink":"fix requirements"}},{"before":null,"after":"5265cf0e3426fa590cfc396cf1a76853b8c0e3dd","ref":"refs/heads/benchmark-with-latest","pushedAt":"2024-09-27T17:23:26.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"stefan6419846","name":"Stefan","path":"/stefan6419846","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/96178532?s=80&v=4"},"commit":{"message":"DEV: Use latest Python version for benchmarking","shortMessageHtmlLink":"DEV: Use latest Python version for benchmarking"}},{"before":"634e0050662f8fec6593177ea4f03b3eba3a158c","after":"009c7fb964864a9606536346bb39746ac9d72c20","ref":"refs/heads/gh-pages","pushedAt":"2024-09-27T17:22:35.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":"add Python Benchmark with pytest-benchmark (pytest) benchmark result for 2e69836e7795b1ed8c5772fe9bcf248f9b9e0671","shortMessageHtmlLink":"add Python Benchmark with pytest-benchmark (pytest) benchmark result …"}},{"before":"425dbf34e72bbe1711e62a737fe4038d8a47a5d8","after":"2e69836e7795b1ed8c5772fe9bcf248f9b9e0671","ref":"refs/heads/main","pushedAt":"2024-09-27T17:19:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stefan6419846","name":"Stefan","path":"/stefan6419846","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/96178532?s=80&v=4"},"commit":{"message":"BUG: Cope with unbalanced delimiters in dictionary object (#2878)\n\nCloses #2877.","shortMessageHtmlLink":"BUG: Cope with unbalanced delimiters in dictionary object (#2878)"}},{"before":"a3de219db84e9aa605731137f9b4db4b3f869ad2","after":"634e0050662f8fec6593177ea4f03b3eba3a158c","ref":"refs/heads/gh-pages","pushedAt":"2024-09-27T14:59:19.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":"add Python Benchmark with pytest-benchmark (pytest) benchmark result for 425dbf34e72bbe1711e62a737fe4038d8a47a5d8","shortMessageHtmlLink":"add Python Benchmark with pytest-benchmark (pytest) benchmark result …"}},{"before":"762fc1f6cd1e0c1643f3831b483d49b433b94df3","after":"425dbf34e72bbe1711e62a737fe4038d8a47a5d8","ref":"refs/heads/main","pushedAt":"2024-09-27T14:56:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"stefan6419846","name":"Stefan","path":"/stefan6419846","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/96178532?s=80&v=4"},"commit":{"message":"MAINT: Add tests to source distributions (#2874)\n\nCloses #2864.","shortMessageHtmlLink":"MAINT: Add tests to source distributions (#2874)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yOVQxNjo0Mzo0OS4wMDAwMDBazwAAAATD9eph","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yN1QxNDo1NjoyMS4wMDAwMDBazwAAAATCut1R"}},"title":"Activity · py-pdf/pypdf"}