Commit Graph

67 Commits

Author SHA1 Message Date
Jessica Sachs 0975fec79b chore: merging in from develop into 10.0-release (#19148) 2021-11-30 14:32:08 -05:00
Tim Griesser 7c339d41c8 Merge branch 'develop' into 10.0-release
* 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
  ...
2021-11-20 16:03:53 -05:00
Tim Griesser e4f5b106d4 feat: use hoisted yarn install in binary build (#17285) 2021-11-20 14:19:51 -05:00
Kukhyeon Heo 2a6ded2352 chore: Update TypeScript to 4.4.4 (#18930) 2021-11-19 10:01:23 -05:00
renovate[bot] 3095d733e9 feat(deps): update dependency electron to v15 🌟 (#18317)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zach Bloomquist <git@chary.us>
Co-authored-by: David Munechika <davidam1203@gmail.com>
2021-11-09 20:52:17 +00:00
Emily Rohrbough 99c8d466c8 feat: create config package for config validation (#18589) 2021-11-09 13:19:05 -06:00
Tim Griesser d841e1331f refactor: Data context cleanup & IPC bindings for data push (#18357) 2021-10-11 12:13:41 -04:00
userquin 8614e97802 fix(unified-desktop-gui branch): initial installation on windows (#18247) 2021-09-25 14:18:17 -04:00
Lachlan Miller 23cb12cfc4 Merge branch 'develop' into unified-desktop-gui 2021-08-25 10:03:27 +10:00
Lachlan Miller ab401ecd35 chore: use import type syntax (#17864)
* chore: use import type across repo

* chore: use import type across repo

* chore: use import type across repo

* chore: use import type across repo

* update exports

* update test

* update import type

* update types

* use import type in driver

* correctly export function

* revert test

* remove unrelated code

* revert code

* improve type imports

* override for reporter
2021-08-25 09:11:56 +10:00
renovate[bot] 757a088828 fix(deps): update dependency @cypress/request to v2.88.6 🌟 (#17813)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-08-23 08:21:48 -05:00
Tim Griesser e2f395e330 feat: Structuring context & schema so it can be used on the client (#17489)
* wip: Structuring context & schema so it can be used on the client

* chore: fix dev mode

* Continuing to restructure graphql patterns

* Cleaning up the server

* Don't hash for now, for vite

* fix for CI

* WIP on integrating with vue

* yarn lock

* no need to return props from setup

* use useResult for more concise and better type safety

* fix regression

* wip: migrate to apollo

* Wip: mostly working with pollInterval

* apollo -> urql

* cleanup

* continuing to cleanup

* fix: updates to tests, strict type checking

* Tests passing

* wip: attempting rename

* adding @packages/graphql

* simplified fragment testing

* fixing build scripts

* remove --inspect-brk

* fix ci scripts

* fix build again

* Fix tests

* Add express as dep to @packages/graphql

* fix packages

* chore(launchpad): minor updates (#17551)

* apply general improvemets from PR comments

* remove unused file

* comment out test for now

* stub out missing story module

Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
2021-08-02 22:54:33 +10:00
Zach Bloomquist 0e137dff43 chore(tests): skip flaky "detects invalid PEM key passphrase" test (#17413)
Skips flaky test:

```
  1) lib/client-certificates loads cert files detects invalid PEM key passphrase:

      AssertionError: expected [Function: act] to throw error including 'Cannot decrypt PEM key with supplied passphrase (check the passphrase file content and that it doesn\'t have unexpected whitespace at the end)' but got 'Failed to load client certificates for clientCertificates[0]: Cannot parse PEM key: Only 8, 16, 24, or 32 bits supported: 352.  For more debug details run Cypress with DEBUG=cypress:server:client-certificates*'
      + expected - actual

      -Failed to load client certificates for clientCertificates[0]: Cannot parse PEM key: Only 8, 16, 24, or 32 bits supported: 352.  For more debug details run Cypress with DEBUG=cypress:server:client-certificates*
      +Cannot decrypt PEM key with supplied passphrase (check the passphrase file content and that it doesn't have unexpected whitespace at the end)
      
      at Context.<anonymous> (test/unit/client_certificates_spec.ts:386:47)
      at processImmediate (internal/timers.js:462:21)
```

https://app.circleci.com/pipelines/github/cypress-io/cypress/22260/workflows/043dddbc-1095-4a98-bd32-3606e59e65ce/jobs/816365

It seems to be a race condition, but I can't pin down where. Everything is synchronous...

cc @GCHQDeveloper911
2021-07-20 19:08:31 +00:00
GCHQDeveloper911 297599071c feat: Changes for PKI support - #2694 (#15179)
Co-authored-by: GCHQDeveloper911 <GCHQDeveloper911@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: Zach Bloomquist <git@chary.us>
2021-07-12 21:09:55 +00:00
renovate[bot] d10694aa8e fix(deps): update lodash to 4.17.21 🌟 (#16406)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-10 11:22:29 -05:00
Adam Gastineau 0ca53c783d chore: TypeScript 4.2.3 (#15646) 2021-04-06 08:21:21 -07:00
renovate[bot] b52ac98a69 feat(deps): update dependency electron to version 12.x 🌟 (#15292)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zach Bloomquist <git@chary.us>
2021-03-10 15:24:00 +00:00
Brian Mann af26fbebe6 feat: component testing (#14479)
Co-authored-by: Jessica Sachs <jess@jessicasachs.io>
Co-authored-by: Barthélémy Ledoux <bart@cypress.io>
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: Dmitriy Kovalenko <dmtr.kovalenko@outlook.com>
Co-authored-by: ElevateBart <ledouxb@gmail.com>
Co-authored-by: Ben Kucera <14625260+Bkucera@users.noreply.github.com>
2021-02-04 15:45:16 -05:00
renovate[bot] 9be61657f4 fix(deps): update dependency debug to version 4.3.1 🌟 (#14583)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-01-19 12:21:05 +06:30
Zach Panzarino 3eb3bfa487 build: properly use local npm packages for development and binary build (#14182) 2021-01-05 00:34:13 -05:00
Zach Bloomquist 810a9b4162 fix(net-stubbing): fix waiting on responses with no-body status codes (#9097) 2020-12-02 14:06:46 -05:00
Ben Kucera 19fdf4306a fix: route all https traffic through proxy (#8827) 2020-10-20 12:20:38 -04:00
renovate[bot] f1d4026b03 feat(deps): update dependency electron to version 10.1.3 🌟 (#8406)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Zach Bloomquist <github@chary.us>
2020-09-29 13:54:38 -04:00
Ben Kucera 7ccf59562e fix(runner): fix firefox 'Open in IDE', test against prod builds in CI (#8551) 2020-09-14 12:40:00 -04:00
Jennifer Shehane eac7859fcc fix: NO_PROXY env var no longer be respected over npm_config_noproxy env var (#8295)
Co-authored-by: Zach Bloomquist <github@chary.us>
2020-08-24 15:18:11 -04:00
Jennifer Shehane a882763f08 Merge branch 'develop' into v5.0-release 2020-08-10 20:14:11 +06:30
renovate[bot] 7341476f0f fix(deps): update dependency express to version 4.17.1 🌟 (#8179)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2020-08-06 12:37:37 +06:30
Laís Tomaz 27e8c817d3 Rename configuration option blacklistHosts (#7622)
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
2020-07-13 15:16:19 +06:30
Brian Mann c72538d189 Fix lodash dupe dep (#7954)
* blow away yarn.lock

* bump lodash to 4.17.19

* reduce binary size again

* bump @types/node to correct version, fix types

* fix react + react-dom types

* add clean command for .ts conversion to .js files

* fix flaky test
2020-07-11 16:34:23 -04:00
renovate[bot] 4618650118 fix(deps): update dependency proxy-from-env to version 1.1.0 🌟 (#7900)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-07-08 10:40:51 +06:30
Ben Kucera 47faf52e16 internal: use yarn workspace over lerna for individual package commands (#7644)
* use yarn workspace over lerna for individual package commands

* remove usage of wait-on

* fix readmes after regex replace

* revert wait-on changes

* update yarn.lock
2020-06-10 18:31:40 -04:00
Zach Bloomquist 6960f7cd78 Rewrite JS/HTML using AST-based approach (#5273)
* Add winPropAccessor to security.js, remove other replacers

* Add start of Cypress.resolveWindowReference

* Add regexes for dot and bracket access

* Some security_spec tests pass with new injection

* Add resolveWindowReference unit tests

* Old security_spec now passes with resolveWindowReference

* Inject stub resolveWindowReference so proxy still works outside of Cypress

* wip: rewrite HTML + JS with tokenizer

* Move to using esprima + hyntax to rewrite JS + HTML

* remove comment; oneLine makes the whole thing commented

* Fix tests, apple.com edge case

* wip: add getOrSet

* Revert "wip: add getOrSet"

This reverts commit a5c647c00f.

* release 3.5.0 [skip ci]

* use recast to replace window property accesses

* replace assignments to top properly

* fix yarn.lock

* bump deps

* update integration tests

* remove old security ts?

* fix integration spec

* always ignore js interception failure

* use globalThis instead of window

* add experimentalSourceRewriting flag

* restore regex-writer spec

* fix types

* update config_spec

* add source rewriting spec

* cleanup

* simplify rewriting logic, move rules into rewriter package

* create threaded rewriting tool for non-streaming use

* update @packages/rewriter to use threads for async

* use async rewriting where convenient

* add worker-shim.js

* add performance info to debug logs

* properly handle +=, -=, ...

* add proxy, rewriter to unit-tests stage

* cleanup

* use parse5 to rewrite HTML, strip SRI

* update tests

* reorganization, cleanup

* rewrite ALL parent, top identifiers except in a few cases

* handle many JS edge cases

* ensure parse5@5.1.1 is installed

* update yarn.lock

* update tests

* add debugging, add tests

* add attempted repro for .href issue

* implement source maps + extending inline source maps

* update opts passing in proxy layer

* fix sourcemap naming structure

* update tests to account for sourcemaps

* sourcemap tests

* remote source maps work

* comment

* update rewriter tests

* clean up TODOs in resolveWindowReference

* remove @types/nock

* clean up todos in deferred-source-map-cache

* fix rewriter build script

* fix concatStream import

* bump expectedresultcount

* clean up js-rules

* threading improvements, workaround for Electron segfault

* no visit_spec for now

* fix 6_visit_spec

* update MAX_WORKER_THREADS

* add repro for #3975

* cleanup

* cleanup

* make better use of namedTypes and builders

* get rid of the horrific closureDetectionTernary

ast-types keeps track of scope, so it is unneeded

* fix #3975, #3994

* add x-sourcemap, sourcemap header support

* snap-shot-it 7.9.3

* add deferred-source-map-cache-spec

* add tests

* Throw error in driver if AST rewriting fails

* Fix "location = 'relative-url'"

* fix max recursion depth

* slim down some fixtures

* fix window.location usage

* don't mess with `frames` at all

* no integration tests

* skip testing apple.com for now

* update wording: regex-based vs. ast-based

* skip real-world tests for now

* add some padding to process.exit workaround

* fix resolvers_spec

* fix html-spec

* cleanup

* Update packages/rewriter/lib/js-rules.ts

* Update packages/driver/src/cypress/resolvers.ts

* just import find by itself

* privatize typedefs for Cypress.state, remove .gitignore, remove dead code

Co-authored-by: Ben Kucera <14625260+Bkucera@users.noreply.github.com>
2020-05-11 12:54:14 -04:00
Zach Bloomquist a09ebc50b7 Fix Domain-specific cookies set on non-public TLDs (#6821)
* use fallback customTlds regex for parse-domain

this ensures that tlds which parse-domain does not recognize can
still work as tlds for the purposes of cookie matching, etc

* add POST tests for Domain=superdomain

* add local.cypress.test to 2_cookies_spec

* move parse-domain, getSuperDomain logic from driver to network

* move test urls to variables

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2020-03-26 10:35:16 -04:00
Zach Bloomquist d810950379 Switch request, request-promise to @cypress/ forks (#6777) 2020-03-19 11:48:24 +06:30
Zach Bloomquist 53be237d11 Fix proxy slowdown with intercepted HTTPS requests (#6705)
* use 2x chrome total time as benchmark

* set TLS minVersion to v1 only if connection already failed with TLS version mismatch

* correct percentile function

* assert at least 1000 requests were made

* setNoDelay on HTTPS-over-HTTPS requests

* allow for tests with HTTPS upstreams to be slightly slower

* try 3x

* add note for add'l multiplier on httpsUpstreamProxy
2020-03-11 17:24:48 -04:00
Jennifer Shehane 2ba53f6837 Better handle reserved key CYPRESS_ENV being set by users to va… (#6437)
* Add warning when setting CYPRESS_ENV to non-production value

* Add warning and update error when setting CYPRESS_ENV in config to non-production value

* Update config test/to throw

* we want warning, not throw

* Rename env var to CYPRESS_INTERNAL_ENV + fix warning to actually warn when staging

* update cli snapshot to include new 'info' command

* yarn.lock

* removed the warning from config, is overboard on our own tests 😓

* cleanup from review

Co-authored-by: Gleb Bahmutov <gleb.bahmutov@gmail.com>
2020-03-06 16:53:48 +06:30
Ben Kucera f77ec01c18 chore:fix ui-components dependencies, web-config deps for yarn (#6534)
- add needed deps in `ui-components` package
- upgrade `@cypress/webpack-preprocessor`
- refactor some eslint code, remove unused eslint scripts
- rename `build-js` scripts to `build-prod` since they'll only need to run when building for prod / checking for tsc errors
2020-02-26 20:21:23 +00:00
renovate[bot] eab801ae3f chore(deps): Update dependency eslint to version 6.8.0 🌟 (#6509)
* chore(deps): Update eslint to 6.8.0 🌟

* fix missing dangling commas for linter

* fix missing dangling commas for linter

* more lint fixes

* yarn lock

Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
2020-02-25 00:09:47 +06:30
Zach Bloomquist 648ef18036 make request versions consistent (#6433) 2020-02-12 14:56:52 -05:00
Andrew Smith 0a6a2abcec Replace npm with yarn (#5555)
* enable using yarn

* enable lerna and yarn workspaces

No longer can reliably access node_modules via thei node_modules directory; yarn may optimize it via hoisting it up. This meant updating JS tasks that were copying files directly from node_modules directories. In these cases, pulled in a new package to resolve these correctly.

SCSS files remain impacted, but cannot easily import via JS. These paths have been modified, but it feels dangerous and incorrect to reach into a node_module to grab files like this.

Many prebuild steps were removed. I **think** the purpose of `check-deps-pre` is no longer needed, but need to confirm this.

* enabling test-unit script

removal of pretest-unit due to check-deps-pre

* removal of all  `check-deps` and `check-deps-pre`

I do not think these are needed anymore

* remove npm run all

Replaced by `lerna run` and `lerna run --scope`

* use yarn in circle CI

appveyor to soon follow

* yarn in appveyor

* remove need for bin-upplaces using bin-up have a dev dependency on some package; mostly mocha. This mocha package will be optimized by yarn workspaces by hoisting it into the root; which is effectively what bin-up usage was mimicing.

* replace npm run with yarn in package files

* replace explict paths to internal packages with yarn bin

* remove unecessary link packages script and references

* properly require package for mocha

* removing yarn test in this package as it was just a proxy for test-*

* yarn test in root now reflects what is run in circle ci

* relax yarn version requirement for circle ci

* @packages/cli is really just cypress

also run test in parallel via `yarn test`; it runs test in all 10 packages

* ensure postinstall is called before prebuild

yarn does not call postinstall when nothing has installed; such is the case when everything has been cached

* vscode config uses yarn

* cannot rely on which node_modules dir a package is in

find the right node_module dir via `resolve-pkg`

* further relax yarn version for OSX build in circle ci

* resolve failing test

Regarding direct access to node_modules

* node version in mac build not sufficient

ignoring check of node/yarn versions when installing

* preinstall script does not exist

I **think** the reason to not install packages' modules (the reason for `--ignore-scripts` may be irrelevant with yarn workspaces managing the packages)

* upgrade mocha that was using --file

`--file` was introduce in >=5

* scope test runs to correct packages

* explictly close connections; otherwise script hangs after tests run

* refactor so npm and npx commads can be created

npx is used to utlize lerna for running across all packages sans cli

* properly resolve socket.io-client node_module

We cannot reach directly into node_modules to grab the socket.io-client file. Furthermore, running it locally will require resolving from a different cwd, the repo root, as opposed to the package's dist directory.

The existence of the file deterimes whether we are building the binary or running locally.

* remove unnecessary arg in vscode debug config

enable debugging in @packages/server to troubleshoot failing test

* another npm command found to be changed to yarn

* properly print colors to terminal

`lerna run` does not appear to print colors to the terminal properly. Changed to leverage `lerna exec`

See https://github.com/lerna/lerna/issues/1168

* add missing test scripts to packages that have partially have them

'test', 'test-unit', 'test-watch', and 'test-debug'

This makes running them from the root easier and enables debugging via IDE on more packages

* properly patch package in yarn workspaces

* another package needing to postinstall

* use existing script over explicit lerna exec

* patches must be copied to dist

* return to building on postinstall

* do not hoist driver's packagesThere are too many places we need driver's packages to not be hoisted when testing. We have *.html files in test with script tags srcing node_modules.

* wait-on is used in circle-ci and needs to be a root dep

No longer hoisted by `@packages/driver`. This previously worked only because it was hoisted. Adding it to root properly.

* update documentation based on new ergonomics

* launcher has unit tests that should be runnable via top level task

* more concise way to run build within cypress scope

* fix for unit test that never seemed to work

`getPathToExample` is really `getPathToExamples`

* bust cache based on yarn.lock changing

* define intra-dependencies among packages

Due to the way we build the binary, all are considered dev dependencies.

* address `jquery.scrollto` mismatched jquery version

Tell yarn to explicitly resolve `jquery@3.1.1` for any dependencies and sub-dependencies. The root issue is that `jquery.scrollto` package specifies jquery as a dependency instead of a peer dependency (which is correct). Its jquery version is set to the `>=1.8` which then resolves to 3.4.1. In doing so, it will patch its jquery instead of ours; meaning that `$.scrollTo` is not defined.

* add/remove deps from renovate

- bin-up is gone in favor of yarn workspaces and lerna from root
- check-deps is gone in favor of `yarn check --integrity`
- lerna added

* few misc yarn lock updates

* hope that this may speed up build binary

installing several of the same dep in >1 package will likely be sped up using yarn due to its machine-wide caching.

* yarn pack prefix version with a `v`

* auto-run `yarn install` when deps become out of date

When switching to a branch with a different set of required deps, running any of the main top level tasks (as seen in the `./CONTRIBUTING.md` guide) will check for deps changes via `yarn check --integrity` and run `yarn` in root if deps are out of sync.

* add clean top level task, remove prebuild

install => build => prebuild => check => install === no good

* address code review to undo formatting changes

* favor default imports over deconstructing imports

* favor @package resolution; pr feedback

* include a specific revision

for some reason, it cannot resolve the original SHA `29dafed297142d3b8a9d8a01842cbdf249a98b72`

using the next closes SHA

* properly cache yarn packagesfollowed guide: https://circleci.com/docs/2.0/yarn/

* lower barrier for contributors to get started

relax node version to be 12.0.0 or higher; will use node version found in `.node-version` in CI

* updates required after merging latest development

was getting type errors when building. recreating the `yarn.lock` file seemed to resolve the issue.

* hidden dep on a specific type version in server

made dep explicit and now it can build.

* update request to patched version

non-breaking changes to request was updated in server, but not everywhere else. It appears that transitive deps were using the 2.88.0 request version instead of the updated one for the server package.

* missing commit from previous commit/merge

* do not force a higher version of yarn than the default on circleci

* exclude e2e.js helper from stop-only command

* trying to bust node_modules cache.https://github.com/yarnpkg/yarn/issues/6412#issuecomment-537787740

* incorrect quotation tick placement

* fix: properly postinstall parse-domain

Do not explicitly script the shell invocation of a dependency's postinstall (parse-domain). The dependency's node_modules may not be where the package thinks they are and are not properly resolved.

It appears that postinstall will automatically be called when installing with yarn.

* run all CI stages

* fix win-appveyor-build.js

* Update CONTRIBUTING.md

Co-Authored-By: Zach Bloomquist <github@chary.us>

* Update CONTRIBUTING.md

Co-Authored-By: Zach Bloomquist <github@chary.us>

* Update CONTRIBUTING.md

Co-Authored-By: Zach Bloomquist <github@chary.us>

* Server package watching a specific test works correctly.

* PR feedback

* Correctly use yarn to pack (to get package size)

* correct size calculation

`yarn pack` does not output the file name like `npm pack` does. Correct this by explictly setting the filename.

* PR feedback

* PR feedback

* update readmes and testing commands from them

* do not include this in default build

* yarn is now installed by default

https://github.com/appveyor/ci/issues/1852

* do not include server in `yarn` auto build

* a few more npm references changed to yarn

* Revert "run all CI stages"

This reverts commit 9256aed99f.

* Update circle.yml

Co-Authored-By: Zach Bloomquist <github@chary.us>

Co-authored-by: Zach Bloomquist <github@chary.us>
2020-02-11 12:40:07 +06:30
Zach Bloomquist b3b7752def set minVersion to TLSv1 and fix types 2020-01-09 11:00:59 -05:00
Gleb Bahmutov 79545fc646 add printing package folder sizes to the build script (#5978)
- and work around `parse-domain` Jest inclusion to minimize bundle size
2019-12-18 14:59:08 -05:00
Zach Bloomquist d56c551b0b Don't set servername when making requests to IP addresses (#5767)
* Don't set `servername` when making requests to IP addresses

* fix test
2019-12-02 22:43:20 +06:30
Zach Bloomquist b0378dc04e Refactor proxy into own package, implement middleware pattern (#5136)
* renames

* Refactor proxy into own package, implement middleware pattern

don't need these mocha opts anymore

fix test

no more zunder

READMEs

fix test

* pass request by reference

* fix cors path

* Move replace_stream to proxy, concat-stream util in network

* Pin dependency versions

* Revert addDefaultPort behavior

* Add READMEs for proxy, network

* Update README.md

* eslint --fix

* set to null not undefined

* use delete and bump node types

* import cors from package now

* parse-domain@2.3.4

* proxy package needs common-tags

* move pumpify dep

* load through where it's needed, remove unused passthru_stream

* remove unneeded getbuffer call


Co-authored-by: Gleb Bahmutov <gleb.bahmutov@gmail.com>
2019-11-27 19:16:15 -05:00
Ben Kucera 4a6870a098 fix develop build: remove network/index.ts (#5408) 2019-10-21 22:46:36 -04:00
Ben Kucera 033689f8ba use typescript in driver (#5383)
* upgrade eslint-plugin-dev to 5.0.0

* more [lint fixes]

* use typescript in driver

* cleanup minor

* remove unneeded file

* mild refactor webpack configs

* fix elements.ts

* fix isTextLike signature change

* fix isType check, fix type_spec

* actually use webpack-preprocessor

* fix isType domUtil

* fix connectors_spec

* cleanup connectors_spec

* address feedback- cleanup, add comments, refac

* answer: no, need index.js
2019-10-18 12:46:46 -04:00
Ben Kucera 653f52dc3c upgrade eslint-plugin-dev to 5.0.0 (#5382)
* upgrade eslint-plugin-dev to 5.0.0

* more [lint fixes]
2019-10-17 11:40:53 -04:00
Ben Kucera 5654680fcd rename .eslintrc -> .eslintrc.json (#5344) 2019-10-10 15:04:25 -04:00
renovate[bot] daab2d7075 chore(deps): Update dependency bin-up and is-fork-pr (#5321)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2019-10-09 17:56:18 -04:00
Chris Breiding 6ba8d7cc93 Electron v5.0.10 (#4720)
* fix specs

* use debugger protocol for cookie handling in electron

* use latest gulp

* use rimraf instead of gulp-clean

* use electron 3.1.8 and node 10.2.1

* use gulp 4 in packages/static

* fix sendCommandAsync, log Schema.getDomains on CDP connect

* autofill e2e test name [skip ci]

* electron@5.0.7, see what new failures exist

* --no-sandbox for launching Electron

* update cookies logic for electron

* node 12

* update snapshot for new node

* update error message for new node

* stub sendCommandAsync

* only connect to socket if path has been replaced, fixes #4776

* update node-sass to support node 12

* skip wacky socket tests for now

* snapshot

* fix run_plugins_spec snapshot, don't include stack trace

* use --no-sandbox on linux to run as root

* allow sendCommandAsync to resolve

* use euid for root check

* log domains even if undefined

* don't worry about ending 1xx responses immediately anymore

* use --max-http-header-size, change max size from 8kb to 1mb, fix #76

* do not send 502 on failed websocket, just send back ECONNRESET

* update websocket spec port to not collide with other test

* update outdated expect

* Revert "only connect to socket if path has been replaced, fixes #4776"

This reverts commit f179eda5ca.

* update gulp in root

* update https-proxy unit tests

* update network spec to properly close server

* update reporter spec

* update https-proxy-agent to fix node 10.10.0 change

discussion: https://github.com/nodejs/node/issues/24474\#issuecomment-511963799

* only pass --max-http-header-size on node >=12

* use own server-destroy implementation that supports secureConnect events

* oops

* update socket_spec

* electron 6.0.0

* console.table introduced in node 10

* change browserify entry to init.js

* handle edge case when no response body

* console.table added in node 10

* do not exit app when all BrowserWindows are closed

* update e2e snapshots

* value may not be null

* update plugins spec

* correct cookie expiry, use browser.getversion for CDP version check

* fix snapshotting for require stacks

* reorder cookies in spec

* warn when depreated electron callback apis are used

* only report 1 plugin error per process

* cleanup

* node 12.4.0, cypress/browsers:node12.4.0-chrome76 docker image

* update shell.openExternal to promisified

* update dialog.showOpenDialog to promisified

* update webContents.session.setProxy to promisified

* updating native dependencies since we don't need ancient node ABI support anymore

* WIP: switch cookies to simpler, jar-less approach

* WIP: switch cookies to simpler, jar-less approach

* making tests pass

* improve cookie filtering logic

* Remove unneeded Promise.try

* filter what makes it to the extension

* properly re-set superdomain cookies on cross-origin cy.visit

* allow comma-separated list of e2e tests

* sort cookies in order of expiration date, ascending

* updating tests, cleanup

* update tests

* version electron as a devDependency, electron@6.0.1

* cleanup, remove old automation

* cleanup, remove old automation

* bump chokidar to fix win10 + node12 issue

was seeing this on windows:
https://github.com/nuxt/nuxt.js/issues/6035

fixed with version bump

* enable now-supported quit role, re-enable old tests

* don't need that arg there

* remove last deprecated callback electron invocations

* Delete cypress.json

* responding to PR feedback

* cleanup

* invoke

* use 'quit' role

* Use new appMenu role for Cypress menu on mac

* electron@6.0.2

* electron@6.0.3

* remove domain: cookie.domain and see what happens

* remove setErrorHandler

* Revert "remove domain: cookie.domain and see what happens"

This reverts commit 49e916896d.

* add unit tests for cookies

* ci

* fix project-content css

* electron@6.0.4

* fix specs_list test

* electron@6.0.7

* some cleanup

* electron@6.0.9

* Update 8_reporters_spec.coffee.js

* electron@5.0.10 - Chromium 73, Node 12

* cli: fix the STDIN pipe on Windows (#5045)

* cli: pipe stdin

* uggh, here is the actual change

* update cli unit tests

* add unit test

* more permissive check for json to include application/vnd.api+j… (#5166)

* more permissive check for json to include

* add json test for content-type application/vnd.api+json

* cruder solution passes e2e tests locally, so let's go with that

* Remove 'charset' from content-type before checking if JSON

* fix eslint for fixture specs (#5176)

* update eslint to lint files within 'fixtures' in support files

- ignore some edge cases like jquery, jsx and obvious js files we wrote
with broken code

* Fixes from eslint to 'fixtures' files

* Catch env variable with reserved name CYPRESS_ENV 1621 (#1626)

* server: check CYPRESS_ENV variable when merging configs

* catch invalid CYPRESS_ENV value in CLI, close #1621

* linting

* sanitize platform in test snapshot

* linting

* update error message text

* add missing comma

* fix finally merge in JS code

* pass CLI linter

* fix log reference, should be debug

* use correct sinon reference

* update message, show first part in red

* update error message text

* Addresses #2953 (#5174)

* Addresses #2953

* Added proper test for new error message

* Didn't realize it ran this test as well, whoops

* Implementing changes as suggested by @jennifer-shehane

* Fixing tests and error output. Moved the checks to the start of the get command to ensure we always catch improper options

* Removing issue test since the querying spec covers it

* Using coffescript isArray check

* depromisify things that were promisified b/t electron 5 <=> 6

Revert "update shell.openExternal to promisified"

This reverts commit 8b6460d015.

Revert "update dialog.showOpenDialog to promisified"

This reverts commit 5f178b075b.

Revert "update webContents.session.setProxy to promisified"

This reverts commit 727df3a4e5.

* node12.4.0-chrome76 => node12.0.0-chrome75

* fix tests for electron downgrade

* node12.0.0-chrome75 => node12.0.0-chrome73


Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
2019-09-24 14:35:24 -04:00