Skip to content

Commit e730954

Browse files
committed
build: update node and yarn to latest stable versions
Some CI jobs currently fail because db283f1 removed Node v11 from the supported node versions. Some of CI jobs use Node V11 though, so they currently fail. e.g. https://circleci.com/gh/angular/components/89692. In order to fix this, we ensure that we use consistent versions. For Node, we use the current active LTS version (v12). And for Yarn, we use the latest stable yarn version.
1 parent d6e7893 commit e730954

File tree

7 files changed

+42
-125
lines changed

7 files changed

+42
-125
lines changed

.circleci/config.yml

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,76 +7,74 @@
77
# To validate changes, use an online parser, eg.
88
# http://yaml-online-parser.appspot.com/
99

10-
var_1: &docker_image circleci/node:10.16
10+
var_1: &docker_image circleci/node:12.9.1
11+
var_2: &docker-firefox-image
12+
# TODO(devversion): Temporarily use a image that includes Firefox 62 because the
13+
# ngcontainer image does include an old Firefox version that does not support headless.
14+
- image: circleci/node:12.9.1-browsers
1115

1216
# **Note**: When updating the beginning of the cache key, also update the cache key to match
1317
# the new cache key prefix. This allows us to take advantage of CircleCI's fallback caching.
1418
# Read more here: https://circleci.com/docs/2.0/caching/#restoring-cache.
15-
var_2: &cache_key v4-ng-mat-{{ checksum "WORKSPACE" }}-{{ checksum "yarn.lock" }}
16-
var_3: &cache_fallback_key v4-ng-mat-
19+
var_3: &cache_key v4-ng-mat-{{ checksum "WORKSPACE" }}-{{ checksum "yarn.lock" }}
20+
var_4: &cache_fallback_key v4-ng-mat-
1721

1822
# Settings common to each job
19-
var_4: &job_defaults
23+
var_5: &job_defaults
2024
working_directory: ~/ng
2125
docker:
2226
- image: *docker_image
2327

2428
# Job step for checking out the source code from GitHub. This also ensures that the source code
2529
# is rebased on top of master.
26-
var_5: &checkout_code
30+
var_6: &checkout_code
2731
checkout:
2832
# After checkout, rebase on top of master. By default, PRs are not rebased on top of master,
2933
# which we want. See https://discuss.circleci.com/t/1662
3034
post: git pull --ff-only origin "refs/pull/${CI_PULL_REQUEST//*pull\//}/merge"
3135

3236
# Restores the cache that could be available for the current Yarn lock file. The cache usually
3337
# includes the node modules and the Bazel repository cache.
34-
var_6: &restore_cache
38+
var_7: &restore_cache
3539
restore_cache:
3640
keys:
3741
- *cache_key
3842
- *cache_fallback_key
3943

4044
# Saves the cache for the current Yarn lock file. We store the node modules and the Bazel
4145
# repository cache in order to make subsequent builds faster.
42-
var_7: &save_cache
46+
var_8: &save_cache
4347
save_cache:
4448
key: *cache_key
4549
paths:
4650
- "node_modules"
4751
- "~/bazel_repository_cache"
4852

4953
# Decryption token that is used to decode the GCP credentials file in ".circleci/gcp_token".
50-
var_8: &gcp_decrypt_token "angular"
54+
var_9: &gcp_decrypt_token "angular"
5155

5256
# Job step that ensures that the node module dependencies are installed and up-to-date. We use
5357
# Yarn with the frozen lockfile option in order to make sure that lock file and package.json are
5458
# in sync. Unlike in Travis, we don't need to manually purge the node modules if stale because
5559
# CircleCI automatically discards the cache if the checksum of the lock file has changed.
56-
var_9: &yarn_install
60+
var_10: &yarn_install
5761
run:
5862
name: "Installing project dependencies"
5963
command: yarn install --frozen-lockfile --non-interactive
6064

