Julien Neuhart
7a730cfdc2
feat(chromium): add --chromium-clear-storage to clear local storage between conversions ( #919 )
2026-08-13 14:56:46 +02:00
Julien Neuhart
8d1eeaa73a
feat(chromium): screenshot a single element via the selector form field ( #947 )
2026-08-13 13:56:17 +02:00
Julien Neuhart
de7f335791
fix(outbound): keep dial pinning for hops the environment proxy declines
2026-08-07 16:37:03 +02:00
Julien Neuhart
a92a7fedba
feat(outbound): support authenticated proxy from environment variables
2026-07-15 20:08:29 +02:00
Julien Neuhart
7b054da4e7
fix(chromium): generateDocumentOutline now implies generateTaggedPdf
2026-06-16 17:06:10 +02:00
Julien Neuhart
d4c20c6b39
feat(telemetry): record backing-binary versions on spans, captured at build time
2026-06-07 14:52:06 +02:00
Julien Neuhart
f8905bac8c
refactor: make client- and operator-facing error messages clearer and actionable
2026-06-06 19:23:46 +02:00
Julien Neuhart
60482a5cdf
style: apply gofmt modernization fixes
2026-06-02 19:56:50 +02:00
Julien Neuhart
8668a1d710
feat(chromium): add per-conversion network observability with metrics and exemplars
2026-06-02 19:44:54 +02:00
Julien Neuhart
11ab93aef6
feat(chromium): add conversion I/O attributes to chromium.Pdf span
2026-06-02 19:33:41 +02:00
Julien Neuhart
f6069ef84f
feat(chromium): lift conversions-since-restart and queue depth onto chromium spans
2026-06-02 19:29:58 +02:00
Julien Neuhart
de572fe6b5
refactor(gotenberg): thread engine label into NewProcessSupervisor
2026-06-02 19:25:47 +02:00
Julien Neuhart
8e1ab0110f
refactor(chromium): classify Pdf and Screenshot errors and set span error.type
2026-06-02 19:05:34 +02:00
Heorhii Ovcharenko
c1cdcbdaab
feat(chromium): allow to specify device scale ratio for screenshots ( #1543 )
2026-05-04 21:16:04 +02:00
Julien Neuhart
8f711b0f99
Revert "feat(chromium): skip lifecycle waits when waitForExpression or waitForSelector is set"
...
This reverts commit 430f95f79f .
2026-04-24 11:19:14 +02:00
Julien Neuhart
430f95f79f
feat(chromium): skip lifecycle waits when waitForExpression or waitForSelector is set
2026-04-24 09:28:27 +02:00
Julien Neuhart
7a914fce65
fix(outbound)!: per-module deny-private-ips and deny-public-ips, permissive defaults
2026-04-23 20:01:27 +02:00
Julien Neuhart
a2a8c42457
fix(chromium): default-deny file:// sub-resources when no prefix is allowed
2026-04-22 07:47:19 +02:00
Julien Neuhart
35f1a990a6
fix(chromium): harden outbound URL handling
2026-04-22 07:47:19 +02:00
Julien Neuhart
7549a69f71
feat(otel): switch from software name to binary path
2026-03-28 13:31:28 +01:00
Julien Neuhart
d3a65a587c
feat(supervisor): optional idle shutdown
2026-03-27 21:16:49 +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
08088c15f4
feat(chromium): skip or waits for networkIdle2 event
2026-03-27 11:01:39 +01:00
Julien Neuhart
06b2b2e10c
fix(chromium): better default security and DX for allow / deny lists
2026-03-27 09:47:21 +01:00
Julien Neuhart
2baa59cb3a
refactor(gofix): modernize
2026-02-20 21:21:19 +01:00
Daniel Moran
82401bdfdd
feat(chromium): add support for emulated media features in Chromium ( #1474 )
...
Closes https://github.com/gotenberg/gotenberg/issues/1460
It can be easier to print a "clean" PDF of some pages if you emulate
media features like `prefers-reduced-motion`. Add support for that
emulation.
2026-02-17 20:16:28 +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
Daniel Moran
3220ca4140
feat(chromium): add waitForSelector option to Chromium conversions ( #1446 )
...
* Add `waitForSelector` option to Chromium conversions
Closes #960
As an alternative to waiting on an expression, this allows users to wait
for a specific node matching a selector to become visible in the HTML /
at the remote URL before converting to PDF.
* Fix style / prettify
2026-01-17 14:57:10 +01:00
markfrost
0b211c39eb
feat(chromium): add IgnoreResourceHttpStatusDomains option to filter out resources based on their hostnames ( #1434 )
...
* Introduced `IgnoreResourceHttpStatusDomains` option to filter out resources based on their hostnames
- Introduced `IgnoreResourceHttpStatusDomains` option to filter out resources based on their hostnames during HTTP status code checks.
- Updated relevant functions to handle domain normalization and matching.
- Enhanced the form data handling to include the new option.
- Added integration test scenario to verify the functionality of ignoring specified domains.
* Updated the `normalizeDomains` function to initialize the `normalized` slice with a predefined capacity based on the input `domains` slice length, improving memory allocation efficiency.
2025-12-25 15:36:45 +01:00
Julien Neuhart
b2c3187690
fix(chromium): better native errors handling
2025-11-15 15:10:09 +01:00
Julien Neuhart
c7ccabc6cb
fix(chromium): mark the flag --chromium-incognito as deprecated and ignore its value
2025-10-24 14:03:17 +00:00
Julien Neuhart
db8f0ad9ee
fix(chromium): hypen-data now work everytime
2025-08-12 20:54:53 +02:00
Julien Neuhart
1d8630810b
fix(godoc): typo
2025-05-20 11:50:18 +02:00
Julien Neuhart
ce155fb43e
feat(chromium): add generateTaggedPdf to form fields - closes #1210
2025-05-20 11:49:10 +02:00
Julien Neuhart
3cbf772acf
docs(godoc): fix a bunch of typos
2025-04-17 11:15:52 +02:00
Julien Neuhart
a1596f7c62
feat(api): add debug route
2025-02-04 10:20:29 +01:00
Julien Neuhart
a6f4c5651c
feat(chromium): set the default value of the flag --chromium-restart-after to 10
2025-01-11 11:08:19 +01:00
Tam Nguyen
79f396f6ff
feat(chromium): add GenerateDocumentOutline option
2024-11-18 08:58:26 +01:00
Julien Neuhart
711b43070d
feat(chromium): add failOnResourceLoadingFailed and failOnResourceHttpStatusCodes form fields
2024-11-05 11:44:01 +01:00
Julien Neuhart
8ff9d3bcf1
feat(chromium): add scope to extraHttpHeaders
2024-10-11 13:45:07 +02:00
Julien Neuhart
1252ea076b
feat(chromium): skipNetworkIdleEvent is now true by default
2024-09-29 18:04:37 +02:00
Julien Neuhart
a3647fea8a
fix(chromium): increase the scope of loading failed errors ( #962 )
2024-09-07 15:54:01 +02:00
Julien Neuhart
f87362ec1b
feat(chromium): HTTP Bad Request on net::ERR_CONNECTION_REFUSED
2024-07-01 13:40:12 +02:00
Julien Neuhart
50304dbefe
chore(chromium): remove some 'Optional' comments
2024-06-27 11:53:18 +02:00
Julien Neuhart
b1d94a3845
feat(chromium): add user agent override
2024-06-12 20:51:10 +02:00
Julien Neuhart
0f0a6ce042
feat(chromium): add clip options to screenshot routes
2024-04-25 17:24:23 +02:00
Julien Neuhart
1d66b43da1
feat(chromium): set cookies
2024-04-10 13:43:31 +02:00
Julien Neuhart
bf5056f8fe
feat(chromium): single page PDF
2024-02-23 21:27:18 +01:00
Julien Neuhart
f906ed741d
fix(flags): typos
2024-02-18 17:52:51 +01:00