* fix: pass all chromium flags through to Electron
* Add changelog entry
* exclude webkit from test for navigator.webdriver being true
* add debug log for switches in electron
* Fix the unit test so it passes now
* Update packages/server/lib/environment.js
Co-authored-by: Matt Schile <mschile@cypress.io>
* Update packages/server/lib/environment.js
Yes 😝 Probably why a better test would be good around this.
Co-authored-by: Matt Schile <mschile@cypress.io>
* Update packages/server/test/unit/util/chromium_flags_spec.js
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* lint fix
---------
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* new error messages
* errors for initialization and capturing test replay
* messaging the case where no protocol instance but also no fatal error
* adds suggested remedies to initialization errors
* differentiation between network and http errors, initial work on db missing error
* improve db not found error
* add new error type to schema
* rm commented dead code
* clean up network error creation in uploadStream
* make artifact confirmation error msg more general
* test display of put instance artifacts failure
* changelog
* ensure we are displaying errors even in quiet mode
* fix pending changelog
* new snapshots for protocol errors
* improve aggregate error
* resolved html error snapshots
* fix check-ts
* fix test
* sanitize temp dir in CLOUD_PROTOCOL_CAPTURE_FAILURE error msg
* changelog
* fix double entry of certain network errors, error message prop for network errors
* fix url arg for network error
* Update packages/server/lib/cloud/artifacts/upload_artifacts.ts
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* rm extra formatting from debug
* snapshot whitespace
* changelog update
* +pending
* Update cli/CHANGELOG.md
* resolve snapshots?
* does moving the stack trace fix whitespace in snapshots in ci?
* maybe fixes whitespace on electron now?
* fully normalize stack traces
* remove full normalization
* maybe debug stack normalization
* rm stack traces from error messages
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* fix: bump Electron to 27.3.10
* add changelog entry
* do windows builds for good measure
* temporarily set branch to publish binary with updated electron
* Update binary-integrity-check-source.js
---------
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* refactor: ensure 'its' function type excludes null and undefined (#28872)
This fix addresses an issue where the 'its' function could return null or undefined, causing unexpected behavior in certain scenarios. The change introduces a more robust type check to ensure that the returned value is always non-null and non-undefined.
* resolve linting issues related to TypeScript types
* Update changelog
* resolved lint errors
* Update cli/types/cypress.d.ts
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* Update cli/types/cypress.d.ts
* move to correct changelog entry
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* fix: added validation for timeout for query operations
* fix(changelog): added line break
* fix(err-msgs): added new error msgs for invalid timeout
* fix(err-msgs): added new error msgs for invalid timeout
* fix changelog
* refactor(validate-timeout): moved func to global querying scope
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* fix: updates regex for websocket connection error to properly handle
* build binaries for this branch
* do not reconnect if reconnect in progress; treat websocket not connected errors as websocket in closing/closed state errors
* changelog
* fix changelog
* publish prerelease binaries for this branch
* build windows prerelease package
* Update cli/CHANGELOG.md
* Update cli/CHANGELOG.md
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* add comment for websocket error regex examples
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* fix: Revert addition of .* into regex and reformat code to escape early before regex runs
* Add changelog
* fix: Actually fix the problem with the plugin messages
* changelog update
* feat: support webpack-dev-server-5 for @cypress/webpack-dev-server [run ci]
* sidestep Forge types installed by webpack dev server [run ci]
* add changelog entry
* remove webpack 4 types
* format changelog
* Update cli/CHANGELOG.md
* Update npm/webpack-dev-server/src/helpers/sourceRelativeWebpackModules.ts
Co-authored-by: Matt Schile <mschile@cypress.io>
* add back in importsNotUsedAsValues and update system test snapshot
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Matt Schile <mschile@cypress.io>
* fix: added optional custom message to regex
* add changelog entry
* Update packages/reporter/cypress/e2e/unit/formatted_message.cy.ts
* moved changelog entry to new cypress version
---------
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* fix: re-initialize DOM subscriptions from a full snapshot on cdp reconnect
* add test
* add changelog
* Update cli/CHANGELOG.md
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Update CHANGELOG.md
---------
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* tbd
* workable templated filestream uploader
* clean up async assertions
* upload stream uses activity monitor to detect start timeouts and stalls
* makes uploadStream retryable
* filesize detection, enoent errors, and testable retry delays
* extract fs logic to putProtocolArtifact, impl putProtocolArtifact
* aggregate errors for retryable upload streams
* fixes imports from moving api.ts, uses new upload mechanism in protocol.ts
* use spec_helper in StreamActivityMonitor_spec due to global sinon clock changes
* fix putProtocolArtifact specs when run as a part of the unit test suite
* fix return type of ProtocolManager.uploadCaptureArtifact
* convert from whatwg streams back to node streams
* extract HttpError
* ensure system test snapshots
* changelog
* more changelog
* fix unit tests
* fix api ref in integration test
* fix refs to api in snapshotting and after-pack
* small edits
* Update packages/server/lib/cloud/api/HttpError.ts
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Update packages/server/lib/cloud/upload/uploadStream.ts
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* camelcase -> snakeCase filenames
* improve docs for StreamActivityMonitor
* added documentation to: upload_stream, put_protocol_artifact_spec
* move stream activity monitor params to consts - no magic numbers. docs.
* Update packages/server/lib/cloud/api/http_error.ts
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Update packages/server/test/unit/cloud/api/put_protocol_artifact_spec.ts
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* fix check-ts
* fix imports in put_protocol_artifact_spec
* Update packages/server/test/unit/cloud/upload/stream_activity_monitor_spec.ts
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* api.ts -> index.ts
* fix comment style, remove confusingly inapplicable comment about whatwg streams
---------
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* fix: patch new tab creation for firefox 124 and up to fix issue where cypress was not executing beyond the first spec in cypress run (specific to firefox).
* Update cli/CHANGELOG.md
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* opt for global window instead of no undef for window reference
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* chore: support new protocol structure for shadow DOM elements
* chore: capture scroll events inside shadow DOM that occur on shadow element scroll containers
* ignore scroll event listener test in webkit as fixture that uses CSSStyleSheet to help create scrollbox throws illegal constructor
* change structure of capture to be array of strings and assume shadowDom traversal similar to axe-core [run ci]
* fix issue where closed shawdow doms were causing application to crash [run ci]
* add actionability tests for protocol. Add synthetic input events in order to capture nested shadow DOM inputs
* build binary [run ci]
* remove actionability from driver [run ci]
* add changelog entry for feature, add serialization comments
* address comments from code review [run ci]
* remove unreachable code
* remove additional dead code
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* feat: supported type of vue@2.7+
* chore[build]: respectExternal back to false for vue2 in dts
* 更新 rollup.config.mjs
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* updating changelog
* updating link
---------
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
* activate main cypress tab before taking a screenshot
* new tests to cover page activation behavior
* updates changelog
* whitespace
* fix check-ts
* reduce extension failure timeout to 500ms to account for origin bridge timeout
* only use tab activation workaround in chrome; default to Page.bringToFront in headless mode
* update unit tests
* swap order of tests in 5016 system test
* some debugging to try and hunt down firefox issue
* rm debug prev added - looks like sys test passed that time?
* rm debug emit from v2 extension
* fixes#28788 -- mouse.ts logic
If mouseUp element or mouseDown element or commonAncestor element is :disabled, click event should be prevented
* fixes#28788 -- e2e test
tests that no click events are registered when click happens on child of disabled element
* fixes#28788 -- mouse.ts logic
If mouseUp element or mouseDown element have an "actually disabled" parent, the click event should not be registered
* refactoring: minor name changes for readability
* fixes#24322 --added changelog entry
* Update packages/driver/src/cy/mouse.ts
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Update packages/driver/cypress/e2e/commands/actions/click.cy.js
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Update packages/driver/src/cy/mouse.ts
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Update packages/driver/src/cy/mouse.ts
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* update mouse.ts -- unexpected token
* docs: moved entry to 13.6.5
* Update CHANGELOG.md
* Update CHANGELOG.md
* Update packages/driver/cypress/e2e/commands/actions/click.cy.js
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Update cli/CHANGELOG.md
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* lint: fixed 2 linting errors
565:1 error Expected indentation of 8 spaces but found 10 indent
567:7 error Expected blank line before this statement padding-line-between-statements
* style: removed trailing space
567:1 error Trailing spaces not allowed no-trailing-spaces
* Update CHANGELOG.md
---------
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
* fix(types): RequestBody type should be able to accept booleans and null values, which are all valid JSON literals
* refactor: boolean literals are valid JSON objects. Null values should also be considered valid when explicitly passed to the request function.
* refactor: body is explicitly defined when passed as positional argument or when supplied through the options object
* test: JSON literals should be parsed as valid JSON and set json=true
* docs: issue reference
* fix: boolean and null literal should be send to request promise as strings
* docs: fixes#28789 -- added issue reference
* test: tests proper conversion of JSON literals to strings.
* docs: added isssue reference
* docs: fixes#28789 -- changelog entry
* refactor: change isValidJsonObj to isValidBody
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* refactor: change isValidJsonObj to isValidBody
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* refactor: use lodash utils
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Update cli/CHANGELOG.md
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* docs: moved entry to 13.6.5
* docs: fixed changelog entry
* Update CHANGELOG.md
---------
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>