Files
cypress/packages/network
Bill Glesias d470f59ea2 feat: experimental skip domain injection (#25307)
* feat: set up experimentalUseDefaultDocumentDomain to disallow document.domain overwritting

* use default domain around experimentalUseDefaultDocumentDomain in main iframe and spec bridge iframes. Also adapt CORS policy to use same-origin if experimental flag is set

* run ci

* fix: add insertion of experimental flag where is was needed/missing

* chore: add system test to exercise experimental flag for expected behavior

* fix: fix issues with template updates to conform to squirrelly v7

* fix: update config tests to include new experimental flag

* run ci

* fix: trailing whitespace [run ci]

* chore: update snapshot

* run ci

* fix: update proxy unit tests to account for experimentalUseDefaultDocumentDomain

* run ci

* fix: Allow component tests with special characters in filepath (#25299)

feat: cut over experimental flag to take list of known problematic domains via string/glob pattern

run ci

chore: update system test and fix broken config

* fix: fix server unit and integration tests. integration tests should no longer use google to test against injection as we do not inject document.domain on google domains

* run ci

* run ci

* fix: server integration tests where google documents are expected to receive document.domain injection. Kept test same by changing URL

* run ci

* fix: update server test with mssing unupdated assertions

* run ci

* fix: turn off experimental flag by default while recommending sane defaults to users to configure

* run ci

* chore: fix typings [run ci]

* run ci

* chore: make experiment an e2e option only

* run ci

* chore: address comments in code review

* chore: rename experimentalUseDefaultDocumentDomain to experimentalSkipDomainInjection

* fix regression in shouldInjectionDocumentDomain utility function and add unit tests

* run ci

* chore: rename documentSuperDomainIfExists to superDomain [run ci]

* chore: address comments from code review

* chore: just pass opts through to policyForDomain

* run ci

Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>
2023-01-09 10:00:05 -05:00
..

network

This package contains networking-related classes and utilities.

Exports

You can see a list of the modules exported from this package in ./lib/index.ts. Here is a brief description of what's available:

  • agent is a HTTP/HTTPS agent with support for HTTP/HTTPS proxies and keepalive whenever possible
  • allowDestroy can be used to wrap a net.Server to add a .destroy() method
  • blocked is a utility for matching blocked globs
  • concatStream is a wrapper around concat-stream@1.6.2 that makes it always yield a Buffer
  • connect contains utilities for making network connections, including createRetryingSocket
  • cors contains utilities for Cross-Origin Resource Sharing
  • uri contains utilities for URL parsing and formatting

See the individual class files in ./lib for more information.

Building

Note: you should not ever need to build the .js files manually. @packages/ts provides require-time transpilation when in development.

yarn workspace @packages/network build-prod

Testing

Tests are located in ./test

To run tests:

yarn workspace @packages/network test
yarn workspace @packages/network test-watch
yarn workspace @packages/network test-debug