* 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>
Closes Mesa/GLX related warnings shown when running Cypress #29521
The primary Cypress process can emit benign warnings related to Mesa/GLX when running in certain Linux environments or containers. These warnings are related to graphics drivers and X11 display settings, but are not necessary for Cypress to execute correctly. This PR suppresses these warnings from stdout, similar to other benign Electron warnings:
- `error: XDG_RUNTIME_DIR is invalid or not set in the environment.`
- `MESA: error: ZINK: failed to choose pdev`
- `glx: failed to create drisw screen`
1. Execute Cypress tests in run mode on a Linux machine or container with minimal graphics drivers installed
2. Execute Cypress tests in run mode in a Docker container using a basic Linux image (e.g. ubuntu:latest)
3. Verify the suppressed warnings no longer appear in the terminal output
Users will no longer see benign graphics-related warnings in their terminal output when running Cypress in Linux environments with minimal graphics support. This reduces noise in the terminal output while not affecting any actual test functionality.
- [x] Have tests been added/updated?
- [NA] Has a PR for user-facing changes been opened in cypress-documentation?
- [NA] Have API changes been updated in the type definitions?
fix linting
change word for CI
Update cli/CHANGELOG.md
Going with the suggesting.
Co-authored-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>
fix linting
update readme with another fixed issue
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* misc: replace marionette-client with geckodriver as b2g marionette client is no longer supported [run ci]
* install pump [run ci]
* refactor to have geckodriver launch the browser and split out webdriver to own class [run ci]
fix other failing tests [run ci]
fix other failing tests [run ci]
pass env variables to firefox
* fix sigkill / treekill issues on windows with firefox binary being a dangling process [run ci]
* fix issue where browser in headed mode was not starting maximized [run ci]
* stub firefox_spec added deps different to get type inference
* add comment to geckodriver patch
* move capabilities to verbose debug statement
* update changelog
* address comments from code review
* add pending for changelog
* update with suggestions from code review
* remove debug enable as the process needs to be bound to stderr and stdout
* add comment on why we need to bind
* add comments from code review
* address comments from code review
* make sure sessionId is set
* misc: allow HiDPI Screen running wayland to use cypress window/browser
* Added changelog entry
* Fix changelog entry release date to pending
* Changed release changelog entry to actual date
* Added issue number to the changelog entry
* fix tests
* update changelog
---------
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* fix: update newProject ref when switching between organizations in SelectCloudProjectModal (#25730)
* chore: debug page tooltip distance and artifact border (#25727)
* misc: debug page tooltip distance and artifact border
* add changelog entry
* fix CT test
* fix: Improve error handling around calls to `this.next` in middleware (#25702)
* chore: update changelog validation example (#25742)
* misc: improve debug loading text wrap responsiveness (#25703)
* misc: Increase max failures in IATR badge to 99 (#25737)
* chore: exclude collaborator issues/PRs from triage project (#25769)
* feat: add --auto-cancel-after-failures flag (#25237)
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Ryan Pei <ryanppei@gmail.com>
Co-authored-by: Emily Rohrbough <emilyrohrbough@yahoo.com>
* chore: Update v8 snapshot cache (#25592)
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* Update update_v8_snapshot_cache.yml
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
---------
Co-authored-by: cypress-bot[bot] <2f0651858c6e38e0+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: cypress-bot[bot] <47117332+cypress-bot[bot]@users.noreply.github.com>
* fix: implement new graphql fields for spec counts (#25757)
Co-authored-by: Stokes Player <stokes@cypress.io>
Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>
* feat: Bundle cy.origin() dependencies at runtime (#25626)
Co-authored-by: cypress-bot[bot] <2f0651858c6e38e0+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* chore: remove zenhub from release process (#25701)
Co-authored-by: Matt Schile <mschile@cypress.io>
* feat: add Cypress.Commands.overwriteQuery (#25674)
* feat: add Cypress.Commands.overwriteQuery
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: Zach Bloomquist <git@chary.us>
* fix: spawn child process with process.env in macOS arm64 (#25753)
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: Zach Bloomquist <github@chary.us>
* chore: lint system tests in CI (#25673)
* fix: Suppress filesystem errors during glob search (#25774)
* chore: issue with ts-loader missing in binary and problematic esbuild norewrite construct (#25797)
* chore: update changelog linting (#25809)
* docs(guides): add more detail to code-signing (#25794)
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* chore: update workflows.yml to include the v8 snapshot update branch (#25784)
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
* chore: internal request preflight (#25772)
---------
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: cypress-bot[bot] <2f0651858c6e38e0+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
Co-authored-by: Zach Bloomquist <git@chary.us>
* chore: bump for 12.6.0 release (#25812)
* chore: release @cypress/webpack-batteries-included-preprocessor-v2.4.0
[skip ci]
* chore: release @cypress/webpack-preprocessor-v5.17.0
[skip ci]
* test: skip flaky GitDataSource test (#25825)
* chore: making our add-to-triage-board workflow reusable within the Cypress-io org (#25820)
* chore: Making our add to triage workflow callable from other projects inside the Cypress-io org in Github
* chore: updated cypress-example-kitchensink version (#25828)
* fix: duplicate and expired cookies (#25761)
* chore: add regression tests for duplicate cookies and bad expiry times
* avoid prepending domain with dot for cookies that are set with the server side jar. This is to avoid the cookie being duplicated if it is set or overridden in a different context (request that can actually set the cookie or via document.domain)
* feat: use cookie.toString() in the cookie patch to more accurately set cookies on the document, which should include other properties besides key=value
* fix: add logic to handle expired cookies in the document.cookie patch, as well as in CDP
* chore: build binary for cookie fixes for users to test
* chore: change name of fixture to something more accurate
* chore: comment why we are using the toughCookie toString method in the patch
* [run ci]
* chore: add changelog entry
* [run ci]
* fix: revert back to key=value when getting document.cookie as those are the only values are displayed (oversight on my end)
* [run ci]
* chore: make compatible with cypress.require
* fix: add tests for hostOnly/non hostOnly cookies to make sure property gets sent up to automation client correctly. No longer need custom cookie prop to determine destination
* [run ci]
* fix: stale unit test
* chore: adjust comments
* [run ci]
* fix: bad domain logic
* [run ci]
* chore: remove irrelevant comment
* [run ci]
* fix: adjust cookie login text to spec hostOnly cookie within the cookie patch. This should yield the same behavior as we are bound to same origin within the spec bridge
* [run ci]
* [run ci]
* fix: allow for cookies on request of same key to take precedence over cookies in the jar, regardless of how many hierachy cookies exist in the jar
* chore: fix cookie misc tests for cy.origin (dont run cy.origin)
* [run ci]
* chore: skip misc cookie tests in webkit as headless behavior doesn't clear cookies between tests correctly
* Revert "fix: allow for cookies on request of same key to take precedence over cookies in the jar, regardless of how many hierachy cookies exist in the jar"
This reverts commit 17de1883ab.
* [run ci]
* chore: split changelog entry into two parts
* chore: update logic to remove else statement and add comments
* [run ci]
* chore: readd windows snapshot branch in workflows
* [run ci]
* chore: fix workflows from bad merge
* [run ci]
* Revert "chore: split changelog entry into two parts"
This reverts commit 4352ef5f3e.
* [run ci]
* fix: Fix type definitions for cy.reload() (#25779)
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* misc: Debug header updates (#25823)
* fix: allow running tests outside Vite project root folder (#25801)
* fix: allow running tests outside Vite project root folder
* update snapshots
* add changelog entry
---------
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
* fix: mount component in [data-cy-root] (#25807)
* fix(angular): mount component in [data-cy-root]
* fix e2e test
* add changelog entry
* changelog [skip ci]
* changelog
---------
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
* chore: updating add to triage baord github action to use org secret (#25868)
* chore: updating add to triage board github action to use org secret
* chore: release @cypress/angular-v2.0.2
[skip ci]
* chore: release @cypress/vite-dev-server-v5.0.3
[skip ci]
* chore: Update v8 snapshot cache (#25822)
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* feat: support host only cookies (#25853)
* feat: allow setCookie API to take a hostOnly option
* chore: add jsdoc/typescript description to render to users
* chore: add changelog entry
* [run ci]
* chore: fix types
* chore: fix cookie login tests
* chore: update e2e cookie system tests
* [run ci]
* chore: fix cookie command tests. localhost cookies are calculated as hostOnly, which is consistent with how cypress works today
* chore: fix system tests for cookies.
* [run ci]
* chore: fix system tests
* chore: skip hostOnly assertions in webkit (for now)
* [run ci]
* chore: add property definitions to setCookieOptions
* [run ci]
* chore: add comments to hostOnly prop in firefox when setting a cookie
* fix(webpack-dev-server): touch component-index during onSpecsChange to avoid writing to app file (#25861)
* testing: try disabling uTimesSync and see what happens
* build binaries [run ci]
* fix: touch component index file instead of browser.js
* build binaries [run ci]
* update test
* fix test
* add test for custom HTML file in config
* use existing component index in webpack-dev-server unit tests
---------
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
* chore: release @cypress/webpack-dev-server-v3.2.4
[skip ci]
* chore: improve types for server automation cookie client (#25836)
* chore: improve types for automation cookies
* [run ci]
* fix: the cookie_behavior tests by syncing cookies immediately if … (#25855)
* fix: fix the cookie_behavior tests by syncing cookies immediately if the application is already stable
* chore: add changelog entry
* [run ci]
* chore: address comments from code review
* feat: Public API for CT Framework Definitions (#25780)
* chore: rework component onboarding in launchpad (#25713)
* chore: refactoring and types
* rework source of frameworks
* revert rename
* fix tests
* fix more tests
* types
* update code
* use same public API internally
* rename interfaces
* rename
* work on dev server api
* fix types
* fix test
* attempt to support getDevServerConfig
* tests
* add function to define framework [skip ci]
* rework a lot of types
* fix test
* update tests and types
* refactor
* revert changes
* lint
* fix test
* revert
* remove
* add "community" label [skip ci]
* refactor
* types
* lint
* fix bug
* update function name
* address feedback
* improve types with Pick
* refactor using type guard
* correct label
---------
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
* chore: typing error
* feat: scan for 3rd party ct plugins (#25749)
* chore: refactoring and types
* rework source of frameworks
* revert rename
* fix tests
* fix more tests
* types
* update code
* use same public API internally
* rename interfaces
* rename
* work on dev server api
* fix types
* fix test
* attempt to support getDevServerConfig
* tests
* add function to define framework [skip ci]
* rework a lot of types
* fix test
* update tests and types
* refactor
* revert changes
* lint
* fix test
* revert
* remove
* add "community" label [skip ci]
* refactor
* types
* lint
* fix bug
* update function name
* address feedback
* feat: scan for 3rd party ct plugins
* add e2e test
* unit tests [run ci]
* tweak resolution
* rebase, address comments
* fix windows paths
* remove .gitignore
* fix test
---------
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
* lint config
* spacing
* try fix race cond
* fix import error
* build binary
* try update snapshot
* try using require
* support namespaced definitions (#25804)
* remove category
* add icon prop
* support esm -> cjs compiled typescript
* fix test
* misc: add CTA footer to launchpad framework dropdown (#25831)
* remove test project dependencies
* rebase
* windows
* windows again
* add changelog entry
* changelog
* revert workflow
* remove worklfow
---------
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
Co-authored-by: Adam Stone-Lord <adams@cypress.io>
* chore: release @cypress/webpack-dev-server-v3.3.0
[skip ci]
* fix: Add missing error message when `req.continue` is used incorrectly (#25884)
---------
Co-authored-by: Adam Stone-Lord <adams@cypress.io>
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Alejandro Estrada <estrada9166@gmail.com>
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: Ryan Pei <ryanppei@gmail.com>
Co-authored-by: Emily Rohrbough <emilyrohrbough@yahoo.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: cypress-bot[bot] <2f0651858c6e38e0+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: cypress-bot[bot] <47117332+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Mark Noonan <mark@cypress.io>
Co-authored-by: Stokes Player <stokes@cypress.io>
Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
Co-authored-by: Zach Bloomquist <git@chary.us>
Co-authored-by: willmsC <50909991+willmsC@users.noreply.github.com>
Co-authored-by: Zach Bloomquist <github@chary.us>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: Ben M <benm@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Podles <78863563+podlesny-j@users.noreply.github.com>
Co-authored-by: Paolo Caleffi <p.caleffi@dreamonkey.com>
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.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]
...
Changes:
- Pulls down & stitches in the "Cypress Cloud" schema from remote. Currently defaulted to "staging" so we can make quick fixes / iteration there
- Add dedicated type checking CircleCI job `check-ts`
- Adds [graphcache](https://formidable.com/open-source/urql/docs/graphcache/) to normalize the cache & provide better auto-reactivity when data changes
- Removes `LocalProject` / `DashboardProject` in favor of `Project` / `CloudProject`
- General cleanup of Vue components' GraphQL fragments
- Parallelizes launchpad tests & recording to new Cypress project: https://dashboard.cypress.io/projects/sehy69/runs
- Did this b/c tests were frequently timing out, need to figure out the source of this
- Basic mocks for remote schema
- Moves graphql-codegen config to the root, which will serve all packages needing it
- Adds gulpfile for coordinating scripts related to dev environment in launchpad app
- yarn dev from the root runs yarn gulp dev, which:
Runs autobarrel for rolling up the @packages/graphql files
Cleans the dist & cache for .vite
Starts the a codegen watcher for Nexus
Starts the graphql-codegen --watch & highlights output
Starts vite servers for launchpad & app
Starts electron watch.js
* Option to disable Cypress the verbose results to stdout
--quiet mode to disable the verbose results to stdout
but still use specified formatter
* Update cli/schema/cypress.schema.json
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
* Cypress module support for --quiet
Cypress module support for --quiet
* Apply suggestions from code review
Co-authored-by: Zach Bloomquist <github@chary.us>
* Address feedback
Address feedback, thanks
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Zach Bloomquist <github@chary.us>
* Detect if NODE_OPTIONS are present in binary; if not, respawn
* Always reset NODE_OPTIONS, even if no ORIGINAL_
Co-authored-by: Andrew Smith <andrew@andrew.codes>
* Exit with correct code # from stub process
* Clean up based on Brian's feedback
* how process.versions is null, i have no idea, but it is
* add repro for invalid header char
* Always pass NODE_OPTIONS with max-http-header-size (#5452)
* cli: set NODE_OPTIONS=--max-http-header-size=1024*1024 on spawn
* electron: remove redundant max-http-header-size
* server: add useCli option to make e2e tests go thru cli
* server: add test for XHR with body > 100kb via CLI
* clean up conditional
* cli: don't pass --max-http-header-size in dev w node < 11.10
* add original_node_options to restore o.g. user node_options
* force no color
* Revert "Use websockets to stub large XHR response bodies instead of hea… (#5525)"
This reverts commit 249db45363.
* fix yarn.lock
* update 4_xhr_spec snapshot
* make 6_visit_spec reproduce invalid header char error
* pass --http-parser=legacy
* still set headers if an ERR_INVALID_CHAR is raised
* add --http-parser=legacy in some more places
* update http_requests_spec
* readd spawn_spec
* improve debug logging
* remove unnecessary changes
* cleanup
* revert yarn.lock to develop
* use cp.spawn, not cp.fork
to work around the Electron patch: 39baf68790/patches/node/refactor_alter_child_process_fork_to_use_execute_script_with.patch
Co-authored-by: Andrew Smith <andrew@andrew.codes>