Fix Electron linting errors #929

Merged
IGassmann merged 14 commits from issue/397 into master 2018-01-15 20:12:34 +01:00
11 changed files with 178 additions and 176 deletions

25
.gitignore vendored
View file

@ -1,30 +1,9 @@
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/node_modules
/LBRY-darwin-x64
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/dist
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/src/main/dist
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/src/main/locales
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/src/main/node_modules
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/src/renderer/dist
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/build/venv
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/build/daemon.ver
/lbry-app-venv
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/lbry-app
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/lbry-venv
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/build/venv
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
*.pyc
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/static/daemon/lbrynet*
/static/locales
/daemon/build
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/daemon/venv
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/daemon/requirements.txt
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
/.idea
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
*.pyc
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
*.iml
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
.#*
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
lyoshenka commented 2018-01-08 19:38:15 +01:00 (Migrated from github.com)
Review

i believe build/venv is still used (by build.sh)

i believe build/venv is still used (by build.sh)
build/daemon.zip
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
.vimrc
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
package-lock.json
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
.DS_Store
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.

lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.
lyoshenka commented 2018-01-08 19:38:39 +01:00 (Migrated from github.com)
Review

this is here because many of us use JetBrains, which creates that dir

this is here because many of us use JetBrains, which creates that dir
IGassmann commented 2018-01-08 21:50:36 +01:00 (Migrated from github.com)
Review

I think it's better to keep project related ignore rules into the project .gitignoreand user-specific rules into the user's global .gitignore.

I think it's better to keep project related ignore rules into the project `.gitignore`and user-specific rules into the user's global `.gitignore`.

View file

@ -31,7 +31,6 @@ development and testing purposes.
* [Git](https://git-scm.com/downloads)
* [Node.js](https://nodejs.org/en/download/)
* [Yarn](https://yarnpkg.com/en/docs/install)
* `yarn --add-python-to-path install --global --production windows-build-tools` (Windows only)
### One-time Setup
@ -61,40 +60,10 @@ The app can be run from the sources using the following command:
### On Windows
#### Windows Dependency
1. Download and install `git` from <a href="https://git-for-windows.github.io/">github.io<a>
(configure to use command prompt integration)
2. Download and install `npm` and `node` from
<a href="https://nodejs.org/en/download/current/">nodejs.org<a>
3. Download and install `python 2.7` from
<a href="https://www.python.org/downloads/windows/">python.org</a>
4. Download and Install `Microsoft Visual C++ Compiler for Python 2.7` from
<a href="https://www.microsoft.com/en-us/download/confirmation.aspx?id=44266">Microsoft<a>
5. Download and install `.NET Framework 2.0 Software Development Kit (SDK) (x64)` from
<a href="https://www.microsoft.com/en-gb/download/details.aspx?id=15354">Microsoft<a> (may need
to extract setup.exe and install manually by running install.exe as Administrator)
#### One-time Setup
1. Open a command prompt as administrator and run the following:
```
npm install --global --production windows-build-tools
exit
```
2. Open a command prompt in the root of the project and run the following:
```
python -m pip install -r build\requirements.txt
npm install -g yarn
yarn install
yarn build
```
3. Download the lbry daemon and CLI [binaries](https://github.com/lbryio/lbry/releases) and place
them in `static\daemon`.
Download the lbry daemon and CLI [binaries](https://github.com/lbryio/lbry/releases) and place them
in `static\daemon`.
### Build

View file

@ -40,8 +40,12 @@ set -eu
if $LINUX; then
INSTALL="$SUDO apt-get install --no-install-recommends -y"
lyoshenka commented 2018-01-08 19:35:48 +01:00 (Migrated from github.com)
Review

this only gets run if brew command does not exist. so it will only update when it is installed. is that what you intended?

this only gets run if `brew` command does not exist. so it will only update when it is installed. is that what you intended?
$INSTALL build-essential libssl-dev libffi-dev libgmp3-dev python2.7-dev libsecret-1-dev curl
elif $OSX && ! cmd_exists brew ; then
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
elif $OSX; then
if ! cmd_exists brew; then
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
else
brew update
fi
fi

View file

@ -1,5 +1,6 @@
{
"appId": "io.lbry.LBRY",
"productName": "LBRY",
"mac": {
"category": "public.app-category.entertainment"
},

View file

@ -38,7 +38,7 @@
lyoshenka commented 2018-01-10 23:59:19 +01:00 (Migrated from github.com)
Review

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...
IGassmann commented 2018-01-11 00:42:03 +01:00 (Migrated from github.com)
Review

I changed the name to follow the norms. I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the productName field declared in the electron-builder.json file and not the package.json's name.

I'll test it to be sure.

I changed the name to follow the [norms](https://yarnpkg.com/lang/en/docs/package-json/#toc-name). I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the [`productName` field](https://yarnpkg.com/lang/en/docs/package-json/#toc-name) declared in the `electron-builder.json` file and not the `package.json`'s `name`. I'll test it to be sure.
IGassmann commented 2018-01-15 16:42:13 +01:00 (Migrated from github.com)
Review

Debian does identify the app as a new package and doesn't replace the one with the previous name.

I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.

Debian does identify the app as a new package and doesn't replace the one with the previous name. I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.
lyoshenka commented 2018-01-10 23:59:19 +01:00 (Migrated from github.com)
Review

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...
IGassmann commented 2018-01-11 00:42:03 +01:00 (Migrated from github.com)
Review

I changed the name to follow the norms. I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the productName field declared in the electron-builder.json file and not the package.json's name.

I'll test it to be sure.

I changed the name to follow the [norms](https://yarnpkg.com/lang/en/docs/package-json/#toc-name). I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the [`productName` field](https://yarnpkg.com/lang/en/docs/package-json/#toc-name) declared in the `electron-builder.json` file and not the `package.json`'s `name`. I'll test it to be sure.
IGassmann commented 2018-01-15 16:42:13 +01:00 (Migrated from github.com)
Review

Debian does identify the app as a new package and doesn't replace the one with the previous name.

I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.

Debian does identify the app as a new package and doesn't replace the one with the previous name. I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.
"install": "^0.10.2",
"jayson": "^2.0.2",
"jshashes": "^1.0.7",
"keytar": "^4.0.3",
lyoshenka commented 2018-01-10 23:59:19 +01:00 (Migrated from github.com)
Review

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...
IGassmann commented 2018-01-11 00:42:03 +01:00 (Migrated from github.com)
Review

I changed the name to follow the norms. I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the productName field declared in the electron-builder.json file and not the package.json's name.

I'll test it to be sure.

I changed the name to follow the [norms](https://yarnpkg.com/lang/en/docs/package-json/#toc-name). I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the [`productName` field](https://yarnpkg.com/lang/en/docs/package-json/#toc-name) declared in the `electron-builder.json` file and not the `package.json`'s `name`. I'll test it to be sure.
IGassmann commented 2018-01-15 16:42:13 +01:00 (Migrated from github.com)
Review

Debian does identify the app as a new package and doesn't replace the one with the previous name.

I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.

Debian does identify the app as a new package and doesn't replace the one with the previous name. I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.
"keytar-prebuild": "^4.0.4",
lyoshenka commented 2018-01-10 23:59:19 +01:00 (Migrated from github.com)
Review

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...
IGassmann commented 2018-01-11 00:42:03 +01:00 (Migrated from github.com)
Review

I changed the name to follow the norms. I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the productName field declared in the electron-builder.json file and not the package.json's name.

I'll test it to be sure.

I changed the name to follow the [norms](https://yarnpkg.com/lang/en/docs/package-json/#toc-name). I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the [`productName` field](https://yarnpkg.com/lang/en/docs/package-json/#toc-name) declared in the `electron-builder.json` file and not the `package.json`'s `name`. I'll test it to be sure.
IGassmann commented 2018-01-15 16:42:13 +01:00 (Migrated from github.com)
Review

Debian does identify the app as a new package and doesn't replace the one with the previous name.

I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.

Debian does identify the app as a new package and doesn't replace the one with the previous name. I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.
"localforage": "^1.5.0",
"npm": "^5.5.1",
"qrcode.react": "^0.7.2",

lyoshenka commented 2018-01-10 23:59:19 +01:00 (Migrated from github.com)
Review

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...
IGassmann commented 2018-01-11 00:42:03 +01:00 (Migrated from github.com)
Review

I changed the name to follow the norms. I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the productName field declared in the electron-builder.json file and not the package.json's name.

I'll test it to be sure.

I changed the name to follow the [norms](https://yarnpkg.com/lang/en/docs/package-json/#toc-name). I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the [`productName` field](https://yarnpkg.com/lang/en/docs/package-json/#toc-name) declared in the `electron-builder.json` file and not the `package.json`'s `name`. I'll test it to be sure.
IGassmann commented 2018-01-15 16:42:13 +01:00 (Migrated from github.com)
Review

Debian does identify the app as a new package and doesn't replace the one with the previous name.

I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.

Debian does identify the app as a new package and doesn't replace the one with the previous name. I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.
lyoshenka commented 2018-01-10 23:59:19 +01:00 (Migrated from github.com)
Review

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...

why did this change? will this affect the .deb package that's built? if the name changes, i think ubuntu will think its a different package...
IGassmann commented 2018-01-11 00:42:03 +01:00 (Migrated from github.com)
Review

I changed the name to follow the norms. I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the productName field declared in the electron-builder.json file and not the package.json's name.

I'll test it to be sure.

I changed the name to follow the [norms](https://yarnpkg.com/lang/en/docs/package-json/#toc-name). I'm not sure how exactly it'll behave in Ubuntu since I didn't test on it, but it should normally use the [`productName` field](https://yarnpkg.com/lang/en/docs/package-json/#toc-name) declared in the `electron-builder.json` file and not the `package.json`'s `name`. I'll test it to be sure.
IGassmann commented 2018-01-15 16:42:13 +01:00 (Migrated from github.com)
Review

Debian does identify the app as a new package and doesn't replace the one with the previous name.

I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.

Debian does identify the app as a new package and doesn't replace the one with the previous name. I think we should wait for the AppImage switch, which should come with the auto-update PR, before applying this change and then request Linux users that they uninstall their previous install.

View file

@ -1,14 +1,14 @@
/* eslint-disable no-console */
// Module imports
import Path from 'path';
import Url from 'url';
import path from 'path';
import url from 'url';
import Jayson from 'jayson';
import Semver from 'semver';
import Https from 'https';
import Keytar from 'keytar';
import SemVer from 'semver';
import https from 'https';
import keytar from 'keytar-prebuild';
import ChildProcess from 'child_process';
import Assert from 'assert';
import { app, BrowserWindow, globalShortcut, ipcMain, Menu, Tray } from 'electron';
import assert from 'assert';
import { app, BrowserWindow, globalShortcut, ipcMain, Menu, Tray, dialog } from 'electron';
import mainMenu from './menu/mainMenu';
import contextMenu from './menu/contextMenu';
@ -18,9 +18,9 @@ const localVersion = app.getVersion();
const isDevelopment = process.env.NODE_ENV === 'development';
// Misc constants
const LATEST_RELEASE_API_URL = 'https://api.github.com/repos/lbryio/lbry-app/releases/latest';
const DAEMON_PATH = process.env.LBRY_DAEMON || Path.join(__static, 'daemon/lbrynet-daemon');
const rendererUrl = isDevelopment
const latestReleaseAPIURL = 'https://api.github.com/repos/lbryio/lbry-app/releases/latest';
const daemonPath = process.env.LBRY_DAEMON || path.join(__static, 'daemon/lbrynet-daemon');
const rendererURL = isDevelopment
? `http://localhost:${process.env.ELECTRON_WEBPACK_WDS_PORT}`
: `file://${__dirname}/index.html`;
@ -47,7 +47,7 @@ let readyToQuit = false;
// If we receive a URI to open from an external app but there's no window to
// sendCredits it to, it's cached in this variable.
let openUri = null;
let openURI = null;
// Set this to true to minimize on clicking close
// false for normal action
@ -56,7 +56,7 @@ let minimize = true;
// Keep the tray also, it is getting GC'd if put in createTray()
let tray = null;
function processRequestedUri(uri) {
function processRequestedURI(URI) {
// Windows normalizes URIs when they're passed in from other apps. On Windows,
// this function tries to restore the original URI that was typed.
// - If the URI has no path, Windows adds a trailing slash. LBRY URIs
@ -67,9 +67,9 @@ function processRequestedUri(uri) {
// On Linux and Mac, we just return the URI as given.
if (process.platform === 'win32') {
return uri.replace(/\/$/, '').replace('/#', '#');
return URI.replace(/\/$/, '').replace('/#', '#');
}
return uri;
return URI;
}
/*
@ -162,14 +162,18 @@ function createWindow() {
if (isDevelopment) {
window.webContents.openDevTools();
}
window.loadURL(rendererUrl);
if (openUri) {
window.loadURL(rendererURL);
if (openURI) {
// We stored and received a URI that an external app requested before we had a window object
window.webContents.on('did-finish-load', () => {
window.webContents.send('open-uri-requested', openUri, true);
window.webContents.send('open-uri-requested', openURI, true);
});
}
window.webContents.on('crashed', () => {
safeQuit();
});
window.removeAllListeners();
window.on('close', event => {
@ -211,6 +215,23 @@ function createWindow() {
window.webContents.send('window-is-focused', null);
});
window.on('unresponsive', () => {
dialog.showMessageBox(
window,
{
type: 'warning',
buttons: ['Wait', 'Quit'],
title: 'LBRY Unresponsive',
defaultId: 1,
message: 'LBRY is not responding. Would you like to quit?',
cancelId: 0,
},
buttonIndex => {
if (buttonIndex === 1) safeQuit();
}
);
});
mainMenu();
return window;
@ -223,9 +244,9 @@ function createTray() {
if (process.platform === 'darwin') {
// Using @2x for mac retina screens so the icon isn't blurry
// file name needs to include "Template" at the end for dark menu bar
iconPath = Path.join(__static, '/img/fav/macTemplate@2x.png');
iconPath = path.join(__static, '/img/fav/macTemplate@2x.png');
} else {
iconPath = Path.join(__static, '/img/fav/32x32.png');
iconPath = path.join(__static, '/img/fav/32x32.png');
}
tray = new Tray(iconPath);
@ -236,10 +257,10 @@ function createTray() {
});
}
function handleOpenUriRequested(uri) {
function handleOpenURIRequested(URI) {
if (!rendererWindow) {
// Window not created yet, so store up requested URI for when it is
openUri = processRequestedUri(uri);
openURI = processRequestedURI(URI);
} else {
if (rendererWindow.isMinimized()) {
rendererWindow.restore();
@ -248,7 +269,7 @@ function handleOpenUriRequested(uri) {
}
rendererWindow.focus();
rendererWindow.webContents.send('open-uri-requested', processRequestedUri(uri));
rendererWindow.webContents.send('open-uri-requested', processRequestedURI(URI));
}
}
@ -282,10 +303,10 @@ function handleDaemonSubprocessExited() {
}
function launchDaemon() {
Assert(!daemonSubprocess, 'Tried to launch daemon twice');
assert(!daemonSubprocess, 'Tried to launch daemon twice');
console.log('Launching daemon:', DAEMON_PATH);
daemonSubprocess = ChildProcess.spawn(DAEMON_PATH);
console.log('Launching daemon:', daemonPath);
daemonSubprocess = ChildProcess.spawn(daemonPath);
// Need to handle the data event instead of attaching to
// process.stdout because the latter doesn't work. I believe on
// windows it buffers stdout and we don't get any meaningful output
@ -300,7 +321,7 @@ function launchDaemon() {
const isSecondaryInstance = app.makeSingleInstance(argv => {
if (argv.length >= 2) {
handleOpenUriRequested(argv[1]); // This will handle restoring and focusing the window
handleOpenURIRequested(argv[1]); // This will handle restoring and focusing the window
} else if (rendererWindow) {
if (rendererWindow.isMinimized()) {
rendererWindow.restore();
@ -443,11 +464,11 @@ app.on('activate', () => {
});
if (process.platform === 'darwin') {
app.on('open-url', (event, uri) => {
handleOpenUriRequested(uri);
app.on('open-url', (event, URI) => {
handleOpenURIRequested(URI);
});
} else if (process.argv.length >= 2) {
handleOpenUriRequested(process.argv[1]);
handleOpenURIRequested(process.argv[1]);
}
ipcMain.on('upgrade', (event, installerPath) => {
@ -485,7 +506,7 @@ ipcMain.on('version-info-requested', () => {
},
};
const req = Https.get(Object.assign(opts, Url.parse(LATEST_RELEASE_API_URL)), res => {
const req = https.get(Object.assign(opts, url.parse(latestReleaseAPIURL)), res => {
res.on('data', data => {
result += data;
});
@ -497,7 +518,7 @@ ipcMain.on('version-info-requested', () => {
rendererWindow.webContents.send('version-info-received', null);
}
} else {
const upgradeAvailable = Semver.gt(formatRc(remoteVersion), formatRc(localVersion));
const upgradeAvailable = SemVer.gt(formatRc(remoteVersion), formatRc(localVersion));
if (rendererWindow) {
rendererWindow.webContents.send('version-info-received', {
remoteVersion,
@ -518,13 +539,18 @@ ipcMain.on('version-info-requested', () => {
});
ipcMain.on('get-auth-token', event => {
Keytar.getPassword('LBRY', 'auth_token').then(token => {
keytar.getPassword('LBRY', 'auth_token').then(token => {
event.sender.send('auth-token-response', token ? token.toString().trim() : null);
});
});
ipcMain.on('set-auth-token', (event, token) => {
Keytar.setPassword('LBRY', 'auth_token', token ? token.toString().trim() : null);
keytar.setPassword('LBRY', 'auth_token', token ? token.toString().trim() : null);
});
process.on('uncaughtException', error => {
console.error(error);
safeQuit();
});
export { contextMenu };

View file

@ -1,27 +1,21 @@
import React from "react";
import { connect } from "react-redux";
import { doChangeVolume } from "redux/actions/app";
import { selectVolume } from "redux/selectors/app";
import { doPlayUri, doSetPlayingUri } from "redux/actions/content";
import { doPlay, doPause, savePosition } from "redux/actions/media";
import {
makeSelectMetadataForUri,
makeSelectContentTypeForUri,
} from "redux/selectors/claims";
import React from 'react';
import { connect } from 'react-redux';
import { doChangeVolume } from 'redux/actions/app';
import { selectVolume } from 'redux/selectors/app';
import { doPlayUri, doSetPlayingUri } from 'redux/actions/content';
import { doPlay, doPause, savePosition } from 'redux/actions/media';
import { makeSelectMetadataForUri, makeSelectContentTypeForUri } from 'redux/selectors/claims';
import {
makeSelectFileInfoForUri,
makeSelectLoadingForUri,
makeSelectDownloadingForUri,
} from "redux/selectors/file_info";
import { makeSelectCostInfoForUri } from "redux/selectors/cost_info";
import { selectShowNsfw } from "redux/selectors/settings";
import {
selectMediaPaused,
makeSelectMediaPositionForUri,
} from "redux/selectors/media";
import Video from "./view";
import { selectPlayingUri } from "redux/selectors/content";
import { makeSelectClaimForUri } from "redux/selectors/claims";
} from 'redux/selectors/file_info';
import { makeSelectCostInfoForUri } from 'redux/selectors/cost_info';
import { selectShowNsfw } from 'redux/selectors/settings';
import { selectMediaPaused, makeSelectMediaPositionForUri } from 'redux/selectors/media';
import Video from './view';
import { selectPlayingUri } from 'redux/selectors/content';
import { makeSelectClaimForUri } from 'redux/selectors/claims';
const select = (state, props) => ({
claim: makeSelectClaimForUri(props.uri)(state),
@ -44,8 +38,7 @@ const perform = dispatch => ({
changeVolume: volume => dispatch(doChangeVolume(volume)),
doPlay: () => dispatch(doPlay()),
doPause: () => dispatch(doPause()),
savePosition: (claimId, position) =>
dispatch(savePosition(claimId, position)),
savePosition: (claimId, position) => dispatch(savePosition(claimId, position)),
});
export default connect(select, perform)(Video);

View file

@ -1,8 +1,8 @@
// @flow
import * as actions from "constants/action_types";
import type { Action, Dispatch } from "redux/reducers/media";
import lbry from "lbry";
import { makeSelectClaimForUri } from "redux/selectors/claims";
import * as actions from 'constants/action_types';
import type { Action, Dispatch } from 'redux/reducers/media';
import lbry from 'lbry';
import { makeSelectClaimForUri } from 'redux/selectors/claims';
export const doPlay = () => (dispatch: Dispatch) =>
dispatch({

View file

@ -1,6 +1,6 @@
// @flow
import * as actions from "constants/action_types";
import { handleActions } from "util/redux-utils";
import * as actions from 'constants/action_types';
import { handleActions } from 'util/redux-utils';
export type MediaState = {
paused: Boolean,

View file

@ -1,14 +1,11 @@
import * as settings from "constants/settings";
import { createSelector } from "reselect";
import lbryuri from "lbryuri";
import { makeSelectClaimForUri } from "redux/selectors/claims";
import * as settings from 'constants/settings';
import { createSelector } from 'reselect';
import lbryuri from 'lbryuri';
import { makeSelectClaimForUri } from 'redux/selectors/claims';
const _selectState = state => state.media || {};
export const selectMediaPaused = createSelector(
_selectState,
state => state.paused
);
export const selectMediaPaused = createSelector(_selectState, state => state.paused);
export const makeSelectMediaPositionForUri = uri =>
createSelector(_selectState, makeSelectClaimForUri(uri), (state, claim) => {

129
yarn.lock
View file

@ -95,8 +95,8 @@
component-url "^0.2.1"
"@types/node@^7.0.18":
version "7.0.43"
resolved "https://registry.yarnpkg.com/@types/node/-/node-7.0.43.tgz#a187e08495a075f200ca946079c914e1a5fe962c"
version "7.0.52"
resolved "https://registry.yarnpkg.com/@types/node/-/node-7.0.52.tgz#8990d3350375542b0c21a83cd0331e6a8fc86716"
"@types/webpack-env@^1.13.2":
version "1.13.2"
@ -182,7 +182,7 @@ ajv@^4.9.1:
co "^4.6.0"
json-stable-stringify "^1.0.1"
ajv@^5.0.0, ajv@^5.1.0, ajv@^5.1.5, ajv@^5.2.3:
ajv@^5.0.0, ajv@^5.1.5, ajv@^5.2.3:
version "5.5.0"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.0.tgz#eb2840746e9dc48bd5e063a36e3fd400c5eab5a9"
dependencies:
@ -191,6 +191,15 @@ ajv@^5.0.0, ajv@^5.1.0, ajv@^5.1.5, ajv@^5.2.3:
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.3.0"
ajv@^5.1.0, ajv@^5.5.1:
version "5.5.2"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965"
dependencies:
co "^4.6.0"
fast-deep-equal "^1.0.0"
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.3.0"
ajv@^5.3.0:
version "5.5.1"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.1.tgz#b38bb8876d9e86bee994956a04e721e88b248eb2"
@ -200,15 +209,6 @@ ajv@^5.3.0:
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.3.0"
ajv@^5.5.1:
version "5.5.2"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965"
dependencies:
co "^4.6.0"
fast-deep-equal "^1.0.0"
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.3.0"
align-text@^0.1.1, align-text@^0.1.3:
version "0.1.4"
resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
@ -2200,7 +2200,7 @@ core-js@^2.4.0, core-js@^2.5.0:
version "2.5.1"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b"
core-util-is@~1.0.0:
core-util-is@1.0.2, core-util-is@~1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
@ -2446,19 +2446,13 @@ debug@*, debug@^3.0.0, debug@^3.0.1, debug@^3.1.0:
dependencies:
ms "2.0.0"
debug@2, debug@2.6.9, debug@^2.1.3, debug@^2.6.6:
debug@2, debug@2.6.9, debug@^2.1.3, debug@^2.2.0, debug@^2.6.6:
version "2.6.9"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
dependencies:
ms "2.0.0"
debug@2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
dependencies:
ms "0.7.1"
debug@^2.2.0, debug@^2.6.8:
debug@^2.6.8:
version "2.6.8"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc"
dependencies:
@ -2911,8 +2905,8 @@ electron-webpack@^1.11.0:
yargs "^10.0.3"
electron@^1.7.9:
version "1.7.9"
resolved "https://registry.yarnpkg.com/electron/-/electron-1.7.9.tgz#add54e9f8f83ed02f6519ec10135f698b19336cf"
version "1.7.10"
resolved "https://registry.yarnpkg.com/electron/-/electron-1.7.10.tgz#3a3e83d965fd7fafe473be8ddf8f472561b6253d"
dependencies:
"@types/node" "^7.0.18"
electron-download "^3.0.1"
@ -3062,10 +3056,14 @@ es6-promise@^3.0.2:
version "3.3.1"
resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613"
es6-promise@^4.0.3, es6-promise@^4.0.5:
es6-promise@^4.0.3:
version "4.1.0"
resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.1.0.tgz#dda03ca8f9f89bc597e689842929de7ba8cebdf0"
es6-promise@^4.0.5:
version "4.2.2"
resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.2.tgz#f722d7769af88bd33bc13ec6605e1f92966b82d9"
es6-promisify@3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-3.0.0.tgz#22226b92957317f965247edfde9295f83efebe86"
@ -3490,17 +3488,21 @@ extract-text-webpack-plugin@^3.0.2:
webpack-sources "^1.0.1"
extract-zip@^1.0.3:
version "1.6.5"
resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.5.tgz#99a06735b6ea20ea9b705d779acffcc87cff0440"
version "1.6.6"
resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.6.tgz#1290ede8d20d0872b429fd3f351ca128ec5ef85c"
dependencies:
concat-stream "1.6.0"
debug "2.2.0"
debug "2.6.9"
mkdirp "0.5.0"
yauzl "2.4.1"
extsprintf@1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550"
extsprintf@1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
extsprintf@^1.2.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
eyes@0.1.8:
version "0.1.8"
@ -5049,13 +5051,13 @@ jsonpointer@^4.0.0:
resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
jsprim@^1.2.2:
version "1.4.0"
resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918"
version "1.4.1"
resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
dependencies:
assert-plus "1.0.0"
extsprintf "1.0.2"
extsprintf "1.3.0"
json-schema "0.2.3"
verror "1.3.6"
verror "1.10.0"
jstransform@^11.0.3:
version "11.0.3"
@ -5085,11 +5087,12 @@ keypress@0.1.x:
version "0.1.0"
resolved "https://registry.yarnpkg.com/keypress/-/keypress-0.1.0.tgz#4a3188d4291b66b4f65edb99f806aa9ae293592a"
keytar@^4.0.3:
version "4.1.0"
resolved "https://registry.yarnpkg.com/keytar/-/keytar-4.1.0.tgz#9e3933e489d656de1a868e1293709313044989d7"
keytar-prebuild@^4.0.4:
version "4.0.4"
resolved "https://registry.yarnpkg.com/keytar-prebuild/-/keytar-prebuild-4.0.4.tgz#eb6354c68f2b3609dc325ef8709844632652d602"
dependencies:
nan "2.5.1"
nan "2.7.0"
prebuild-install "^2.2.2"
killable@^1.0.0:
version "1.0.0"
@ -5792,10 +5795,6 @@ mp4-stream@^2.0.0:
next-event "^1.0.0"
readable-stream "^2.0.3"
ms@0.7.1:
version "0.7.1"
resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
ms@2.0.0, ms@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
@ -5822,7 +5821,11 @@ mute-stream@0.0.7, mute-stream@~0.0.4:
version "0.0.7"
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
nan@2.5.1, nan@^2.3.0, nan@^2.3.2:
nan@2.7.0:
version "2.7.0"
resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46"
nan@^2.3.0, nan@^2.3.2:
version "2.5.1"
resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.1.tgz#d5b01691253326a97a2bbee9e61c55d8d60351e2"
@ -6937,6 +6940,25 @@ postcss@^6.0.1:
source-map "^0.6.1"
supports-color "^4.4.0"
prebuild-install@^2.2.2:
version "2.4.1"
resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.4.1.tgz#c28ba1d1eedc17fbd6b3229a657ffc0fba479b49"
dependencies:
expand-template "^1.0.2"
github-from-package "0.0.0"
minimist "^1.2.0"
mkdirp "^0.5.1"
node-abi "^2.1.1"
noop-logger "^0.1.1"
npmlog "^4.0.1"
os-homedir "^1.0.1"
pump "^1.0.1"
rc "^1.1.6"
simple-get "^1.4.2"
tar-fs "^1.13.0"
tunnel-agent "^0.6.0"
xtend "4.0.1"
prebuild-install@^2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.3.0.tgz#19481247df728b854ab57b187ce234211311b485"
@ -7243,7 +7265,7 @@ rc-progress@^2.0.6:
babel-runtime "6.x"
prop-types "^15.5.8"
rc@^1.0.1, rc@^1.1.2, rc@^1.1.6, rc@^1.1.7, rc@^1.2.1:
rc@^1.0.1, rc@^1.1.6, rc@^1.1.7, rc@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95"
dependencies:
@ -7252,6 +7274,15 @@ rc@^1.0.1, rc@^1.1.2, rc@^1.1.6, rc@^1.1.7, rc@^1.2.1:
minimist "^1.2.0"
strip-json-comments "~2.0.1"
rc@^1.1.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.2.tgz#d8ce9cb57e8d64d9c7badd9876c7c34cbe3c7077"
dependencies:
deep-extend "~0.4.0"
ini "~1.3.0"
minimist "^1.2.0"
strip-json-comments "~2.0.1"
react-addons-create-fragment@^15.0.0:
version "15.6.2"
resolved "https://registry.yarnpkg.com/react-addons-create-fragment/-/react-addons-create-fragment-15.6.2.tgz#a394de7c2c7becd6b5475ba1b97ac472ce7c74f8"
@ -8984,11 +9015,13 @@ vendors@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22"
verror@1.3.6:
version "1.3.6"
resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c"
verror@1.10.0:
version "1.10.0"
resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
dependencies:
extsprintf "1.0.2"
assert-plus "^1.0.0"
core-util-is "1.0.2"
extsprintf "^1.2.0"
videostream@^2.3.0:
version "2.4.2"