* tighten up potential xvfb display problems
- improve the warning message on possible display problems
- reuse existing helper functions for platform detection
- instead of relying on timing mechanisms, if a possible display
problem is detected on linux - capture all of the stderr silently and
if the broken gtk message is detected, retry running
* consolidated and simplified smoke testing, xvfb error logging and messaging
- added —dev support to cypress verify cli command
* fix lots of tests, restore one error message
* fixed remaining CLI tests
* console.log pong only in electron mode
* remove dead code
* cli: debug explanation for XVFB
* linting
* add chai-as-promised to CLI dev
* show Linux specific error solution if cannot verify
* add todo
* chore: consolidate github issue url logic
* linting
* add npm script lint-changed to quickly eslint fix changes JS files
* retry verify with our XVFB
* update errors and tests
* update CLI tests
* add test for display error message
* fix unit test
* add successful test with retry
* finish verify retry test
* warn users if hit display problem on first verify
* try to detect display problem when running electron and retry with our xvfb
* add warning message to spawn when attempting xvfb re-run
* add test for display retry behavior on spawn
* more comments for clarity
* fix typo
* update cli_spec
* linting
* update named snapshot to have 1 to match snap-shot-it v5
* update errors spec
* linting
* update snapshot use in download_spec
* update install_spec snapshot
* linting
* update use of snapshot in unzip_spec
* update snapshot use in verify_spec
* enable all CLI specs
* no need to skip snapshot sorting
* upgrade snap-shot-it to v6 in root
* update snap-shot-it to v6 in packages/server
* need to add build script to transpile
* update cypress_spec snapshot use with names
* wip [skip ci] update
* wip [skip ci] update test
* [skip ci] fix env var
* bump sinon, create helper utility to always throw when a stub is called without being given stubbed behavior
* update failing specs
* fix some error messages
* update snapshot
* warning -> note, add snapshot tests
* change snapshot os.release, test env vars
* Fixed typos in errors.js
* Revert "Fixed typos in errors.js"
This reverts commit 99085af24c.
* Fixed typos in errors.js
* Fixed typo in errors spec snapshot
Hopefully tests should be passing now
* Fixed typo in verify spec snapshot
* cli: fixes#838 start cypress in dev by routing through the CLI
- matches how we run in production better to keep parity and consistency
* cli: add coerceFalse for clarity
* cli: add global flag, update to work with windows
* server: bring into parity with root scripts
* cli: just execute start script directly to work with windows
* cli: if colors are supported then force them via env vars
- this fixes windows not displaying colors from electron because by
default isTTY is false (due to electron)
* cli: fixes#921 don't ignore stderr, inherit stdio on everything except when linux + xvfb
- filter out stderr messages coming from Xlib or libudev (from xvfb)
* cli, server: force stderr tty so that normalize tty behavior when piping
* server: drop in supports color so debug outputs more colors!
* server: remove empty line
* root: refer to cypress not monorepo
* cli: make util.supportsColor return boolean
* cl: add tests around spawn behavior with forcing colors, tty, and stdio configuration
* cli: handle xvfb onStderrData callback to output debug information
* cli: handle non zero exit code error from xvfb with special message
* feat(run): handle failed tests returned by the cypress run
* cli: rework errors thrown from cypress vs xvfb
* small tweak
* cli: test xvfb start error handling