Skip to content

Commit

Permalink
Merge pull request #323 from agalwood/feature/prepare_v4_201906201052
Browse files Browse the repository at this point in the history
chore: prepare for release v1.4.x
  • Loading branch information
agalwood authored Jun 23, 2019
2 parents 0300222 + e445870 commit 1a2de2a
Show file tree
Hide file tree
Showing 17 changed files with 2,645 additions and 1,927 deletions.
2 changes: 1 addition & 1 deletion app-update.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
provider: generic
url: 'https://motrix.app/release/'
url: 'https://dl.motrix.app/release/'
6 changes: 6 additions & 0 deletions extra/darwin/engine/aria2.conf
Original file line number Diff line number Diff line change
Expand Up @@ -114,3 +114,9 @@ bt-remove-unselected-file=true
# Verify the peer using certificates specified
# in --ca-certificate option. Default: true
check-certificate=false
# Exclude seed only downloads when counting concurrent active downloads (See -j option).
# This means that if -j3 is given and this option is turned on and 3 downloads are active and one of those enters seed mode,
# then it is excluded from active download count (thus it becomes 2),
# and the next download waiting in queue gets started.
# But be aware that seeding item is still recognized as active download in RPC method. Default: false
bt-detach-seed-only=true
6 changes: 6 additions & 0 deletions extra/linux/engine/aria2.conf
Original file line number Diff line number Diff line change
Expand Up @@ -114,3 +114,9 @@ bt-remove-unselected-file=true
# Verify the peer using certificates specified
# in --ca-certificate option. Default: true
check-certificate=false
# Exclude seed only downloads when counting concurrent active downloads (See -j option).
# This means that if -j3 is given and this option is turned on and 3 downloads are active and one of those enters seed mode,
# then it is excluded from active download count (thus it becomes 2),
# and the next download waiting in queue gets started.
# But be aware that seeding item is still recognized as active download in RPC method. Default: false
bt-detach-seed-only=true
6 changes: 6 additions & 0 deletions extra/win32/engine/aria2.conf
Original file line number Diff line number Diff line change
Expand Up @@ -114,3 +114,9 @@ bt-remove-unselected-file=true
# Verify the peer using certificates specified
# in --ca-certificate option. Default: true
check-certificate=false
# Exclude seed only downloads when counting concurrent active downloads (See -j option).
# This means that if -j3 is given and this option is turned on and 3 downloads are active and one of those enters seed mode,
# then it is excluded from active download count (thus it becomes 2),
# and the next download waiting in queue gets started.
# But be aware that seeding item is still recognized as active download in RPC method. Default: false
bt-detach-seed-only=true
3,663 changes: 2,030 additions & 1,633 deletions package-lock.json

Large diffs are not rendered by default.

