Releases: hardkoded/puppeteer-sharp
Releases · hardkoded/puppeteer-sharp
v21.1.1
What's New
- Add support for 'Default' SameSite cookie property (#14637) by @kblok in #3151
- Implement page.CaptureHeapSnapshotAsync() (#3114) by @kblok in #3154
- Handle shadow DOM in Frame.FrameElementAsync (#13156) by @kblok in #3155
- Add local fonts to OverridePermissions enum by @ciaranodonnell in #3157
What's Changed
- Suppress xkbcomp warnings from Xvfb in CI by @kblok in #3148
- Remove other nupkg packages when building PuppeteerSharp.Cdp by @steveberdy in #3149
- feat(bidi): Improve window management error handling by @kblok in #3150
- Add Claude Code skills and settings by @kblok in #3156
- Implement frame.frameElement() for WebDriver BiDi by @kblok in #3152
New Contributors
- @ciaranodonnell made their first contribution in #3157
Full Changelog: v21.1.0...v21.1.1
v21.1.0
What's New
- New PuppeteerSharp.Cdp package with no WebDriverBidi dependency. Ideal for Chrome-only AOT projects by @steveberdy in #3135
- Migrate from .NET 8 to .NET 10 by @kblok in #3129
- Implement Page.ResizeAsync by @kblok in #3130
- Add Browser.ScreensAsync, AddScreenAsync, and RemoveScreenAsync methods (#14445) by @kblok in #3132
- Add support for background page creation (#14547) by @kblok in #3136
- Publish Browser.Get|SetWindowBounds and Page.WindowId (#14494) by @kblok in #3131
What's Changed
- Disable ReadAnythingOmniboxChip by default by @kblok in #3127
- Migrate from postData to postDataEntries in CdpHttpRequest by @kblok in #3126
- Enhance accessibility tree snapshot with more properties (#14643) by @kblok in #3128
- Fix flaky PageGoBackTests.ShouldWork by awaiting navigation response by @kblok in #3133
- Sync tracing tests with upstream Puppeteer by @kblok in #3137
- Use dynamic ports for test servers by @kblok in #3138
- Replace WebDriverBiDi-Relaxed with WebDriverBiDi 0.0.43 by @kblok in #3139
- Add Browser.CreateCDPSessionAsync() for browser-level CDP commands by @kblok in #3140
- Check executable path exists before skipping download by @andrewgee in #2905
- Deprecate Cookie attribute SameParty (#14550) by @kblok in #3142
- Fix ChromeHeadlessShell launch crash with Invalid browser error by @kblok in #3141
- Fix flaky ShouldProvideAccessToElements OOPIF test by @kblok in #3143
- Fix ChromeHeadlessShell launch crash by @kblok in #3146
- Update README with v21 news, packages, and JetBrains logo by @kblok in #3147
- Fix CookiePartitionKey serialization and add partition key test by @kblok in #3144
New Contributors
- @andrewgee made their first contribution in #2905
- @steveberdy made their first contribution in #3135
Full Changelog: v21.0.1...v21.1.0
v21.0.1
v21.0.0
New Features
- WebDriver BiDi protocol support for Firefox!!!!! PuppeteerSharp now supports the WebDriver BiDi protocol, enabling Firefox automation alongside existing Chrome/Chromium CDP support. Select the protocol via
LaunchOptions.Protocol. - New ProtocolType enum: ProtocolType.Cdp (default) and ProtocolType.WebdriverBiDi.
Breaking Changes
- AcceptInsecureCerts removed from IBrowser: This property was removed from the public interface. Insecure certs are now handled internally via the Security.setIgnoreCertificateErrors CDP command during browser creation.
- Non-generic EvaluateExpressionAsync() and EvaluateFunctionAsync() return type changed: Changed from Task<JsonElement?> to Task (void). If you need a return value, use the generic overloads EvaluateExpressionAsync() /
EvaluateFunctionAsync(). - IBrowserContext now extends IDisposable and IAsyncDisposable: Browser contexts should now be properly disposed.
- Several protected methods on Page changed to internal: OnFrameAttached, OnFrameDetached, OnFrameNavigated, OnRequestFailed, OnRequestFinished, OnRequestServedFromCache, OnResponse, OnDOMContentLoaded, OnLoad. These were
internal event-raising methods that should never have been protected. - CDPSession.Close() signature changed: From internal abstract void Close() to public abstract void Close(string closeReason).
Minor Changes
- Dependency updates: System.Text.Json upgraded to 10.0.0, Microsoft.Bcl.AsyncInterfaces upgraded to 10.0.0.
- New dependency: WebDriverBiDi-Relaxed 0.0.40-beta.1 added for BiDi protocol support.
- Custom query handlers are now global: CustomQuerySelectorRegistry changed from connection-scoped to a global singleton.
- Frame.AddScriptTagAsync() is now a concrete implementation on the base Frame class instead of abstract.
- Package now includes README.md in the NuGet package.
- Fix flaky ShouldReportScriptsAcrossNavigationsWhenDisabled test: Added WaitForNetworkIdleAsync() between navigations to prevent coverage data loss.
v20.2.6
What's Changed
- Mark LogProcess property as obsolete by @Copilot in #3072
- Fix ProxyServer default to allow browser context proxy inheritance by @Copilot in #3073
- Add bitness and wow64 properties to UserAgentMetadata by @Copilot in #3074
- Fix CookiePartitionKeyConverter to support string deserialization by @Copilot in #3075
- refactor: align ChromeTargetManager with Puppeteer PR #14602 by @Copilot in #3107
- Make sure we run Page.enable before Page.getFrameTree by @kblok in #3101
Full Changelog: v20.2.5...v20.2.6
v20.2.5
What's Changed
- Don't assume Params type by @bgrainger in #3028
New Contributors
- @bgrainger made their first contribution in #3028
Full Changelog: 20.2.4...v20.2.5
v20.2.4
What's Changed
- Remove redundant .ToArray()/.ToList() by @IliaBrahinets in #2944
- Decouple Realm from FrameManager by @kblok in #2950
- Update sponsors by @github-actions[bot] in #2952
- Improve Precision of Paper Sizes in Inches to 4 Decimal Places by @jnyrup in #2953
- Add
LocalNetworkAccesstoOverridePermission.csby @miroljub1995 in #2963 - Update sponsors by @github-actions[bot] in #2964
New Contributors
- @miroljub1995 made their first contribution in #2963
Full Changelog: v20.2.2...20.2.4
v20.2.2
v20.2.1
v20.2.0
What's new
What's Changed
- Reduce memory allocations in LowSurrogateConverter for .NET 8 by @IliaBrahinets in #2901
- Update sponsors by @github-actions in #2908
- fix: Restore runtime compatibility with System.Text.Json 6.0 by @leonardo-fernandes in #2904
- Update sponsors by @github-actions in #2919
- Use source generated regexes for hot paths by @IliaBrahinets in #2927
Full Changelog: v20.1.3...v20.2.0