angular / material.angular.io

Docs site for Angular Components
http://material.angular.io
MIT License
885 stars 395 forks source link

Remove dependency on python2 #753

Closed 9034725985 closed 4 years ago

9034725985 commented 4 years ago

We should not require python2.

yarn install 
yarn install v1.22.4
[1/4] Resolving packages...
[2/4] Fetching packages...
info fsevents@2.1.0: The platform "linux" is incompatible with this module.
info "fsevents@2.1.0" is an optional dependency and failed compatibility check. Excluding it from installation.
info fsevents@1.2.9: The platform "linux" is incompatible with this module.
info "fsevents@1.2.9" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/cdk@9.2.1-sha-b0424a351".
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/cdk-experimental@9.2.1-sha-b0424a351".
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/material@9.2.1-sha-b0424a351".
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/material-experimental@9.2.1-sha-b0424a351".
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/material-moment-adapter@9.2.1-sha-b0424a351".
[4/4] Building fresh packages...
[-/4] ⠈ waiting...
[2/4] ⠈ node-sass
[-/4] ⠈ waiting...
error /home/kushal/src/material/node_modules/node-sass: Command failed.
Exit code: 1
Command: node scripts/build.js
Arguments: 
Directory: /home/kushal/src/material/node_modules/node-sass
Output:
Building: /home/kushal/.nvm/versions/node/v14.0.0/bin/node /home/kushal/src/material/node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [
gyp verb cli   '/home/kushal/.nvm/versions/node/v14.0.0/bin/node',
gyp verb cli   '/home/kushal/src/material/node_modules/node-gyp/bin/node-gyp.js',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library='
gyp verb cli ]
gyp info using node-gyp@3.8.0
gyp info using node@14.0.0 | linux | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb `which` failed Error: not found: python2
gyp verb `which` failed     at getNotFoundError (/home/kushal/src/material/node_modules/which/which.js:13:12)
gyp verb `which` failed     at F (/home/kushal/src/material/node_modules/which/which.js:68:19)
gyp verb `which` failed     at E (/home/kushal/src/material/node_modules/which/which.js:80:29)
gyp verb `which` failed     at /home/kushal/src/material/node_modules/which/which.js:89:16
gyp verb `which` failed     at /home/kushal/src/material/node_modules/isexe/index.js:42:5
gyp verb `which` failed     at /home/kushal/src/material/node_modules/isexe/mode.js:8:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:175:21)
gyp verb `which` failed  python2 Error: not found: python2
gyp verb `which` failed     at getNotFoundError (/home/kushal/src/material/node_modules/which/which.js:13:12)
gyp verb `which` failed     at F (/home/kushal/src/material/node_modules/which/which.js:68:19)
gyp verb `which` failed     at E (/home/kushal/src/material/node_modules/which/which.js:80:29)
gyp verb `which` failed     at /home/kushal/src/material/node_modules/which/which.js:89:16
gyp verb `which` failed     at /home/kushal/src/material/node_modules/isexe/index.js:42:5
gyp verb `which` failed     at /home/kushal/src/material/node_modules/isexe/mode.js:8:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:175:21) {
gyp verb `which` failed   code: 'ENOENT'
gyp verb `which` failed }
gyp verb check python checking for Python executable "python" in the PATH
gyp verb `which` succeeded python /usr/bin/python
gyp ERR! configure error 
gyp ERR! stack Error: Command failed: /usr/bin/python -c import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack   File "<string>", line 1
gyp ERR! stack     import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack                                ^
gyp ERR! stack SyntaxError: invalid syntax
gyp ERR! stack 
gyp ERR! stack     at ChildProcess.exithandler (child_process.js:303:12)
gyp ERR! stack     at ChildProcess.emit (events.js:315:20)
gyp ERR! stack     at maybeClose (internal/child_process.js:1051:16)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5)
gyp ERR! System Linux 5.6.6-200.fc31.x86_64
gyp ERR! command "/home/kushal/.nvm/versions/node/v14.0.0/bin/node" "/home/kushal/src/material/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd /home/kushal/src/material/node_modules/node-sass
gyp ERR! node -v v14.0.0
gyp ERR! node-gyp -v v3.8.0
9034725985 commented 4 years ago