50 changes: 25 additions & 25 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "Motrix",
"version": "1.3.8",
"version": "1.4.1",
"description": "A full-featured download manager",
"homepage": "https://motrix.app",
"author": {
Expand All @@ -27,7 +27,7 @@
"pack": "npm run pack:main && npm run pack:renderer",
"pack:main": "cross-env NODE_ENV=production webpack --mode production --progress --colors --config .electron-vue/webpack.main.config.js",
"pack:renderer": "cross-env NODE_ENV=production webpack --mode production --progress --colors --config .electron-vue/webpack.renderer.config.js",
"postinstall": "npm run lint:fix"
"postinstall": "electron-builder install-app-deps && npm run lint:fix"
},
"build": {
"productName": "Motrix",
Expand Down Expand Up @@ -160,26 +160,26 @@
"publish": [
{
"provider": "generic",
"url": "https://motrix.app/release/"
"url": "https://dl.motrix.app/release/"
},
{
"provider": "github"
}
]
},
"dependencies": {
"@panter/vue-i18next": "^0.15.0",
"@panter/vue-i18next": "^0.15.1",
"aria2": "^4.0.3",
"axios": "^0.18.0",
"axios": "^0.19.0",
"blob-util": "^2.0.2",
"clipboard-polyfill": "^2.8.0",
"electron-debug": "^2.2.0",
"clipboard-polyfill": "^2.8.1",
"electron-debug": "^3.0.0",
"electron-is": "^3.0.0",
"electron-log": "^3.0.5",
"electron-updater": "^4.0.9",
"element-ui": "^2.7.2",
"electron-log": "^3.0.6",
"electron-updater": "^4.0.12",
"element-ui": "^2.9.1",
"forever-monitor": "^1.7.1",
"i18next": "^15.0.9",
"i18next": "^17.0.3",
"lodash": "^4.17.11",
"normalize.css": "^8.0.1",
"parse-torrent": "^6.1.2",
Expand All @@ -188,7 +188,7 @@
"vue": "^2.6.10",
"vue-electron": "^1.0.6",
"vue-router": "^3.0.6",
"vuex": "^3.1.0",
"vuex": "^3.1.1",
"vuex-router-sync": "^5.0.0"
},
"devDependencies": {
Expand All @@ -198,43 +198,43 @@
"@vue/eslint-config-standard": "^4.0.0",
"ajv": "^6.10.0",
"babel-core": "^6.26.3",
"babel-eslint": "^10.0.1",
"babel-eslint": "^10.0.2",
"babel-loader": "^7.1.5",
"babel-plugin-component": "^1.1.1",
"babel-plugin-transform-runtime": "^6.23.0",
"babel-preset-env": "^1.7.0",
"babel-preset-stage-0": "^6.24.1",
"babel-register": "^6.26.0",
"babili-webpack-plugin": "^0.1.2",
"cfonts": "^2.4.2",
"cfonts": "^2.4.3",
"chalk": "^2.4.2",
"copy-webpack-plugin": "^5.0.3",
"cross-env": "^5.1.6",
"css-loader": "^2.1.1",
"del": "^4.1.0",
"del": "^4.1.1",
"devtron": "^1.4.0",
"electron": "^4.1.5",
"electron-builder": "^20.39.0",
"electron": "^4.2.4",
"electron-builder": "^20.43.0",
"electron-devtools-installer": "^2.2.4",
"electron-notarize": "^0.0.5",
"electron-notarize": "^0.1.1",
"electron-osx-sign": "^0.4.11",
"electron-store": "^2.0.0",
"eslint": "^5.16.0",
"eslint-config-standard": "^12.0.0",
"eslint-friendly-formatter": "^4.0.1",
"eslint-loader": "^2.1.2",
"eslint-plugin-html": "^4.0.6",
"eslint-plugin-import": "^2.17.2",
"eslint-plugin-import": "^2.17.3",
"eslint-plugin-node": "^8.0.1",
"eslint-plugin-promise": "^4.1.1",
"eslint-plugin-standard": "^4.0.0",
"eslint-plugin-vue": "^5.2.2",
"file-loader": "^3.0.1",
"html-webpack-plugin": "^3.2.0",
"mini-css-extract-plugin": "0.6.0",
"mini-css-extract-plugin": "0.7.0",
"multispinner": "^0.2.1",
"node-loader": "^0.6.0",
"node-sass": "^4.10.0",
"node-sass": "^4.12.0",
"optimize-css-assets-webpack-plugin": "^5.0.1",
"sass-loader": "^7.1.0",
"style-loader": "^0.23.1",
Expand All @@ -243,10 +243,10 @@
"vue-loader": "^15.7.0",
"vue-style-loader": "^4.1.2",
"vue-template-compiler": "^2.6.10",
"webpack": "^4.30.0",
"webpack-cli": "^3.3.1",
"webpack-dev-server": "^3.3.1",
"webpack-hot-middleware": "^2.24.3",
"webpack": "^4.33.0",
"webpack-cli": "^3.3.4",
"webpack-dev-server": "^3.7.1",
"webpack-hot-middleware": "^2.25.0",
"webpack-merge": "^4.2.1"
}
}
42 changes: 42 additions & 0 deletions src/main/configs/tracker.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
export default [
'udp://62.138.0.158:6969/announce',
'udp://93.158.213.92:1337/announce',
'udp://185.225.17.100:1337/announce',
'udp://151.80.120.112:2710/announce',
'udp://151.80.120.114:2710/announce',
'udp://185.19.107.254:80/announce',
'udp://208.83.20.20:6969/announce',
'udp://5.206.27.172:6969/announce',
'udp://176.31.241.153:80/announce',
'udp://37.235.174.46:2710/announce',
'udp://95.211.168.204:2710/announce',
'udp://159.100.245.181:6969/announce',
'http://51.68.122.172:80/announce',
'udp://89.234.156.205:451/announce',
'udp://184.105.151.164:6969/announce',
'udp://51.15.40.114:80/announce',
'http://82.209.230.66:80/announce',
'udp://185.83.215.123:6969/announce',
'udp://195.154.52.99:80/announce',
'http://51.38.230.101:80/announce',
'udp://tracker.coppersurfer.tk:6969/announce',
'udp://tracker.opentrackr.org:1337/announce',
'udp://tracker.internetwarriors.net:1337/announce',
'udp://9.rarbg.to:2710/announce',
'udp://9.rarbg.me:2710/announce',
'udp://tracker.openbittorrent.com:80/announce',
'udp://exodus.desync.com:6969/announce',
'udp://tracker.tiny-vps.com:6969/announce',
'udp://thetracker.org:80/announce',
'udp://retracker.lanta-net.ru:2710/announce',
'udp://bt.xxx-tracker.com:2710/announce',
'udp://tracker.cyberia.is:6969/announce',
'http://open.acgnxtracker.com:80/announce',
'udp://tracker.torrent.eu.org:451/announce',
'udp://explodie.org:6969/announce',
'udp://ipv4.tracker.harry.lu:80/announce',
'http://retracker.mgts.by:80/announce',
'udp://tracker.uw0.xyz:6969/announce',
'udp://open.stealth.si:80/announce',
'http://t.nyaatracker.com:80/announce'
]
44 changes: 2 additions & 42 deletions src/main/core/ConfigManager.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { app } from 'electron'
import is from 'electron-is'
import Store from 'electron-store'
import tracker from '../configs/tracker'
import {
getDhtPath,
getLogPath,
Expand Down Expand Up @@ -35,48 +36,7 @@ export default class ConfigManager {
'all-proxy': '',
'allow-overwrite': true,
'auto-file-renaming': true,
'bt-tracker': [
'udp://62.138.0.158:6969/announce',
'udp://188.241.58.209:6969/announce',
'udp://188.241.58.209:6969/announce',
'udp://208.83.20.20:6969/announce',
'udp://151.80.120.115:2710/announce',
'udp://185.225.17.100:1337/announce',
'udp://151.80.120.113:2710/announce',
'udp://62.210.88.151:1337/announce',
'http://176.113.71.19:6961/announce',
'http://104.27.134.253:8080/announce',
'udp://5.2.79.219:1337/announce',
'udp://91.216.110.52:451/announce',
'udp://5.206.58.23:6969/announce',
'udp://159.100.245.181:6969/announce',
'udp://5.2.79.22:6969/announce',
'udp://176.31.241.153:80/announce',
'udp://95.211.168.204:2710/announce',
'udp://188.246.227.212:80/announce',
'udp://51.38.184.185:6969/announce',
'udp://51.15.40.114:80/announce',
'udp://tracker.coppersurfer.tk:6969/announce',
'udp://tracker.open-internet.nl:6969/announce',
'udp://tracker.leechers-paradise.org:6969/announce',
'udp://exodus.desync.com:6969/announce',
'udp://tracker.internetwarriors.net:1337/announce',
'udp://9.rarbg.to:2710/announce',
'udp://9.rarbg.me:2710/announce',
'udp://tracker.opentrackr.org:1337/announce',
'http://tracker3.itzmx.com:6961/announce',
'http://tracker1.itzmx.com:8080/announce',
'udp://open.demonii.si:1337/announce',
'udp://tracker.torrent.eu.org:451/announce',
'udp://tracker.tiny-vps.com:6969/announce',
'udp://tracker.cyberia.is:6969/announce',
'udp://denis.stalker.upeer.me:6969/announce',
'udp://thetracker.org:80/announce',
'udp://bt.xxx-tracker.com:2710/announce',
'udp://open.stealth.si:80/announce',
'udp://tracker.port443.xyz:6969/announce',
'udp://ipv4.tracker.harry.lu:80/announce'
].join(','),
'bt-tracker': tracker.join(','),
'continue': true,
'dht-file-path': getDhtPath(4),
'dht-file-path6': getDhtPath(6),
Expand Down
2 changes: 1 addition & 1 deletion src/main/core/Engine.js
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ export default class Engine {
const sh = this.getStartSh()
logger.info('[Motrix] Engine start sh===>', sh)
this.instance = forever.start(sh, {
max: 10,
max: 100,
parser: function (command, args) {
return {
command: command,
Expand Down
16 changes: 12 additions & 4 deletions src/renderer/api/Api.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import Aria2 from 'aria2'
import {
separateConfig,
compactUndefined,
formatOptionsForEngine,
mergeTaskResult,
changeKeysToCamelCase,
changeKeysToKebabCase
Expand Down Expand Up @@ -119,10 +120,7 @@ export default class Api {
}

changeGlobalOption (options) {
const args = {}
Object.keys(options).forEach((key) => {
args[key] = `${options[key]}`
})
const args = formatOptionsForEngine(options)

return this.client.call('changeGlobalOption', args)
}
Expand All @@ -148,6 +146,16 @@ export default class Api {
})
}

changeOption (params = {}) {
let { gid, options = {} } = params
options = formatOptionsForEngine(options)

const kebabOptions = changeKeysToKebabCase(options)
const args = compactUndefined([gid, kebabOptions])

return this.client.call('changeOption', ...args)
}

getGlobalStat () {
return this.client.call('getGlobalStat')
}
Expand Down
16 changes: 13 additions & 3 deletions src/renderer/components/Preference/Advanced.vue
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@
</i>
</el-input>
<div class="el-form-item__info" style="margin-top: 8px;">
<a target="_blank" href="https://github.com/agalwood/Motrix/wiki/rpc-auth" rel="noopener noreferrer">
<a target="_blank" href="https://github.com/agalwood/Motrix/wiki/RPC" rel="noopener noreferrer">
{{ $t('preferences.rpc-secret-tips') }}
<mo-icon name="link" width="12" height="12" />
</a>
Expand Down Expand Up @@ -181,6 +181,7 @@
import ShowInFolder from '@/components/Native/ShowInFolder'
import userAgentMap from '@shared/ua'
import {
buildRpcUrl,
calcFormLabelWidth,
convertCommaToLine,
convertLineToComma,
Expand All @@ -199,6 +200,7 @@
hideAppMenu,
lastCheckUpdateTime,
protocols,
rpcListenPort,
rpcSecret,
useProxy,
userAgent
Expand All @@ -213,6 +215,7 @@
protocols: {
...protocols
},
rpcListenPort,
rpcSecret,
useProxy,
userAgent
Expand Down Expand Up @@ -251,6 +254,13 @@
})
},
watch: {
'form.rpcSecret': function (val) {
const url = buildRpcUrl({
port: this.form.rpcListenPort,
secret: val
})
clipboard.writeText(url)
}
},
methods: {
isRenderer: is.renderer,
Expand Down Expand Up @@ -296,9 +306,9 @@
},
onDiceClick () {
this.hideRpcSecret = false
const rpcSecret = randomize('*', 12, { exclude: '@:/?,.' })
const rpcSecret = randomize('Aa0', 12)
this.form.rpcSecret = rpcSecret
clipboard.writeText(rpcSecret)
setTimeout(() => {
this.hideRpcSecret = true
}, 2000)
Expand Down
8 changes: 7 additions & 1 deletion src/renderer/components/Preference/Index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,13 @@
.form-preference {
padding-right: 7%;
.el-switch__label {
font-weight: $--font-weight-secondary;
font-weight: normal;
color: $--color-text-regular;
&.is-active {
color: $--color-text-regular;
}
}
.el-checkbox__input.is-checked + .el-checkbox__label {
color: $--color-text-regular;
}
.el-form-item {
Expand Down
5 changes: 1 addition & 4 deletions src/renderer/components/Task/TaskItemActions.vue
Original file line number Diff line number Diff line change
Expand Up @@ -233,10 +233,7 @@
if (!this.isSeeder) {
return
}
this.$store.dispatch('task/pauseTask', this.task)
.then(() => {
this.$store.dispatch('task/resumeTask', this.task)
})
this.$store.dispatch('task/stopSeeding', this.task)
},
pauseTask () {
const { taskName } = this
Expand Down
Loading

0 comments on commit 1a2de2a

Please sign in to comment.