Commit Graph

16 Commits

Author SHA1 Message Date
renovate[bot]
68ec0bb8a0 chore(deps): Update dependency cypress-multi-reporters to version 1.4.0 🌟 (#7431) 2020-05-20 15:23:52 +06:30
Chris Breiding
a3fbab0fc8 Handle webpack protocol file opening (#7296)
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
2020-05-19 13:59:09 -04:00
Jennifer Shehane
a27bd34df3 Reporter error improvements (#3930) 2020-05-06 12:18:29 -04:00
Zach Bloomquist
c80e482009 Fix test script, add Mocha result checks to internal Cypress te… (#7110)
* fix cypress.js script typo

* add verify-mocha-results to driver integration test stages

* add cypress-multi-reporters

* fix circle.yml

* fix yarn.lock

* cleanup

* use working_directory instead of yarn workspace commands

* add reports to ui-components and reporter, update circle.yml

* fix circle.yml

* fix circle.yml

* fix circle.yml

* add more verify-mocha-results
2020-04-23 13:00:46 -04:00
renovate[bot]
f5544a23bf chore(deps): Update dependency @cypress/webpack-preprocessor to… (#7071)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-04-20 19:15:18 +06:30
renovate[bot]
3c321f3da1 chore(deps): Update dependency @babel/core to version 7.9.0 🌟 (#6900)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-04-01 11:38:59 +06:30
renovate[bot]
6c15aa2d1b chore(deps): Update dependency @cypress/webpack-preprocessor to… (#6824)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2020-03-24 12:34:09 +06:30
renovate[bot]
b579c7e114 chore(deps): Update dependency @babel/core to version 7.8.7 🌟 (#6763)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
2020-03-23 17:11:27 +06:30
Kukhyeon Heo
ee494d04ee Added TypeScript type checker + Fixed type errors. (#5780)
* Added type_check.js

* Now checks cli, too.

* Ignored a line that should fail.

* Removed cli shims and post-install.

* Updated @types/chai to fix type error.

* Fixed keyboard type errors.

* Updated typescript to 3.7.2 to fix window.Node error in dom/document.

* Removed tsconfig errors that caused type errors in reporter and runner.

* Ignored error test by dtslint. Becaust it's done by type_check.js

* Added npm command.

* Added it to CI.

* Added skipLibCheck option.

* Removed checking chai folder existence.

copy of chai is unnecessary.

* Added 'ignore-progress' option for CI.

* Show success message when type check is finished successfully.

* Use ignore-progress option on CI.

* Moved type definitions from devDependencies to dependencies.

* Fixed new type errors after rebase.

* Updated type errors.

* Removed cli. Because its types are checked by dtslint.

* type_check -> type-check for consistency.

* Updated json-schema.

* Updated blob-util.

* Fix wrong command in CI.

* Revert "Updated blob-util."

This reverts commit e46549af54.
Because it's a breaking change.

* Remove copies of @types if exists.

* Fix stream buffer type error.

* Fix type errors in ui-components.

* Fix type failure.

* Fix lint error.

* Fix type errors

* Regenerate yarn.lock

* Fix type error.

* Fix type failures.

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Gleb Bahmutov <gleb.bahmutov@gmail.com>
2020-03-17 11:01:31 +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
Chris Breiding
14c84496f1 Upgrade front-end dependencies (#6522)
* upgrade front-end deps

* fix react errors/warnings
2020-02-21 16:49:14 -05:00
renovate[bot]
1d220d9758 chore(deps): Update dependency eslint-plugin-cypress to version… (#6491)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-02-18 16:11:44 +06:30
Brian Mann
1069310899 extract out ui-components dropdown (#6452)
* extract out ui-components dropdown

Co-authored-by: Chris Breiding <chrisbreiding@gmail.com>

* yarn.lock changes

* fix issues with desktop-gui dropdown

* use ui-components dropdown in runner no-automation

* fix desktop-gui user dropdown

* fix tests

Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
2020-02-14 09:50:48 -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
0e82cde8d9 Update browser types (#6254)
* update browser types and list

* add todo

* first pass of changes

* remove 'server' mode, since it is unused

* use foundbrowser type for eletron definition

* fix server unit tests

* update --browser arg to allow name:channel

* improve backwards compatibility impl

* update 3_config_spec snapshot

* fix 2_headless_spec

* fix 5_stdout_spec

* update browser icon stuff

* update 5_spec_isolation_spec snapshot

* Chrome Canary => Canary

* update user-facing types

* fix displayName type

* add debug logs

* fix cypress_spec

* taps

* update config.json
2020-01-31 12:58:12 -05:00
Chris Breiding
c4cbb15be9 Update browser icons (#6230)
* fix images in runner

* fix webpack not liking resolve: lodash + lodash/fp

* fix mobx deprecation warnings

* use real images for browser icons

* revert runs.json fixture

was only using changed values for screenshot purposes

* vertically and horizontally align browser icons in nav dropdown.

* Add edge browsers to fixture

* Add tests and icon support for Edge and Firefox variation browsers

* Fix icons resolution for retina displays

- make tests less strict to changes in icon size or extension

* Address situation where user was undefined in test runs.

* Fix vertical alignment of icons in runs list + add more icons to fixture

* Fix size of browser-icons in automation error page

* try not using nodeVersion: system

* try removing webpack resolve values

* put back webpack resolve values

* derp

* add tests for browser icon

* add support for firefox dev edition, firefox nightly, and edge canary

* add edge beta, edge dev, and family fallback

Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
2020-01-27 23:10:26 +06:30