-
…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.
-
Update header guards for `assert_test.h` and `assert_debug.h`
-
- Introduce distinct header guards to enable simultaneous inclusion of both headers. - Update `README-maintainer.md` to document the changes .
-
Add `util::internal_error_if` for concise handling of internal errors
-
- replace repetitive error handling with utility functions in BufferInputSource, OffsetBuffer, and QPDF_objects. - Remove some "internal error" labels from errors that could be due to user logic errors.
-
Improve error handling for common PDF anomalies.
-
- Updated warning messages to provide clearer descriptions of common issues ("object has offset 0", "xref entry missing") and note that these are handled gracefully by qpdf. - Adjusted logic in `QPDF_objects.cc` to identify and process `xref` stream-specific anomalies accurately. Fixes #1594 Fixes #1292
-
Update release notes for #1587