Commit Graph

1282 Commits

Author SHA1 Message Date
Ryan Manuel 70248ab9c0 fix: prerequest correlation for various retried and cached requests (#27771) 2023-09-10 21:41:40 -05:00
Bill Glesias b85dd752f2 dependency: update to electron 25 and node 18 (#27715)
* feat: update to electron 25 and bump node dependencies. need to remove
custom docker image

* chore: update node versions to 18+ [run ci]

* chore: bump @types/node from v16 to v18 and bump the typescript supported CLI version from 3.9 to 4.4

* update mock-fs to 5.2.0 to fix BigInt issue (see https://github.com/tschaub/mock-fs/releases/tag/v5.1.4) [run ci]

* chore: update electron integrity check to pass create binary job

* chore: fix issues with achrinza/node-ipc not yet having node 18 engine support (only up to 17 by patching from 9.2.2 to 9.2.5 as seen in https://github.com/achrinza/node-ipc/pull/38. vue/cli-service is not maintained and we should migrate these over to vue create at some point in the near future to get rid of these resolutions

* allow for TLSv1 tests to work with node 18 as the express server running node 18 with tlsv1 needs to allow legacy ciphers

* chore: update snyk workflows to use node 18

* chore: add changelog

* update timeout

* more cleanup during binary build

* bump cache and run ci. include ignore engines for rwa and get rid of
16.16 image references

* chore: update FF tests to 115 as serialization now works with errors and click events do not get fired on buttons being typed into

* chore: don't error when symlink already exists

* chore: fix serialization test for newer versions of firefox

* chore: fix CI config

* chore: fix chrome system tests to work with chrome 114. updates mostly caused by bugs in screen height in chrome. see https://bugs.chromium.org/p/chromium/issues/detail?id=1416398

* chore: test binary against vite update in RWA

* remove wait for RWA as it shouldnt be needed for vite. link example recipes update to node 18

chore: remove commented out code

* chore: print message when DISABLE_SNAPSHOT_REQUIRE is set

* chore: clean out unneeded dependencies always

* chore: remove trailing space

* fix: propagate click events for enter and typing on firefox 106 or later

* chore: fix changelog failures

* fix: correctly simulate click events for buttons on keyup and space type  in Firefox versions greater than 91 and simulate click for buttons on enter in Firefox versions greater than or equal to 106

* chore: add documentation to type to clarify firefox synthetic events

* chore: update protocol snapshot as order or log messages seems to have changed

* update comments

* sort commandLogChanged events for protocol

* chore: remove PR ids from CRA and CER as the PRs are merged into develop

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Chris Breiding <chrisbreiding@gmail.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
2023-09-07 15:26:09 -04:00
Jordan 264a118e48 feat(webpack-dev-server): update the generated tsconfig path for angular CT (#27723)
* feat(webpack-dev-server): update the generated tsconfig path for angular CT

* update changelog

* build binary

* fix broken tests
2023-09-06 14:47:30 -04:00
Bill Glesias f84bc6393d chore: 13.1.0 (#27718) 2023-08-31 11:22:27 -05:00
Ryan Manuel d8b48211c0 fix: ensure that fatal protocol errors are only limited to the spec they occurred on (#27720) 2023-08-31 11:01:50 -05:00
Bill Glesias cee7dfc12b chore: fix changelog [run ci] (#27716) 2023-08-31 09:32:58 -04:00
Bill Glesias f1a1c97fcf fix: fix release date to be august 29th and not august 30th (#27711) 2023-08-30 17:35:05 -05:00
Ryan Manuel 7072f3c168 fix: make CDP errors non fatal (#27709) 2023-08-30 14:47:11 -05:00
Chris Breiding cbf266c05e fix: Include run.stats.skipped in results (#27695)
Co-authored-by: Matt Schile <mschile@cypress.io>
2023-08-30 15:30:23 -04:00
Dave Kasper 05afa1eaa5 feat: Add status icon to Sidebar Runs Page (#27672)
* basic structure and stubs for tests

* think this works, needs validation and icon

* partially working, needs i18n cleanup for failure count

* working with tests and i18n

* update to latest status icon

* fix debug integration tests

* removing ts-expect-error for isWindows util to match 13 branch

* add change log

* whatever

* speculate on release

* fix typo in template
2023-08-29 18:38:17 -05:00
Jennifer Shehane 2e20e5a2b7 chore: Update changelog to include new entries - reordering (#27693)
* Update changelog to include new entry - reordering

* Additional changelog items.

* Update cli/CHANGELOG.md

Co-authored-by: Bill Glesias <bglesias@gmail.com>

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>
2023-08-29 17:41:45 -04:00
Chris Breiding 91d2845a24 chore: 13.0.0 release (#27690) 2023-08-29 08:43:43 -05:00
Ryan Manuel 0a0eebd67d Merge branch 'develop' into fix/config-port-overriding-devserver 2023-08-28 20:32:23 -05:00
Ryan Manuel 2cec262e23 Merge branch 'develop' into release/13.0.0 2023-08-28 17:23:07 -05:00
Chris Breiding cc45c67a36 chore: update/fix v13 changelog (#27680) 2023-08-28 16:25:53 -04:00
Adam Stone-Lord e533618ab7 chore: publish packages with the correct branch name in buildInfo (#27682) 2023-08-28 12:08:11 -04:00
Lachlan Miller 4c54f20129 changelog 2023-08-28 17:30:46 +10:00
Bill Glesias 1c6a2e130e BREAKING: add breaking changes/deprecations to cypress dependencies, such as typescript and node that may affect users moving forward on v13 (#27642) 2023-08-25 10:10:02 -04:00
Ryan Manuel bb7b7c0657 Merge branch 'develop' into release/13.0.0 2023-08-25 09:02:04 -05:00
rewento 4288634e0b fix: Properly type Cypress and Chai globals as properties of the global object (#27540)
* Minor modifications to CLI types so that Cypress and Chai globals are correctly declared not only to be in the global scope but also to be in properties of globalThis, which they are. The change allows composers to explicitly access them through globalThis (e.g., 'globalThis.cy.mount', 'globalThis.expect'). The current typing prohibits this by incorrectly declaring that the objects in question are held in local variables of the global scope rather than in properties of globalThis.

* Reverted a change from previous commit

* fix: Properly type Cypress and Chai globals as properties of the global object

* fix: Properly type Cypress and Chai globals as properties of the global object

* fix: Properly type Cypress and Chai globals as properties of the global object

* update changelog

* fix changelog entry

* fix changelog entry

---------

Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
Co-authored-by: Chris Breiding <chrisbreiding@gmail.com>
2023-08-24 11:22:04 -04:00
Chris Breiding 7f45375439 breaking: Upgrade @cypress/request to 3.0.0 (#27495) 2023-08-23 15:16:27 -04:00
Bill Glesias 8b5c551890 fix: resolve process/browser to process/browser.js to resolve correctly in ESM packages where .mjs or .js files exist where process is being used and globally imported. [run ci] (#27611)
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
2023-08-22 14:11:14 -05:00
Bill Glesias 5109a74e21 fix: patch enhanced-resolve when installed as production dependency (#27583) 2023-08-22 11:49:45 -04:00
Lachlan Miller c284bd4c9d fix: clarify svelte 4 is supported (#27473)
* chore: update svelte deps

resolves https://github.com/cypress-io/cypress/issues/27465

* Update packages/scaffold-config/src/dependencies.ts

Co-authored-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>

* changelog

* update changleog

* log

* log

---------

Co-authored-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>
Co-authored-by: Jordan <jordan@jpdesigning.com>
Co-authored-by: Adam Stone-Lord <adams@cypress.io>
2023-08-22 10:18:14 +10:00
Ryan Manuel b0df02b8d7 Merge branch 'develop' into release/13.0.0 2023-08-21 13:31:12 -05:00
Lachlan Miller 62bf87da8b fix: try to only add commonjs when running Cypress config (#27484)
* try to only add commonjs when running Cypress config

* chore: add moduleResolution node

* test: update tests to follow new patch

* move module outside of TS_NODE_COMPILER process env

* changelog

* changelog

* changelog

* changelog

* changelog

* regression test

* add tests bck in

---------

Co-authored-by: jordanpowell88 <jordan@jpdesigning.com>
2023-08-21 08:46:28 +10:00
Matt Schile c1a8004924 chore: added support for --runner-ui and --no-runner-ui cli options (#27582) 2023-08-18 16:32:53 -06:00
Matt Henkes e06334d289 Merge branch 'develop' into release/13.0.0 2023-08-18 10:39:40 -05:00
Adam Stone-Lord 24f1460692 chore: revert changes to build process (#27584)
* Revert "chore: remove Typescript dependency from app node_modules in binary (#27577)"

This reverts commit 60d4c8356c.

* Revert "chore: simplify build script (#27547)"

This reverts commit 0a86ec686e.

* Revert "chore: upgrade lerna to 6, cache build step (#26913)"

This reverts commit 9e60aeba8f.

* build everything

* [run ci]
2023-08-18 10:05:29 -04: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
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 5db296bf8f chore: set v13 release date to august 22nd in the changelog 2023-08-15 13:31:51 -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
Jordan 95b4a14f13 chore: release version 12.17.4 (#27557) 2023-08-15 11:12:01 -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
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
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
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
Bill Glesias 4cec5a5f4a Merge branch 'develop' into chore/merge_develop_into_release_13 2023-08-06 20:30:51 -04:00
Bill Glesias 8102a09200 Merge branch 'develop' of https://github.com/cypress-io/cypress into merge-develop-into-13 2023-08-04 16:27:38 -04:00
Adam Stone-Lord 24c733c3d5 chore: move entry for #26400 to fix changelog (#27467)
* chore: move entry for #26400 to fix changelog

* add line break
2023-08-04 16:24:22 -04:00
Lachlan Miller 53fd537a04 fix(cypress/webpack-dev-server): correct path for indexHtmlFile (#27320)
* fix: correct path for indexHtmlt

* changelog
2023-08-04 14:54:38 +10:00
Adam Stone-Lord 14a7416e12 chore: release version 12.17.3 (#27436) 2023-08-01 15:13:43 -04:00
Bill Glesias 68f8f99a9d chore: update node types from v14 to v16 latest to be current (no 16.16.0 types exist). Fixes types issues with webpack upgrade. (#27425)
chore: bump the Typescript minimum version in the CLI from 3.4 to 3.9
2023-08-01 09:16:49 -04:00
Chris Breiding 069d3b399c breaking: Normalize results from module api, after:run, and after:spec (#27230) 2023-07-31 14:37:11 -04:00
Tyler Biethman d0fbd29805 fix: updating branch name fallbacks for GitHub Actions recordings (#27409)
* fix: updating branch name fallbacks for GitHub Actions recordings

* Updating test for clarity

* Adding changelog entry

* Updating telemetry too

---------

Co-authored-by: Tyler Biethman <tbiethman@users.noreply.github.com>
2023-07-27 14:37:04 -05:00