Commit Graph

3907 Commits

Author SHA1 Message Date
Andrey Lushnikov
1efcf442fb
test: disable test on all bigsur (#5375)
Certain GitHub Macs got accidentally updated from 11.0 to 11.2,
which broke this test check.
2021-02-09 08:33:56 -08:00
Andrey Lushnikov
ad557dc6da
devops: introduce goma infrastructure for Chromium builds (#5377)
This patch adds `//browser_patches/chromium/goma.sh` script that
manages goma to build chromium.
2021-02-09 08:33:39 -08:00
Dmitry Gozman
0871a9cfd9
feat(codegen): improve selector generation (#5364)
- Snap to buttons, inputs, selects, etc.
- Try `<label>` selector in addition to the element.
- Use parent selectors when needed.
- Remove xpath fallback as it should be covered with css.
2021-02-08 21:53:17 -08:00
Dmitry Gozman
b50c363bba
docs(selectors): add quick guide section (#5346) 2021-02-08 19:51:11 -08:00
Yury Semikhatsky
ef9995e694
docs: make pdf options strings in java and C# (#5369) 2021-02-08 18:07:27 -08:00
Dmitry Gozman
002d8ef5a7
chore: remove Progress.aborted (#5363)
Most places use Progress.cleanupWhenAborted instead.
2021-02-08 17:33:01 -08:00
Andrey Lushnikov
21c24c2357
devops: do not check for logs existance when building browsers (#5367)
In our *old world*, browser buildbots were polling repo and were
trying to rebuild browsers every 5 minutes. They relied on the presence
of either build or build log on the CDN to avoid continiously
re-building.

In the new world, we trigger builds only when we change the
`BUILD_NUMBER` files, so there's no polling any more.

This patch removes the check for log presence so that those builds that
were failing due to misconfiguration (e.g. Visual Studio license
required updated) could be restarted just from the GitHub UI.
2021-02-08 16:19:37 -08:00
Pavel Feldman
d49a1d8174
chore: kill electron process on ctrl+c (#5366) 2021-02-08 16:04:15 -08:00
Andrey Lushnikov
d499cf08d1
refactor: remove browserPaths in favor of Registry class (#5318)
This patch introduces a new Registry class that incapsulates
all logic regarding browsers and their paths.

Fixes #5278
2021-02-08 16:02:49 -08:00
Pavel Feldman
6680713e84
chore: don't reuse recorder app profile (#5365) 2021-02-08 16:02:23 -08:00
Pavel Feldman
b32be4b3d4
chore: expose electron types (#5362) 2021-02-08 14:39:05 -08:00
Yury Semikhatsky
4bfdaa384b
docs: fix playwright.dev generation error (#5360) 2021-02-08 12:27:17 -08:00
Dmitry Gozman
6d56a110ca
feat(proxy): throw when socks proxy is used with auth (#5358) 2021-02-08 12:07:45 -08:00
Yury Semikhatsky
f35acc258b
docs: improve enum naming (#5359) 2021-02-08 11:58:25 -08:00
Yury Semikhatsky
551338e953
browser(webkit): roll to 02-08 (#5356) 2021-02-08 11:00:05 -08:00
Yury Semikhatsky
bb0af314ba
fix(video): set default size to fit into 800x800 (#5333) 2021-02-08 10:59:48 -08:00
Joel Einbinder
7e757cd531
fix(types): regenerate types for latest doc changes (#5353) 2021-02-08 08:22:54 -08:00
Max Schmitt
da4304a05c
chore: run recorder app in no sandbox (#5345) 2021-02-08 07:38:24 -08:00
Arjun Attam
48a295dcf7
docs(api): stock browsers for media codecs (#5352)
* docs(api): stock browsers for media codecs

* Update docs/src/api/class-browsertype.md

Co-authored-by: Max Schmitt <max@schmitt.mx>

* Update docs/src/api/class-browsertype.md

Co-authored-by: Max Schmitt <max@schmitt.mx>

Co-authored-by: Max Schmitt <max@schmitt.mx>
2021-02-08 18:50:11 +05:30
Andrey Lushnikov
3c657cbae6
browser(chromium): roll to r851527 (#5348) 2021-02-08 01:03:30 -08:00
Andrey Lushnikov
f3a5bba2c4
devops: infra to automate chromium builds (#5347) 2021-02-07 23:54:10 -08:00
Andrey Lushnikov
32ba29a143 devops: introduce compressed dashboard
Compressed dashboard is 10 times smaller yet has all the data to
render flakiness.

Drive-by: remove old dashboard implementations since they are no
longer used.
2021-02-06 22:12:35 -07:00
Dmitry Gozman
f094f65ef3
docs: add section for custom setup codegen (#5339) 2021-02-06 14:57:01 -08:00
Joel Einbinder
3d14780bcb
fix(docker): add fonts-liberation for chromium (#5344) 2021-02-06 09:05:45 -08:00
Yury Semikhatsky
a1b3164864
docs: fix nested union handling (#5341) 2021-02-05 16:32:13 -08:00
Dmitry Gozman
983e04374a
chore: fix build/packaging for recorder and traceviewer (#5338) 2021-02-05 16:19:09 -08:00
Yury Semikhatsky
d3cc1d7648
docs: add name for SameSiteEnum (#5340) 2021-02-05 16:13:48 -08:00
Yury Semikhatsky
4b74f5693c
docs: add enum aliases (#5335) 2021-02-05 15:28:48 -08:00
Pavel Feldman
c0610ccef4
feat(recorder): remove recorder overlay toolbar (#5334) 2021-02-05 14:24:27 -08:00
Dmitry Gozman
9c0609b0ec
fix(trace viewer): do not render invisble tabs (#5322) 2021-02-05 12:56:45 -08:00
Dmitry Gozman
de30ee0aa8
fix(oopifs): account for various races between processes (#5320)
Consider the following situation (one among many possible).
- FrameA has an oopif child FrameB;
- FrameA navigates to same-process origin (e.g. about:blank);
- at the same time, FrameC is attached to the FrameB in the
  FrameB's process.

In this case, we get `frameNavigated` event for FrameA, immediately
followed by `frameAttached` event for FrameC. Since we detach all
FrameA's child frames on navigation, including the oopif FrameB,
there is no parent frame for FrameC to attach to.

In general, multiple processes coming from oopif may send their
events in wildly different order, and their view about the frame
tree may not always correspond to the "up to date" frame tree as
seen from the main frame's process. We try to keep our frame tree
aligned with what main process thinks, and ignore events that
reference frames absent in this tree.

Drive-by: handle filechooser exceptions because of async processing.
2021-02-05 11:30:44 -08:00
Yury Semikhatsky
494f0f63cc
docs: update route callback type for java (#5324) 2021-02-05 09:39:03 -08:00
Yury Semikhatsky
28e5975772
docs: define java specific waitFor* methods (#5315) 2021-02-04 21:15:14 -08:00
Dmitry Gozman
0cbb2c14e6
feat(text selector): match text in child nodes (#5293)
This changes `text=` and `:text()` selectors to match the element when:
- it's combined text content matches the text;
- combined text content of any immediate child does not match the text.

This allows the following markup to match "Some bold and italics text":
`<div>Some <b>bold</b> and <i>italics</i> text</div>`.

For the reference, "combined text content" is almost equal to `element.textContent`,
but with some changes like using value of `<input type=button>` or ignoring `<head>`.

This also includes some caching optimizations, meaningful in complex matches
that involve multiple calls to the text engine.

Performance changes (measured on large page with ~25000 elements):
- `:has-text()` - 14% faster.
- `text=` - 50% faster.
- `:text()` - 0-35% slower.
- `:text-matches()` - 28% slower.
2021-02-04 17:44:55 -08:00
Pavel Feldman
c1b08f1a8c
feat(recorder): allow dragging toolbar (#5316) 2021-02-04 14:41:53 -08:00
Joel Einbinder
d1aad632ee
browser(webkit): fix scrolling a second time on linux (#5173) 2021-02-04 12:12:04 -08:00
Anže Vodovnik
ff06399afd
docs(csharp): events convention based naming fix for csharp (#5238)
* docs(gen): Updating events names to camelCase.
* docs(gen): updating generator to match new assumption for event names
* docs(gen): renaming references to events
2021-02-04 19:34:09 +01:00
Anže Vodovnik
cf96b15051
fix(docs): ignore case when validating order of events and methods (#5309) 2021-02-04 19:19:38 +01:00
Yury Semikhatsky
997bd0827c
feat(webkit): bump to 1432 (#5300) 2021-02-04 08:53:00 -08:00
Pavel Feldman
c2b8718bae
fix(waitForFunction): process isFunction auto-detection (#5312) 2021-02-04 08:45:59 -08:00
Pavel Feldman
17986773f8
feat: remove chaining from trace viewer preview (#5265) 2021-02-04 06:24:53 -08:00
Pavel Feldman
dd9b51d68b
chore: friendlier install failure message (#5281) 2021-02-04 06:23:47 -08:00
Joel Einbinder
3126fee780
fix(lint): correctly find api.ts on windows (#5308) 2021-02-04 05:31:59 -08:00
Andrey Lushnikov
3c36322c72
feat(ffmpeg): roll FFMPEG to r1005 (#5303)
Drive-By: update `//utils/roll_browser.js` script to support FFMPEG

References #5278
2021-02-03 21:15:09 -08:00
Andrey Lushnikov
039e7af05f
feat(firefox): roll Firefox to r1228 (#5302) 2021-02-03 20:59:47 -08:00
Andrey Lushnikov
d851bcead7
devops: bundle ffmpeg license file with our archives (#5301)
References #5278
2021-02-03 19:36:10 -08:00
Pavel Feldman
fe2c529fda
docs: complete sentences with full stop (#5298) 2021-02-03 18:25:06 -08:00
Pavel Feldman
9841f6dbcb
chore: remove the 1.8.0a1 mentions (#5297) 2021-02-03 18:10:55 -08:00
Yury Semikhatsky
6ae2e576d8
fix: properly detect function literals (#5296) 2021-02-03 16:56:36 -08:00
Pavel Feldman
847bea2f83
chore: remove force_expr parameter from python api (#5295) 2021-02-03 16:39:08 -08:00