![dependabot[bot]](/assets/img/avatar_default.png)
Bumps [com.unboundid.product.scim2:scim2-sdk-client](https://github.com/pingidentity/scim2) from 2.3.5 to 4.0.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pingidentity/scim2/blob/master/CHANGELOG.md">com.unboundid.product.scim2:scim2-sdk-client's changelog</a>.</em></p> <blockquote> <h2>v4.0.0 - 2025-Jun-10</h2> <p>Removed support for Java 11. The UnboundID SCIM 2 SDK now requires Java 17 or a later release.</p> <p>Updated the following dependencies:</p> <ul> <li>Jackson: 2.18.3</li> <li>Jakarta RS: 4.0.0</li> <li>Jersey: 3.1.10</li> </ul> <p>Updated the default behavior for ADD patch requests with value filters (e.g., <code>emails[type eq "work"].display</code>). The SCIM SDK will now target existing values within the multi-valued attribute. For more background on this type of patch request, see the release notes for the 3.2.0 release where this was introduced (but not made the default). To restore the old behavior, set the following property in your application:</p> <pre><code>PatchOperation.APPEND_NEW_PATCH_VALUES_PROPERTY = true; </code></pre> <p>Updated <code>SearchRequestBuilder</code> to be more permissive of ListResponses with non-standard attribute casing (e.g., if a response includes a <code>"resources"</code> array instead of <code>"Resources"</code>).</p> <p>Updated the class-level documentation of <code>SearchRequest</code> to provide more background about how searches are performed in the SCIM standard.</p> <p>Added a new property that allows ignoring unknown fields when converting JSON text to Java objects that inherit from <code>BaseScimResource</code>. This behaves similarly to the <code>FAIL_ON_UNKNOWN_PROPERTIES</code> setting from the Jackson library, and allows for easier integration with SCIM service providers that include additional non-standard data in their responses. To enable this setting, set the following property in your application code:</p> <pre><code>BaseScimResource.IGNORE_UNKNOWN_FIELDS = true; </code></pre> <p>Fixed an issue with methods that interface with schema extensions such as <code>BaseScimResource.getExtensionValues(String)</code>. These accepted paths as a string, but previously performed updates to the extension data incorrectly.</p> <p>Simplified the implementation of the StaticUtils#toLowerCase method. This had an optimization for Java versions before JDK 9 that was especially beneficial for the most common case of handling ASCII characters. Since JDK 9, however, the String class has been updated so that the class is backed by a byte array as opposed to a character array, so it is more optimal to use the JDK's implementation directly while handling null values.</p> <p>Previous releases of the SCIM SDK set many classes as <code>final</code> to encourage applications to follow strict compliance to the SCIM standard. However, this also makes it difficult to integrate with services that violate the standard. An example of this is a SCIM error response that contains extra fields in the JSON body. To help accommodate these integrations, the SCIM SDK has been updated so that several model classes are no longer <code>final</code>, allowing applications to <code>extend</code> them if needed. The following classes were updated:</p> <ul> <li>scim2-sdk-client builder classes such as <code>CreateRequestBuilder.java</code></li> <li><code>ErrorResponse.java</code></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="039c7e6264
"><code>039c7e6</code></a> Setting release version 4.0.0</li> <li><a href="ea0486470e
"><code>ea04864</code></a> Update CHANGELOG date for the 4.0.0 release.</li> <li><a href="bfd276e822
"><code>bfd276e</code></a> Make GenericScimResource extendable.</li> <li><a href="9008757a22
"><code>9008757</code></a> Clean up POM and remove Guava test dependency.</li> <li><a href="a954381dcc
"><code>a954381</code></a> Remove the deprecated ScimDateFormat class.</li> <li><a href="76f23141ff
"><code>76f2314</code></a> Enhance the Filter classes and their documentation</li> <li><a href="cfd9d7ecf9
"><code>cfd9d7e</code></a> Add a new filter method for SearchRequestBuilder.</li> <li><a href="3c3c0cad33
"><code>3c3c0ca</code></a> Fix CodeQL by adding Java 17 installation step</li> <li><a href="114ad5105b
"><code>114ad51</code></a> Import the default codeql.yaml</li> <li><a href="26fe8f180a
"><code>26fe8f1</code></a> Allow extending model classes</li> <li>Additional commits viewable in <a href="https://github.com/pingidentity/scim2/compare/scim2-2.3.5...scim2-4.0.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Stirling-PDF
Stirling-PDF is a robust, locally hosted web-based PDF manipulation tool using Docker. It enables you to carry out various operations on PDF files, including splitting, merging, converting, reorganizing, adding images, rotating, compressing, and more. This locally hosted web application has evolved to encompass a comprehensive set of features, addressing all your PDF requirements.
All files and PDFs exist either exclusively on the client side, reside in server memory only during task execution, or temporarily reside in a file solely for the execution of the task. Any file downloaded by the user will have been deleted from the server by that point.
Homepage: https://stirlingpdf.com
All documentation available at https://docs.stirlingpdf.com/
Features
- 50+ PDF Operations
- Parallel file processing and downloads
- Dark mode support
- Custom download options
- Custom 'Pipelines' to run multiple features in a automated queue
- API for integration with external scripts
- Optional Login and Authentication support (see here for documentation)
- Database Backup and Import (see here for documentation)
- Enterprise features like SSO (see here for documentation)
PDF Features
Page Operations
- View and modify PDFs - View multi-page PDFs with custom viewing, sorting, and searching. Plus, on-page edit features like annotating, drawing, and adding text and images. (Using PDF.js with Joxit and Liberation fonts)
- Full interactive GUI for merging/splitting/rotating/moving PDFs and their pages
- Merge multiple PDFs into a single resultant file
- Split PDFs into multiple files at specified page numbers or extract all pages as individual files
- Reorganize PDF pages into different orders
- Rotate PDFs in 90-degree increments
- Remove pages
- Multi-page layout (format PDFs into a multi-paged page)
- Scale page contents size by set percentage
- Adjust contrast
- Crop PDF
- Auto-split PDF (with physically scanned page dividers)
- Extract page(s)
- Convert PDF to a single page
- Overlay PDFs on top of each other
- PDF to a single page
- Split PDF by sections
Conversion Operations
- Convert PDFs to and from images
- Convert any common file to PDF (using LibreOffice)
- Convert PDF to Word/PowerPoint/others (using LibreOffice)
- Convert HTML to PDF
- Convert PDF to XML
- Convert PDF to CSV
- URL to PDF
- Markdown to PDF
Security & Permissions
- Add and remove passwords
- Change/set PDF permissions
- Add watermark(s)
- Certify/sign PDFs
- Sanitize PDFs
- Auto-redact text
Other Operations
- Add/generate/write signatures
- Split by Size or PDF
- Repair PDFs
- Detect and remove blank pages
- Compare two PDFs and show differences in text
- Add images to PDFs
- Compress PDFs to decrease their filesize (using qpdf)
- Extract images from PDF
- Remove images from PDF
- Extract images from scans
- Remove annotations
- Add page numbers
- Auto-rename files by detecting PDF header text
- OCR on PDF (using Tesseract OCR)
- PDF/A conversion (using LibreOffice)
- Edit metadata
- Flatten PDFs
- Get all information on a PDF to view or export as JSON
- Show/detect embedded JavaScript
📖 Get Started
Visit our comprehensive documentation at docs.stirlingpdf.com for:
- Installation guides for all platforms
- Configuration options
- Feature documentation
- API reference
- Security setup
- Enterprise features
Supported Languages
Stirling-PDF currently supports 40 languages!
Stirling PDF Enterprise
Stirling PDF offers an Enterprise edition of its software. This is the same great software but with added features, support and comforts. Check out our Enterprise docs
🤝 Looking to contribute?
Join our community: