Description
Description
I want to install iron-icons through Yarn directly through GitHub. With a handful of Polymer projects, like app-layout
, there is no package.json
and the installation works fine. However, with iron-icons
and several others, the installation process fails.
yarn add PolymerElements/paper-dialog
yarn add https://github.com/PolymerElements/iron-icons.git
yarn add https://github.com/PolymerElements/iron-icons.git#3e6294c810ceeee980af692815557ad31912a881
(v2.1.0)
Expected outcome
I expect that this works.
Actual outcome
When adding a project via Yarn, it goes to GitHub and tries to read the package.json
if it exists. Running yarn with verbose on yields in some interesting results. It tries to look for certain files. In app-layout
, these files do not exist. As such, the installation appears to handle that properly and successfully installs the projects.
Performing "HEAD" request to "https://github.com/PolymerElements/app-layout".
verbose 1.293 Request "https://github.com/PolymerElements/app-layout" finished with status code 200.
verbose 1.297 Performing "GET" request to "https://github.com/PolymerElements/app-layout.git/info/refs?service=git-upload-pack".
verbose 1.601 Request "https://github.com/PolymerElements/app-layout.git/info/refs?service=git-upload-pack" finished with status code 200.
verbose 1.612 Performing "GET" request to "https://raw.githubusercontent.com/PolymerElements/app-layout/203838ff0f0cba770e5fe87566abd94b47190e18/package.json".
verbose 1.808 Request "https://raw.githubusercontent.com/PolymerElements/app-layout/203838ff0f0cba770e5fe87566abd94b47190e18/package.json" finished with status code 404.
verbose 1.81 Performing "GET" request to "https://raw.githubusercontent.com/PolymerElements/app-layout/203838ff0f0cba770e5fe87566abd94b47190e18/yarn.json".
verbose 1.921 Request "https://raw.githubusercontent.com/PolymerElements/app-layout/203838ff0f0cba770e5fe87566abd94b47190e18/yarn.json" finished with status code 404.
However, in iron-icons
and many other Polymer projects, there is a package.json, but the version
property is not included. This causes Yarn to fail.
Performing "HEAD" request to "https://github.com/PolymerElements/iron-icon".
verbose 3.128 Request "https://github.com/PolymerElements/iron-icon" finished with status code 200.
verbose 3.129 Performing "GET" request to "https://github.com/PolymerElements/iron-icon.git/info/refs?service=git-upload-pack".
verbose 3.443 Request "https://github.com/PolymerElements/iron-icon.git/info/refs?service=git-upload-pack" finished with status code 200.
verbose 3.446 Performing "GET" request to "https://raw.githubusercontent.com/PolymerElements/iron-icon/c592bd3f0b442e3e4c1fc574f08545d0f9810d15/package.json".
verbose 3.451 Request "https://raw.githubusercontent.com/PolymerElements/iron-icon/c592bd3f0b442e3e4c1fc574f08545d0f9810d15/package.json" finished with status code 200.
verbose 3.452 Error: Can't add "@bower_components/iron-icon": invalid package version undefined.
at new MessageError (/usr/local/google/home/fleker/.nvm/versions/node/v8.9.3/lib/node_modules/yarn/lib/cli.js:186:110)
at PackageRequest.<anonymous> (/usr/local/google/home/fleker/.nvm/versions/node/v8.9.3/lib/node_modules/yarn/lib/cli.js:36413:15)
at Generator.next (<anonymous>)
at step (/usr/local/google/home/fleker/.nvm/versions/node/v8.9.3/lib/node_modules/yarn/lib/cli.js:98:30)
at /usr/local/google/home/fleker/.nvm/versions/node/v8.9.3/lib/node_modules/yarn/lib/cli.js:109:13
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
error An unexpected error occurred: "Can't add \"@bower_components/iron-icon\": invalid package version undefined.".
info If you think this is a bug, please open a bug report with the information provided in "/usr/local/google/home/fleker/samples/smart-home/smart-home-provider/frontend/yarn-error.log".
I know there's work going on for Polymer 3, although I'm hesitant to switch to it in the short-term. Can these package.json
files add a version to enable this type of installation?
Steps to reproduce
npm install -g yarn
yarn add PolymerElements/paper-dialog
yarn add https://github.com/PolymerElements/iron-icons.git
yarn add https://github.com/PolymerElements/iron-icons.git#3e6294c810ceeee980af692815557ad31912a881
Browsers Affected
Affects web development, but not in the browser.