Maybe https://github.com/angular/material.angular.io/issues/744 will fix this?

9034725985 commented 4 years ago

looks like it

$ yarn why node-gyp
yarn why v1.22.4
[1/4] Why do we have the module "node-gyp"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
=> Found "node-gyp@3.8.0"
info Reasons this module exists
   - "node-sass" depends on it
   - Hoisted from "node-sass#node-gyp"
info Disk size without dependencies: "3.48MB"
info Disk size with unique dependencies: "4.93MB"
info Disk size with transitive dependencies: "11.77MB"
info Number of shared dependencies: 57
Done in 1.14s.
9034725985 commented 4 years ago

never mind. I needed to update node-sass to 1.14...

if you are reading this, run

yarn upgrade node-sass
9034725985 commented 4 years ago

closing

kushal@ideapadflex-kushal material]$ time yarn upgrade node-sass
yarn upgrade v1.22.4
[1/4] Resolving packages...
warning @angular/cli > universal-analytics > request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
warning firebase-tools > request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
warning protractor > webdriver-manager > request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
warning node-sass > request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
warning node-sass > node-gyp > request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
[2/4] Fetching packages...
info fsevents@2.1.0: The platform "linux" is incompatible with this module.
info "fsevents@2.1.0" is an optional dependency and failed compatibility check. Excluding it from installation.
info fsevents@1.2.9: The platform "linux" is incompatible with this module.
info "fsevents@1.2.9" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/cdk@9.2.1-sha-b0424a351".
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/cdk-experimental@9.2.1-sha-b0424a351".
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/material@9.2.1-sha-b0424a351".
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/material-experimental@9.2.1-sha-b0424a351".
warning " > @angular/components-examples@9.2.1-sha-b0424a351" has incorrect peer dependency "@angular/material-moment-adapter@9.2.1-sha-b0424a351".
[4/4] Rebuilding all packages...
success Saved lockfile.
success Saved 90 new dependencies.
info Direct dependencies
└─ node-sass@4.14.0
info All dependencies
├─ abbrev@1.1.1
├─ amdefine@1.0.1
├─ are-we-there-yet@1.1.5
├─ array-find-index@1.0.2
├─ asn1@0.2.4
├─ async-foreach@0.1.3
├─ asynckit@0.4.0
├─ aws-sign2@0.7.0
├─ aws4@1.9.1
├─ balanced-match@1.0.0
├─ bcrypt-pbkdf@1.0.2
├─ block-stream@0.0.9
├─ brace-expansion@1.1.11
├─ camelcase-keys@2.1.0
├─ caseless@0.12.0
├─ code-point-at@1.1.0
├─ combined-stream@1.0.8
├─ concat-map@0.0.1
├─ console-control-strings@1.1.0
├─ currently-unhandled@0.4.1
├─ dashdash@1.14.1
├─ delayed-stream@1.0.0
├─ delegates@1.0.0
├─ ecc-jsbn@0.1.2
├─ extend@3.0.2
├─ extsprintf@1.3.0
├─ forever-agent@0.6.1
├─ form-data@2.3.3
├─ gauge@2.7.4
├─ gaze@1.1.3
├─ getpass@0.1.7
├─ glob@7.1.6
├─ globule@1.3.1
├─ har-schema@2.0.0
├─ har-validator@5.1.3
├─ has-ansi@2.0.0
├─ has-unicode@2.0.1
├─ http-signature@1.2.0
├─ in-publish@2.0.1
├─ invert-kv@1.0.0
├─ is-arrayish@0.2.1
├─ is-finite@1.1.0
├─ is-typedarray@1.0.0
├─ is-utf8@0.2.1
├─ isstream@0.1.2
├─ js-base64@2.5.2
├─ json-schema@0.2.3
├─ json-stringify-safe@5.0.1
├─ jsprim@1.4.1
├─ lcid@1.0.0
├─ load-json-file@1.1.0
├─ loud-rejection@1.6.0
├─ map-obj@1.0.1
├─ meow@3.7.0
├─ mime-db@1.40.0
├─ nan@2.14.1
├─ node-gyp@3.8.0
├─ node-sass@4.14.0
├─ nopt@3.0.6
├─ number-is-nan@1.0.1
├─ oauth-sign@0.9.0
├─ os-homedir@1.0.2
├─ os-locale@1.4.0
├─ os-tmpdir@1.0.2
├─ path-type@1.1.0
├─ performance-now@2.1.0
├─ pinkie@2.0.4
├─ pseudomap@1.0.2
├─ psl@1.8.0
├─ qs@6.5.2
├─ read-pkg@1.1.0
├─ redent@1.0.0
├─ repeating@2.0.1
├─ sass-graph@2.2.4
├─ scss-tokenizer@0.2.3
├─ spdx-correct@3.1.0
├─ spdx-exceptions@2.3.0
├─ sshpk@1.16.1
├─ stdout-stream@1.4.1
├─ strip-bom@2.0.0
├─ strip-indent@1.0.1
├─ tough-cookie@2.5.0
├─ trim-newlines@1.0.0
├─ true-case-path@1.0.3
├─ tunnel-agent@0.6.0
├─ tweetnacl@0.14.5
├─ validate-npm-package-license@3.0.4
├─ verror@1.10.0
├─ which@1.3.1
└─ wide-align@1.1.3
Done in 14.89s.

