Skip to content

feat(tracing): support BufferSize option in Tracing.StartAsync - #3551

Merged
kblok merged 4 commits into
masterfrom
cursor/implement-upstream-change-15328-a3ef
Aug 14, 2026
Merged

feat(tracing): support BufferSize option in Tracing.StartAsync#3551
kblok merged 4 commits into
masterfrom
cursor/implement-upstream-change-15328-a3ef

Conversation

@kblok

@kblok kblok commented Aug 13, 2026

Copy link
Copy Markdown
Member

Ports puppeteer/puppeteer#15328 from puppeteer-core-v25.7.0.

What changed

  • Added TracingOptions.BufferSize (int?), forwarded to CDP as traceConfig.traceBufferSizeInKb
  • Switched Tracing.StartAsync to send a TraceConfig with included/excluded categories (required to set buffer size; matches upstream)
  • Added TracingTraceConfig messaging type + JSON source-gen registration
  • Added should support bufferSize option test

Why

Upstream tracing now allows callers to size the in-memory trace buffer. Without this, PuppeteerSharp cannot pass bufferSize through to Chrome.

Test plan

  • BROWSER=CHROME PROTOCOL=cdp Tracing tests
  • Full CI green
Open in Web Open in Cursor 

cursoragent and others added 4 commits August 13, 2026 20:30
Port upstream Puppeteer PR #15328: add TracingOptions.BufferSize and pass
it as traceBufferSizeInKb via CDP Tracing.start TraceConfig. Migrate
Tracing.start to use TraceConfig with included/excluded categories to
match upstream.

Co-authored-by: Darío Kondratiuk <dariokondratiuk@gmail.com>
Co-authored-by: Darío Kondratiuk <dariokondratiuk@gmail.com>
Co-authored-by: Darío Kondratiuk <dariokondratiuk@gmail.com>
Co-authored-by: Darío Kondratiuk <dariokondratiuk@gmail.com>
@cursor cursor Bot changed the title Implement upstream PR #15328 feat(tracing): support BufferSize option in Tracing.StartAsync Aug 14, 2026
@kblok

kblok commented Aug 14, 2026

Copy link
Copy Markdown
Member Author

Upstream PR #15328 → PuppeteerSharp

Upstream

  • PR: puppeteer/puppeteer#15328
  • Title: feat(tracing): support bufferSize option in tracing.start
  • Summary: Allow callers to set the Chrome tracing buffer size via tracing.start({ bufferSize }), forwarded to CDP traceConfig.traceBufferSizeInKb.

PuppeteerSharp mapping

Upstream PuppeteerSharp
tracing.start({ bufferSize }) TracingOptions.BufferSizeTracing.StartAsync
CDP Tracing.start + traceConfig TracingStartRequest + new TracingTraceConfig
Spec test for bufferSize TracingTestsshould support bufferSize option

Changes

  1. TracingOptions – Added nullable BufferSize (int?).
  2. Tracing.StartAsync – Builds a TraceConfig with included/excluded categories and optional TraceBufferSizeInKb (matches upstream; categories alone are not enough when setting buffer size).
  3. Messaging – Added TracingTraceConfig; registered in SystemTextJsonSerializationContext.
  4. Tests – Added coverage that bufferSize is sent on the CDP start request.

Verification

  • BROWSER=CHROME PROTOCOL=cdp Tracing filter: passed

@kblok
kblok marked this pull request as ready for review August 14, 2026 14:22
@kblok
kblok merged commit a8e2da4 into master Aug 14, 2026
17 checks passed
@kblok
kblok deleted the cursor/implement-upstream-change-15328-a3ef branch August 14, 2026 14:22
@kblok kblok mentioned this pull request Aug 14, 2026
sondresjolyst pushed a commit to sondresjolyst/garge-api that referenced this pull request Aug 24, 2026
Updated [PuppeteerSharp](https://github.com/hardkoded/puppeteer-sharp)
from 25.5.0 to 25.7.0.

<details>
<summary>Release notes</summary>

_Sourced from [PuppeteerSharp's
releases](https://github.com/hardkoded/puppeteer-sharp/releases)._

## 25.7.0

## What's Changed
* fix: roll Firefox to 153.0.4 by @​kblok in
hardkoded/puppeteer-sharp#3554
* docs: clarify CdpHttpRequest owns its logger (upstream #​15338 N/A) by
@​kblok in hardkoded/puppeteer-sharp#3552
* feat(tracing): support BufferSize option in Tracing.StartAsync by
@​kblok in hardkoded/puppeteer-sharp#3551
* refactor: track CDP listeners with DisposableActionsStack by @​kblok
in hardkoded/puppeteer-sharp#3555
* feat: roll Chrome to 152.0.7977.42 by @​kblok in
hardkoded/puppeteer-sharp#3553
* Bump version to 25.7.0 by @​kblok in
hardkoded/puppeteer-sharp#3556


**Full Changelog**:
hardkoded/puppeteer-sharp@v25.6.0...v25.7.0

## 25.6.0

## What's Changed
* Replace hand-rolled retry/timeout plumbing with RxSharp by @​kblok in
hardkoded/puppeteer-sharp#3520
* Roll browsers: Chrome 151.0.7922.77, Firefox 153.0.3 by @​kblok in
hardkoded/puppeteer-sharp#3546
* Propagate ILoggerFactory through BiDi sessions, frames and realms by
@​kblok in hardkoded/puppeteer-sharp#3547
* Default BidiRealm logger to NullLogger by @​kblok in
hardkoded/puppeteer-sharp#3550
* Don't fail per-frame CDP fan-out when an OOP iframe goes away by
@​kblok in hardkoded/puppeteer-sharp#3548


**Full Changelog**:
hardkoded/puppeteer-sharp@v25.5.0...v25.6.0

Commits viewable in [compare
view](hardkoded/puppeteer-sharp@v25.5.0...v25.7.0).
</details>

[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=PuppeteerSharp&package-manager=nuget&previous-version=25.5.0&new-version=25.7.0)](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 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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants