Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a578d7555f | ||
|
|
dff969f955 | ||
|
|
b964240a20 | ||
|
|
7f7a395d67 | ||
|
|
475ef8c6d0 | ||
|
|
e269489639 | ||
|
|
20d5d5d60d | ||
|
|
590dc99c51 | ||
|
|
10e9b36aea | ||
|
|
5250f55bf7 |
32
CHANGELOG.md
Normal file
32
CHANGELOG.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# WebTorrent.app Version History
|
||||
|
||||
## v0.0.1
|
||||
|
||||
- Wait 10 seconds (instead of 60 seconds) after app launch before checking for updates.
|
||||
|
||||
## v0.0.0
|
||||
|
||||
The first official release of WebTorrent.app, the streaming torrent client for OS X,
|
||||
Windows, and Linux. For now, we're only releasing binaries for OS X.
|
||||
|
||||
WebTorrent.app is in ALPHA and under very active development – expect lots more polish in
|
||||
the coming weeks! If you know JavaScript and want to help us out, there's
|
||||
[lots to do](https://github.com/feross/webtorrent-app/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+contribution%22)!
|
||||
|
||||
### Features
|
||||
|
||||
- **Lightweight, fast torrent client**
|
||||
- **Beautiful user experience**
|
||||
- **Instantly stream video and audio** from torrents!
|
||||
- WebTorrent fetches file pieces from the network **on-demand**, for instant playback.
|
||||
- Even when the file is not fully downloaded, **seeking still works!** (Seeking just reprioritizes what pieces are fetched from the network.)
|
||||
- Stream videos to **AirPlay** and **Chromecast**
|
||||
- **Pure Javascript**, so it's very easy to contribute code!
|
||||
- Based on the most popular and comprehensive torrent package in Node.js, [`webtorrent`](https://www.npmjs.com/package/webtorrent).
|
||||
- Lots of **features**, without the bloat:
|
||||
- Opens magnet links and .torrent files
|
||||
- Drag-and-drop makes adding torrents easy!
|
||||
- Seed files/folders by dragging them onto the app
|
||||
- Discovers peers via tracker servers, DHT (Distributed Hash Table), and peer exchange
|
||||
- Make the video window "float on top" for watching video while you work!
|
||||
- Supports WebTorrent protocol – for connecting to WebRTC peers (i.e. web browsers)
|
||||
@@ -180,50 +180,59 @@ function buildDarwin (cb) {
|
||||
infoPlist.NSHumanReadableCopyright = config.APP_COPYRIGHT
|
||||
|
||||
fs.writeFileSync(infoPlistPath, plist.build(infoPlist))
|
||||
|
||||
// Copy torrent file icon into app bundle
|
||||
cp.execSync(`cp ${config.APP_FILE_ICON + '.icns'} ${resourcesPath}`)
|
||||
|
||||
var zipPath = path.join(buildPath[0], BUILD_NAME + '.zip')
|
||||
cp.execSync(`zip -r -y ${zipPath} ${appPath}`)
|
||||
|
||||
/*
|
||||
* Signing OS X apps for distribution outside the App Store requires:
|
||||
*
|
||||
* - Xcode
|
||||
* - Xcode Command Line Tools (xcode-select --install)
|
||||
* - Membership in the Apple Developer Program
|
||||
*/
|
||||
if (process.platform === 'darwin') {
|
||||
/*
|
||||
* Sign the app with Apple Developer ID certificate. We sign the app for 2 reasons:
|
||||
* - So the auto-updater (Squirrrel.Mac) can check that app updates are signed by
|
||||
* the same author as the current version.
|
||||
* - So users will not a see a warning about the app coming from an "Unidentified
|
||||
* Developer" when they open it for the first time (OS X Gatekeeper).
|
||||
*
|
||||
* To sign an OS X app for distribution outside the App Store, the following are
|
||||
* required:
|
||||
* - Xcode
|
||||
* - Xcode Command Line Tools (xcode-select --install)
|
||||
* - Membership in the Apple Developer Program
|
||||
*/
|
||||
var signOpts = {
|
||||
app: appPath,
|
||||
platform: 'darwin',
|
||||
verbose: true
|
||||
}
|
||||
|
||||
var dmgPath = path.join(buildPath[0], BUILD_NAME + '.dmg')
|
||||
var dmgOpts = {
|
||||
basepath: config.ROOT_PATH,
|
||||
target: dmgPath,
|
||||
specification: {
|
||||
title: config.APP_NAME,
|
||||
icon: config.APP_ICON + '.icns',
|
||||
background: path.join(config.STATIC_PATH, 'appdmg.png'),
|
||||
'icon-size': 128,
|
||||
contents: [
|
||||
{ x: 122, y: 240, type: 'file', path: appPath },
|
||||
{ x: 380, y: 240, type: 'link', path: '/Applications' },
|
||||
// Hide hidden icons out of view, for users who have hidden files shown.
|
||||
// https://github.com/LinusU/node-appdmg/issues/45#issuecomment-153924954
|
||||
{ x: 50, y: 500, type: 'position', path: '.background' },
|
||||
{ x: 100, y: 500, type: 'position', path: '.DS_Store' },
|
||||
{ x: 150, y: 500, type: 'position', path: '.Trashes' },
|
||||
{ x: 200, y: 500, type: 'position', path: '.VolumeIcon.icns' }
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
sign(signOpts, function (err) {
|
||||
if (err) return cb(err)
|
||||
|
||||
// Create .zip file (used by the auto-updater)
|
||||
var zipPath = path.join(buildPath[0], BUILD_NAME + '.zip')
|
||||
cp.execSync(`zip -r -y ${zipPath} ${appPath}`)
|
||||
|
||||
// Create a .dmg (OS X disk image) file, for easy user installation.
|
||||
var dmgOpts = {
|
||||
basepath: config.ROOT_PATH,
|
||||
target: path.join(buildPath[0], BUILD_NAME + '.dmg'),
|
||||
specification: {
|
||||
title: config.APP_NAME,
|
||||
icon: config.APP_ICON + '.icns',
|
||||
background: path.join(config.STATIC_PATH, 'appdmg.png'),
|
||||
'icon-size': 128,
|
||||
contents: [
|
||||
{ x: 122, y: 240, type: 'file', path: appPath },
|
||||
{ x: 380, y: 240, type: 'link', path: '/Applications' },
|
||||
// Hide hidden icons out of view, for users who have hidden files shown.
|
||||
// https://github.com/LinusU/node-appdmg/issues/45#issuecomment-153924954
|
||||
{ x: 50, y: 500, type: 'position', path: '.background' },
|
||||
{ x: 100, y: 500, type: 'position', path: '.DS_Store' },
|
||||
{ x: 150, y: 500, type: 'position', path: '.Trashes' },
|
||||
{ x: 200, y: 500, type: 'position', path: '.VolumeIcon.icns' }
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
var dmg = appDmg(dmgOpts)
|
||||
dmg.on('error', cb)
|
||||
dmg.on('progress', function (info) {
|
||||
|
||||
8
bin/release-_post.sh
Executable file
8
bin/release-_post.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
git diff --exit-code
|
||||
npm run package
|
||||
git push
|
||||
git push --tags
|
||||
gh-release
|
||||
9
bin/release-_pre.sh
Executable file
9
bin/release-_pre.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
git pull
|
||||
npm run update-authors
|
||||
git diff --exit-code
|
||||
rm -rf node_modules/
|
||||
npm install
|
||||
npm test
|
||||
7
bin/release-major.sh
Executable file
7
bin/release-major.sh
Executable file
@@ -0,0 +1,7 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
BIN=`dirname $0`
|
||||
|
||||
$BIN/release-_pre.sh
|
||||
npm version major
|
||||
$BIN/release-_post.sh
|
||||
7
bin/release-minor.sh
Executable file
7
bin/release-minor.sh
Executable file
@@ -0,0 +1,7 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
BIN=`dirname $0`
|
||||
|
||||
$BIN/release-_pre.sh
|
||||
npm version minor
|
||||
$BIN/release-_post.sh
|
||||
7
bin/release-patch.sh
Executable file
7
bin/release-patch.sh
Executable file
@@ -0,0 +1,7 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
BIN=`dirname $0`
|
||||
|
||||
$BIN/release-_pre.sh
|
||||
npm version patch
|
||||
$BIN/release-_post.sh
|
||||
@@ -10,6 +10,7 @@ while (<>) {
|
||||
next if $seen{$_};
|
||||
next if /<support\@greenkeeper.io>/;
|
||||
next if /<ungoldman\@gmail.com>/;
|
||||
next if /<grunjol\@users.noreply.github.com>/;
|
||||
$seen{$_} = push @authors, "- ", $_;
|
||||
}
|
||||
END {
|
||||
|
||||
@@ -12,7 +12,7 @@ module.exports = {
|
||||
APP_VERSION: APP_VERSION,
|
||||
|
||||
AUTO_UPDATE_URL: 'https://webtorrent.io/app/update?version=' + APP_VERSION,
|
||||
AUTO_UPDATE_CHECK_STARTUP_DELAY: 60 * 1000 /* 1 minute */,
|
||||
AUTO_UPDATE_CHECK_STARTUP_DELAY: 10 * 1000 /* 10 seconds */,
|
||||
|
||||
CONFIG_PATH: applicationConfigPath(APP_NAME),
|
||||
CONFIG_POSTER_PATH: path.join(applicationConfigPath(APP_NAME), 'Posters'),
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "webtorrent-app",
|
||||
"description": "WebTorrent, the streaming torrent client. For OS X, Windows, and Linux.",
|
||||
"version": "0.0.0",
|
||||
"version": "0.0.1",
|
||||
"author": {
|
||||
"name": "Feross Aboukhadijeh",
|
||||
"email": "feross@feross.org",
|
||||
@@ -34,6 +34,7 @@
|
||||
"electron-osx-sign": "^0.3.0",
|
||||
"electron-packager": "^5.0.0",
|
||||
"electron-prebuilt": "0.37.2",
|
||||
"gh-release": "^2.0.2",
|
||||
"path-exists": "^2.1.0",
|
||||
"plist": "^1.2.0",
|
||||
"rimraf": "^2.5.2",
|
||||
|
||||
Reference in New Issue
Block a user