-
Refactor FormNode
-
…hecks, replace manual key access with `FormNode` methods, and enhance maintainability.
-
… presence of a `/Parent` attribute as evidence that the node a form fields; however, it is also a (sometimes required) attribute of a pure widget annotation.
-
…roFormDocumentHelper` to use them instead of manual key checks
-
Update release notes
-
Apply minor code and formatting fixes
-
…_if` for improved error handling in `QPDFWriter::writeLinearized` and adjust argv parsing in `objects.cc`tests.
-
Fix field traversal in `AcroForm::transformAnnotations`: replace iter…
-
Fixes #1620
-
Improve handling of root object `/Type` entries
-
- Automatically repair missing or invalid `/Type` entries by setting them to `/Catalog`, unless in inspection mode. - Update related documentation and warnings to reflect this behavior.
-
Update signer's email in README.md for accuracy.
-
Refactor QPDFAcroFormDocumentHelper
-
…r improved clarity and safety. Update related methods and references accordingly.
-
…ed modularity and reusability. - Move methods from `QPDFAcroFormDocumentHelper` to `AcroForm` (`validate`, `invalidateCache`, `addFormField`, and more) to reduce duplication. - Update function calls and improve encapsulation by leveraging `AcroForm`. - Enhance comments and align with PDF specifications for better clarity.
-
…ion and improve code clarity.
-
- Move AcroForm-related methods (`analyze`, `traverseField`, `getOrCreateAcroForm`, etc.) from `QPDFAcroFormDocumentHelper` to the `AcroForm` class. - Update method calls across files to reflect changes. - Improve comments for methods to align with PDF specifications.
-
…s for consistency with refactored AcroForm structure.
-
…ion and leveraging shared components.
-
- Update class name and references in `FormField.hh` and `QPDFFormFieldObjectHelper.cc`. - Enhance comments to align with PDF specification, providing clearer descriptions of class functionality and attributes.
-
Add a limit on the maximum number of filters allowed when filtering streams.
-
Add a new configurable limit `--max-stream-filters` to address excessive stream filters in damaged or specially constructed PDFs. Update related documentation, tests, and release notes to reflect this feature.
-
Document new `inspection_mode` in design and release notes
-
Introduce `qpdf::global::inspection_mode` for analyzing and repairing damaged PDFs with a restricted feature set. Update relevant code to enforce restrictions and add supporting test cases.
-
Add details about the new `qpdf::global::inspection_mode` method to the design document, explaining its purpose, functionality, and limitations. Update release notes to highlight its introduction and describe the changes it brings for inspecting and repairing damaged PDF files.
-
Introduce `global` namespace for managing qpdf global options and lim…
-
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
-
- Add warning with associated documentation links. - Update tests to reflect the new warning messages.
-
- Introduce `limits_error` method in `QPDFParser` for centralized limit-related error handling. - Enhance warnings and error messages with detailed limit identifiers (e.g., `parser-max-nesting`). - Refactor limit checks to improve maintainability and ensure uniformity in error reporting. - Update tests and output to reflect adjusted error handling approach.
-
…ted tests, documentation, and references across the codebase.
-
Enhance the `global` namespace by introducing `limit_errors` for tracking the number of exceeded limits. Update related tests and documentation to ensure functionality and clarity.