Julien Neuhart
3b1e4cbac4
feat(pdfengines): support owner-only encryption and document permissions
2026-06-06 14:05:46 +02:00
Julien Neuhart
287ee5be72
feat(pdfengines): redesign Factur-X API with dedicated form fields
2026-06-06 14:03:58 +02:00
Julien Neuhart
9ab39b6fca
fix(libreoffice): suppress auto-generated page header for CSV conversions
2026-06-05 17:50:01 +02:00
Julien Neuhart
5558e43821
feat(pdfengines): inject Factur-X/ZUGFeRD XMP metadata
2026-06-05 17:50:01 +02:00
Julien Neuhart
5c6a5c64b5
fix(libreoffice): correct ErrRuntimeException message
2026-06-04 18:37:06 +02:00
Julien Neuhart
4ebd977d97
feat(libreoffice): cap ErrCoreDumped retries and make them observable
2026-06-02 19:50:12 +02:00
Julien Neuhart
a82dd9f031
feat(libreoffice): add conversion size and requested pdf-format span attributes
2026-06-02 19:47:11 +02:00
Julien Neuhart
c24883b8a1
feat(libreoffice): lift conversions-since-restart and queue depth onto libreoffice span
2026-06-02 19:30:21 +02:00
Julien Neuhart
de572fe6b5
refactor(gotenberg): thread engine label into NewProcessSupervisor
2026-06-02 19:25:47 +02:00
Julien Neuhart
525102b991
refactor(libreoffice): classify Pdf errors and set span error.type
2026-06-02 19:07:26 +02:00
Julien Neuhart
4998870723
feat(libreoffice): SSRF guard for embedded external content
2026-04-30 14:16:59 +02:00
Julien Neuhart
c204cadfc5
fix(pdfengines): require uploaded stamp/watermark file for image or pdf source
2026-04-22 07:47:19 +02:00
hubert.lenoir
3187980ead
feat: add embeds metadata
2026-04-16 17:28:16 +02:00
Julien Neuhart
e4a43434dc
docs: improve godoc and documentation [skip ci]
2026-04-03 14:23:18 +02:00
Julien Neuhart
7549a69f71
feat(otel): switch from software name to binary path
2026-03-28 13:31:28 +01:00
Julien Neuhart
ebf0548d19
refactor: switch from multierr to errors.join
2026-03-27 22:14:01 +01:00
Julien Neuhart
d3a65a587c
feat(supervisor): optional idle shutdown
2026-03-27 21:16:49 +01:00
Julien Neuhart
8f7c1c98ad
fix(api): handle correctly filename that takes more that 200 bytes
2026-03-27 20:55:50 +01:00
Julien Neuhart
bb91259829
feat(libreoffice): add viewer preference form fields
2026-03-27 19:40:42 +01:00
Julien Neuhart
c72be765b0
feat(otel): add more tracing when communicating with internal tools / external APIs
2026-03-27 16:50:24 +01:00
Julien Neuhart
4e9f63004d
feat(otel): add OpenTelemetry support
2026-03-27 16:28:45 +01:00
Julien Neuhart
410c1dfd7f
fix(pdfengines): single file for watermark/stamp, and add the feature to the downloadFrom one
2026-03-18 23:22:31 +01:00
Julien Neuhart
0663e5f92b
feat(pdfengines): add rotate feature
2026-03-18 22:36:20 +01:00
Julien Neuhart
21e300fcec
fix(pdfengines): better workflow when applying PDF/A or PDF/UA compliance
2026-03-18 15:24:31 +01:00
Julien Neuhart
1e26fdd35b
fix(libreoffice): set EmbedStandardFonts to true when applying PDF/A or PDF/UA compliance
2026-03-18 13:45:01 +01:00
Julien Neuhart
19db80bc2e
feat(pdfengines): add watermark and stamp feature
2026-03-18 04:46:12 +01:00
Julien Neuhart
874e78c6cd
fix(pdfengines): correctly update the indexes if the bookmarks form field (map format) is given
2026-03-13 09:36:47 +01:00
Julien Neuhart
fec6437c5d
feat(pdfengines): add bookmarks read route
2026-03-13 09:36:47 +01:00
Julien Neuhart
5120b49639
feat(pdfengines): add bookmarks write route and update the merge route with this feature
2026-03-13 09:36:47 +01:00
Julien Neuhart
57e1b7efda
chore(golangci-lint): bump golangci-lint to v2.10.1
2026-02-21 17:54:46 +01:00
Julien Neuhart
2baa59cb3a
refactor(gofix): modernize
2026-02-20 21:21:19 +01:00
Tom Brouws
12c25a2d21
feat(chromium): re-add concurrency support for Chromium ( #1467 )
...
* feat: add concurrency support to ProcessSupervisor
- Replace the single-slot mutex channel with a configurable semaphore to
allow multiple concurrent tasks.
- Add drain logic to ensure all active
tasks complete before process restarts.
* feat: add chromium-max-concurrency flag
- Add a --chromium-max-concurrency flag (1-6) to the Chromium module to
control how many conversions run in parallel.
- Update LibreOffice to pass maxConcurrency=1 as LibreOffice only supports
a single concurrent conversion.
* test: add integration tests for concurrent Chromium conversions
- Add concurrent request support to the integration test framework with
new step definitions for sending parallel requests and asserting on all
responses.
- Add a feature file for concurrent HTML to PDF conversions.
2026-02-13 10:00:58 +01:00
Julien Neuhart
f9ad8bd2d5
test(integration): add more tags, complete embed feature tests suite, fix order with metadata
2025-11-13 22:08:28 +01:00
Hubert Lenoir
a0ee800002
feat(pdfengines): add embed feature
2025-11-05 13:57:23 +01:00
Julien Neuhart
ba944f9dc2
chore: slight improvement of the encrypt feature to be more in line with others features
2025-09-04 14:49:04 +02:00
Stevenson Michel
99307befdd
feat: add PDF encryption feature ( #1217 )
...
* Adding PDF encryption option
* LibreOffice
* QPDF
* PDFtk
* pdfcpu
* Update pkg/modules/pdfengines/pdfengines.go
Co-authored-by: Julien Neuhart <neuhart.julien@gmail.com >
* npx prettier
* go fmt
* PR comments
* Update test/integration/scenario/scenario.go
Co-authored-by: Julien Neuhart <neuhart.julien@gmail.com >
* renamed ProtectWithPassword to encrypt
* more clean up
* Use the same input path as requested
* This commit completes the encryption implementation
* Clean up. Added webhook, disable route and download from tests
---------
Co-authored-by: Julien Neuhart <neuhart.julien@gmail.com >
2025-09-04 14:49:04 +02:00
Julien Neuhart
f13a6c0a3b
Revert "fix(libreoffice): correct values for CreateDate, MetadataDate, and ModifyDate metadata entries - fixes #1193 "
...
This reverts commit e662f5ce0b .
2025-05-18 14:15:22 +02:00
Julien Neuhart
e662f5ce0b
fix(libreoffice): correct values for CreateDate, MetadataDate, and ModifyDate metadata entries - fixes #1193
2025-05-15 10:38:22 +02:00
Julien Neuhart
be3145aae9
chore(libreoffice): switch to env var for handling non-basic latin characters in filenames
2025-05-13 16:10:14 +02:00
Julien Neuhart
3cbf772acf
docs(godoc): fix a bunch of typos
2025-04-17 11:15:52 +02:00
Julien Neuhart
0febb60a3f
test: add integration tests
2025-03-21 14:09:34 +01:00
Julien Neuhart
ea6854fadc
docs(godoc): add link to issue 1149 [ci skip]
2025-03-18 08:55:09 +01:00
Julien Neuhart
147e3b1173
docs(godoc): improve the UpdateIndexes godoc
2025-03-17 14:51:24 +01:00
Julien Neuhart
b31024c362
feat(libreoffice): add updateIndexes form field
2025-03-17 13:32:26 +01:00
Julien Neuhart
81cc483166
test: fix issues with go 1.24
2025-02-13 09:21:38 +01:00
Julien Neuhart
a1596f7c62
feat(api): add debug route
2025-02-04 10:20:29 +01:00
Peter Chakalov
b418f1eb05
feat(pdfengines): add support for flattening annotations ( #1105 )
...
* initial changes
* Add tests
* Fix edge case when we need to regenerate appearances
* Fix comments
* Add missing comment
* Add missing comment
* Add missing comment
* Add flatten option to the merge route
* Add flatten option to the libreoffice convert route
* Add flatten option to the chromium convert route
* Revert "Add flatten option to the chromium convert route"
This reverts commit cdab8b4e6b .
* Ignore lint false positives
* Add missing tests
* Add flatten route tests
* Replace input instead of creating a new file
* create copy before flatten in tests
---------
Co-authored-by: Peter Chakalov <peter.chakalov@abraxa.com >
2025-01-28 14:38:27 +01:00
Julien Neuhart
910eb9b770
feat(state): improve clean up when LibreOffice and Chromium are restarted
2024-12-25 17:04:25 +01:00
Julien Neuhart
16807bd57f
fix(split): wrong output paths when converting to PDF/A & PDF/UA
2024-12-23 10:04:24 +01:00
Julien Neuhart
c30da805b3
feat(pdfengines): add split feature
2024-12-20 16:16:32 +01:00