From c8b8b1740f68f50c1bca245cd899b1d3c52b02da Mon Sep 17 00:00:00 2001 From: Chris Brown Date: Tue, 19 Dec 2017 13:08:56 -0500 Subject: [PATCH] Update dependency pinning to be slightly more restrictive (#26) * Update dependency pinning to be slightly more restrictive * Update readme instructions * Add yarn GPG key manually See: https://github.com/yarnpkg/yarn/issues/4453 --- Dockerfile | 6 +-- README.md | 13 +++--- package.json | 42 +++++++++--------- yarn.lock | 122 +++++++++++++++++++++++++++------------------------ 4 files changed, 97 insertions(+), 86 deletions(-) diff --git a/Dockerfile b/Dockerfile index a4ee876..f0c497d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,8 @@ FROM yarnpkg/node-yarn:0.20-node7 ENV YARN_VERSION 0.22.0-1 - -RUN apt-get update && apt-get install yarn=${YARN_VERSION} +RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \ + apt-get update && apt-get install yarn=${YARN_VERSION} WORKDIR /opt/rf-docs @@ -10,4 +10,4 @@ COPY yarn.lock package.json /opt/rf-docs/ RUN yarn install --pure-lockfile -COPY . /opt/rf-docs/ \ No newline at end of file +COPY . /opt/rf-docs/ diff --git a/README.md b/README.md index fc7afc7..0ffb7a6 100644 --- a/README.md +++ b/README.md @@ -56,8 +56,11 @@ The top-level list: Each path can then reference the resource they represent via `x-resource: ` +## Install Dependencies +Install node dependencies via [yarn](https://yarnpkg.com/en/) (we also suggest using node version manager ([nvm](https://github.com/creationix/nvm)): `yarn install` + ## Development server -Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. +Run `yarn start` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. ## Code scaffolding @@ -65,16 +68,16 @@ Run `ng generate component component-name` to generate a new component. You can ## Build -Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `-prod` flag for a production build. +Run `yarn build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `-prod` flag for a production build. ## Running unit tests -Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). +Run `yarn test` to execute the unit tests via [Karma](https://karma-runner.github.io). ## Running end-to-end tests -Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). -Before running the tests make sure you are serving the app via `ng serve`. +Run `yarn e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). +Before running the tests make sure you are serving the app via `yarn start`. ## Further help diff --git a/package.json b/package.json index 4d56b5b..19aebc0 100644 --- a/package.json +++ b/package.json @@ -12,28 +12,28 @@ }, "private": true, "dependencies": { - "@angular/animations": "^4.0.0", - "@angular/common": "^4.0.0", - "@angular/compiler": "^4.0.0", - "@angular/compiler-cli": "^4.0.0", - "@angular/core": "^4.0.0", - "@angular/forms": "^4.0.0", - "@angular/http": "^4.0.0", - "@angular/platform-browser": "^4.0.0", - "@angular/platform-browser-dynamic": "^4.0.0", - "@angular/platform-server": "^4.0.0", - "@angular/router": "^4.0.0", - "@types/swagger-parser": "^4.0.0", - "angular2-jwt": "^0.2.2", - "classlist.js": "^1.1.20150312", - "core-js": "^2.4.1", - "intl": "^1.2.5", - "ngx-perfect-scrollbar": "^4.0.0", - "rxjs": "^5.1.0", + "@angular/animations": "~4.0.0", + "@angular/common": "~4.0.0", + "@angular/compiler": "~4.0.0", + "@angular/compiler-cli": "~4.0.0", + "@angular/core": "~4.0.0", + "@angular/forms": "~4.0.0", + "@angular/http": "~4.0.0", + "@angular/platform-browser": "~4.0.0", + "@angular/platform-browser-dynamic": "~4.0.0", + "@angular/platform-server": "~4.0.0", + "@angular/router": "~4.0.0", + "@types/swagger-parser": "~4.0.0", + "angular2-jwt": "~0.2.2", + "classlist.js": "~1.1.20150312", + "core-js": "~2.4.1", + "intl": "~1.2.5", + "ngx-perfect-scrollbar": "~4.0.0", + "rxjs": "~5.1.0", "swagger-parser": "beta", - "typescript": "^2.2.2", - "web-animations-js": "^2.2.2", - "zone.js": "^0.7.6" + "typescript": "~2.2.2", + "web-animations-js": "~2.2.2", + "zone.js": "~0.7.6" }, "devDependencies": { "@angular/cli": "1.0.0", diff --git a/yarn.lock b/yarn.lock index 8328be4..2ec21df 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,9 +2,9 @@ # yarn lockfile v1 -"@angular/animations@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-4.0.1.tgz#154420c8ee5c22fbaf1434b6d156150cf5218da6" +"@angular/animations@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-4.0.3.tgz#42bb7d0c767137aaca777d27244f4c042d02641b" "@angular/cli@1.0.0": version "1.0.0" @@ -70,56 +70,56 @@ optionalDependencies: node-sass "^4.3.0" -"@angular/common@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/common/-/common-4.0.1.tgz#df488eada842b2d841ded750712292b18387b5b0" +"@angular/common@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/common/-/common-4.0.3.tgz#17472895eb425f2812b3a79162b5b494d2506a5b" -"@angular/compiler-cli@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-4.0.1.tgz#90c60d491c12e1da901a0aeb3990470aa96e9bfa" +"@angular/compiler-cli@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-4.0.3.tgz#691f280bc4d6611a88d6555f43e57032a0d34300" dependencies: - "@angular/tsc-wrapped" "4.0.1" + "@angular/tsc-wrapped" "4.0.3" minimist "^1.2.0" reflect-metadata "^0.1.2" -"@angular/compiler@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-4.0.1.tgz#15721edb148167a2d83b6f9324817e658eac8280" +"@angular/compiler@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-4.0.3.tgz#8b3cad338ac539328e10a6a4bfaa057094f7bc89" -"@angular/core@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/core/-/core-4.0.1.tgz#0b110a001012076ea696460ccd922707bcdf51ba" +"@angular/core@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/core/-/core-4.0.3.tgz#61be21db6aa5778e33159ffd38cbbebaf16120d9" -"@angular/forms@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-4.0.1.tgz#b9ebdbbb8ace0f9a3bf9e53c299eafdfab1d5041" +"@angular/forms@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-4.0.3.tgz#fb8e6e0aede782bf58730a31d1179b323271816e" -"@angular/http@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/http/-/http-4.0.1.tgz#bf87e7da9dc1f1567f246f9a09723e1cc3543d32" +"@angular/http@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/http/-/http-4.0.3.tgz#efbb701a215ec7704c021676484b85ed47392f4b" -"@angular/platform-browser-dynamic@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.0.1.tgz#fd5debb2d3f6474350965e71c2674e2170d7cfcb" +"@angular/platform-browser-dynamic@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.0.3.tgz#5fa3b98f725999b631d7d7174e6e43dcbf6aa9ac" -"@angular/platform-browser@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-4.0.1.tgz#4b9efbeb2fbb900de188743b988802d3aa2b33ff" +"@angular/platform-browser@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-4.0.3.tgz#170b18d5af4ee02b248aa6a1f1e0584ac841681e" -"@angular/platform-server@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/platform-server/-/platform-server-4.0.1.tgz#3d5fc98255c0f60c6f9079eb8d6cc0c8def31d06" +"@angular/platform-server@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/platform-server/-/platform-server-4.0.3.tgz#3f93d5830e7a085c45c18f1214a8112ef1c23f92" dependencies: parse5 "^3.0.1" xhr2 "^0.1.4" -"@angular/router@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/router/-/router-4.0.1.tgz#2d73a4b6c40e18d5cd0bfd1f20222af64a11c11e" +"@angular/router@~4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/router/-/router-4.0.3.tgz#24184e9b1266c4ad017b2be81573464b1e4c5dfa" -"@angular/tsc-wrapped@4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@angular/tsc-wrapped/-/tsc-wrapped-4.0.1.tgz#5323cc99263b097bceeb8e423270b5f58ffb2186" +"@angular/tsc-wrapped@4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@angular/tsc-wrapped/-/tsc-wrapped-4.0.3.tgz#a5fea6a87df9c348faa5577c3698c8a363082781" dependencies: tsickle "^0.21.0" @@ -152,9 +152,15 @@ version "2.53.42" resolved "https://registry.yarnpkg.com/@types/selenium-webdriver/-/selenium-webdriver-2.53.42.tgz#74cb77fb6052edaff2a8984ddafd88d419f25cac" -"@types/swagger-parser@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/swagger-parser/-/swagger-parser-4.0.0.tgz#51889ff76e5cb4134ed7701d75569cfcb9c8c9a0" +"@types/swagger-parser@~4.0.0": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/swagger-parser/-/swagger-parser-4.0.2.tgz#d181f6e6a3b7e6492808b37173b06f027af2cff0" + dependencies: + "@types/swagger-schema-official" "*" + +"@types/swagger-schema-official@*": + version "2.0.8" + resolved "https://registry.yarnpkg.com/@types/swagger-schema-official/-/swagger-schema-official-2.0.8.tgz#b1110426002bbef298b833422d48087d44a1f05a" abbrev@1: version "1.1.0" @@ -223,9 +229,9 @@ amdefine@>=0.0.4: version "1.0.1" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" -angular2-jwt@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/angular2-jwt/-/angular2-jwt-0.2.2.tgz#c7ba295daffb837c698fbe83ecfe0ecfa29b3f4f" +angular2-jwt@~0.2.2: + version "0.2.3" + resolved "https://registry.yarnpkg.com/angular2-jwt/-/angular2-jwt-0.2.3.tgz#54efdda3ceedba85f6a37b165f22ac22b8adf021" ansi-align@^1.1.0: version "1.1.0" @@ -802,7 +808,7 @@ clap@^1.0.9: dependencies: chalk "^1.1.3" -classlist.js@^1.1.20150312: +classlist.js@~1.1.20150312: version "1.1.20150312" resolved "https://registry.yarnpkg.com/classlist.js/-/classlist.js-1.1.20150312.tgz#1d70842f7022f08d9ac086ce69e5b250f2c57789" @@ -1029,7 +1035,7 @@ cookie@0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" -core-js@^2.2.0, core-js@^2.4.0, core-js@^2.4.1: +core-js@^2.2.0, core-js@^2.4.0, core-js@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e" @@ -2245,7 +2251,7 @@ interpret@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.1.tgz#d579fb7f693b858004947af39fa0db49f795602c" -intl@^1.2.5: +intl@~1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/intl/-/intl-1.2.5.tgz#82244a2190c4e419f8371f5aa34daa3420e2abde" @@ -3031,7 +3037,7 @@ negotiator@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" -ngx-perfect-scrollbar@^4.0.0: +ngx-perfect-scrollbar@~4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/ngx-perfect-scrollbar/-/ngx-perfect-scrollbar-4.0.0.tgz#f1e19449fa97d7f16e1ceb1fe1739e4bb646bebe" dependencies: @@ -4092,12 +4098,18 @@ rx@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" -rxjs@^5.0.1, rxjs@^5.1.0: +rxjs@^5.0.1: version "5.2.0" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.2.0.tgz#db537de8767c05fa73721587a29e0085307d318b" dependencies: symbol-observable "^1.0.1" +rxjs@~5.1.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.1.1.tgz#fc48922965bc6c5efbcc0fe46e90a3af64137a7b" + dependencies: + symbol-observable "^1.0.1" + safe-buffer@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" @@ -4744,14 +4756,10 @@ type-is@~1.6.14: media-typer "0.3.0" mime-types "~2.1.13" -"typescript@>=2.0.0 <2.3.0": +"typescript@>=2.0.0 <2.3.0", typescript@~2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.2.2.tgz#606022508479b55ffa368b58fee963a03dfd7b0c" -typescript@^2.2.2: - version "2.3.0" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.3.0.tgz#2e63e09284392bc8158a2444c33e2093795c0418" - uglify-js@2.8.x, uglify-js@^2.6, uglify-js@^2.7.5: version "2.8.18" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.18.tgz#925d14bae48ab62d1883b41afe6e2261662adb8e" @@ -4961,9 +4969,9 @@ wbuf@^1.1.0, wbuf@^1.4.0: dependencies: minimalistic-assert "^1.0.0" -web-animations-js@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/web-animations-js/-/web-animations-js-2.2.2.tgz#7c3aa5382c5eade70cd206880d56a37869630638" +web-animations-js@~2.2.2: + version "2.2.5" + resolved "https://registry.yarnpkg.com/web-animations-js/-/web-animations-js-2.2.5.tgz#26ca1b34c1347332a0813f8b2bfe69664efa80aa" webdriver-js-extender@^1.0.0: version "1.0.0" @@ -5274,6 +5282,6 @@ z-schema@^3.17.0: optionalDependencies: commander "^2.7.1" -zone.js@^0.7.2, zone.js@^0.7.6: +zone.js@^0.7.2, zone.js@~0.7.6: version "0.7.8" resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.7.8.tgz#4f3fe8834d44597f2639053a0fa438df34fffded"