real    0m15.073s
user    0m12.959s
sys 0m4.025s
[kushal@ideapadflex-kushal material]$ yarn why node-sass
yarn why v1.22.4
[1/4] Why do we have the module "node-sass"...?
[2/4] Initialising dependency graph...
[3/4] Finding dependency...
[4/4] Calculating file sizes...
=> Found "node-sass@4.14.0"
info Has been hoisted to "node-sass"
info This module exists because it's specified in "devDependencies".
info Disk size without dependencies: "6.45MB"
info Disk size with unique dependencies: "17.36MB"
info Disk size with transitive dependencies: "31.44MB"
info Number of shared dependencies: 126
Done in 1.26s.
[kushal@ideapadflex-kushal material]$ time yarn install
yarn install v1.22.4
[1/4] Resolving packages...
success Already up-to-date.
$ webdriver-manager update --gecko false && yarn build-themes && ngcc --async false --properties es2015 browser module main --first-only --create-ivy-entry-points
[15:11:08] I/file_manager - creating folder /home/kushal/src/material/node_modules/webdriver-manager/selenium
[15:11:08] I/config_source - curl -o/home/kushal/src/material/node_modules/webdriver-manager/selenium/standalone-response.xml https://selenium-release.storage.googleapis.com/
[15:11:08] I/config_source - curl -o/home/kushal/src/material/node_modules/webdriver-manager/selenium/chrome-response.xml https://chromedriver.storage.googleapis.com/
[15:11:09] I/downloader - curl -o/home/kushal/src/material/node_modules/webdriver-manager/selenium/chromedriver_81.0.4044.69.zip https://chromedriver.storage.googleapis.com/81.0.4044.69/chromedriver_linux64.zip
[15:11:09] I/downloader - curl -o/home/kushal/src/material/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.141.59.jar https://selenium-release.storage.googleapis.com/3.141/selenium-server-standalone-3.141.59.jar
[15:11:14] I/update - chromedriver: unzipping chromedriver_81.0.4044.69.zip
[15:11:14] I/update - chromedriver: setting permissions to 0755 for /home/kushal/src/material/node_modules/webdriver-manager/selenium/chromedriver_81.0.4044.69
yarn run v1.22.4
$ bash ./tools/build-themes.sh
Building custom theme scss files.
Finished building CSS.
Done in 5.80s.
Compiling @angular/animations : es2015 as esm2015
Compiling @angular/core : es2015 as esm2015
Compiling @angular/animations/browser : es2015 as esm2015
Compiling @angular/animations/browser/testing : es2015 as esm2015
Compiling @angular/common : es2015 as esm2015
Compiling @angular/cdk/clipboard : es2015 as esm2015
Compiling @angular/cdk/platform : es2015 as esm2015
Compiling @angular/cdk/bidi : es2015 as esm2015
Compiling @angular/cdk/collections : es2015 as esm2015
Compiling @angular/cdk/scrolling : es2015 as esm2015
Compiling @angular/cdk/drag-drop : es2015 as esm2015
Compiling @angular/cdk/keycodes : es2015 as esm2015
Compiling @angular/cdk/observers : es2015 as esm2015
Compiling @angular/cdk/a11y : es2015 as esm2015
Compiling @angular/cdk/portal : es2015 as esm2015
Compiling @angular/cdk/overlay : es2015 as esm2015
Compiling @angular/cdk-experimental/dialog : es2015 as esm2015
Compiling @angular/cdk-experimental/scrolling : es2015 as esm2015
Compiling @angular/common/http : es2015 as esm2015
Compiling @angular/common/http/testing : es2015 as esm2015
Compiling @angular/google-maps : es2015 as esm2015
Compiling @angular/platform-browser : es2015 as esm2015
Compiling @angular/platform-browser/animations : es2015 as esm2015
Compiling @angular/forms : es2015 as esm2015
Compiling @angular/material/core : es2015 as esm2015
Compiling @angular/material/form-field : es2015 as esm2015
Compiling @angular/material/autocomplete : es2015 as esm2015
Compiling @angular/material/badge : es2015 as esm2015
Compiling @angular/cdk/layout : es2015 as esm2015
Compiling @angular/material/bottom-sheet : es2015 as esm2015
Compiling @angular/material/button-toggle : es2015 as esm2015
Compiling @angular/material/card : es2015 as esm2015
Compiling @angular/material/chips : es2015 as esm2015
Compiling @angular/material/button : es2015 as esm2015
Compiling @angular/material/dialog : es2015 as esm2015
Compiling @angular/cdk/text-field : es2015 as esm2015
Compiling @angular/material/input : es2015 as esm2015
Compiling @angular/material/datepicker : es2015 as esm2015
Compiling @angular/cdk/accordion : es2015 as esm2015
Compiling @angular/material/expansion : es2015 as esm2015
Compiling @angular/material/grid-list : es2015 as esm2015
Compiling @angular/material/icon : es2015 as esm2015
Compiling @angular/material/icon/testing : es2015 as esm2015
Compiling @angular/material/divider : es2015 as esm2015
Compiling @angular/material/list : es2015 as esm2015
Compiling @angular/material/progress-spinner : es2015 as esm2015
Compiling @angular/material/sidenav : es2015 as esm2015
Compiling @angular/material/slider : es2015 as esm2015
Compiling @angular/material/snack-bar : es2015 as esm2015
Compiling @angular/cdk/stepper : es2015 as esm2015
Compiling @angular/material/stepper : es2015 as esm2015
Compiling @angular/cdk/table : es2015 as esm2015
Compiling @angular/material/select : es2015 as esm2015
Compiling @angular/material/tooltip : es2015 as esm2015
Compiling @angular/material/paginator : es2015 as esm2015
Compiling @angular/material/sort : es2015 as esm2015
Compiling @angular/material/table : es2015 as esm2015
Compiling @angular/material/toolbar : es2015 as esm2015
Compiling @angular/cdk/tree : es2015 as esm2015
Compiling @angular/material/tree : es2015 as esm2015
Compiling @angular/cdk-experimental/popover-edit : es2015 as esm2015
Compiling @angular/cdk-experimental/column-resize : es2015 as esm2015
Compiling @angular/material-experimental/column-resize : es2015 as esm2015
Compiling @angular/material-experimental/mdc-autocomplete : es2015 as esm2015
Compiling @angular/material-experimental/mdc-button : es2015 as esm2015
Compiling @angular/material-experimental/mdc-card : es2015 as esm2015
Compiling @angular/material/checkbox : es2015 as esm2015
Compiling @angular/material-experimental/mdc-checkbox : es2015 as esm2015
Compiling @angular/material-experimental/mdc-chips : es2015 as esm2015
Compiling @angular/material-experimental/mdc-form-field : es2015 as esm2015
Compiling @angular/material-experimental/mdc-input : es2015 as esm2015
Compiling @angular/material-experimental/mdc-list : es2015 as esm2015
Compiling @angular/material/menu : es2015 as esm2015
Compiling @angular/material-experimental/mdc-menu : es2015 as esm2015
Compiling @angular/material/progress-bar : es2015 as esm2015
Compiling @angular/material-experimental/mdc-progress-bar : es2015 as esm2015
Compiling @angular/material-experimental/mdc-progress-bar/testing : es2015 as esm2015
Compiling @angular/material/radio : es2015 as esm2015
Compiling @angular/material-experimental/mdc-radio : es2015 as esm2015
Compiling @angular/material-experimental/mdc-select : es2015 as esm2015
Compiling @angular/material-experimental/mdc-sidenav : es2015 as esm2015
Compiling @angular/material/slide-toggle : es2015 as esm2015
Compiling @angular/material-experimental/mdc-slide-toggle : es2015 as esm2015
Compiling @angular/material-experimental/mdc-slider : es2015 as esm2015
Compiling @angular/material-experimental/mdc-snackbar : es2015 as esm2015
Compiling @angular/material-experimental/mdc-table : es2015 as esm2015
Compiling @angular/material/tabs : es2015 as esm2015
Compiling @angular/material-experimental/mdc-tabs : es2015 as esm2015
Compiling @angular/material-experimental/popover-edit : es2015 as esm2015
Compiling @angular/material-moment-adapter : es2015 as esm2015
Compiling @angular/core/testing : es2015 as esm2015
Compiling @angular/platform-browser-dynamic : es2015 as esm2015
Compiling @angular/platform-browser/testing : es2015 as esm2015
Compiling @angular/compiler/testing : es2015 as esm2015
Compiling @angular/platform-browser-dynamic/testing : es2015 as esm2015
Compiling @angular/common/testing : es2015 as esm2015
Compiling @angular/router : es2015 as esm2015
Compiling @angular/router/testing : es2015 as esm2015
Compiling @angular/youtube-player : es2015 as esm2015
Done in 125.49s.

