Commit graph

573 commits

Author SHA1 Message Date
Marcin Strzyz d5e7b4f16f
chore: update rimraf package to version 4 to eliminate "promisify" (#24190)
Migrate to version 4 which returns a promise rather than leverages a
callback. -> https://www.npmjs.com/package/rimraf?activeTab=readme

- contains its own types, eliminate "@types/rimraf"
- Parameter `maxBusyTries` changed to `maxRetries`
2023-07-18 19:58:07 +02:00
Max Schmitt 18dfe680f5
chore: remove heapdump dependency (#24218) 2023-07-13 21:31:58 +02:00
Pavel Feldman 53bf1995db
chore: do not leak internal page handles after closing page (#24169)
Partial fix for https://github.com/microsoft/playwright/issues/6319

After this fix, the following scenario won't leak and the context state
(cookies, storage, etc) can be reused by the new page sessions:

```js
  for (let i = 0; i < 1000; ++i) {
    const page = await context.newPage();
    await page.goto('...');
    await page.close('...');
  }
```
2023-07-12 14:51:13 -07:00
Max Schmitt 1c2313d641
chore: upgrade esbuild to 0.18.11 (#24123) 2023-07-10 22:35:05 +02:00
Andrey Lushnikov a9560253f8
chore: cut 1.36.0 (#24104) 2023-07-07 13:01:17 -07:00
Andrey Lushnikov c3bc8e0620
chore: cut 1.35.0 (#23579) 2023-06-07 12:41:56 -07:00
dependabot[bot] 0feef340c9
chore(deps): bump vite from 4.3.3 to 4.3.9 (#23537) 2023-06-06 11:12:07 +02:00
Max Schmitt a97bdd0016
chore: update typescript to 5.1.3 (#23461)
https://devblogs.microsoft.com/typescript/announcing-typescript-5-1/
2023-06-02 18:57:09 +02:00
Kristo Jorgenson a4a363f4f4
chore: upgrade @types/node to 16.x (#23429)
Co-authored-by: Max Schmitt <max@schmitt.mx>
2023-06-02 10:04:41 +02:00
Andrey Lushnikov b31511e0c9
chore: cut v1.34.0 (#23121) 2023-05-17 19:05:38 -07:00
Sander 5b69c4cf52
chore: bump vite to 4.3.3 (#22711) 2023-05-01 15:19:49 -07:00
dependabot[bot] 76a2afc836
chore(deps-dev): bump yaml from 1.10.2 to 2.2.2 (#22601) 2023-04-25 09:36:42 +02:00
Andrey Lushnikov 4408738d9c
chore: cut 1.33.0 (#22600) 2023-04-24 12:48:02 -07:00
dependabot[bot] b20bd09f5e
chore(deps-dev): bump xml2js from 0.4.23 to 0.5.0 (#22320) 2023-04-14 12:03:40 +02:00
Pavel Feldman a4f67c64e3
chore: allow ts decorators (#22080) 2023-03-29 20:43:08 -07:00
Pavel Feldman d39ff3dc5a
chore: update typescript to 5.0.2 (#22079) 2023-03-29 17:13:09 -07:00
Sander 2428ff8b8b
chore: bump vite to 4.2.1 (#22061) 2023-03-29 14:00:00 -07:00
Andrey Lushnikov 32d33cb8d5
chore: cut 1.32 (#21773) 2023-03-17 19:36:43 -07:00
Dmitry Gozman d904a6129f
chore: run check-deps for all packages (#21395) 2023-03-03 14:50:43 -08:00
Pavel Feldman d7a0b3bb4e
chore: implement pick locator in trace viewer (#20965)
Fixes https://github.com/microsoft/playwright/issues/7853
2023-02-17 11:19:53 -08:00
Dmitry Gozman e77e2d8c7f
chore: mark 1.32.0-next (#20929) 2023-02-15 16:15:42 -08:00
Sander ec17a1ac75
chore(ct): bump packages (#20724) 2023-02-13 13:19:59 -08:00
Dmitry Gozman 0cc0d168cd
chore: mark 1.31-next (#20268) 2023-01-20 19:29:14 -08:00
Sander b363902e1b
feat(ct): https (#19697) 2022-12-28 17:04:23 -08:00
Sander c5d9b8d0fb
chore: update to vite 4 (#19690) 2022-12-27 09:14:39 -08:00
Andrey Lushnikov 0be1fc8559
chore: cut version 1.29 (#19489) 2022-12-15 11:22:35 -08:00
dependabot[bot] 9b29bd232f
chore(deps): bump qs and formidable (#19304) 2022-12-08 10:09:03 +01:00
Dmitry Gozman 81c8620bfe
chore: upgrade internal types to support TypeScript 4.9.3 (#19280)
Fixes https://github.com/microsoft/TypeScript/issues/51619

Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-12-05 17:22:25 -08:00
Andrey Lushnikov 6d82460a02
feat: implement a new image comparison function (#19166)
This patch implements a new image comparison function, codenamed
"ssim-cie94". The goal of the new comparison function is to cancel out
browser non-determenistic rendering.

To use the new comparison function:

```ts
await expect(page).toHaveScreenshot({
  comparator: 'ssim-cie94',
});
```

As of Nov 30, 2022, we identified the following sources of
non-determenistic rendering for Chromium:
- Anti-aliasing for certain shapes might be different due to the
  way skia rasterizes certain shapes.
- Color blending might be different on `x86` and `aarch64`
architectures.

The new function employs a few heuristics to fight these
differences.

Consider two non-equal image pixels `(r1, g1, b1)` and `(r2, g2, b2)`:
1. If the [CIE94] metric is less then 1.0, then we consider these pixels
   **EQUAL**. (The value `1.0` is the [just-noticeable difference] for
   [CIE94].). Otherwise, proceed to next step.
1. If all the 8 neighbors of the first pixel match its color, or
   if the 8 neighbors of the second pixel match its color, then these
   pixels are **DIFFERENT**. (In case of anti-aliasing, some of the
   direct neighbors have to be blended up or down.) Otherwise, proceed
   to next step.
1. If SSIM in some locality around the different pixels is more than
   0.99, then consider this pixels to be **EQUAL**. Otherwise, mark them
   as **DIFFERENT**. (Local SSIM for anti-aliased pixels turns out to be
   very close to 1.0).

[CIE94]: https://en.wikipedia.org/wiki/Color_difference#CIE94
[just-noticeable difference]:
https://en.wikipedia.org/wiki/Just-noticeable_difference
2022-12-02 15:22:05 -08:00
Max Schmitt f8355b940e
chore: bump Babel dependencies (#19026) 2022-11-23 09:37:31 -10:00
winches d09184c34c
chore: add eslint cache (#18876) 2022-11-22 08:46:11 -08:00
Andrey Lushnikov bc78db07df
chore: cut 1.28 branch (#18746) 2022-11-11 15:30:15 -08:00
Andrey Lushnikov db826c9c8c
chore: drive-by fixes for the snapshotPathTemplate (#18715)
- Use `snapshotPathTemplate` for docker screenshots in html-reporter
- Mark the snapshot path template test as slow since it re-spawns
  worker for each project.
- Fix docker smoke tests
2022-11-10 15:50:13 -08:00
Pavel Feldman 2183d9e9a2
chore: use codemirror for editor (#18482) 2022-11-01 15:04:30 -07:00
sand4rt fabe42dc28
chore(ct): bump vite to v3.2.1 (#18427) 2022-10-31 08:58:11 -07:00
sand4rt 098de5009e
chore: bump vite to 3.1.8 (#18095) 2022-10-18 13:09:32 -07:00
Dmitry Gozman a23ee6f14d
test: fix "getByText should work" with tracing enabled, docker smoke tests (#17864) 2022-10-05 21:31:25 -07:00
Dmitry Gozman ed6ecbca2a
chore: cut v1.27.0 (#17859) 2022-10-05 15:30:35 -07:00
Pavel Feldman cadd4d1dd0
chore: migrate http server to ts (#17677) 2022-09-28 17:01:13 -07:00
Andrey Lushnikov 0abb1c773b
devops: fix npm run dtest (#17516)
The `npx playwright docker test` command does not exist any more.
2022-09-21 12:45:25 -07:00
Andrey Lushnikov a12112c24d
devops(docker): add docker integration smoke tests (#17267) 2022-09-14 15:05:18 -07:00
Andrey Lushnikov bc942ef9ea
chore: cut v1.26.0 (#17265) 2022-09-12 10:45:27 -07:00
Andrey Lushnikov 3708ba7a1f
chore: drop adm-zip from dev dependencies (#17198)
This was used in the `repack-juggler`.
2022-09-08 09:04:01 -07:00
Max Schmitt 904801a5eb
test: add initial webview2 tests (#16827) 2022-09-07 20:09:22 +02:00
Max Schmitt 85698f51c7
chore: add missing esbuild to package.json (#17064) 2022-09-05 16:33:05 +02:00
Pavel Feldman 535f3d1564
chore: bump lock deps (#16953) 2022-08-31 18:30:26 -07:00
Robert Niznik 664d4a271e
chore(ct-react): bump vite to v3 and @vitejs/plugin-react to v2 (#15733) 2022-08-21 13:52:02 +02:00
Max Schmitt 2e242e2dff
chore: roll Electron to 19.0.11 (#16024) 2022-08-10 10:41:55 +02:00
Andrey Lushnikov 0c7f086096
chore: cut v1.25 branch (#16390) 2022-08-09 17:09:58 -07:00
Pavel Feldman 5a79054544
feat(innerloop): allow reusing browsers over the remote connection (#16065) 2022-07-31 14:31:17 -07:00