diff --git a/pypdf/_page.py b/pypdf/_page.py index ced22cce0..3409dc16f 100644 --- a/pypdf/_page.py +++ b/pypdf/_page.py @@ -1083,6 +1083,7 @@ def _merge_page( return self._merge_page_writer( page2, page2transformation, ctm, over, expand ) + return None except (AssertionError, AttributeError): pass @@ -1175,6 +1176,7 @@ def _merge_page( self.replace_contents(ContentStream(new_content_array, self.pdf)) self[NameObject(PG.RESOURCES)] = new_resources self[NameObject(PG.ANNOTS)] = new_annots + return None def _merge_page_writer( self, diff --git a/pypdf/_writer.py b/pypdf/_writer.py index 6a4fe4324..fb5c6c650 100644 --- a/pypdf/_writer.py +++ b/pypdf/_writer.py @@ -2104,6 +2104,7 @@ def clean_forms( clean(content, images, forms, text_filters) page.replace_contents(content) + return [], [] # type: ignore[return-value] def remove_images( self, @@ -3080,6 +3081,7 @@ def find_outline_item( o = cast(TreeObject, o["/Next"]) else: return None + raise PyPdfError("This line is theoretically unreachable.") # pragma: no cover def reset_translation( self, reader: Union[None, PdfReader, IndirectObject] = None diff --git a/pyproject.toml b/pyproject.toml index f0ba519cf..2d44cc222 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -179,7 +179,6 @@ ignore = [ "PT014", # Ruff bug: Duplicate of test case at index 1 in `@pytest_mark.parametrize` "PTH123", # `open()` should be replaced by `Path.open()` "PYI042", # Type alias `mode_str_type` should be CamelCase - "RET503", # Missing explicit `return` at the end of function able to return non-`None` value "RUF001", # Detect confusable Unicode-to-Unicode units. Introduces bugs "RUF002", # Detect confusable Unicode-to-Unicode units. Introduces bugs "S101", # Use of `assert` detected diff --git a/tests/test_merger.py b/tests/test_merger.py index 183766df9..1a8af7d0a 100644 --- a/tests/test_merger.py +++ b/tests/test_merger.py @@ -25,7 +25,6 @@ def merger_operate(merger): pdf_forms = RESOURCE_ROOT / "pdflatex-forms.pdf" pdf_pw = RESOURCE_ROOT / "libreoffice-writer-password.pdf" - # string path: merger.append(pdf_path) merger.append(outline) merger.append(pdf_path, pages=pypdf.pagerange.PageRange(slice(0, 0)))