* migrate cli scripts to TypeScript
* convert all javascript source files in the CLI to TypeScript
rebase into first
* chore: refactor all tests to TypeScript
rebase into second
* add npmignore for cli for typescript files
* update build process
* fix publically available exports
* Fix cy-in-cy tests
* add ts-expect-error to failing files
* fix projectConfigIpc failures as there are now multiple installs of tsx
* fix after-pack hook
* fix binary script
* chore: update publish binary to account for CLI being an ESModule compiled down to CommonJS
* does this work?
* fix the verify spec by making the listr2 renderer silent as it behaves differently since the refactor and is printing non deterministic outputs into our tests that do not have a large impact on the area we are testing and mostly served to actually test the renders of the listr2 framework itself
* empty commit
* additional refactor to code to remove strange any typing and exporting
* bump cache and build binaries
* fix CLI exports to keep backwards compatibility
* fix unit-tests
* turn on mac jobs
* fix group name rename in CLI
* remove babel deps from cli and explicitly install typescript
* address feedback from code review
* dont just falsy check results and instead explicitly check for null or undefined
* add ts-expect-error
* additional pass on cleaning up dynamic require / import from global lib references
* annotate ts-expect-errors with reason for why error is expected
* add rest of ts-expect-error comments
* removing hardcoded branch to publish binary chore/migrate_cli_to_typescript
* fix: allow for spaces to be present in the tsx loader path so node can discover the loader. We do this by wrapping the path in quotes
* chore: add rimraf to fix contributors on windows when cleaning the stderr-filtering package
* feat: extend Cypress.Keyboard.Keys and cy.press to support all keyboard keys
* Update cli/types/cypress.d.ts
* reference urls for codepoints
* type defs for expanded keys; tests
* changelog
* rm modifier keys temporarily - see WIP @ feat/key-press-modifier-keys
* Add pr link to changelog
* reduce repetition with key codes; remove unsupported capslock keycode
* only "key" special function keys in Cypress.Keyboard.Keys - otherwise, support any single character even if multiple codepoints
* do not refocus on f6 - f6 behavior keyup is indeterminate, so do not assert in that special case
* clean up keyboard key types, clean up duplicate def from merge
* various cleanup - wip - need multi-codepoint fix
* support multi-codepoint characters
* properly dispatch each part of a multipart utf-8 character
* fix import
* fix dtslint
* tscheck
* fix spacing
* Apply suggestions from code review
* changelog
* changelog
* ensure input actions are released in bidi; add test for keypress and input events for firefox
* fix keypress & input events in chrome
* consistent debug
* rm debug logging from input fixture
* some typos, changelog version
* fix toSupportedKey guard fn to properly reject non-strings
* add Space as named key, remove warnings re legacy firefox
* fix space
* support single-digit number keys
* remove support for F-keys
* add test cmd to types pkg
* rm failing vitest project config
* fix changelog
* clean up types a bit for single digit numbers
* more updates
---------
Co-authored-by: Cacie Prins <cacie@cypress.io>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
* fix(deps): update dependency esbuild to ^0.25.0 [security]
* empty commit
* bumping esbuild in system-tests
* bump to higher version
* index on renovate/npm-esbuild-vulnerability: bd192afbf9 bump to higher version
* index on renovate/npm-esbuild-vulnerability: bd192afbf9 bump to higher version
* index on renovate/npm-esbuild-vulnerability: bd192afbf9 bump to higher version
* bump to 0.25.2
* update due to esbuild metadata output additions
* index on renovate/npm-esbuild-vulnerability: 20b9d374d7 update due to esbuild metadata output additions
* index on renovate/npm-esbuild-vulnerability: 20b9d374d7 update due to esbuild metadata output additions
* index on renovate/npm-esbuild-vulnerability: 20b9d374d7 update due to esbuild metadata output additions
* fix binary-cleanup
* Fix tslib module paths in binary-cleanup.js
* Update tslib import paths in binary-cleanup.js
* Remove tslib ES6 module references
* changelog entry
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* chore(deps): update dependency tar to v6.2.1 [security]
* bump other version of tar
* add changelog entry
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* chore: update changelog and splash page for release 15
* run arm64 on branch and bump ubuntu executor
* ensure-node before running lerna commands
---------
Co-authored-by: Cacie Prins <cacie@cypress.io>
* wip: system test to reproduce
* system test for alsa stderr
* split cypress from 3rd party stderr at parent process to electron child
* rm garbage warning regexes
* fix newline behavior when parsing internal stderr
* migrate left over console errors
* clean up system test name
* fix typed import
* extract stderr splitting to separate pkg so runner can use @packages/error
* rm new err log from packherd-quire
* handle backpressure
* docs
* some unit tests & coverage for stderr-filtering
* unit tests
* no longer test regexp specific output in spawn unit tests
* filter enabled debug namespaces rather than just cypress namespacesc
* revise stream splitting et al
* try to fix v8 snapshot build??
* fix console.log assertion
* add missing eslint config
* rm unused spies
* fix regexp for optional leading wsp and ansi on debug entries
* update unit tests because sinon
* lint
* colon..
* build stderr-filtering before checking if binary exists
* adds TagStream transform stream, fixes stderr from child proc config
* add build-prod script for stderr-filtering
* changelog
* properly handle backpressure in prefixed content transform stream
* use standard tsconfig?
* better tsconfig
* Add pkgStderrFiltering to monorepoPaths
* add \"files\" manifest
* pipe all stderr to stderr when CYPRESS_INTERNAL_DEBUG_ELECTRON is enabled
* rm explicit build of stderr-filtering in check-if-binary-exists step
* ensure all dependencies of scripts/ are built before scripts are executed in the check-if-binary-exists command
* fix dev version ref
* swap logic
* add stdin piping
* fix exec name on the run-on-dependencies command to be more useful
* use correct env
* rm obsolete type refs
* simplify stderr-filtering public iface, pipe cy-in-cy stderr through filtering tx
* bust cache
* fix mocks
* fix v8-snapshot
* move stderrfiltering to dev pkg in cli
* skip integrity check in ci, if they are out of date things should fail anyway
* copypasta over a portion of stderr-filtering to cli, since cli cannot import @packages
* Delete issues.md
* rm special filtering for cy in cy
* rm too narrow rules file
---------
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* fix: ts-loader detection (false positive)
* add test for ts-loader incorrectly resolcing and removing typescript 4 tests as support is removed in Cypress 15
* fix regex where ts-loader may be an absolute path
* chore: fix regex typo
* re-add typescript 4 tests and remove in a separate PR
* add changelog entry
---------
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* breaking: update execa from 1.0.0 to 4.1.0 which breaks the yielded cy.exec() object from yielding property code and instead yields exitCode
* fix launchpad tests on linux
* Update cli/CHANGELOG.md
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* breaking: Signal removal of official support for direct download of Cypress
BREAKING: Signal removal of official support for direct download of Cypress
* add PR link
* Update cli/CHANGELOG.md
Co-authored-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>
---------
Co-authored-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>
* fix: return raw fixture when encoding is specified
* revert: revert test change
---------
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* chore: bump firefox version we test against to 141
* account for unspecified sameSite which is now available in firefox 140
* fix expected error string for invalid cookie
* override FORCE_FIREFOX_CDP firefox 141
* fix cdp override in ff 141+
* maybe fix cookeie system tests? seem to time out locally
* set family as well as name
* fix system tests fore ff 141
* fix ff deprecation
* rm erroneous err param
* assume firefox is modern in cookies driver e2e test
* Update system-tests/lib/system-tests.ts
* we do still run tests against firefox 134
---------
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
Co-authored-by: Cacie Prins <cacie@cypress.io>
* breaking: Move getSelector, getSelectorPriority, and reset to private methods on ElementSelector API
BREAKING: Move getSelector, getSelectorPriority, and reset to private methods on ElementSelector API
* Update getSelectorPriority back to public method
* Update error message + changelog for removed method
* mention this PR in changelog