-
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.
-
Refactor `util::assertion` etc to accept forwarding references for im…
-
- Updated `assertion`, `internal_error_if`, and `no_ci_rt_error_if` to use templates and `std::forward`.
-
Enhance validation of xref entries for deleted objects.
-
Improve handling of xref stream anomalies and update tests.
-
Fix bug in #1595
-
Refactor error handling across codebase with `util::assertion` and `u…
-
- Standardize error handling by replacing repetitive throw statements with helper functions. - Add test coverage for new helper functions in error handling. - Enhance maintainability and readability with concise utilities.