diff --git a/.github/workflows/build-qv2ray-cmake.yml b/.github/workflows/build-qv2ray-cmake.yml index d4a1e082..8fb424ac 100644 --- a/.github/workflows/build-qv2ray-cmake.yml +++ b/.github/workflows/build-qv2ray-cmake.yml @@ -112,14 +112,13 @@ jobs: - uses: actions/setup-node@v1 if: matrix.platform == 'macos-latest' with: - node-version: '10.x' + node-version: '12.x' - run: npm install -g appdmg if: matrix.platform == 'macos-latest' - name: macOS - ${{ matrix.qt_version }} - Generate Dependencies and Build shell: bash if: matrix.platform == 'macos-latest' run: | - sudo xcode-select -s "/Applications/Xcode_10.3.app" mkdir build cd build cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_DEPLOYMENT_TARGET=10.13 -DDS_STORE_SCRIPT=ON diff --git a/3rdparty/SingleApplication b/3rdparty/SingleApplication index bae7c331..e93c12ab 160000 --- a/3rdparty/SingleApplication +++ b/3rdparty/SingleApplication @@ -1 +1 @@ -Subproject commit bae7c331ca7203a242e4533ba859c0c6016521ba +Subproject commit e93c12ab69a25fcaa963416f0e348d3269263190 diff --git a/3rdparty/zxing-cpp b/3rdparty/zxing-cpp index 6d40262e..50ecad24 160000 --- a/3rdparty/zxing-cpp +++ b/3rdparty/zxing-cpp @@ -1 +1 @@ -Subproject commit 6d40262e7293666909f7325075d452637f2fca75 +Subproject commit 50ecad2442d3ef1301516687d904c7309b922fe0 diff --git a/assets/qv2ray.desktop b/assets/qv2ray.desktop index 6a6a4369..aa8921ed 100644 --- a/assets/qv2ray.desktop +++ b/assets/qv2ray.desktop @@ -16,7 +16,7 @@ Terminal=false Icon=qv2ray Exec=qv2ray %u MimeType=x-scheme-handler/qv2ray; -Actions=debug;noPlugin;noScaleFactor;noAPI; +Actions=debug;noPlugin;noScaleFactor;noAPI;noAutoConnection; [Desktop Action debug] Name=Start with Debug Mode @@ -41,3 +41,10 @@ Name=Start without gRPC API Name[zh_CN]=不使用 gRPC API 启动 Name[ja]=gRPC使用せずに起動 Exec=qv2ray --noAPI + +[Desktop Action noAutoConnection] +Name=Start without automatic connection +Name[zh_CN]=不自动连接节点启动 +Name[ja]=自動接続使用せずに起動 +Exec=qv2ray --noAutoConnection + diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 80ddadf9..1e85b7b8 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -19,7 +19,6 @@ steps: inputs: versionSpec: '12.x' - script: | - sudo xcode-select -s /Applications/Xcode_10.3.app brew install protobuf grpc ninja qt5 pkg-config npm install -g appdmg displayName: Prepare dependencies @@ -47,4 +46,4 @@ steps: action: edit tag: '$(Build.SourceBranchName)' isPreRelease: true - addChangeLog: false \ No newline at end of file + addChangeLog: false diff --git a/debian/changelog b/debian/changelog index 4b4631b1..801dd1a9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +qv2ray (2.6.0-1) unstable; urgency=medium + + * New Release 2.6.0 + + -- Guobang Bi Thu, 09 Jul 2020 22:04:57 +0800 + qv2ray (2.6.0~rc6-1) unstable; urgency=medium * New Release 2.6.0-rc6 diff --git a/libs/puresource b/libs/puresource index bd4f9335..39d0644b 160000 --- a/libs/puresource +++ b/libs/puresource @@ -1 +1 @@ -Subproject commit bd4f9335bb89e7b1199282c685d49dd5ae4ce1fa +Subproject commit 39d0644bd3d9348f8482d3f5375a9196a54a4348 diff --git a/makespec/BUILDVERSION b/makespec/BUILDVERSION index 2e2bad95..8be3b224 100644 --- a/makespec/BUILDVERSION +++ b/makespec/BUILDVERSION @@ -1 +1 @@ -5748 \ No newline at end of file +5761 diff --git a/makespec/VERSIONSUFFIX b/makespec/VERSIONSUFFIX index a3b33774..8b137891 100644 --- a/makespec/VERSIONSUFFIX +++ b/makespec/VERSIONSUFFIX @@ -1 +1 @@ --rc6 + diff --git a/src/base/models/QvConfigIdentifier.hpp b/src/base/models/QvConfigIdentifier.hpp index 983426a5..9aee66cc 100644 --- a/src/base/models/QvConfigIdentifier.hpp +++ b/src/base/models/QvConfigIdentifier.hpp @@ -195,15 +195,6 @@ namespace Qv2ray::base { return JsonStructHelper::___json_struct_store_data(entries); } - auto toMap() const - { - std::map result; - for (auto i = 0; i < entries.count(); i++) - { - result[StatisticsType(i)] = { entries[i].upLinkData, entries[i].downLinkData }; - } - return result; - } void loadJson(const QJsonValue &d) { entries.clear(); diff --git a/src/core/kernel/APIBackend.cpp b/src/core/kernel/APIBackend.cpp index 03439f4f..dd6cf1ea 100644 --- a/src/core/kernel/APIBackend.cpp +++ b/src/core/kernel/APIBackend.cpp @@ -87,6 +87,7 @@ namespace Qv2ray::core::kernel while (running) { + QThread::msleep(1000); if (!dialed) { #ifndef ANDROID @@ -125,7 +126,6 @@ namespace Qv2ray::core::kernel apiFailCounter = hasError ? apiFailCounter + 1 : 0; // Changed: Removed isrunning check here emit onAPIDataReady(statsResult); - QThread::msleep(1000); } // end while running } // end while started diff --git a/src/ui/widgets/ConnectionInfoWidget.cpp b/src/ui/widgets/ConnectionInfoWidget.cpp index 6070153a..6c934766 100644 --- a/src/ui/widgets/ConnectionInfoWidget.cpp +++ b/src/ui/widgets/ConnectionInfoWidget.cpp @@ -100,7 +100,7 @@ void ConnectionInfoWidget::ShowDetails(const ConnectionGroupPair &_identifier) QStringList shareLinks; for (const auto &connection : ConnectionManager->Connections(groupId)) { - shareLinks << ConvertConfigToString({ connection, groupId }, false); + shareLinks << ConvertConfigToString({ connection, groupId }, !GlobalConfig.uiConfig.useOldShareLinkFormat); } // auto complexCount = shareLinks.removeAll(QV2RAY_SERIALIZATION_COMPLEX_CONFIG_PLACEHOLDER); diff --git a/src/ui/windows/w_PreferencesWindow.cpp b/src/ui/windows/w_PreferencesWindow.cpp index 6d9f9883..abc28451 100644 --- a/src/ui/windows/w_PreferencesWindow.cpp +++ b/src/ui/windows/w_PreferencesWindow.cpp @@ -213,6 +213,11 @@ PreferencesWindow::PreferencesWindow(QWidget *parent) : QvDialog(parent), Curren // SET_AUTOSTART_UI_ENABLED(CurrentConfig.autoStartBehavior == AUTO_CONNECTION_FIXED); // + if (CurrentConfig.autoStartId.isEmpty()) + { + CurrentConfig.autoStartId.groupId = DefaultGroupId; + } + // auto autoStartConnId = CurrentConfig.autoStartId.connectionId; auto autoStartGroupId = CurrentConfig.autoStartId.groupId; // @@ -698,7 +703,8 @@ void PreferencesWindow::on_setSysProxyCB_stateChanged(int arg1) void PreferencesWindow::on_autoStartSubsCombo_currentIndexChanged(const QString &arg1) { - LOADINGCHECK if (arg1.isEmpty()) + LOADINGCHECK + if (arg1.isEmpty()) { CurrentConfig.autoStartId.clear(); autoStartConnCombo->clear(); diff --git a/translations/en_US.ts b/translations/en_US.ts index 57a57967..b3504118 100644 --- a/translations/en_US.ts +++ b/translations/en_US.ts @@ -1120,10 +1120,6 @@ This entry is ignored by V2Ray core when using DoH servers. Encryption Method - - Level - - OTA @@ -1160,6 +1156,10 @@ This entry is ignored by V2Ray core when using DoH servers. Tests + + Http + + PluginManageWindow @@ -1882,6 +1882,10 @@ If you insist to proceed, we're not providing with any support. Only V2ray Core v4.21+ is supported. + + Old Share Link Format + + QObject @@ -2170,7 +2174,11 @@ If you insist to proceed, we're not providing with any support. - Invalid streamSettings protocol: + Invalid streamSettings protocol: + + + + Unknown state. @@ -2288,6 +2296,10 @@ If you insist to proceed, we're not providing with any support. Qv2ray - A cross-platform Qt frontend for V2ray. + + Do not automatically connect + + Qv2ray::components::QvUpdateChecker diff --git a/translations/es_ES.ts b/translations/es_ES.ts index 08dcb306..e3fd2016 100644 --- a/translations/es_ES.ts +++ b/translations/es_ES.ts @@ -1120,10 +1120,6 @@ This entry is ignored by V2Ray core when using DoH servers. Encryption Method Método de encriptación - - Level - Nivel - OTA OTA @@ -1160,6 +1156,10 @@ This entry is ignored by V2Ray core when using DoH servers. Tests + + Http + + PluginManageWindow @@ -1882,6 +1882,10 @@ If you insist to proceed, we're not providing with any support. Only V2ray Core v4.21+ is supported. + + Old Share Link Format + + QObject @@ -2170,7 +2174,11 @@ If you insist to proceed, we're not providing with any support. vmess: // url no es válida - Invalid streamSettings protocol: + Invalid streamSettings protocol: + + + + Unknown state. @@ -2288,6 +2296,10 @@ If you insist to proceed, we're not providing with any support. Qv2ray - A cross-platform Qt frontend for V2ray. Qv2ray: una interfaz Qt multiplataforma para V2ray. + + Do not automatically connect + + Qv2ray::components::QvUpdateChecker diff --git a/translations/ja_JP.ts b/translations/ja_JP.ts index 0d4fe763..07827d9b 100644 --- a/translations/ja_JP.ts +++ b/translations/ja_JP.ts @@ -1119,10 +1119,6 @@ This entry is ignored by V2Ray core when using DoH servers. Encryption Method 暗号化方法 - - Level - レベル - OTA OTA @@ -1159,6 +1155,10 @@ This entry is ignored by V2Ray core when using DoH servers. Tests テスト + + Http + HTTP + PluginManageWindow @@ -1897,6 +1897,10 @@ V2Ray coreのファイル名は通常'v2ray'または'v2ray.exe&a Only V2ray Core v4.21+ is supported. V2ray Core v4.21以降のみ対応しています。 + + Old Share Link Format + 旧リンク形式 + QObject @@ -2185,8 +2189,12 @@ V2Ray coreのファイル名は通常'v2ray'または'v2ray.exe&a vmess:// url が無効です - Invalid streamSettings protocol: - streamSettings プロトコルが無効です: + Invalid streamSettings protocol: + 無効な streamSettings プロトコル: + + + Unknown state. + 不明な状態。 @@ -2303,6 +2311,10 @@ V2Ray coreのファイル名は通常'v2ray'または'v2ray.exe&a Qv2ray - A cross-platform Qt frontend for V2ray. Qv2ray - V2Ray用のクロスプラットフォームQtフロントエンド。 + + Do not automatically connect + 自動的に接続しない + Qv2ray::components::QvUpdateChecker diff --git a/translations/ru_RU.ts b/translations/ru_RU.ts index c7ca0e25..0cf92d75 100644 --- a/translations/ru_RU.ts +++ b/translations/ru_RU.ts @@ -1127,10 +1127,6 @@ This entry is ignored by V2Ray core when using DoH servers. Encryption Method Метод шифрования - - Level - Уровень - OTA OTA @@ -1167,6 +1163,10 @@ This entry is ignored by V2Ray core when using DoH servers. Tests + + Http + + PluginManageWindow @@ -1889,6 +1889,10 @@ If you insist to proceed, we're not providing with any support. Only V2ray Core v4.21+ is supported. + + Old Share Link Format + + QObject @@ -2177,7 +2181,11 @@ If you insist to proceed, we're not providing with any support. - Invalid streamSettings protocol: + Invalid streamSettings protocol: + + + + Unknown state. @@ -2295,6 +2303,10 @@ If you insist to proceed, we're not providing with any support. Qv2ray - A cross-platform Qt frontend for V2ray. Qv2ray - кросс-платформенный Qt фронтенд для V2ray. + + Do not automatically connect + + Qv2ray::components::QvUpdateChecker diff --git a/translations/zh_CN.ts b/translations/zh_CN.ts index faab08e2..c4359ad8 100644 --- a/translations/zh_CN.ts +++ b/translations/zh_CN.ts @@ -1119,10 +1119,6 @@ This entry is ignored by V2Ray core when using DoH servers. Encryption Method 加密方法 - - Level - 级别 - OTA OTA @@ -1159,6 +1155,10 @@ This entry is ignored by V2Ray core when using DoH servers. Tests 测试 + + Http + HTTP + PluginManageWindow @@ -1877,7 +1877,7 @@ V2Ray 核心的文件名通常为 'v2ray' 或者 'v2ray.exe' Outbound Statistics (V2ray Core v4.26+) - 分出站统计 (V2Ray v2.46+) + 分出站统计 (V2Ray v4.26+) Currently: @@ -1897,6 +1897,10 @@ V2Ray 核心的文件名通常为 'v2ray' 或者 'v2ray.exe' Only V2ray Core v4.21+ is supported. 仅支持 V2Ray v4.21+。 + + Old Share Link Format + 旧 VMess 链接格式 + QObject @@ -2185,8 +2189,12 @@ V2Ray 核心的文件名通常为 'v2ray' 或者 'v2ray.exe' vmess:// 链接无效 - Invalid streamSettings protocol: - 无效的 streamSettings 协议: + Invalid streamSettings protocol: + 无效的 streamSettings 协议: + + + Unknown state. + 未知状态。 @@ -2303,6 +2311,10 @@ V2Ray 核心的文件名通常为 'v2ray' 或者 'v2ray.exe' Qv2ray - A cross-platform Qt frontend for V2ray. Qv2ray - 一个 V2Ray 的跨平台 Qt 前端。 + + Do not automatically connect + 不要自动连接节点 + Qv2ray::components::QvUpdateChecker