6165
# Anchor that can be used to download and install Yarn globally in the bash environment.
62-
var_10: &yarn_download
66+
var_11: &yarn_download
6367
run:
6468
name: "Downloading and installing Yarn"
6569
command: |
6670
touch $BASH_ENV
67-
curl -o- -L https://yarnpkg.com/install.sh | PROFILE=$BASH_ENV bash -s -- --version "1.17.3"
71+
curl -o- -L https://yarnpkg.com/install.sh | PROFILE=$BASH_ENV bash -s -- --version "1.19.1"
6872
# Sets up the Bazel config which is specific for CircleCI builds.
69-
var_11: &setup_bazel_ci_config
73+
var_12: &setup_bazel_ci_config
7074
run:
7175
name: "Setting up Bazel configuration for CI"
7276
command: |
7377
echo "import %workspace%/.circleci/bazel.rc" >> ./.bazelrc
74-
# Sets up a different Docker image that includes a moe recent Firefox version which
75-
# is needed for headless testing.
76-
var_12: &docker-firefox-image
77-
# TODO(devversion): Temporarily use a image that includes Firefox 62 because the
78-
# ngcontainer image does include an old Firefox version that does not support headless.
79-
- image: circleci/node:11.4.0-browsers
8078
8179
# Attaches the release output which has been stored in the workspace to the current job.
8280
# https://circleci.com/docs/2.0/workflows/#using-workspaces-to-share-data-among-jobs

WORKSPACE

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,17 @@ load("@build_bazel_rules_nodejs//:defs.bzl", "check_bazel_version", "node_reposi
2525
check_bazel_version("0.27.0")
2626

2727
node_repositories(
28+
node_repositories = {
29+
"12.9.1-darwin_amd64": ("node-v12.9.1-darwin-x64.tar.gz", "node-v12.9.1-darwin-x64", "9aaf29d30056e2233fd15dfac56eec12e8342d91bb6c13d54fb5e599383dddb9"),
30+
"12.9.1-linux_amd64": ("node-v12.9.1-linux-x64.tar.xz", "node-v12.9.1-linux-x64", "680a1263c9f5f91adadcada549f0a9c29f1b26d09658d2b501c334c3f63719e5"),
31+
"12.9.1-windows_amd64": ("node-v12.9.1-win-x64.zip", "node-v12.9.1-win-x64", "6a4e54bda091bd02dbd8ff1b9f6671e036297da012a53891e3834d4bf4bed297"),
32+
},
2833
# For deterministic builds, specify explicit NodeJS and Yarn versions.
29-
node_version = "10.16.0",
34+
node_version = "12.9.1",
3035
yarn_repositories = {
31-
"1.17.3": ("yarn-v1.17.3.tar.gz", "yarn-v1.17.3", "e3835194409f1b3afa1c62ca82f561f1c29d26580c9e220c36866317e043c6f3"),
36+
"1.19.1": ("yarn-v1.19.1.tar.gz", "yarn-v1.19.1", "34293da6266f2aae9690d59c2d764056053ff7eebc56b80b8df05010c3da9343"),
3237
},
33-
yarn_version = "1.17.3",
38+
yarn_version = "1.19.1",
3439
)
3540

3641
yarn_install(

package.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
},
1010
"license": "MIT",
1111
"engines": {
12-
"node": "^10.13.0",
13-
"yarn": ">= 1.17.3"
12+
"node": "^12.0.0",
13+
"yarn": ">= 1.19.1"
1414
},
1515
"scripts": {
1616
"postinstall": "node --preserve-symlinks --preserve-symlinks-main tools/bazel/postinstall-patches.js | ivy-ngcc --properties main",
@@ -134,7 +134,7 @@
134134
"minimist": "^1.2.0",
135135
"mock-fs": "^4.7.0",
136136
"moment": "^2.18.1",
137-
"node-sass": "^4.11.0",
137+
"node-sass": "^4.12.0",
138138
"parse5": "^5.0.0",
139139
"protractor": "^5.4.2",
140140
"resolve-bin": "^0.4.0",
@@ -158,6 +158,7 @@
158158
"vrsource-tslint-rules": "5.1.1"
159159
},
160160
"resolutions": {
161-
"dgeni-packages/typescript": "3.5.3"
161+
"dgeni-packages/typescript": "3.5.3",
162+
"**/graceful-fs": "4.2.2"
162163
}
163164
}

tools/public_api_guard/cdk/a11y.d.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,13 @@ export declare class FocusKeyManager<T> extends ListKeyManager<FocusableOption &
5454
export declare class FocusMonitor implements OnDestroy {
5555
constructor(_ngZone: NgZone, _platform: Platform);
5656
_onBlur(event: FocusEvent, element: HTMLElement): void;
57-
focusVia(element: ElementRef<HTMLElement>, origin: FocusOrigin, options?: FocusOptions): void;
5857
focusVia(element: HTMLElement, origin: FocusOrigin, options?: FocusOptions): void;
59-
monitor(element: ElementRef<HTMLElement>, checkChildren?: boolean): Observable<FocusOrigin>;
58+
focusVia(element: ElementRef<HTMLElement>, origin: FocusOrigin, options?: FocusOptions): void;
6059
monitor(element: HTMLElement, checkChildren?: boolean): Observable<FocusOrigin>;
60+
monitor(element: ElementRef<HTMLElement>, checkChildren?: boolean): Observable<FocusOrigin>;
6161
ngOnDestroy(): void;
62-
stopMonitoring(element: ElementRef<HTMLElement>): void;
6362
stopMonitoring(element: HTMLElement): void;
63+
stopMonitoring(element: ElementRef<HTMLElement>): void;
6464
}
6565

