Commit Graph

20139 Commits

Author SHA1 Message Date
Ben M
e0065e2ec5 chore: add Cypress Conf to README.md (#27569)
chore: adding in small promo for Cypress Conf.
2023-08-17 10:55:53 -04:00
Jordan
43af15aead chore: update aws sso profile docs (#27558)
* Update release-process.md

I ran into this issue in the latest release and wanted to update this so others don't run into this in the future as well

* fix profile
2023-08-17 08:19:08 +10:00
Matt Schile
ea238360c2 chore: hide reporter when protocol is enabled (#27482) 2023-08-16 12:07:09 -06:00
Ryan Manuel
4bbf119817 Merge branch 'develop' into release/13.0.0 2023-08-16 10:16:50 -05:00
Adam Stone-Lord
ae4cf2b553 chore: add driver, reporter, config as implicit dependencies for runner package (#27559) 2023-08-16 00:21:41 -04:00
Lachlan Miller
87ce14a70f breaking: relative resource requests in ct (#27510)
* fix: support ressources with relative paths

* fix: support ressources with relative paths - review changes

* try fixing contributor workflow

* try to fix regex

* try again

* try workflow again

* Revert changes to workflow

* exclude tests from contributor workflow

* Update cli/CHANGELOG.md

Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>

* Update packages/server/lib/controllers/iframes.ts

Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>

* fix terst

* use URLSearchParams

---------

Co-authored-by: Florian Riedel <low@fochlac.com>
Co-authored-by: Adam Stone-Lord <adams@cypress.io>
Co-authored-by: Jordan <jordan@jpdesigning.com>
Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>
2023-08-16 13:25:23 +10:00
Adam Stone-Lord
0a86ec686e chore: simplify build script (#27547)
* chore: simplify build script

* update CI workflows

* fix workflows

* empty commit because Percy weirdness
2023-08-15 19:54:33 -04:00
Bill Glesias
f1b3741a40 Merge pull request #27537 from cypress-io/chore/merge_develop_into_release_13
chore: merge develop into release 13
2023-08-15 17:13:59 -04:00
Ryan Manuel
942e801716 update snapshot 2023-08-15 14:00:00 -05:00
Ryan Manuel
462ee04df9 feat: enable the protocol to retrieve response bodies from the network proxy (#27462)
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Cacie Prins <cacie@cypress.io>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
fix: do not correlate cached requests in the proxy (#27525)
2023-08-15 13:41:36 -05:00
Bill Glesias
5db296bf8f chore: set v13 release date to august 22nd in the changelog 2023-08-15 13:31:51 -04:00
Bill Glesias
c5120c717b Merge branch 'release/13.0.0' of https://github.com/cypress-io/cypress into chore/merge_develop_into_release_13 2023-08-15 12:41:50 -04:00
Bill Glesias
19fec25f32 Merge branch 'develop' of https://github.com/cypress-io/cypress into chore/merge_develop_into_release_13 2023-08-15 12:39:23 -04:00
Bill Glesias
bb005e0888 chore: fix protocol_spec snapshot system-test to have webpack 5 sourcemaps 2023-08-15 12:37:55 -04:00
Jordan
95b4a14f13 chore: release version 12.17.4 (#27557) v12.17.4 2023-08-15 11:12:01 -04:00
Cacie Prins
47b18d2268 chore: additional metadata for protocol capture errors (#27507)
* split protocol errors into fatal/nonfatal

* change test stubs to implement capture protocol iface

* attach spec and project metadata to nonfatal error reports

* starting to test error reporting

* properly report fatal errors to artifact endpoint

* more meaningful error reporting

* better error reporting for protocol download + initialization errors

* refactgor protocol stubs for easier instantiation and use

* tests for beforeSpec error state

* fixes api spec tests

* code review comments

* revert import style for routes to appease tscheck

* update snapshots

* fix typedef for ArtifactLike, set error message on beforeSpec stub
2023-08-15 10:37:59 -04:00
Bill Glesias
fb8367474d Merge branch 'chore/merge_develop_into_release_13' of https://github.com/cypress-io/cypress into chore/merge_develop_into_release_13 2023-08-15 09:38:27 -04:00
Bill Glesias
71408acc54 Merge branch 'develop' of https://github.com/cypress-io/cypress into chore/merge_develop_into_release_13 2023-08-15 09:38:21 -04:00
Ryan Manuel
519aff9869 Merge branch 'release/13.0.0' into chore/merge_develop_into_release_13 2023-08-15 08:31:27 -05:00
Matt Schile
9bfa454ad3 chore: updating protocol to support test isolation off (#27523) 2023-08-14 13:02:06 -06:00
Adam Stone-Lord
d0abe2a305 chore: skip flaky scaffold-project test (#27518) 2023-08-14 12:08:39 -04:00
Adam Stone-Lord
f4f55cb23a chore: remove flakey Percy snapshot from scaffolding CT 3rd party (#27519) 2023-08-14 12:08:20 -04:00
Bill Glesias
a956fb4d0d Merge branch 'develop' of https://github.com/cypress-io/cypress into chore/merge_develop_into_release_13 2023-08-14 12:01:26 -04:00
Bill Glesias
faf66dc737 chore: fix gulp watch scripts using webpack as stdout is looking for webpack 4 based output and now needs to be updated to 5 (#27548) 2023-08-14 12:00:41 -04:00
semantic-release-bot
6b2612b6ba chore: release @cypress/webpack-batteries-included-preprocessor-v3.0.0
[skip ci]
@cypress/webpack-batteries-included-preprocessor-v3.0.0
2023-08-14 10:44:50 -04:00
Bill Glesias
b2b56cbd69 Merge branch 'develop' of https://github.com/cypress-io/cypress into chore/merge_develop_into_release_13 2023-08-14 10:37:14 -04:00
Bill Glesias
00fb5782eb breaking: support webpack v5
BREAKING CHANGE: Since cypress now bundles with webpack v5, the minimum webpack version is now version 5 as this iswhat cypress will support in the monorepo moving forward. If you wish to use webpack 4, please use v2 of this package.
2023-08-14 09:38:21 -04:00
Bill Glesias
9f49d588a0 Merge branch 'release/13.0.0' of https://github.com/cypress-io/cypress into chore/merge_develop_into_release_13 2023-08-14 09:32:41 -04:00
Ryan Manuel
6ac7febe2d feat: remove protocol environment variable from binary (#27506) 2023-08-11 16:02:32 -05:00
Adam Stone-Lord
ea4809f788 chore: remove flaky Percy snapshot from ConfigCode spec (#27532)
* chore: remove flaky Percy snapshot from global-mode spec

* chore: remove flaky Percy snapshot from ConfigCode spec

* remove unintended change
2023-08-11 15:14:20 -04:00
Adam Stone-Lord
df6d1c2395 chore: remove flaky Percy snapshot from global-mode spec (#27526) 2023-08-11 15:02:55 -04:00
Ryan Manuel
8b14bc4a7c fix: issue with describe level test isolation and navigating to about:blank (#27522) 2023-08-11 13:38:40 -05:00
Adam Stone-Lord
e28c44eaa2 chore: skip flaky system tests (#27533) 2023-08-11 13:59:02 -04:00
Jordan
1061f858a8 chore: update tough cookie (#27515)
* chore: update tough-cookie from 4.0.0 to 4.1.3. requires v8 snapshot update

* fix: tough-cookie as of 4.1 doesn't default sameSite undefined to none any longer. However, we want to set sameSite === undefined to lax as the default as this is the case in every standard browser, except firefox. We did this previously and this is behavior we want to continue to preserve, even for security reasons

* chore: update v8 snapshots

* fix issue with global toString

* chore: run ci

* chore: update @cypress/request to 2.88.22 and @cypress/request-promise to 4.2.7 [run ci]

* remove jsdom and start-server-and-test

* revert @cypress/request back to 2.88.12

* update changelog entry

* remove uneeded deps

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2023-08-11 13:42:36 -04:00
Bill Glesias
fe6d3274f4 Merge branch 'develop' into chore/merge-develop-v13 2023-08-11 13:25:08 -04:00
Adam Stone-Lord
dbddcc1f65 chore: skip flaky go test in driver commands (#27520) 2023-08-11 10:29:39 -04:00
cypress-bot[bot]
3eeb43b05f chore: updating v8 snapshot cache 2023-08-11 10:57:09 +00:00
cypress-bot[bot]
72f4276aa9 chore: updating v8 snapshot cache 2023-08-11 08:41:57 +00:00
cypress-bot[bot]
2de9e764c0 chore: updating v8 snapshot cache 2023-08-11 06:50:14 +00:00
Bill Glesias
9dd8c72134 chore: bump loaders and optimize webpack configuration (#27505)
* chore: update ts-loader from v8 to v9

* chore: update sass-loader from v10 to v13

* chore: update postcss-loader from v4 to v7

* chore: update mini-css-extract-plugin from v1 to v2

* chore: update html-webpack-plugin from v4 to v5

* chore: update css-loader from v5 to v6

* chore: update copy-webpack-plugin from v6 to v 11

* chore: update babel and babel loader to latest

* chore: remove Url import from validation as it should be available globally

* chore: update coffee-loader to latest and coffeescript to 2.6.0. coffee
script > 2.6.0 has issues with packheard transpilation, which likely
isnt worth the squeeze here to update it further

* chore: fix react component tests with webpack 4 as babl loader 9 only works with webpack 5, so we need ot pin the dep to 8 in the system-test project

* chore: remove dependency on file-loader and opt for ubilt in assert handling where applicable. Additionally, remove react-svg-loader and move to svgr loader inside the runner to bundle svgs needed for react components. Make sure that all SVGs are being imported correctly

chore: tell webpack preprocessor to process svgs inside of e2e tests for
the reporter. We did not need this before because we were using
react-svg-loader, which was used directly in source to process the svg
and allowed the svg to work under test. Since the source code is now
bundler independent, we need to tell cypress to bundle the svgs under
test. To do this, we pass our webpack config into
@cypress/webpack-preprocessor to allow loading the svgs. This is not a
breaking change.

* chore: switch from hash to contenthash

* chore: remove use of moduleIds for chunkIds as the defaults are likely better and handle caching/debugging better

* chore: mark tests that need to be updated as node 12 and 14 are no longer supported. node 12 doesnt ship with fs/promises, which causes fatal errors with babel-loader 9

try to test against new docker images [run ci]

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* skip http/https form submittal unit tests for experimental webkit due to the clientRoute 404ing after submitting

* chore: pin webpack 5 for component tests in cy in cy to prevent using 4 from hoisted deps [run ci]

* build binaries [run ci]

* chore: bump circle cache [run ci]

* fix: turn off svgo from @svgr/webpack to preserve our scss class names within the svg. see https://react-svgr.com/docs/options/#svgo [run ci]

---------

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
2023-08-11 13:54:50 +10:00
Adam Stone-Lord
28189fb577 chore: remove check-ts from Gulp (#27492)
* chore: update build-npm-modules script

* chore: update build-npm-modules script

* chore: update build-npm-modules script

* chore: update build-npm-modules script

* [run ci]

* we can't clean without building after

* update commands

* add config for data-context build step

* fix output configurations for npm packages, add gitignores

* revert changes to config and data-context build steps

* run with cache

* fix outputs for cli

* actually fix outputs

* test with cache

* chore: remove check-ts from Gulp and use Nx

* try limiting concurrency

* try concurrency 1

* add check-ts to packages where it is missing

---------

Co-authored-by: jordanpowell88 <jordan@jpdesigning.com>
2023-08-10 16:04:25 -04:00
Cacie Prins
fff74900fb feat: protocol terminal output (#27402)
* uploading initiation & legit no upload messaging

* report errors

* makes upload reporting uniform across artifact types

* retrieve capture meta from correct cloud endpoint

* moves skipped artifact insertion to more reasonable point

* rm unneccessary paren around Promise.all on upload

* improve zipped filesize determination for protocol uploads, clean up get db signature in protocol manager

* changelog

* add url onto protocol failure report

* rm unused err.cause consts

* ensure artifact PUT server mock resolves in system tests

* extract terminal output logic from upload flow, mask filepaths and filesizes in system tests

* update return shape for postRun when test replay is enabled

* pad beginning of liine for upload reports

* update upload messaging snapshots for record spec

* improve trailing whitespace for artifact upload terminal output

* since we are now waiting for artifact report, must include urls in test assertion

* respect quiet mode

* address correct index of reqs for api reordering specs test

* updates snapshots & adds missing artifacts PUT req for api skips specs not in parallel

* updates tests for skipping specs in parallel

* update snapshot for no upload when video disabled test

* update snapshot for update instance 500

* updates snapshot for postInstanceTests 500

* update instance stdout 500 snapshot update

* improve message format when error on uploading, update snapshots

* snapshot for api retry on error

* update snapshot for sendPreflight system tests

* update snapshots for api interaction private tests limit warning

* update snapshots when over tests limit

* updates snapshots for protocol retrieval, bypass stub verification in test mode

* set gzip header on stubbed capture code server endpoint so client can verify

* accept BROWSER env var to reduce screenshot dimension difference from local to ci

* adds artifacts PUT to manifest for stdout 500 system test

* fixes snapshot browser workaround; updates url manifest for record system tests

* fix whitespace between filesize and path in upload manifest

* manually update snapshots for video_compression

* adds system tests for disabled message from server, file size exceeded

* additional tests, bugfixes

* add logging to determine source of ci error with db files

* ensure protocol tmp dir is created before tests

* rm test env force return of failed sig check on protocol runtime

* code review comments

* fix priority nums on artifact readout

* rm commented code from protocol stub
2023-08-10 13:49:13 -04:00
Jordan
9e60aeba8f chore: upgrade lerna to 6, cache build step (#26913)
* chore: update build-npm-modules script

* chore: update build-npm-modules script

* chore: update build-npm-modules script

* chore: update build-npm-modules script

* chore: update lerna to 6

* [run ci]

* try caching build step

* we can't clean without building after

* add dependencies on scripts for npm packages

* update commands

* add config for data-context build step

* fix output configurations for npm packages, add gitignores

* revert changes to config and data-context build steps

* fix outputs

* run with cache

* fix outputs for cli

* actually fix outputs

* test with cache

---------

Co-authored-by: astone123 <adams@cypress.io>
2023-08-10 11:12:38 -04:00
Lachlan Miller
d27e2494fa chore: protocol/mount before async (#27511)
Co-authored-by: David Kasper <dave.m.kasper@gmail.com>
2023-08-10 08:44:18 -05:00
cypress-bot[bot]
144d446eeb chore: updating v8 snapshot cache 2023-08-09 21:53:22 +00:00
cypress-bot[bot]
029c0319cf chore: updating v8 snapshot cache 2023-08-09 19:16:03 +00:00
cypress-bot[bot]
66fa61ed01 chore: updating v8 snapshot cache 2023-08-09 17:32:30 +00:00
Bill Glesias
171d1fa646 chore: update to webpack v5 (#27438)
* chore: [run ci] does further prerequisites for webpack 5:
https://webpack.js.org/migrate/5/#make-sure-your-build-has-no-errors-or-warnings
https://webpack.js.org/migrate/5/#make-sure-to-use-mode
https://webpack.js.org/migrate/5/#update-outdated-options
https://webpack.js.org/migrate/5/#test-webpack-5-compatibility
app builds and runs locally. Time to test out in CI and see if buffer or
process need to be polyfilled by the build

* chore: upgrade to webpack 5 and do the bare minimum to get it working

* chore: get @packages/extension working

* chore: add TODOs to finish after webpack 5 update

* chore: update the webpack config for npm/webpack-batteries-included-preprocessor to be webpack 5 compliant

* chore: patch whatwg-url 7.1.0. package 'source-map' uses
whatwg-url@7.1.0 which has a dependency on punycode node expected API.
since punycode is now polyfilled for us implicitly via the punycode npm
package, the API signatures are a bit different
https://github.com/mathiasbynens/punycode.js/blob/main/punycode.js#L101
vs https://nodejs.org/api/punycode.html#punycodeucs2. The patch uses the
punycode npm package expected API and is needed for source maps to work
for cy.origin() dependencies for Cypress.require()

* chore: convert whatwg patch into dev patch as source-map is not installed when building the binary / installing prod dependencies

* chore: only move production level patches into the binary dist directory for yarn install --production

* chore: remove --openssl-legacy-provider code for node versions 17 and over as webpack has been updated to v5

* chore: fix the webpack-batteries-included-preprocessor tests by shimming the correct node globals and built ins

* chore: provide the define plugin and evalDevtoolPlugin again as we need define in order to build the react-dom library correctly in the bundle to not include the development version

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: fix the webpack preprocessor not to change promise references under the hood when compiling the first bundle, as it was causing the webpack preprocessor to hang as the reference itself was different

* chore: fix issues from readFile that were caused by Webpack 5 using 'path-browserify'

* chore: update chrome component testing snapshots to match Webpack 5 changes

* chore: fix mismatched snapshots from webpack 5 update

* chore: use Cypress.Buffer instead of Buffer for selectFile system test to avoid having to polyfill Buffer from webpack

* chore: fix system test webpack path that now includes e2e workspace

* chore: patch enhanced-resolve to properly discover the pnp api for the yarn_v3.1.1_pnp_spec.ts system test. see https://github.com/webpack/enhanced-resolve/issues/263 for more details

* chore: set stats to 'none' for experimentalSingleTabMode to prevent different webpack compiled terminal formatting in the snapshot between local and CI.

* chore: fix node built in tests and configure webpack-batteries-included-preprocessor correctly

* chore: fallback to buffer correctly in config, even though there is no impact due to the provide plugin

* Update binary-cleanup.js to exclude added build dependencies for webpack
5 added by webpack-terser-plugin under the hood

* chore: add stream-browserify to webpack preprocessor batteries included as a dep as its used in the config [run ci]

* chore: make sure process and buffer are installed in the CLI for webpack provide

* chore: build cross platform binaries [run ci]

* chore: fix webpack evalDevToolPlugin instantiation [run ci]

* run all binary jobs [run ci]

* chore: updating v8 snapshot cache

* add find-up to the entry points that need to be kept

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: fix mocha build warnings

* chore: fix STRIPPED_INTEGRITY_TAG import warnings

* chore: add changelog event

---------

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2023-08-09 11:59:36 -04:00
Dave Kasper
421c7a3e24 chore: update debug artifact order to display replay first (#27481)
* reorder icons

* add test case
2023-08-08 15:51:49 -05:00
Dave Kasper
0d17899f97 chore: modify highlight selector to include frameId (#27458)
* initial logic for unique frame selector

* messy in progress

* quick test cleanup, need to figure out stub for meta

* update name

* stub test metadata

* revise key

* clean up

* debugging change

* test for error

* test jquery issue

* type

* revert

* update config for test
2023-08-08 13:38:47 -05:00