* chore: [run ci] does further prerequisites for webpack 5:
https://webpack.js.org/migrate/5/#make-sure-your-build-has-no-errors-or-warningshttps://webpack.js.org/migrate/5/#make-sure-to-use-modehttps://webpack.js.org/migrate/5/#update-outdated-optionshttps://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>
* fix: get correct env from npm config
`npm config set VAR VAL` will inject `npm_config_var=val` environment
variable. This commit will solve this issue
Closes: #24556
* Disable commercial recommendations for system tests.
* Disable commercial recommendations
* Update system-tests/lib/system-tests.ts
* Revert changes
* Update cli/test/lib/util_spec.js
* Update cli/test/lib/util_spec.js
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
* Trying out electron 19.0.4
* nvm-for-windows 1.1.7 is busted for node-16.14.2
* Went a bit overboard with the exit I think
* Stepping this back
* Breaking out yarn install
* Print runtime data
* log more data points
* well i'm confused. seeing what happens after these steps
* Lets see if powershell picks up the new PATH
* Maybe shell is refreshed between jobs?
* Installing nvm-1.1.9 manually
* Cleaning up circle.yml and a few other node references.
* Yeah that ain't gonna work
* Trying bash implementation
* Urgh yaml
* Bumping to latest patch version
* Getting a full build + artifacts
* Sourcing node in build step
* More node sourcing
* Run against updated recipes repo
* I'll find all these eventually
* Trigger new build after cache busting
* Let's slim this down to test recipes for a bit
* Good ol' working_directory
* Fixing bad syntax
* Not quite sure where all this is necessary at this point
* Using recipes PR branch
* This isn't necessary here
* Re-enabling jobs
* More node sourcing
* Running kitchensink tests against PR branch
* Moving nvm-windows update to script
* Even more node sourcing
* Removing CI config for merged kitchensink/recipes PRs
* chore: Updating electron to v18 + node v16.13.2
* Updating origin test, it needs to be fixed a different way
* Removing origin workaround for config_env specs, it should not be necessary.
* Removing now-unused semver dependency
* refactor: break pathTemplate replace logic into multiple lines
* feat: support escape dollar sign in download path template
* feat: support CYPRESS_DOWNLOAD_PATH_TEMPLATE wrapped in quote
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* feat: env to use path params in download url
* feat: change env to url template
* feat: fix snapshot
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
* Fixes inability to download with redirects through a proxy
* lint fixes
* t
* tests are passing
* tests pass and works
* a little cleanup
* oops, @cypress/request
* nuding the ci system
* Fix race condition in verify code
* address comments on pull request
* a test with multiple layers of redirects
* Add tests and mechanism for redirect loop error
* Make informative error message
* Remove environment config option for now
* test assertion pattern
Co-authored-by: David Ihnen <dihnen.ctr@kr.af.mil>
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* develop: (52 commits)
feat: use hoisted yarn install in binary build (#17285)
fix: compile npm packages for node 12 (#18989)
fix: show call count even if `cy.stub().log(false)`. (#18907)
chore: Update TypeScript to 4.4.4 (#18930)
fix: wrap playground selectors in double quotes if not included (#18442)
fix: flaky settings_spec test (#18979)
chore: Update Chrome (stable) to 96.0.4664.45 (#18931)
fix: Loading of specs with % in the filename (#18877)
chore: refactor `create` into class `$Cy` (#18715)
chore: Update Chrome (beta) to 96.0.4664.45 (#18891)
fix: flaky `system-tests-firefox` job (#18848)
chore: release @cypress/webpack-preprocessor-v5.10.0
chore: release @cypress/vue-v3.0.5
chore: release @cypress/schematic-v1.6.0
chore: release create-cypress-tests-v1.2.0
release 9.0.0
feat: ensure major release
have conduit app wait on localhost:3000
fix install-required-node
use --legacy-peer-deps
...
* Defaulting nodeVersion to system
* try to fix system test
* Rename arg parameters, fix system test in a much better way.
* remove invalid comment
* Add deprecation warning for the nodeVersion config.
* Remove default value to avoid warning regardless of the presence of `nodeVersion`
* More tests fixes 😅
* Updates to deprecation message
* update node version in deprecation notice.
* flex config file name that we tell consumers to update
* simplify validateNoBreakingConfig options
* develop: (40 commits)
fix(driver): Sticky elements within a fixed container will not prevent an element from being scrolled to (#18441)
chore: make `create` function on server.ts obsolete (#18615)
docs: Add instructions to squash commits to develop in Contributing (#18728)
fix(@cypress/react): throw if using Next.js swc-loader without nodeVersion=system (#18686)
refactor: remove Ramda (#18723)
chore: Increase paralleled machines for desktop-gui tests (#18725)
chore: Update Chrome (stable) to 95.0.4638.69 (#18696)
chore: release @cypress/vue-v3.0.4
chore: release @cypress/react-v5.10.2
chore: release @cypress/schematic-v1.5.3
fix: remove outdated registry link (#18710)
chore: release @cypress/schematic-v1.5.2
chore: release create-cypress-tests-v1.1.3
chore: Update Chrome (beta) to 96.0.4664.27 (#18676)
chore(tests): Remove flaky assertion that relies on png how compression (#18668)
fix: make sure to go back to no-specs when delete spec file (#17760)
fix: Next.JS 12 components testing failing with ` TypeError: Cannot read property 'traceChild' of undefined` (#18648)
Backport .gitignore from unified-desktop-gui
chore(docs): add 'Upgrading Electron' instructions (#18594)
release 8.7.0 [skip ci]
...