real    2m5.648s
user    2m28.731s
sys 0m6.408s
[kushal@ideapadflex-kushal material]$ 
[kushal@ideapadflex-kushal material]$ time yarn install
yarn install v1.22.4
[1/4] Resolving packages...
success Already up-to-date.
$ webdriver-manager update --gecko false && yarn build-themes && ngcc --async false --properties es2015 browser module main --first-only --create-ivy-entry-points
[15:14:15] I/update - selenium standalone: file exists /home/kushal/src/material/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.141.59.jar
[15:14:15] I/update - selenium standalone: selenium-server-standalone-3.141.59.jar up to date
[15:14:15] I/update - chromedriver: file exists /home/kushal/src/material/node_modules/webdriver-manager/selenium/chromedriver_81.0.4044.69.zip
[15:14:15] I/update - chromedriver: unzipping chromedriver_81.0.4044.69.zip
[15:14:16] I/update - chromedriver: setting permissions to 0755 for /home/kushal/src/material/node_modules/webdriver-manager/selenium/chromedriver_81.0.4044.69
[15:14:16] I/update - chromedriver: chromedriver_81.0.4044.69 up to date
yarn run v1.22.4
$ bash ./tools/build-themes.sh
Building custom theme scss files.
Finished building CSS.
Done in 6.74s.
Done in 14.93s.

real    0m15.438s
user    0m11.263s
sys 0m1.125s