docs: fix various typos (#37443)

This change just fixes various typos and misspellings across several docs.

I've included also a fix for an issue surfaced via #37423.

Closes #37423

PR Close #37443
This commit is contained in:
Igor Minar 2020-06-04 14:38:53 -07:00 committed by atscott
parent 4e7a4543b8
commit eb6ba9ac80
4 changed files with 22 additions and 25 deletions

View File

@ -67,9 +67,6 @@ var_10: &only_on_master
# **NOTE 1**: Pin to exact images using an ID (SHA). See https://circleci.com/docs/2.0/circleci-images/#using-a-docker-image-id-to-pin-an-image-to-a-fixed-version. # **NOTE 1**: Pin to exact images using an ID (SHA). See https://circleci.com/docs/2.0/circleci-images/#using-a-docker-image-id-to-pin-an-image-to-a-fixed-version.
# (Using the tag in not necessary when pinning by ID, but include it anyway for documentation purposes.) # (Using the tag in not necessary when pinning by ID, but include it anyway for documentation purposes.)
# **NOTE 2**: If you change the version of the docker images, also change the `cache_key` suffix. # **NOTE 2**: If you change the version of the docker images, also change the `cache_key` suffix.
# **NOTE 3**: If you change the version of the `*-browsers` docker image, make sure the
# `--versions.chrome` arg in `integration/bazel-schematics/test.sh` specifies a
# ChromeDriver version that is compatible with the Chrome version in the image.
executors: executors:
default-executor: default-executor:
parameters: parameters:
@ -120,7 +117,7 @@ commands:
sudo apt-get update sudo apt-get update
# Install GTK+ graphical user interface (libgtk-3-0), advanced linux sound architecture (libasound2) # Install GTK+ graphical user interface (libgtk-3-0), advanced linux sound architecture (libasound2)
# and network security service libraries (libnss3) & X11 Screen Saver extension library (libssx1) # and network security service libraries (libnss3) & X11 Screen Saver extension library (libssx1)
# which are dependendies of chrome & needed for karma & protractor headless chrome tests. # which are dependencies of chrome & needed for karma & protractor headless chrome tests.
# This is a very small install which takes around 7s in comparing to using the full # This is a very small install which takes around 7s in comparing to using the full
# circleci/node:x.x.x-browsers image. # circleci/node:x.x.x-browsers image.
sudo apt-get -y install libgtk-3-0 libasound2 libnss3 libxss1 sudo apt-get -y install libgtk-3-0 libasound2 libnss3 libxss1
@ -163,7 +160,7 @@ commands:
description: Sets up a domain that resolves to the local host. description: Sets up a domain that resolves to the local host.
steps: steps:
- run: - run:
name: Preparing environment for running tests on Saucelabs. name: Preparing environment for running tests on Sauce Labs.
command: | command: |
# For SauceLabs jobs, we set up a domain which resolves to the machine which launched # For SauceLabs jobs, we set up a domain which resolves to the machine which launched
# the tunnel. We do this because devices are sometimes not able to properly resolve # the tunnel. We do this because devices are sometimes not able to properly resolve
@ -175,13 +172,13 @@ commands:
setSecretVar SAUCE_ACCESS_KEY $(echo $SAUCE_ACCESS_KEY | rev) setSecretVar SAUCE_ACCESS_KEY $(echo $SAUCE_ACCESS_KEY | rev)
- run: - run:
# Sets up a local domain in the machine's host file that resolves to the local # Sets up a local domain in the machine's host file that resolves to the local
# host. This domain is helpful in Saucelabs tests where devices are not able to # host. This domain is helpful in Sauce Labs tests where devices are not able to
# properly resolve `localhost` or `127.0.0.1` through the sauce-connect tunnel. # properly resolve `localhost` or `127.0.0.1` through the sauce-connect tunnel.
name: Setting up alias domain for local host. name: Setting up alias domain for local host.
command: echo "127.0.0.1 $SAUCE_LOCALHOST_ALIAS_DOMAIN" | sudo tee -a /etc/hosts command: echo "127.0.0.1 $SAUCE_LOCALHOST_ALIAS_DOMAIN" | sudo tee -a /etc/hosts
# Normally this would be an individual job instead of a command. # Normally this would be an individual job instead of a command.
# But startup and setup time for each invidual windows job are high enough to discourage # But startup and setup time for each individual windows job are high enough to discourage
# many small jobs, so instead we use a command for setup unless the gain becomes significant. # many small jobs, so instead we use a command for setup unless the gain becomes significant.
setup_win: setup_win:
description: Setup windows node environment description: Setup windows node environment
@ -599,8 +596,8 @@ jobs:
- run: - run:
name: Decrypt github credentials name: Decrypt github credentials
# We need ensure that the same default digest is used for encoding and decoding with # We need ensure that the same default digest is used for encoding and decoding with
# openssl. Openssl versions might have different default digests which can cause # OpenSSL. OpenSSL versions might have different default digests which can cause
# decryption failures based on the installed openssl version. https://stackoverflow.com/a/39641378/4317734 # decryption failures based on the installed OpenSSL version. https://stackoverflow.com/a/39641378/4317734
command: 'openssl aes-256-cbc -d -in .circleci/github_token -md md5 -k "${KEY}" -out ~/.git_credentials' command: 'openssl aes-256-cbc -d -in .circleci/github_token -md md5 -k "${KEY}" -out ~/.git_credentials'
- run: ./scripts/ci/publish-build-artifacts.sh - run: ./scripts/ci/publish-build-artifacts.sh

View File

@ -13,13 +13,13 @@ import { searchUrl } from '../package-search/package-search.service';
/** /**
* If request is cachable (e.g., package search) and * If request is cacheable (e.g., package search) and
* response is in cache return the cached response as observable. * response is in cache return the cached response as observable.
* If has 'x-refresh' header that is true, * If has 'x-refresh' header that is true,
* then also re-run the package search, using response from next(), * then also re-run the package search, using response from next(),
* returning an observable that emits the cached response first. * returning an observable that emits the cached response first.
* *
* If not in cache or not cachable, * If not in cache or not cacheable,
* pass request through to next() * pass request through to next()
*/ */
// #docregion v1 // #docregion v1
@ -28,8 +28,8 @@ export class CachingInterceptor implements HttpInterceptor {
constructor(private cache: RequestCache) {} constructor(private cache: RequestCache) {}
intercept(req: HttpRequest<any>, next: HttpHandler) { intercept(req: HttpRequest<any>, next: HttpHandler) {
// continue if not cachable. // continue if not cacheable.
if (!isCachable(req)) { return next.handle(req); } if (!isCacheable(req)) { return next.handle(req); }
const cachedResponse = this.cache.get(req); const cachedResponse = this.cache.get(req);
// #enddocregion v1 // #enddocregion v1
@ -51,11 +51,11 @@ export class CachingInterceptor implements HttpInterceptor {
// #enddocregion v1 // #enddocregion v1
/** Is this request cachable? */ /** Is this request cacheable? */
function isCachable(req: HttpRequest<any>) { function isCacheable(req: HttpRequest<any>) {
// Only GET requests are cachable // Only GET requests are cacheable
return req.method === 'GET' && return req.method === 'GET' &&
// Only npm package search is cachable in this app // Only npm package search is cacheable in this app
-1 < req.url.indexOf(searchUrl); -1 < req.url.indexOf(searchUrl);
} }

View File

@ -1,6 +1,6 @@
# Communicating with backend services using HTTP # Communicating with backend services using HTTP
Most front-end applications need to communicate with a server over the HTTP protocol, in order to download or upload data and accesss other back-end services. Most front-end applications need to communicate with a server over the HTTP protocol, in order to download or upload data and access other back-end services.
Angular provides a simplified client HTTP API for Angular applications, the `HttpClient` service class in `@angular/common/http`. Angular provides a simplified client HTTP API for Angular applications, the `HttpClient` service class in `@angular/common/http`.
The HTTP client service offers the following major features. The HTTP client service offers the following major features.
@ -63,7 +63,7 @@ Look at the `AppModule` _imports_ to see how it is configured.
## Requesting data from a server ## Requesting data from a server
Use the [`HTTPClient.get()`](api/common/http/HttpClient#get) method to fetch data from a server. Use the [`HTTPClient.get()`](api/common/http/HttpClient#get) method to fetch data from a server.
The aynchronous method sends an HTTP request, and returns an Observable that emits the requested data when the response is received. The asynchronous method sends an HTTP request, and returns an Observable that emits the requested data when the response is received.
The return type varies based on the `observe` and `responseType` values that you pass to the call. The return type varies based on the `observe` and `responseType` values that you pass to the call.
The `get()` method takes two arguments; the endpoint URL from which to fetch, and an *options* object that you can use to configure the request. The `get()` method takes two arguments; the endpoint URL from which to fetch, and an *options* object that you can use to configure the request.
@ -805,16 +805,16 @@ The `CachingInterceptor` in the following example demonstrates this approach.
header="app/http-interceptors/caching-interceptor.ts)"> header="app/http-interceptors/caching-interceptor.ts)">
</code-example> </code-example>
* The `isCachable()` function determines if the request is cachable. * The `isCacheable()` function determines if the request is cacheable.
In this sample, only GET requests to the npm package search api are cachable. In this sample, only GET requests to the npm package search api are cacheable.
* If the request is not cachable, the interceptor simply forwards the request * If the request is not cacheable, the interceptor simply forwards the request
to the next handler in the chain. to the next handler in the chain.
* If a cachable request is found in the cache, the interceptor returns an `of()` _observable_ with * If a cacheable request is found in the cache, the interceptor returns an `of()` _observable_ with
the cached response, by-passing the `next` handler (and all other interceptors downstream). the cached response, by-passing the `next` handler (and all other interceptors downstream).
* If a cachable request is not in cache, the code calls `sendRequest()`. * If a cacheable request is not in cache, the code calls `sendRequest()`.
This function creates a [request clone](#immutability) without headers, because the npm API forbids them. This function creates a [request clone](#immutability) without headers, because the npm API forbids them.
The function then forwards the clone of the request to `next.handle()` which ultimately calls the server and returns the server's response. The function then forwards the clone of the request to `next.handle()` which ultimately calls the server and returns the server's response.

View File

@ -107,7 +107,7 @@ Notice that all of the files the browser needs to render this application are ca
<div class="alert is-helpful"> <div class="alert is-helpful">
Pay attention to two key points: Pay attention to two key points:
1. The generated `ngsw-config.json` includes a limited list of cachable fonts and images extentions. In some cases, you might want to modify the glob pattern to suit your needs. 1. The generated `ngsw-config.json` includes a limited list of cacheable fonts and images extentions. In some cases, you might want to modify the glob pattern to suit your needs.
1. If `resourcesOutputPath` or `assets` paths are modified after the generation of configuration file, you need to change the paths manually in `ngsw-config.json`. 1. If `resourcesOutputPath` or `assets` paths are modified after the generation of configuration file, you need to change the paths manually in `ngsw-config.json`.
</div> </div>