-
- 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.
-
…pport for configurable global limits via `qpdf_global_get_uint32` and `qpdf_global_set_uint32`.
-
Document new release signing procedure
-
Check for C++-17 header compatibility in CI (fixes #1567)
-
Maintainer comment
-
Thanks to qooxzuub for the suggested update.
-
It is the user's responsibility to autoload bashcompinit. If we do it, we may overwrite a custom complete function. If we don't do it at all, it won't work out of the box. This fixes debian bug 1111509, reported by Vincent Lefèvre.
-
Reported by Stephane Chazelas. Potentially sensitive arguments could be leaked to the environment during completion computation.
-
Refactor error handling and simplify logic across multiple pipelines
-
- Replace `std::logic_error` and `std::runtime_error` with `util::assertion` and `util::no_ci_rt_error_if` for consistent error handling.
-
Refactor error handling in `Pipeline` and `QPDFXRefEntry`
-
…update `CMakeLists.txt` accordingly.
-
…n` and simplify logic - Replace `std::logic_error` with `util::assertion` for consistency. - Use `using namespace qpdf` for cleaner code. - Update `test_62` to cover `Pipeline` output method.
-
Refactor AcroForm field traversal for robustness and add new fuzz case
-
- Modify `traverseField` to return `bool` for identifying invalid fields. - Add `bad_fields` set to track and handle problematic fields. - Improve error handling for invalid parent entries.
-
Add `libexempi8` dependency to test-pikepdf build script
-
Improve JSON schema validation and error reporting
-
- Add null pointer checks for schema objects. - Refactor `checkSchemaInternal` for better readability and maintainability. - Replace redundant error construction logic with lambda-based approach. - Simplify array and dictionary schema handling. - Remove unused test coverage statistics.
-
Introduce parameter validation for compression-level and jpeg-quality
-
- Add `to_int` utility to validate integer ranges for parameters. - Enforce range checks: `compression-level` (1-9) and `jpeg-quality` (0-100). - Enhance test coverage for invalid parameter scenarios.