6666
export interface FocusOptions {
@@ -119,8 +119,8 @@ export declare class ListKeyManager<T extends ListKeyManagerOption> {
119119
setNextItemActive(): void;
120120
setPreviousItemActive(): void;
121121
skipPredicate(predicate: (item: T) => boolean): this;
122-
updateActiveItem(item: T): void;
123122
updateActiveItem(index: number): void;
123+
updateActiveItem(item: T): void;
124124
withAllowedModifierKeys(keys: ListKeyManagerModifierKey[]): this;
125125
withHorizontalOrientation(direction: 'ltr' | 'rtl' | null): this;
126126
withTypeAhead(debounceInterval?: number): this;
@@ -143,10 +143,10 @@ export declare function LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY(): null;
143143

144144
export declare class LiveAnnouncer implements OnDestroy {
145145
constructor(elementToken: any, _ngZone: NgZone, _document: any, _defaultOptions?: LiveAnnouncerDefaultOptions | undefined);
146+
announce(message: string): Promise<void>;
146147
announce(message: string, politeness?: AriaLivePoliteness): Promise<void>;
147148
announce(message: string, duration?: number): Promise<void>;
148149
announce(message: string, politeness?: AriaLivePoliteness, duration?: number): Promise<void>;
149-
announce(message: string): Promise<void>;
150150
clear(): void;
151151
ngOnDestroy(): void;
152152
}

tools/public_api_guard/cdk/testing.d.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ export declare abstract class ComponentHarness {
1919
protected locatorFor<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T>;
2020
protected locatorForAll(selector: string): AsyncFactoryFn<TestElement[]>;
2121
protected locatorForAll<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T[]>;
22-
protected locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
2322
protected locatorForOptional(selector: string): AsyncFactoryFn<TestElement | null>;
23+
protected locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
2424
protected waitForTasksOutsideAngular(): Promise<void>;
2525
}
2626

@@ -47,12 +47,12 @@ export declare abstract class HarnessEnvironment<E> implements HarnessLoader, Lo
4747
harnessLoaderFor(selector: string): Promise<HarnessLoader>;
4848
harnessLoaderForAll(selector: string): Promise<HarnessLoader[]>;
4949
harnessLoaderForOptional(selector: string): Promise<HarnessLoader | null>;
50-
locatorFor<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T>;
5150
locatorFor(selector: string): AsyncFactoryFn<TestElement>;
52-
locatorForAll<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T[]>;
51+
locatorFor<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T>;
5352
locatorForAll(selector: string): AsyncFactoryFn<TestElement[]>;
54-
locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
53+
locatorForAll<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T[]>;
5554
locatorForOptional(selector: string): AsyncFactoryFn<TestElement | null>;
55+
locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
5656
abstract waitForTasksOutsideAngular(): Promise<void>;
5757
}
5858

@@ -86,8 +86,8 @@ export interface LocatorFactory {
8686
locatorFor<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T>;
8787
locatorForAll(selector: string): AsyncFactoryFn<TestElement[]>;
8888
locatorForAll<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T[]>;
89-
locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
9089
locatorForOptional(selector: string): AsyncFactoryFn<TestElement | null>;
90+
locatorForOptional<T extends ComponentHarness>(harnessType: ComponentHarnessConstructor<T> | HarnessPredicate<T>): AsyncFactoryFn<T | null>;
9191
waitForTasksOutsideAngular(): Promise<void>;
9292
}
9393

tools/public_api_guard/material/bottom-sheet.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ export declare class MatBottomSheet implements OnDestroy {
77
constructor(_overlay: Overlay, _injector: Injector, _parentBottomSheet: MatBottomSheet, _location?: Location | undefined, _defaultOptions?: MatBottomSheetConfig<any> | undefined);
88
dismiss(): void;
99
ngOnDestroy(): void;
10-
open<T, D = any, R = any>(template: TemplateRef<T>, config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R>;
1110
open<T, D = any, R = any>(component: ComponentType<T>, config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R>;
11+
open<T, D = any, R = any>(template: TemplateRef<T>, config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R>;
1212
}
1313

1414
export declare const matBottomSheetAnimations: {

yarn.lock

Lines changed: 2 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -5502,28 +5502,11 @@ got@^6.7.1:
55025502
unzip-response "^2.0.1"
55035503
url-parse-lax "^1.0.0"
55045504

5505-
graceful-fs@^3.0.0:
5506-
version "3.0.11"
5507-
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.11.tgz#7613c778a1afea62f25c630a086d7f3acbbdd818"
5508-
integrity sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=
5509-
dependencies:
5510-
natives "^1.1.0"
5511-
5512-
graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9:
5513-
version "4.1.15"
5514-
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
5515-
integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==
5516-
5517-
graceful-fs@^4.2.0:
5505+
[email protected], graceful-fs@^3.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@~1.2.0:
55185506
version "4.2.2"
55195507
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02"
55205508
integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==
55215509

5522-
graceful-fs@~1.2.0:
5523-
version "1.2.3"
5524-
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364"
5525-
integrity sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=
5526-
55275510
graphviz@^0.0.8:
55285511
version "0.0.8"
55295512
resolved "https://registry.yarnpkg.com/graphviz/-/graphviz-0.0.8.tgz#e599e40733ef80e1653bfe89a5f031ecf2aa4aaa"
@@ -7253,11 +7236,6 @@ lodash._shimkeys@~2.4.1:
72537236
dependencies:
72547237
lodash._objecttypes "~2.4.1"
72557238

7256-
lodash.assign@^4.2.0:
7257-
version "4.2.0"
7258-
resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7"
7259-
integrity sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=
7260-
72617239
lodash.clonedeep@^4.3.2:
72627240
version "4.5.0"
72637241
resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
@@ -7397,11 +7375,6 @@ lodash.keys@~2.4.1:
73977375
lodash._shimkeys "~2.4.1"
73987376
lodash.isobject "~2.4.1"
73997377

7400-
lodash.mergewith@^4.6.0:
7401-
version "4.6.1"
7402-
resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927"
7403-
integrity sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==
7404-
74057378
lodash.noop@^3.0.1:
74067379
version "3.0.1"
74077380
resolved "https://registry.yarnpkg.com/lodash.noop/-/lodash.noop-3.0.1.tgz#38188f4d650a3a474258439b96ec45b32617133c"
@@ -8185,11 +8158,6 @@ [email protected]:
81858158
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
81868159
integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=
81878160

8188-
nan@^2.10.0:
8189-
version "2.11.1"
8190-
resolved "https://registry.yarnpkg.com/nan/-/nan-2.11.1.tgz#90e22bccb8ca57ea4cd37cc83d3819b52eea6766"
8191-
integrity sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA==
8192-
81938161
nan@^2.12.1:
81948162
version "2.13.2"
81958163
resolved "https://registry.yarnpkg.com/nan/-/nan-2.13.2.tgz#f51dc7ae66ba7d5d55e1e6d4d8092e802c9aefe7"
@@ -8227,11 +8195,6 @@ nash@^3.0.0:
82278195
lodash "^4.17.5"
82288196
minimist "^1.1.0"
82298197

8230-
natives@^1.1.0:
8231-
version "1.1.6"
8232-
resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.6.tgz#a603b4a498ab77173612b9ea1acdec4d980f00bb"
8233-
integrity sha512-6+TDFewD4yxY14ptjKaS63GVdtKiES1pTPyxn9Jb0rBqPMZ7VcCiooEhPNsr+mqHtMGxa/5c/HhcC4uPEUw/nA==
8234-
82358198
needle@^2.2.1:
82368199
version "2.3.1"
82378200
resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.1.tgz#d272f2f4034afb9c4c9ab1379aabc17fc85c9388"
@@ -8336,7 +8299,7 @@ node-releases@^1.1.23:
83368299
dependencies:
83378300
semver "^5.3.0"
83388301

8339-
node-sass@^4.10.0:
8302+
node-sass@^4.10.0, node-sass@^4.12.0, node-sass@^4.8.3:
83408303
version "4.12.0"
83418304
resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.12.0.tgz#0914f531932380114a30cc5fa4fa63233a25f017"
83428305
integrity sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ==
@@ -8359,56 +8322,6 @@ node-sass@^4.10.0:
83598322
stdout-stream "^1.4.0"
83608323
"true-case-path" "^1.0.2"
83618324

8362-
node-sass@^4.11.0:
8363-
version "4.11.0"
8364-
resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.11.0.tgz#183faec398e9cbe93ba43362e2768ca988a6369a"
8365-
integrity sha512-bHUdHTphgQJZaF1LASx0kAviPH7sGlcyNhWade4eVIpFp6tsn7SV8xNMTbsQFpEV9VXpnwTTnNYlfsZXgGgmkA==
8366-
dependencies:
8367-
async-foreach "^0.1.3"
8368-
chalk "^1.1.1"
8369-
cross-spawn "^3.0.0"
8370-
gaze "^1.0.0"
8371-
get-stdin "^4.0.1"
8372-
glob "^7.0.3"
8373-
in-publish "^2.0.0"
8374-
lodash.assign "^4.2.0"
8375-
lodash.clonedeep "^4.3.2"
8376-
lodash.mergewith "^4.6.0"
8377-
meow "^3.7.0"
8378-
mkdirp "^0.5.1"
8379-
nan "^2.10.0"
8380-
node-gyp "^3.8.0"
8381-
npmlog "^4.0.0"
8382-
request "^2.88.0"
8383-
sass-graph "^2.2.4"
8384-
stdout-stream "^1.4.0"
8385-
"true-case-path" "^1.0.2"
8386-
8387-
node-sass@^4.8.3:
8388-
version "4.10.0"
8389-
resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.10.0.tgz#dcc2b364c0913630945ccbf7a2bbf1f926effca4"
8390-
integrity sha512-fDQJfXszw6vek63Fe/ldkYXmRYK/QS6NbvM3i5oEo9ntPDy4XX7BcKZyTKv+/kSSxRtXXc7l+MSwEmYc0CSy6Q==
8391-
dependencies:
8392-
async-foreach "^0.1.3"
8393-
chalk "^1.1.1"
8394-
cross-spawn "^3.0.0"
8395-
gaze "^1.0.0"
8396-
get-stdin "^4.0.1"
8397-
glob "^7.0.3"
8398-
in-publish "^2.0.0"
8399-
lodash.assign "^4.2.0"
8400-
lodash.clonedeep "^4.3.2"
8401-
lodash.mergewith "^4.6.0"
8402-
meow "^3.7.0"
8403-
mkdirp "^0.5.1"
8404-
nan "^2.10.0"
8405-
node-gyp "^3.8.0"
8406-
npmlog "^4.0.0"
8407-
request "^2.88.0"
8408-
sass-graph "^2.2.4"
8409-
stdout-stream "^1.4.0"
8410-
"true-case-path" "^1.0.2"
8411-
84128325
node-source-walk@^4.0.0, node-source-walk@^4.2.0:
84138326
version "4.2.0"
84148327
resolved "https://registry.yarnpkg.com/node-source-walk/-/node-source-walk-4.2.0.tgz#c2efe731ea8ba9c03c562aa0a9d984e54f27bc2c"

0 commit comments

Comments
 (0)