You've already forked qBittorrent
							
							
				mirror of
				https://github.com/qbittorrent/qBittorrent
				synced 2025-10-30 23:30:54 +01:00 
			
		
		
		
	Compare commits
	
		
			141 Commits
		
	
	
		
			release-4.
			...
			release-4.
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | c8763f08da | ||
|   | b8259969ac | ||
|   | d3a57e3e01 | ||
|   | fbd228b360 | ||
|   | 23176b1a56 | ||
|   | 46afeb0f32 | ||
|   | 114e2ee1ab | ||
|   | b5af0f71b9 | ||
|   | bd9c42e004 | ||
|   | 272ff11d65 | ||
|   | 04bd33e5b3 | ||
|   | 6a4c423b88 | ||
|   | 112ab86a6b | ||
|   | fcd38a497e | ||
|   | 6e75866ed7 | ||
|   | 1f9dde0c37 | ||
|   | 8b13d8f222 | ||
|   | 8d654f9802 | ||
|   | cfc73da312 | ||
|   | 9801cd0323 | ||
|   | c01d7a34c1 | ||
|   | af41a0eece | ||
|   | c509f57b66 | ||
|   | 8de091f4dd | ||
|   | e246745776 | ||
|   | 9d42657468 | ||
|   | 2b4fcda463 | ||
|   | 70a2d7bd58 | ||
|   | a9c85ab321 | ||
|   | e574bc1c57 | ||
|   | fc90953f91 | ||
|   | 7016aa372b | ||
|   | cbe9a27a92 | ||
|   | 97853f31f2 | ||
|   | 66ffb7328d | ||
|   | 9d9101186d | ||
|   | 621ec4e92f | ||
|   | 4b752cba4f | ||
|   | 38c0864bf2 | ||
|   | c21c3d2300 | ||
|   | 3be5273246 | ||
|   | 37e348ed92 | ||
|   | 36364121ba | ||
|   | df08bd331c | ||
|   | abd1ab5539 | ||
|   | 632d33b266 | ||
|   | 35f7e1c896 | ||
|   | 792301dfe4 | ||
|   | e31cf5ac23 | ||
|   | 0bfe6ff64b | ||
|   | d40c7e8833 | ||
|   | 8e81d44b3c | ||
|   | 97a30218bc | ||
|   | e9884b9513 | ||
|   | a63269e3e1 | ||
|   | d03e715708 | ||
|   | 927732f190 | ||
|   | 88c991880f | ||
|   | 29290fa109 | ||
|   | 0a8d604ef3 | ||
|   | 532c985b50 | ||
|   | a32182f794 | ||
|   | 1aebcd3258 | ||
|   | 9f743aab86 | ||
|   | ece839739e | ||
|   | 2204757eca | ||
|   | bfda520ef4 | ||
|   | af91f4ed51 | ||
|   | 41c3a8af01 | ||
|   | cc7f8372a8 | ||
|   | d20633f9cc | ||
|   | 961e05e9a8 | ||
|   | eb98a04245 | ||
|   | 5dc1c10848 | ||
|   | dcbff74dc0 | ||
|   | 5e29960da2 | ||
|   | aa43fc8ff4 | ||
|   | 2517e688d9 | ||
|   | 40d94fd8e9 | ||
|   | eb97e640cb | ||
|   | 2123c1c259 | ||
|   | 6cf1351a77 | ||
|   | c924904308 | ||
|   | 904bcc14d5 | ||
|   | c3abe4c2a6 | ||
|   | 7144454a1f | ||
|   | daaa88fa0d | ||
|   | 0b7c8497f9 | ||
|   | e3562be0d6 | ||
|   | e0d0efcc20 | ||
|   | fb22b58ce6 | ||
|   | c78ac614f5 | ||
|   | de15907ea7 | ||
|   | a4289a517f | ||
|   | 967c3bb55d | ||
|   | c57896df8f | ||
|   | 911f0d4039 | ||
|   | e822d4fca7 | ||
|   | 0da132b69e | ||
|   | 691cb4fe2b | ||
|   | 97a053916b | ||
|   | 24bf8eef6d | ||
|   | 4314bbdf9c | ||
|   | 65611cd3dc | ||
|   | 6a4bb1356a | ||
|   | 06593e3678 | ||
|   | 18577d9cb0 | ||
|   | 701b84dc48 | ||
|   | 9a95237b85 | ||
|   | a6a99fbd36 | ||
|   | 86671bee46 | ||
|   | f1432a2e3d | ||
|   | 480e3f02ca | ||
|   | 6b05c716a8 | ||
|   | c697829b1b | ||
|   | 9a2ec6912b | ||
|   | 7601163d32 | ||
|   | 8e2bda2b7a | ||
|   | 1761f6c58e | ||
|   | 419cdde4e1 | ||
|   | 6ec46a90d1 | ||
|   | f4051034d7 | ||
|   | 1a8ba00f2c | ||
|   | de4c1c9265 | ||
|   | bff9189e52 | ||
|   | 076b3628b1 | ||
|   | 75ccce705e | ||
|   | 964bf31775 | ||
|   | 507ced2fa2 | ||
|   | e62f9ef56a | ||
|   | a5a242377b | ||
|   | 0758109d15 | ||
|   | 3970d91d19 | ||
|   | 4e98b7f0cf | ||
|   | 27a69d9cca | ||
|   | d884ec1731 | ||
|   | 62b2959cb4 | ||
|   | 2bdc91c53f | ||
|   | d829df99aa | ||
|   | 4f2ac34440 | ||
|   | 94e9e9fdb2 | 
| @@ -50,7 +50,7 @@ before_build: | ||||
|  | ||||
| build_script: | ||||
|   - cd "%REPO_DIR%" | ||||
|   # lupdate chokes when it parses headers from system includes, especially Boost | ||||
|   # lupdate chokes when it parses headers from system inludes, especially Boost | ||||
|   # it also chokes with the sources from src/app/qtlocalpeer (formerly qtsingleapplication) | ||||
|   # Workaround: temporarily rename them to run lupdate with the .pro file | ||||
|   - RENAME conf.pri conf.pri.temp | ||||
|   | ||||
							
								
								
									
										82
									
								
								.clang-tidy
									
									
									
									
									
								
							
							
						
						
									
										82
									
								
								.clang-tidy
									
									
									
									
									
								
							| @@ -1,82 +0,0 @@ | ||||
| Checks: > | ||||
|   bugprone-*, | ||||
|   cert-*, | ||||
|   concurrency-*, | ||||
|   cppcoreguidelines-*, | ||||
|   misc-*, | ||||
|   modernize-*, | ||||
|   performance-*, | ||||
|   portability-*, | ||||
|   readability-*, | ||||
|   -# not applicable at all, | ||||
|   -bugprone-easily-swappable-parameters, | ||||
|   -bugprone-implicit-widening-of-multiplication-result, | ||||
|   -bugprone-macro-parentheses, | ||||
|   -cppcoreguidelines-avoid-c-arrays, | ||||
|   -cppcoreguidelines-avoid-magic-numbers, | ||||
|   -cppcoreguidelines-avoid-non-const-global-variables, | ||||
|   -cppcoreguidelines-macro-usage, | ||||
|   -cppcoreguidelines-non-private-member-variables-in-classes, | ||||
|   -cppcoreguidelines-owning-memory, | ||||
|   -cppcoreguidelines-pro-bounds-array-to-pointer-decay, | ||||
|   -cppcoreguidelines-pro-bounds-constant-array-index, | ||||
|   -cppcoreguidelines-pro-bounds-pointer-arithmetic, | ||||
|   -cppcoreguidelines-pro-type-const-cast, | ||||
|   -cppcoreguidelines-pro-type-reinterpret-cast, | ||||
|   -cppcoreguidelines-pro-type-union-access, | ||||
|   -cppcoreguidelines-pro-type-vararg, | ||||
|   -cppcoreguidelines-special-member-functions, | ||||
|   -cppcoreguidelines-virtual-class-destructor, | ||||
|   -misc-no-recursion, | ||||
|   -misc-non-private-member-variables-in-classes, | ||||
|   -misc-unused-parameters, | ||||
|   -modernize-avoid-c-arrays, | ||||
|   -modernize-pass-by-value, | ||||
|   -modernize-use-auto, | ||||
|   -modernize-use-nodiscard, | ||||
|   -modernize-use-trailing-return-type, | ||||
|   -modernize-use-using, | ||||
|   -readability-function-cognitive-complexity, | ||||
|   -readability-function-size, | ||||
|   -readability-identifier-length, | ||||
|   -readability-implicit-bool-conversion, | ||||
|   -readability-isolate-declaration, | ||||
|   -readability-magic-numbers, | ||||
|   -readability-named-parameter, | ||||
|   -readability-redundant-access-specifiers, | ||||
|   -readability-simplify-boolean-expr, | ||||
|   -readability-uppercase-literal-suffix, | ||||
|   -# only sometimes useful, | ||||
|   -bugprone-narrowing-conversions, | ||||
|   -cert-dcl58-cpp, | ||||
|   -cert-err33-c, | ||||
|   -cert-err58-cpp, | ||||
|   -clang-analyzer-core.CallAndMessage, | ||||
|   -clang-analyzer-cplusplus.NewDelete, | ||||
|   -clang-analyzer-cplusplus.NewDeleteLeaks, | ||||
|   -concurrency-mt-unsafe, | ||||
|   -cppcoreguidelines-init-variables, | ||||
|   -cppcoreguidelines-narrowing-conversions, | ||||
|   -cppcoreguidelines-prefer-member-initializer, | ||||
|   -cppcoreguidelines-pro-type-static-cast-downcast, | ||||
|   -misc-definitions-in-headers, | ||||
|   -modernize-concat-nested-namespaces, | ||||
|   -modernize-loop-convert, | ||||
|   -modernize-raw-string-literal, | ||||
|   -modernize-unary-static-assert, | ||||
|   -performance-no-automatic-move, | ||||
|   -readability-convert-member-functions-to-static, | ||||
|   -readability-else-after-return, | ||||
|   -readability-redundant-declaration, | ||||
|   -# obsoleted, | ||||
|   -cert-dcl21-cpp | ||||
|  | ||||
| CheckOptions: | ||||
|   - { key: cppcoreguidelines-explicit-virtual-functions.IgnoreDestructors, value: true } | ||||
|   - { key: modernize-use-override.IgnoreDestructors, value: true } | ||||
|   - { key: performance-for-range-copy.AllowedTypes, value: "QJsonValue" } | ||||
|   - { key: performance-for-range-copy.WarnOnAllAutoCopies, value: true } | ||||
|   - { key: readability-braces-around-statements.ShortStatementLines, value: 3 } | ||||
|  | ||||
| HeaderFilterRegex: ".+/src/.*\\.h" | ||||
| WarningsAsErrors: "*" | ||||
							
								
								
									
										2
									
								
								.gitattributes
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitattributes
									
									
									
									
										vendored
									
									
								
							| @@ -5,5 +5,3 @@ core.eol=lf | ||||
| *.png binary | ||||
| *.qm binary | ||||
| *.zip binary | ||||
|  | ||||
| test/testdata/crlf.txt text eol=crlf | ||||
|   | ||||
							
								
								
									
										36
									
								
								.github/workflows/ci_macos.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										36
									
								
								.github/workflows/ci_macos.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -17,12 +17,12 @@ jobs: | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         libt_version: ["2.0.9", "1.2.19"] | ||||
|         libt_version: ["2.0.8", "1.2.18"] | ||||
|         qbt_gui: ["GUI=ON", "GUI=OFF"] | ||||
|         qt_version: ["5.15.2", "6.5.0"] | ||||
|         qt_version: ["5.15.2", "6.4.0"] | ||||
|         exclude: | ||||
|           - libt_version: "1.2.19" | ||||
|             qt_version: "6.5.0" | ||||
|           - libt_version: "1.2.18" | ||||
|             qt_version: "6.4.0" | ||||
|  | ||||
|     env: | ||||
|       boost_path: "${{ github.workspace }}/../boost" | ||||
| @@ -33,23 +33,18 @@ jobs: | ||||
|         uses: actions/checkout@v3 | ||||
|  | ||||
|       - name: Install dependencies | ||||
|         uses: Wandalen/wretry.action@v1 | ||||
|         env: | ||||
|            HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1 | ||||
|            HOMEBREW_NO_INSTALL_CLEANUP: 1 | ||||
|         with: | ||||
|           attempt_delay: 20000 | ||||
|           attempt_limit: 6 | ||||
|           command: | | ||||
|             brew update > /dev/null | ||||
|             brew install \ | ||||
|               cmake ninja \ | ||||
|               openssl@1.1 zlib | ||||
|         run: | | ||||
|           export \ | ||||
|             HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 \ | ||||
|             HOMEBREW_NO_INSTALL_CLEANUP=1 | ||||
|           brew update > /dev/null | ||||
|           brew install \ | ||||
|             cmake ninja \ | ||||
|             openssl@1.1 zlib | ||||
|  | ||||
|       - name: Setup ccache | ||||
|         uses: Chocobo1/setup-ccache-action@v1 | ||||
|         with: | ||||
|           store_cache: ${{ startsWith(github.ref, 'refs/heads/') }} | ||||
|           update_packager_index: false | ||||
|  | ||||
|       - name: Install boost | ||||
| @@ -57,7 +52,7 @@ jobs: | ||||
|           curl \ | ||||
|             -L \ | ||||
|             -o "${{ runner.temp }}/boost.tar.bz2" \ | ||||
|             "https://boostorg.jfrog.io/artifactory/main/release/1.82.0/source/boost_1_82_0.tar.bz2" | ||||
|             "https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.tar.bz2" | ||||
|           tar -xf "${{ runner.temp }}/boost.tar.bz2" -C "${{ github.workspace }}/.." | ||||
|           mv "${{ github.workspace }}/.."/boost_* "${{ env.boost_path }}" | ||||
|  | ||||
| @@ -67,7 +62,6 @@ jobs: | ||||
|           version: ${{ matrix.qt_version }} | ||||
|           archives: qtbase qtdeclarative qtsvg qttools | ||||
|           # Not sure why Qt made a hard dependency on qtdeclarative, try removing it when Qt > 6.4.0 | ||||
|           cache: true | ||||
|  | ||||
|       - name: Install libtorrent | ||||
|         run: | | ||||
| @@ -91,7 +85,7 @@ jobs: | ||||
|           sudo cmake --install build | ||||
|  | ||||
|       - name: Build qBittorrent (Qt5) | ||||
|         if: startsWith(matrix.qt_version, 5) | ||||
|         if: ${{ startsWith(matrix.qt_version, 5) }} | ||||
|         run: | | ||||
|           CXXFLAGS="$CXXFLAGS -Werror -Wno-error=deprecated-declarations" \ | ||||
|           LDFLAGS="$LDFLAGS -gz" \ | ||||
| @@ -110,7 +104,7 @@ jobs: | ||||
|           cmake --build build --target check | ||||
|  | ||||
|       - name: Build qBittorrent (Qt6) | ||||
|         if: startsWith(matrix.qt_version, 6) | ||||
|         if: ${{ startsWith(matrix.qt_version, 6) }} | ||||
|         run: | | ||||
|           CXXFLAGS="$CXXFLAGS -Wno-gnu-zero-variadic-macro-arguments -Werror -Wno-error=deprecated-declarations" \ | ||||
|           LDFLAGS="$LDFLAGS -gz" \ | ||||
|   | ||||
							
								
								
									
										26
									
								
								.github/workflows/ci_ubuntu.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										26
									
								
								.github/workflows/ci_ubuntu.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -4,7 +4,6 @@ on: [pull_request, push] | ||||
|  | ||||
| permissions: | ||||
|   actions: write | ||||
|   security-events: write | ||||
|  | ||||
| concurrency: | ||||
|   group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | ||||
| @@ -18,11 +17,11 @@ jobs: | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         libt_version: ["2.0.9", "1.2.19"] | ||||
|         libt_version: ["2.0.8", "1.2.18"] | ||||
|         qbt_gui: ["GUI=ON", "GUI=OFF"] | ||||
|         qt_version: ["5.15.2", "6.2.0"] | ||||
|         exclude: | ||||
|           - libt_version: "1.2.19" | ||||
|           - libt_version: "1.2.18" | ||||
|             qt_version: "6.2.0" | ||||
|  | ||||
|     steps: | ||||
| @@ -39,7 +38,6 @@ jobs: | ||||
|       - name: Setup ccache | ||||
|         uses: Chocobo1/setup-ccache-action@v1 | ||||
|         with: | ||||
|           store_cache: ${{ startsWith(github.ref, 'refs/heads/') }} | ||||
|           update_packager_index: false | ||||
|           ccache_options: | | ||||
|             max_size=2G | ||||
| @@ -49,7 +47,6 @@ jobs: | ||||
|         with: | ||||
|           version: ${{ matrix.qt_version }} | ||||
|           archives: icu qtbase qtsvg qttools | ||||
|           cache: true | ||||
|  | ||||
|       - name: Install libtorrent | ||||
|         run: | | ||||
| @@ -62,23 +59,14 @@ jobs: | ||||
|           cmake \ | ||||
|             -B build \ | ||||
|             -G "Ninja" \ | ||||
|             -DBUILD_SHARED_LIBS=OFF \ | ||||
|             -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | ||||
|             -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ | ||||
|             -Ddeprecated-functions=OFF | ||||
|           cmake --build build | ||||
|           sudo cmake --install build | ||||
|  | ||||
|       # to avoid scanning 3rdparty codebases, initialize it just before building qbt | ||||
|       - name: Initialize CodeQL | ||||
|         uses: github/codeql-action/init@v2 | ||||
|         if: startsWith(matrix.libt_version, 2) && (matrix.qbt_gui == 'GUI=ON') && startsWith(matrix.qt_version, 6) | ||||
|         with: | ||||
|           config-file: ./.github/workflows/helper/codeql/cpp.yaml | ||||
|           languages: cpp | ||||
|  | ||||
|       - name: Build qBittorrent (Qt5) | ||||
|         if: startsWith(matrix.qt_version, 5) | ||||
|         if: ${{ startsWith(matrix.qt_version, 5) }} | ||||
|         run: | | ||||
|           CXXFLAGS="$CXXFLAGS -Werror -Wno-error=deprecated-declarations" \ | ||||
|           LDFLAGS="$LDFLAGS -gz" \ | ||||
| @@ -97,7 +85,7 @@ jobs: | ||||
|           DESTDIR="qbittorrent" cmake --install build | ||||
|  | ||||
|       - name: Build qBittorrent (Qt6) | ||||
|         if: startsWith(matrix.qt_version, 6) | ||||
|         if: ${{ startsWith(matrix.qt_version, 6) }} | ||||
|         run: | | ||||
|           CXXFLAGS="$CXXFLAGS -Werror" \ | ||||
|           LDFLAGS="$LDFLAGS -gz" \ | ||||
| @@ -116,12 +104,6 @@ jobs: | ||||
|           cmake --build build --target check | ||||
|           DESTDIR="qbittorrent" cmake --install build | ||||
|  | ||||
|       - name: Run CodeQL analysis | ||||
|         uses: github/codeql-action/analyze@v2 | ||||
|         if: startsWith(matrix.libt_version, 2) && (matrix.qbt_gui == 'GUI=ON') && startsWith(matrix.qt_version, 6) | ||||
|         with: | ||||
|           category: ${{ github.base_ref || github.ref_name }} | ||||
|  | ||||
|       - name: Prepare build artifacts | ||||
|         run: | | ||||
|           mkdir upload | ||||
|   | ||||
							
								
								
									
										12
									
								
								.github/workflows/ci_webui.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								.github/workflows/ci_webui.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -2,8 +2,7 @@ name: CI - WebUI | ||||
|  | ||||
| on: [pull_request, push] | ||||
|  | ||||
| permissions: | ||||
|   security-events: write | ||||
| permissions: {} | ||||
|  | ||||
| concurrency: | ||||
|   group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | ||||
| @@ -37,12 +36,3 @@ jobs: | ||||
|         run: | | ||||
|           npm run format | ||||
|           git diff --exit-code | ||||
|  | ||||
|       - name: Initialize CodeQL | ||||
|         uses: github/codeql-action/init@v2 | ||||
|         with: | ||||
|           config-file: ./.github/workflows/helper/codeql/js.yaml | ||||
|           languages: javascript | ||||
|  | ||||
|       - name: Run CodeQL analysis | ||||
|         uses: github/codeql-action/analyze@v2 | ||||
|   | ||||
							
								
								
									
										54
									
								
								.github/workflows/ci_windows.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										54
									
								
								.github/workflows/ci_windows.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -17,12 +17,11 @@ jobs: | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         libt_version: ["2.0.9", "1.2.19"] | ||||
|         libt_version: ["2.0.8", "1.2.18"] | ||||
|  | ||||
|     env: | ||||
|       boost_path: "${{ github.workspace }}/../boost" | ||||
|       libtorrent_path: "${{ github.workspace }}/libtorrent" | ||||
|       vpkg_triplet_path: "${{ github.workspace }}/../triplets_overlay" | ||||
|  | ||||
|     steps: | ||||
|       - name: Checkout repository | ||||
| @@ -43,38 +42,35 @@ jobs: | ||||
|           vcpkgDirectory: C:/vcpkg | ||||
|           doNotUpdateVcpkg: true  # the preinstalled vcpkg is updated regularly | ||||
|  | ||||
|       - name: Install dependencies with vcpkg | ||||
|       - name: Install dependencies from vcpkg | ||||
|         run: | | ||||
|           # create our own triplet | ||||
|           # tell vcpkg to only build Release variants of the dependencies | ||||
|           New-Item ` | ||||
|             -Force ` | ||||
|             -ItemType File ` | ||||
|             -Path "${{ env.vpkg_triplet_path }}/x64-windows-static-md-release.cmake" | ||||
|             -Path "${{ github.workspace }}" ` | ||||
|             -Name "triplets_overlay" ` | ||||
|             -ItemType Directory | ||||
|           Copy-Item ` | ||||
|             "${{ env.RUNVCPKG_VCPKG_ROOT }}/triplets/x64-windows-static.cmake" ` | ||||
|             "${{ github.workspace }}/triplets_overlay/x64-windows-static-release.cmake" | ||||
|           Add-Content ` | ||||
|             -Path "${{ env.vpkg_triplet_path }}/x64-windows-static-md-release.cmake" ` | ||||
|             -Value @("set(VCPKG_TARGET_ARCHITECTURE x64)", | ||||
|               "set(VCPKG_LIBRARY_LINKAGE static)", | ||||
|               "set(VCPKG_CRT_LINKAGE dynamic)", | ||||
|               "set(VCPKG_BUILD_TYPE release)", | ||||
|               "set(VCPKG_C_FLAGS /guard:cf)", | ||||
|               "set(VCPKG_CXX_FLAGS /guard:cf)", | ||||
|               "set(VCPKG_LINKER_FLAGS /guard:cf)") | ||||
|             "${{ github.workspace }}/triplets_overlay/x64-windows-static-release.cmake" ` | ||||
|             -Value "set(VCPKG_BUILD_TYPE release)" | ||||
|           # clear buildtrees after each package installation to reduce disk space requirements | ||||
|           $packages = ` | ||||
|             "openssl:x64-windows-static-md-release", | ||||
|             "zlib:x64-windows-static-md-release" | ||||
|             "openssl:x64-windows-static-release", | ||||
|             "zlib:x64-windows-static-release" | ||||
|           ${{ env.RUNVCPKG_VCPKG_ROOT }}/vcpkg.exe upgrade ` | ||||
|             --no-dry-run ` | ||||
|             --overlay-triplets="${{ env.vpkg_triplet_path }}" | ||||
|             --overlay-triplets="${{ github.workspace }}/triplets_overlay" ` | ||||
|             --no-dry-run | ||||
|           ${{ env.RUNVCPKG_VCPKG_ROOT }}/vcpkg.exe install ` | ||||
|             --overlay-triplets="${{ github.workspace }}/triplets_overlay" ` | ||||
|             --clean-after-build ` | ||||
|             --overlay-triplets="${{ env.vpkg_triplet_path }}" ` | ||||
|             $packages | ||||
|  | ||||
|       - name: Install boost | ||||
|         run: | | ||||
|           aria2c ` | ||||
|             "https://boostorg.jfrog.io/artifactory/main/release/1.82.0/source/boost_1_82_0.7z" ` | ||||
|             "https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.7z" ` | ||||
|             -d "${{ runner.temp }}" ` | ||||
|             -o "boost.7z" | ||||
|           7z x "${{ runner.temp }}/boost.7z" -o"${{ github.workspace }}/.." | ||||
| @@ -83,9 +79,8 @@ jobs: | ||||
|       - name: Install Qt | ||||
|         uses: jurplel/install-qt-action@v3 | ||||
|         with: | ||||
|           version: "6.5.0" | ||||
|           version: "6.4.0" | ||||
|           archives: qtbase qtsvg qttools | ||||
|           cache: true | ||||
|  | ||||
|       - name: Install libtorrent | ||||
|         run: | | ||||
| @@ -95,38 +90,37 @@ jobs: | ||||
|             --recurse-submodules ` | ||||
|             https://github.com/arvidn/libtorrent.git | ||||
|           cd libtorrent | ||||
|           $env:CXXFLAGS+=" /guard:cf" | ||||
|           $env:LDFLAGS+=" /guard:cf" | ||||
|           cmake ` | ||||
|             -B build ` | ||||
|             -G "Ninja" ` | ||||
|             -DCMAKE_BUILD_TYPE=RelWithDebInfo ` | ||||
|             -DCMAKE_CXX_FLAGS=/guard:cf ` | ||||
|             -DCMAKE_EXPORT_COMPILE_COMMANDS=ON ` | ||||
|             -DCMAKE_INSTALL_PREFIX="${{ env.libtorrent_path }}" ` | ||||
|             -DCMAKE_TOOLCHAIN_FILE="${{ env.RUNVCPKG_VCPKG_ROOT }}/scripts/buildsystems/vcpkg.cmake" ` | ||||
|             -DBOOST_ROOT="${{ env.boost_path }}" ` | ||||
|             -DBUILD_SHARED_LIBS=OFF ` | ||||
|             -Ddeprecated-functions=OFF ` | ||||
|             -Dstatic_runtime=OFF ` | ||||
|             -DVCPKG_TARGET_TRIPLET=x64-windows-static-md-release | ||||
|             -Dstatic_runtime=ON ` | ||||
|             -DVCPKG_TARGET_TRIPLET=x64-windows-static-release | ||||
|           cmake --build build | ||||
|           cmake --install build | ||||
|  | ||||
|       - name: Build qBittorrent | ||||
|         run: | | ||||
|           $env:CXXFLAGS+=" /WX" | ||||
|           cmake ` | ||||
|             -B build ` | ||||
|             -G "Ninja" ` | ||||
|             -DCMAKE_BUILD_TYPE=RelWithDebInfo ` | ||||
|             -DCMAKE_CXX_FLAGS="/WX" ` | ||||
|             -DCMAKE_EXPORT_COMPILE_COMMANDS=ON ` | ||||
|             -DCMAKE_TOOLCHAIN_FILE="${{ env.RUNVCPKG_VCPKG_ROOT }}/scripts/buildsystems/vcpkg.cmake" ` | ||||
|             -DBOOST_ROOT="${{ env.boost_path }}" ` | ||||
|             -DLibtorrentRasterbar_DIR="${{ env.libtorrent_path }}/lib/cmake/LibtorrentRasterbar" ` | ||||
|             -DMSVC_RUNTIME_DYNAMIC=ON ` | ||||
|             -DMSVC_RUNTIME_DYNAMIC=OFF ` | ||||
|             -DQT6=ON ` | ||||
|             -DTESTING=ON ` | ||||
|             -DVCPKG_TARGET_TRIPLET=x64-windows-static-md-release ` | ||||
|             -DVCPKG_TARGET_TRIPLET=x64-windows-static-release ` | ||||
|             -DVERBOSE_CONFIGURE=ON ` | ||||
|             --graphviz=build/target_graph.dot | ||||
|           cmake --build build --target qbt_update_translations | ||||
|   | ||||
| @@ -26,13 +26,13 @@ jobs: | ||||
|       - name: Install Qt | ||||
|         uses: jurplel/install-qt-action@v3 | ||||
|         with: | ||||
|           version: "6.5.0" | ||||
|           version: "6.4.0" | ||||
|           archives: icu qtbase qtsvg qttools | ||||
|  | ||||
|       - name: Install libtorrent | ||||
|         run: | | ||||
|           git clone \ | ||||
|             --branch "v2.0.9" \ | ||||
|             --branch "v2.0.8" \ | ||||
|             --depth 1 \ | ||||
|             --recurse-submodules \ | ||||
|             https://github.com/arvidn/libtorrent.git | ||||
| @@ -69,7 +69,7 @@ jobs: | ||||
|  | ||||
|       - name: Submit the result to Coverity Scan | ||||
|         run: | | ||||
|           tar -caf qbittorrent.xz cov-int | ||||
|           tar caf qbittorrent.xz cov-int | ||||
|           curl \ | ||||
|             --form token="${{ secrets.COVERITY_SCAN_TOKEN }}" \ | ||||
|             --form email=sledgehammer999@qbittorrent.org \ | ||||
							
								
								
									
										4
									
								
								.github/workflows/helper/appimage/export_vars.sh
									
									
									
									
										vendored
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/helper/appimage/export_vars.sh
									
									
									
									
										vendored
									
									
										
										
										Executable file → Normal file
									
								
							| @@ -1,12 +1,10 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| # this file is called from AppRun so 'root_dir' will point to where AppRun is | ||||
| root_dir="$(readlink -f "$(dirname "$0")")" | ||||
|  | ||||
| # Insert the default values because after the test we prepend our path | ||||
| # and it will create problems with DEs (eg KDE) that don't set the variable | ||||
| # and rely on the default paths | ||||
| if [ -z "${XDG_DATA_DIRS}" ]; then | ||||
| if [[ -z ${XDG_DATA_DIRS} ]]; then | ||||
|     XDG_DATA_DIRS="/usr/local/share/:/usr/share/" | ||||
| fi | ||||
|  | ||||
|   | ||||
							
								
								
									
										14
									
								
								.github/workflows/helper/codeql/cpp.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								.github/workflows/helper/codeql/cpp.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -1,14 +0,0 @@ | ||||
| name: "CodeQL config for C++" | ||||
|  | ||||
| queries: | ||||
|   - uses: security-and-quality | ||||
|  | ||||
| query-filters: | ||||
|   - exclude: | ||||
|       id: cpp/commented-out-code | ||||
|   - exclude: | ||||
|       id: cpp/include-non-header | ||||
|   - exclude: | ||||
|       id: cpp/loop-variable-changed | ||||
|   - exclude: | ||||
|       id: cpp/useless-expression | ||||
							
								
								
									
										11
									
								
								.github/workflows/helper/codeql/js.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								.github/workflows/helper/codeql/js.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -1,11 +0,0 @@ | ||||
| name: "CodeQL config for Javascript" | ||||
|  | ||||
| paths-ignore: | ||||
|   - "**/lib/*" | ||||
|  | ||||
| queries: | ||||
|   - uses: security-and-quality | ||||
|  | ||||
| query-filters: | ||||
|   - exclude: | ||||
|       id: js/superfluous-trailing-arguments | ||||
							
								
								
									
										18
									
								
								.github/workflows/helper/pre-commit/.typos.toml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										18
									
								
								.github/workflows/helper/pre-commit/.typos.toml
									
									
									
									
										vendored
									
									
								
							| @@ -1,18 +0,0 @@ | ||||
| # https://github.com/crate-ci/typos/blob/master/docs/reference.md | ||||
| # https://github.com/crate-ci/typos/blob/master/docs/design.md#identifiers-and-words | ||||
|  | ||||
| # try adding to `identifiers` list first, if doesn't work then `words` list | ||||
|  | ||||
| [default.extend-identifiers] | ||||
| additionals = "additionals" | ||||
| caf = "caf" | ||||
| curren = "curren" | ||||
| FO = "FO" | ||||
| ket = "ket" | ||||
| Q_INVOKABLE = "Q_INVOKABLE" | ||||
| switchs = "switchs" | ||||
| ths = "ths" | ||||
|  | ||||
| [default.extend-words] | ||||
| BA = "BA" | ||||
| helo = "helo" | ||||
							
								
								
									
										2
									
								
								.github/workflows/stale_bot.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/stale_bot.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -12,7 +12,7 @@ jobs: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|       - name: Mark and close stale PRs | ||||
|         uses: actions/stale@v8 | ||||
|         uses: actions/stale@v5 | ||||
|         with: | ||||
|           stale-pr-message: "This PR is stale because it has been 60 days with no activity. This PR will be automatically closed within 7 days if there is no further activity." | ||||
|           close-pr-message: "This PR was closed because it has been stalled for some time with no activity." | ||||
|   | ||||
| @@ -3,7 +3,7 @@ repos: | ||||
|     hooks: | ||||
|       - id: check-translation-tag | ||||
|         name: Check newline characters in <translation> tag | ||||
|         entry: .github/workflows/helper/pre-commit/check_translation_tag.py | ||||
|         entry: .github/workflows/check_translation_tag.py | ||||
|         language: script | ||||
|         exclude: | | ||||
|           (?x)^( | ||||
| @@ -13,7 +13,7 @@ repos: | ||||
|           - ts | ||||
|  | ||||
|   - repo: https://github.com/pre-commit/pre-commit-hooks.git | ||||
|     rev: v4.4.0 | ||||
|     rev: v4.3.0 | ||||
|     hooks: | ||||
|     - id: check-json | ||||
|       name: Check JSON files | ||||
| @@ -33,19 +33,17 @@ repos: | ||||
|       args: ["--fix=lf"] | ||||
|       exclude: | | ||||
|         (?x)^( | ||||
|           src/webui/www/private/css/lib/.* | | ||||
|           src/webui/www/private/scripts/lib/.* | | ||||
|           test/testdata/crlf.txt | ||||
|           compile_commands.json | | ||||
|           src/webui/www/private/scripts/lib/.* | ||||
|         )$ | ||||
|  | ||||
|     - id: end-of-file-fixer | ||||
|       name: Check trailing newlines | ||||
|       exclude: | | ||||
|         (?x)^( | ||||
|           compile_commands.json | | ||||
|           configure | | ||||
|           src/webui/www/private/css/lib/.* | | ||||
|           src/webui/www/private/scripts/lib/.* | | ||||
|           test/testdata/crlf.txt | ||||
|           src/webui/www/private/scripts/lib/.* | ||||
|         )$ | ||||
|       exclude_types: | ||||
|         - svg | ||||
| @@ -55,54 +53,7 @@ repos: | ||||
|       name: Check trailing whitespaces | ||||
|       exclude: | | ||||
|         (?x)^( | ||||
|           src/webui/www/private/css/lib/.* | | ||||
|           src/webui/www/private/scripts/lib/.* | ||||
|         )$ | ||||
|       exclude_types: | ||||
|         - ts | ||||
|  | ||||
|   - repo: https://github.com/codespell-project/codespell | ||||
|     rev: v2.2.5 | ||||
|     hooks: | ||||
|     - id: codespell | ||||
|       name: Check spelling (codespell) | ||||
|       args: ["--ignore-words-list", "additionals,curren,fo,ket,superseeding,te,ths"] | ||||
|       exclude: | | ||||
|         (?x)^( | ||||
|           .*\.desktop | | ||||
|           .*\.qrc | | ||||
|           build-aux/.* | | ||||
|           Changelog | | ||||
|           dist/windows/installer-translations/.* | | ||||
|           m4/.* | | ||||
|           src/base/3rdparty/.* | | ||||
|           src/searchengine/nova3/socks.py | | ||||
|           src/webui/www/private/scripts/lib/.* | ||||
|         )$ | ||||
|       exclude_types: | ||||
|         - ts | ||||
|  | ||||
|   - repo: https://github.com/crate-ci/typos | ||||
|     rev: v1.15.5 | ||||
|     hooks: | ||||
|     - id: typos | ||||
|       name: Check spelling (typos) | ||||
|       args: ["--config", ".github/workflows/helper/pre-commit/.typos.toml"] | ||||
|       exclude: | | ||||
|         (?x)^( | ||||
|           .*\.asc | | ||||
|           .*\.desktop | | ||||
|           .*\.qrc | | ||||
|           \.pre-commit-config\.yaml | | ||||
|           build-aux/.* | | ||||
|           Changelog | | ||||
|           configure.* | | ||||
|           dist/windows/installer-translations/.* | | ||||
|           m4/.* | | ||||
|           src/base/3rdparty/.* | | ||||
|           src/searchengine/nova3/socks.py | | ||||
|           src/webui/www/private/scripts/lib/.* | ||||
|         )$ | ||||
|       exclude_types: | ||||
|         - svg | ||||
|         - ts | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| [main] | ||||
| host = https://www.transifex.com | ||||
|  | ||||
| [o:sledgehammer999:p:qbittorrent:r:qbittorrent_v46x] | ||||
| [o:sledgehammer999:p:qbittorrent:r:qbittorrent_v45x] | ||||
| file_filter  = src/lang/qbittorrent_<lang>.ts | ||||
| source_file  = src/lang/qbittorrent_en.ts | ||||
| source_lang  = en | ||||
| @@ -9,7 +9,7 @@ type         = QT | ||||
| minimum_perc = 23 | ||||
| lang_map     = pt: pt_PT, zh: zh_CN | ||||
|  | ||||
| [o:sledgehammer999:p:qbittorrent:r:qbittorrent_webui_v46x] | ||||
| [o:sledgehammer999:p:qbittorrent:r:qbittorrent_webui_v45x] | ||||
| file_filter  = src/webui/www/translations/webui_<lang>.ts | ||||
| source_file  = src/webui/www/translations/webui_en.ts | ||||
| source_lang  = en | ||||
|   | ||||
							
								
								
									
										6
									
								
								AUTHORS
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								AUTHORS
									
									
									
									
									
								
							| @@ -29,17 +29,13 @@ Code from other projects: | ||||
|   copyright: Dan Haim <negativeiq@users.sourceforge.net> | ||||
|   license: BSD | ||||
|  | ||||
| * files src/webui/www/private/css/lib/vanillaSelectBox.css src/webui/www/private/scripts/lib/vanillaSelectBox.js | ||||
|   copyright: Philippe Meyer <pmg.meyer@gmail.com> | ||||
|   license: MIT | ||||
|  | ||||
| Images Authors: | ||||
| * files: src/icons/qbittorrent-tray.svg | ||||
|   copyright: Provided by HVS <hvs linuxmail org> (raster first proposal) and Atif Afzal(@atfzl github) <atif5801@gmail.com> (vectorized and modified) | ||||
|   license: GPLv2+ | ||||
|  | ||||
| * files: src/qbittorrent_file.ico src/icons/fileicon.svg | ||||
|   copyright: 'unknown.svg' (LGPLv3+) from Oxygen Icon Theme was used as base which was slightly modified and 'qbittorrent-tray.svg' (GPLv2+) was overlaid above it. | ||||
|   copyright: 'uknown.svg' (LGPLv3+) from Oxygen Icon Theme was used as base which was slightly modified and 'qbittorrent-tray.svg' (GPLv2+) was overlayed above it. | ||||
|   license: GPLv3+ | ||||
|  | ||||
| * files: src/icons/flags/*.svg | ||||
|   | ||||
| @@ -11,8 +11,8 @@ set(minBoostVersion 1.71) | ||||
| set(minQt5Version 5.15.2) | ||||
| set(minQt6Version 6.2) | ||||
| set(minOpenSSLVersion 1.1.1) | ||||
| set(minLibtorrent1Version 1.2.19) | ||||
| set(minLibtorrentVersion 2.0.9) | ||||
| set(minLibtorrent1Version 1.2.18) | ||||
| set(minLibtorrentVersion 2.0.8) | ||||
| set(minZlibVersion 1.2.11) | ||||
|  | ||||
| include(CheckCXXSourceCompiles) # TODO: migrate to CheckSourceCompiles in CMake >= 3.19 | ||||
| @@ -30,21 +30,16 @@ feature_option(STACKTRACE "Enable stacktrace support" ON) | ||||
| feature_option(TESTING "Build internal testing suite" OFF) | ||||
| feature_option(VERBOSE_CONFIGURE "Show information about PACKAGES_FOUND and PACKAGES_NOT_FOUND in the configure output (only useful for debugging the CMake build scripts)" OFF) | ||||
|  | ||||
| if (CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") | ||||
| if (CMAKE_SYSTEM_NAME STREQUAL "Linux") | ||||
|     feature_option_dependent(DBUS | ||||
|         "Enable support for notifications and power-management features via D-Bus" | ||||
|         "Enable support for notifications and power-management features via D-Bus on Linux" | ||||
|         ON "GUI" OFF | ||||
|     ) | ||||
| endif() | ||||
|  | ||||
| if (CMAKE_SYSTEM_NAME STREQUAL "Linux") | ||||
|     feature_option_dependent(SYSTEMD | ||||
|         "Install systemd service file. Target directory is overridable with `SYSTEMD_SERVICES_INSTALL_DIR` variable" | ||||
|         OFF "NOT GUI" OFF | ||||
|     ) | ||||
| endif() | ||||
|  | ||||
| if (MSVC) | ||||
| elseif (MSVC) | ||||
|     feature_option(MSVC_RUNTIME_DYNAMIC "Use MSVC dynamic runtime library (-MD) instead of static (-MT)" ON) | ||||
| endif() | ||||
|  | ||||
|   | ||||
| @@ -200,7 +200,7 @@ Following these guidelines helps maintainers and the community understand your s | ||||
| [coding-guidelines-url]: https://github.com/qbittorrent/qBittorrent/blob/master/CODING_GUIDELINES.md | ||||
| [coding-guidelines-git-commit-message-url]: https://github.com/qbittorrent/qBittorrent/blob/master/CODING_GUIDELINES.md#10-git-commit-message | ||||
| [commit-message-fix-issue-example-url]: https://github.com/qbittorrent/qBittorrent/commit/c07cd440cd46345297debb47cb260f8688975f50 | ||||
| [forum-url]: https://forum.qbittorrent.org/ | ||||
| [forum-url]: http://forum.qbittorrent.org/ | ||||
| [howto-report-bugs-url]: https://www.chiark.greenend.org.uk/~sgtatham/bugs.html | ||||
| [how-to-translate-url]: https://github.com/qbittorrent/qBittorrent/wiki/How-to-translate-qBittorrent | ||||
| [merging-vs-rebasing-url]: https://www.atlassian.com/git/tutorials/merging-vs-rebasing | ||||
|   | ||||
							
								
								
									
										150
									
								
								Changelog
									
									
									
									
									
								
							
							
						
						
									
										150
									
								
								Changelog
									
									
									
									
									
								
							| @@ -1,95 +1,65 @@ | ||||
| Mon Nov 27th 2023 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.6.2 | ||||
|     - BUGFIX: Do not apply share limit if the previous one was applied (glassez) | ||||
|     - BUGFIX: Show Add new torrent dialog on main window screen (glassez) | ||||
|     - WEBUI: Fix JS memory leak (brvphoenix) | ||||
|     - WEBUI: Disable stdout buffering for qbt-nox (Chocobo1) | ||||
|     - WINDOWS: NSIS: Display correct Minimum Windows OS requirement (xavier2k6) | ||||
|     - WINDOWS: NSIS: Add Hebrew translation (avivmu) | ||||
|     - LINUX: WAYLAND: Fix parent widget of "Lock qBittorrent" submenu (Vlad Zahorodnii) | ||||
|      | ||||
| Mon Nov 20th 2023 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.6.1 | ||||
|     - FEATURE: Add option to enable previous Add new torrent dialog behavior (glassez) | ||||
|     - BUGFIX: Prevent crash due to race condition when adding magnet link (glassez) | ||||
|     - BUGFIX: Fix Enter key behavior when add new torrent (glassez) | ||||
|     - BUGFIX: Add missing main window icon (iomezk) | ||||
|     - BUGFIX: Update size of selected files when selection is changed (glassez) | ||||
|     - BUGFIX: Correctly handle changing save path of torrent w/o metadata (glassez) | ||||
|     - BUGFIX: Use appropriate icon for "moving" torrents in transfer list (xavier2k6) | ||||
|     - WEBUI: Drop WebUI default credentials (glassez) | ||||
|     - WEBUI: Add I2P settings to WebUI (thalieht) | ||||
|     - WEBUI: Fix duplicate scrollbar on Transfer List (AgentConDier) | ||||
|     - WEBUI: Fix .torrent file upload on iPadOS (Vitaly Cheptsov) | ||||
|     - WEBUI: Fix incorrect subcategory sorting (Bartu Özen) | ||||
|     - WEBUI: Correctly set save path in RSS rules (glassez) | ||||
|     - WEBUI: Allow to request torrents count via WebAPI (glassez) | ||||
|     - WEBUI: Improve performance of getting torrent numbers via WebAPI (Chocobo1) | ||||
|     - WEBUI: Improve free disk space checking for WebAPI (glassez) | ||||
|     - WINDOWS: NSIS: Fixed typo in the installer's hungarian translation (MartinKing01) | ||||
|     - LINUX: Fix invisible tray icon with Qt5 in Linux (thalieht) | ||||
|     - MACOS: Remove "Physical memory (RAM) usage limit" option (Chocobo1) | ||||
| Sun Jun 18 2023 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.5.4 | ||||
|     - BUGFIX: Allow to disable confirmation of Pause/Resume All (glassez) | ||||
|     - BUGFIX: Sync flag icons with upstream (Priit Uring) | ||||
|     - WEBUI: Fix category save path (Raymond Ha) | ||||
|  | ||||
| Sun Oct 22nd 2023 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.6.0 | ||||
|     - FEATURE: Add (experimental) I2P support (glassez) | ||||
|     - FEATURE: Provide UI editor for the default theme (glassez) | ||||
|     - FEATURE: Various UI theming improvements (glassez) | ||||
|     - FEATURE: Implement torrent tags editing dialog (glassez) | ||||
|     - FEATURE: Revamp "Watched folder options" and "Automated RSS downloader" dialog (glassez) | ||||
|     - FEATURE: Allow to use another icons in dark mode (glassez) | ||||
|     - FEATURE: Allow to add new torrents to queue top (glassez) | ||||
|     - FEATURE: Allow to filter torrent list by save path (Tom) | ||||
|     - FEATURE: Expose 'socket send/receive buffer size' options (Chocobo1) | ||||
|     - FEATURE: Expose 'max torrent file size' setting (Chocobo1) | ||||
|     - FEATURE: Expose 'bdecode limits' settings (Chocobo1) | ||||
|     - FEATURE: Add options to adjust behavior of merging trackers to existing torrent (glassez) | ||||
|     - FEATURE: Add option to stop seeding when torrent has been inactive (Christopher) | ||||
|     - FEATURE: Allow to use proxy per subsystem (glassez) | ||||
|     - FEATURE: Expand the scope of "Proxy hostname lookup" option (glassez) | ||||
|     - FEATURE: Add shortcut for "Ban peer permanently" function (Luka Čelebić) | ||||
|     - FEATURE: Add option to auto hide zero status filters (glassez) | ||||
|     - FEATURE: Allow to disable confirmation of Pause/Resume All (glassez) | ||||
|     - FEATURE: Add alternative shortcut CTRL+E for CTRL+F (Luka Čelebić) | ||||
|     - FEATURE: Show filtered port numbers in logs (Hanabishi) | ||||
|     - FEATURE: Add button to copy library versions to clipboard (Chocobo1) | ||||
|     - BUGFIX: Ensure ongoing storage moving job will be completed when shutting down (Chocobo1) | ||||
|     - BUGFIX: Refactored many areas to call non UI blocking code (glassez) | ||||
|     - BUGFIX: Various improvements to the SQLite backend (glassez) | ||||
|     - BUGFIX: Improve startup window state handling (glassez) | ||||
|     - BUGFIX: Use tray icon from system theme only if option is set (glassez) | ||||
|     - BUGFIX: Inhibit system sleep while torrents are moving (Sentox6) | ||||
|     - BUGFIX: Use hostname instead of domain name in tracker filter list (tearfur) | ||||
|     - BUGFIX: Visually validate input path in torrent creator dialog (Chocobo1) | ||||
|     - BUGFIX: Disable symlink resolving in Torrent creator (Ignat Loskutov) | ||||
|     - BUGFIX: Change default value for `file pool size` and `stop tracker timeout` settings (stalkerok) | ||||
|     - BUGFIX: Log when duplicate torrents are being added (glassez) | ||||
|     - BUGFIX: Inhibit suspend instead of screen idle (axet) | ||||
|     - BUGFIX: Ensure file name is valid when exporting torrents (glassez) | ||||
|     - BUGFIX: Open "Save path" if torrent has no metadata (Xu Chao) | ||||
|     - BUGFIX: Prevent torrent starting unexpectedly edge case with magnet (Xu Chao) | ||||
|     - BUGFIX: Better ergonomics of the "Add new torrent" dialog (Xu Chao, glassez) | ||||
|     - WEBUI: Add log viewer (brvphoenix) | ||||
|     - WEBUI: WebAPI: Allow to specify session cookie name (glassez) | ||||
|     - WEBUI: Improve sync API performance (glassez) | ||||
|     - WEBUI: Add filelog settings (brvphoenix) | ||||
|     - WEBUI: Add multi-file renaming (loligans) | ||||
|     - WEBUI: Add "Add to top of queue" option (thalieht) | ||||
|     - WEBUI: Implement subcategories (Bartu Özen) | ||||
|     - WEBUI: Set "SameSite=None" if CSRF Protection is disabled (七海千秋) | ||||
|     - WEBUI: Show only hosts in tracker filter list (ttys3) | ||||
|     - WEBUI: Set Connection status and Speed limits tooltips (Raymond Ha) | ||||
|     - WEBUI: set Cross Origin Opener Policy to `same-origin` (Chocobo1) | ||||
|     - WEBUI: Fix response for HTTP HEAD method (Chocobo1) | ||||
|     - WEBUI: Preserve the network interfaces when connection is down (Fabricio Silva) | ||||
|     - WEBUI: Add "Add Tags" field for RSS rules (Matic Babnik) | ||||
|     - WEBUI: Fix missing error icon (Trim21) | ||||
|     - RSS: Add "Rename rule" button to RSS Downloader (BallsOfSpaghetti) | ||||
|     - RSS: Allow to edit RSS feed URL (glassez) | ||||
|     - RSS: Allow to assign priority to RSS download rule (glassez) | ||||
|     - SEARCH: Use python isolate mode (Chocobo1) | ||||
|     - SEARCH: Bump python version minimum requirement to 3.7.0 (Chocobo1) | ||||
|     - OTHER: Enable DBUS cmake option on FreeBSD (yuri@FreeBSD) | ||||
|     - OTHER: Numerous code improvements and refactorings (glassez, Chocobo1) | ||||
| Sun May 28 2023 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.5.3 | ||||
|     - BUGFIX: Correctly check if database needs to be updated (glassez) | ||||
|     - BUGFIX: Prevent incorrect log message about torrent content deletion (glassez) | ||||
|     - BUGFIX: Improve finished torrent handling (glassez) | ||||
|     - BUGFIX: Correctly initialize group box children as disabled in Preferences (thalieht) | ||||
|     - BUGFIX: Don't miss saving "download path" in SQLite storage (glassez) | ||||
|     - BUGFIX: Improve logging of running external program (glassez) | ||||
|     - WEBUI: Disable UPnP for web UI by default (glassez) | ||||
|     - WEBUI: Use workaround for IOS file picker (DivineHawk) | ||||
|     - WEBUI: Work around Chrome download limit (Chocobo1) | ||||
|     - WEBUI: Improve 'exporting torrent' behavior (Chocobo1) | ||||
|     - WINDOWS: NSIS: Add Slovak translation (Christian Danížek) | ||||
|  | ||||
| Unreleased - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.5.0 | ||||
| Tue Feb 28 2023 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.5.2 | ||||
|     - BUGFIX: Don't unexpectedly activate queued torrents when prefetching metadata for added magnets (glassez) | ||||
|     - BUGFIX: Update the cached torrent state once recheck is started (glassez) | ||||
|     - BUGFIX: Be more likely to allow the system to use power saving modes (glassez) | ||||
|     - WEBUI: Migrate away from unsafe function (Chocobo1) | ||||
|     - WEBUI: Blacklist bad ciphers for TLS in the server (sledgehammer999) | ||||
|     - WEBUI: Allow only TLS 1.2+ in the server (sledgehammer999) | ||||
|     - WEBUI: Allow to set read-only directory as torrent location (glassez) | ||||
|     - WEBUI: Reject requests that contain backslash in path (glassez) | ||||
|     - RSS: Prevent RSS folder from being moved into itself (glassez) | ||||
|     - WINDOWS: NSIS: Update Turkish, Uzbek translation (Burak Yavuz, shitcod3r) | ||||
|  | ||||
| Sun Feb 12 2023 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.5.1 | ||||
|     - FEATURE: Re-allow to use icons from system theme (glassez) | ||||
|     - BUGFIX: Fix Speed limit icon size (Nowshed H. Imran) | ||||
|     - BUGFIX: Revise and fix some text colors (Chocobo1, Nowshed H. Imran) | ||||
|     - BUGFIX: Correctly load folder based UI theme (glassez) | ||||
|     - BUGFIX: Fix crash due to invalid encoding of tracker URLs (glassez) | ||||
|     - BUGFIX: Don't drop !qB extension when renaming incomplete file (glassez) | ||||
|     - BUGFIX: Correctly count the number of torrents in subcategories (glassez) | ||||
|     - BUGFIX: Use "additional trackers" when metadata retrieving (glassez) | ||||
|     - BUGFIX: Apply correct tab order to Category options dialog (glassez) | ||||
|     - BUGFIX: Add all torrents passed via the command line (glassez) | ||||
|     - BUGFIX: Fix startup performance on Qt5 (glassez) | ||||
|     - BUGFIX: Automatic move will now overwrite existing files (aka previous behavior) (glassez) | ||||
|     - BUGFIX: Some fixes for loading Chinese locales (sledgehammer999) | ||||
|     - BUGFIX: New Pause icon color for toolbar/menu (Nowshed H. Imran, sledgehammer999) | ||||
|     - BUGFIX: Adjust env variable for PDB discovery (sledgehammer999) | ||||
|     - WEBUI: Fix missing "queued" icon (thalieht) | ||||
|     - WEBUI: Return paths using platform-independent separator format (glassez) | ||||
|     - WEBUI: Change order of accepted types of file input (Jason Carr) | ||||
|     - WEBUI: Add missing icons (brvphoenix) | ||||
|     - WEBUI: Add "Resume data storage type" option (thalieht) | ||||
|     - WEBUI: Make rename file dialog resizable (Torsten Schwarz) | ||||
|     - WEBUI: Prevent incorrect line breaking (David Xuang) | ||||
|     - WEBUI: Improve hotkeys (Fidel Selva) | ||||
|     - WEBUI: Remove suggestions while searching for torrents (Midhun V Nadh) | ||||
|     - WEBUI: Expose "IS PRIVATE" flag (sotiris-bos) | ||||
|     - WEBUI: Return name/hash/infohash_v1/infohash_v2 torrent properties (qbittorrentfan) | ||||
|     - WINDOWS: Correctly detect drive letter in path (glassez) | ||||
|     - WINDOWS: NSIS: Update Swedish, Lithuanian translations (Jonatan, Deividas) | ||||
|     - LINUX: Fix tray icon issues (glassez) | ||||
|  | ||||
| Sat Nov 26 2022 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.5.0 | ||||
|     - FEATURE: Add `Auto resize columns` functionality (Chocobo1) | ||||
|     - FEATURE: Allow to use Category paths in `Manual` mode (glassez) | ||||
|     - FEATURE: Allow to disable Automatic mode when default "temp" path changed (glassez) | ||||
|   | ||||
							
								
								
									
										6
									
								
								INSTALL
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								INSTALL
									
									
									
									
									
								
							| @@ -5,7 +5,7 @@ qBittorrent - A BitTorrent client in C++ / Qt | ||||
|  | ||||
|   - Boost >= 1.71 | ||||
|  | ||||
|   - libtorrent-rasterbar 1.2.19 - 1.2.x || 2.0.9 - 2.0.x | ||||
|   - libtorrent-rasterbar 1.2.18 - 1.2.x || 2.0.8 - 2.0.x | ||||
|       * By Arvid Norberg, https://www.libtorrent.org/ | ||||
|       * Be careful: another library (the one used by rTorrent) uses a similar name | ||||
|  | ||||
| @@ -18,7 +18,7 @@ qBittorrent - A BitTorrent client in C++ / Qt | ||||
|   - pkg-config * | ||||
|       * Compile-time only on *nix systems | ||||
|  | ||||
|   - Python >= 3.7.0 | ||||
|   - Python >= 3.5.0 | ||||
|       * Optional, run-time only | ||||
|       * Used by the bundled search engine | ||||
|  | ||||
| @@ -43,7 +43,7 @@ Please ensure you are building with an officially supported configuration when r | ||||
|   will install and execute qBittorrent. | ||||
|  | ||||
| DOCUMENTATION: | ||||
| Please note that there is a "Compilation" section at https://wiki.qbittorrent.org. | ||||
| Please note that there is a "Compilation" section at http://wiki.qbittorrent.org. | ||||
|  | ||||
| ------------------------------------------ | ||||
| sledgehammer999 <sledgehammer999@qbittorrent.org> | ||||
|   | ||||
| @@ -37,13 +37,13 @@ For more information please visit: | ||||
| https://www.qbittorrent.org | ||||
|  | ||||
| or our wiki here: | ||||
| https://wiki.qbittorrent.org | ||||
| http://wiki.qbittorrent.org | ||||
|  | ||||
| Use the forum for troubleshooting before reporting bugs: | ||||
| https://forum.qbittorrent.org | ||||
| http://forum.qbittorrent.org | ||||
|  | ||||
| Please report any bug (or feature request) to: | ||||
| https://bugs.qbittorrent.org | ||||
| http://bugs.qbittorrent.org | ||||
|  | ||||
| Official IRC channel: | ||||
| [#qbittorrent on irc.libera.chat](ircs://irc.libera.chat:6697/qbittorrent) | ||||
|   | ||||
| @@ -101,10 +101,6 @@ if (MSVC) | ||||
|     endif() | ||||
| endif() | ||||
|  | ||||
| if (DBUS) | ||||
|     target_compile_definitions(qbt_common_cfg INTERFACE QBT_USES_DBUS) | ||||
| endif() | ||||
|  | ||||
| if (LibtorrentRasterbar_VERSION VERSION_GREATER_EQUAL ${minLibtorrentVersion}) | ||||
|     target_compile_definitions(qbt_common_cfg INTERFACE QBT_USES_LIBTORRENT2) | ||||
| endif() | ||||
|   | ||||
							
								
								
									
										86
									
								
								configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										86
									
								
								configure
									
									
									
									
										vendored
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| #! /bin/sh | ||||
| # Guess values for system-dependent variables and create Makefiles. | ||||
| # Generated by GNU Autoconf 2.71 for qbittorrent v4.6.2. | ||||
| # Generated by GNU Autoconf 2.71 for qbittorrent v4.5.4. | ||||
| # | ||||
| # Report bugs to <bugs.qbittorrent.org>. | ||||
| # | ||||
| @@ -611,8 +611,8 @@ MAKEFLAGS= | ||||
| # Identity of this package. | ||||
| PACKAGE_NAME='qbittorrent' | ||||
| PACKAGE_TARNAME='qbittorrent' | ||||
| PACKAGE_VERSION='v4.6.2' | ||||
| PACKAGE_STRING='qbittorrent v4.6.2' | ||||
| PACKAGE_VERSION='v4.5.4' | ||||
| PACKAGE_STRING='qbittorrent v4.5.4' | ||||
| PACKAGE_BUGREPORT='bugs.qbittorrent.org' | ||||
| PACKAGE_URL='https://www.qbittorrent.org/' | ||||
|  | ||||
| @@ -1329,7 +1329,7 @@ if test "$ac_init_help" = "long"; then | ||||
|   # Omit some internal or obsolete options to make the list less imposing. | ||||
|   # This message is too long to be a string in the A/UX 3.1 sh. | ||||
|   cat <<_ACEOF | ||||
| \`configure' configures qbittorrent v4.6.2 to adapt to many kinds of systems. | ||||
| \`configure' configures qbittorrent v4.5.4 to adapt to many kinds of systems. | ||||
|  | ||||
| Usage: $0 [OPTION]... [VAR=VALUE]... | ||||
|  | ||||
| @@ -1400,7 +1400,7 @@ fi | ||||
|  | ||||
| if test -n "$ac_init_help"; then | ||||
|   case $ac_init_help in | ||||
|      short | recursive ) echo "Configuration of qbittorrent v4.6.2:";; | ||||
|      short | recursive ) echo "Configuration of qbittorrent v4.5.4:";; | ||||
|    esac | ||||
|   cat <<\_ACEOF | ||||
|  | ||||
| @@ -1533,7 +1533,7 @@ fi | ||||
| test -n "$ac_init_help" && exit $ac_status | ||||
| if $ac_init_version; then | ||||
|   cat <<\_ACEOF | ||||
| qbittorrent configure v4.6.2 | ||||
| qbittorrent configure v4.5.4 | ||||
| generated by GNU Autoconf 2.71 | ||||
|  | ||||
| Copyright (C) 2021 Free Software Foundation, Inc. | ||||
| @@ -1648,7 +1648,7 @@ cat >config.log <<_ACEOF | ||||
| This file contains any messages produced by compilers while | ||||
| running configure, to aid debugging if configure makes a mistake. | ||||
|  | ||||
| It was created by qbittorrent $as_me v4.6.2, which was | ||||
| It was created by qbittorrent $as_me v4.5.4, which was | ||||
| generated by GNU Autoconf 2.71.  Invocation command line was | ||||
|  | ||||
|   $ $0$ac_configure_args_raw | ||||
| @@ -4779,7 +4779,7 @@ fi | ||||
|  | ||||
| # Define the identity of the package. | ||||
|  PACKAGE='qbittorrent' | ||||
|  VERSION='v4.6.2' | ||||
|  VERSION='v4.5.4' | ||||
|  | ||||
|  | ||||
| printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h | ||||
| @@ -5649,7 +5649,7 @@ fi | ||||
| then : | ||||
|   as_fn_error $? "Could not find QtDBus" "$LINENO" 5 | ||||
| else $as_nop | ||||
|   QBT_ADD_CONFIG="$QBT_ADD_CONFIG dbus" QBT_ADD_DEFINES="$QBT_ADD_DEFINES QBT_USES_DBUS" | ||||
|   QBT_ADD_CONFIG="$QBT_ADD_CONFIG dbus" | ||||
|  | ||||
| fi ;; #( | ||||
|   "xno") : | ||||
| @@ -6024,19 +6024,19 @@ LDFLAGS="$BOOST_LDFLAGS $LDFLAGS" | ||||
|  | ||||
|  | ||||
| pkg_failed=no | ||||
| { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libtorrent-rasterbar >= 2.0.9" >&5 | ||||
| printf %s "checking for libtorrent-rasterbar >= 2.0.9... " >&6; } | ||||
| { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libtorrent-rasterbar >= 2.0.8" >&5 | ||||
| printf %s "checking for libtorrent-rasterbar >= 2.0.8... " >&6; } | ||||
|  | ||||
| if test -n "$libtorrent_CFLAGS"; then | ||||
|     pkg_cv_libtorrent_CFLAGS="$libtorrent_CFLAGS" | ||||
|  elif test -n "$PKG_CONFIG"; then | ||||
|     if test -n "$PKG_CONFIG" && \ | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 2.0.9\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 2.0.9") 2>&5 | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 2.0.8\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 2.0.8") 2>&5 | ||||
|   ac_status=$? | ||||
|   printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||||
|   test $ac_status = 0; }; then | ||||
|   pkg_cv_libtorrent_CFLAGS=`$PKG_CONFIG --cflags "libtorrent-rasterbar >= 2.0.9" 2>/dev/null` | ||||
|   pkg_cv_libtorrent_CFLAGS=`$PKG_CONFIG --cflags "libtorrent-rasterbar >= 2.0.8" 2>/dev/null` | ||||
| 		      test "x$?" != "x0" && pkg_failed=yes | ||||
| else | ||||
|   pkg_failed=yes | ||||
| @@ -6048,12 +6048,12 @@ if test -n "$libtorrent_LIBS"; then | ||||
|     pkg_cv_libtorrent_LIBS="$libtorrent_LIBS" | ||||
|  elif test -n "$PKG_CONFIG"; then | ||||
|     if test -n "$PKG_CONFIG" && \ | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 2.0.9\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 2.0.9") 2>&5 | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 2.0.8\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 2.0.8") 2>&5 | ||||
|   ac_status=$? | ||||
|   printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||||
|   test $ac_status = 0; }; then | ||||
|   pkg_cv_libtorrent_LIBS=`$PKG_CONFIG --libs "libtorrent-rasterbar >= 2.0.9" 2>/dev/null` | ||||
|   pkg_cv_libtorrent_LIBS=`$PKG_CONFIG --libs "libtorrent-rasterbar >= 2.0.8" 2>/dev/null` | ||||
| 		      test "x$?" != "x0" && pkg_failed=yes | ||||
| else | ||||
|   pkg_failed=yes | ||||
| @@ -6074,28 +6074,28 @@ else | ||||
|         _pkg_short_errors_supported=no | ||||
| fi | ||||
|         if test $_pkg_short_errors_supported = yes; then | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libtorrent-rasterbar >= 2.0.9" 2>&1` | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libtorrent-rasterbar >= 2.0.8" 2>&1` | ||||
|         else | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libtorrent-rasterbar >= 2.0.9" 2>&1` | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libtorrent-rasterbar >= 2.0.8" 2>&1` | ||||
|         fi | ||||
| 	# Put the nasty error message in config.log where it belongs | ||||
| 	echo "$libtorrent_PKG_ERRORS" >&5 | ||||
|  | ||||
|  | ||||
| pkg_failed=no | ||||
| { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" >&5 | ||||
| printf %s "checking for libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2... " >&6; } | ||||
| { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" >&5 | ||||
| printf %s "checking for libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2... " >&6; } | ||||
|  | ||||
| if test -n "$libtorrent_CFLAGS"; then | ||||
|     pkg_cv_libtorrent_CFLAGS="$libtorrent_CFLAGS" | ||||
|  elif test -n "$PKG_CONFIG"; then | ||||
|     if test -n "$PKG_CONFIG" && \ | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2") 2>&5 | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2") 2>&5 | ||||
|   ac_status=$? | ||||
|   printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||||
|   test $ac_status = 0; }; then | ||||
|   pkg_cv_libtorrent_CFLAGS=`$PKG_CONFIG --cflags "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" 2>/dev/null` | ||||
|   pkg_cv_libtorrent_CFLAGS=`$PKG_CONFIG --cflags "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" 2>/dev/null` | ||||
| 		      test "x$?" != "x0" && pkg_failed=yes | ||||
| else | ||||
|   pkg_failed=yes | ||||
| @@ -6107,12 +6107,12 @@ if test -n "$libtorrent_LIBS"; then | ||||
|     pkg_cv_libtorrent_LIBS="$libtorrent_LIBS" | ||||
|  elif test -n "$PKG_CONFIG"; then | ||||
|     if test -n "$PKG_CONFIG" && \ | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2") 2>&5 | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2") 2>&5 | ||||
|   ac_status=$? | ||||
|   printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||||
|   test $ac_status = 0; }; then | ||||
|   pkg_cv_libtorrent_LIBS=`$PKG_CONFIG --libs "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" 2>/dev/null` | ||||
|   pkg_cv_libtorrent_LIBS=`$PKG_CONFIG --libs "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" 2>/dev/null` | ||||
| 		      test "x$?" != "x0" && pkg_failed=yes | ||||
| else | ||||
|   pkg_failed=yes | ||||
| @@ -6133,14 +6133,14 @@ else | ||||
|         _pkg_short_errors_supported=no | ||||
| fi | ||||
|         if test $_pkg_short_errors_supported = yes; then | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" 2>&1` | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" 2>&1` | ||||
|         else | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" 2>&1` | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" 2>&1` | ||||
|         fi | ||||
| 	# Put the nasty error message in config.log where it belongs | ||||
| 	echo "$libtorrent_PKG_ERRORS" >&5 | ||||
|  | ||||
| 	as_fn_error $? "Package requirements (libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2) were not met: | ||||
| 	as_fn_error $? "Package requirements (libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2) were not met: | ||||
|  | ||||
| $libtorrent_PKG_ERRORS | ||||
|  | ||||
| @@ -6177,19 +6177,19 @@ elif test $pkg_failed = untried; then | ||||
| printf "%s\n" "no" >&6; } | ||||
|  | ||||
| pkg_failed=no | ||||
| { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" >&5 | ||||
| printf %s "checking for libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2... " >&6; } | ||||
| { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" >&5 | ||||
| printf %s "checking for libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2... " >&6; } | ||||
|  | ||||
| if test -n "$libtorrent_CFLAGS"; then | ||||
|     pkg_cv_libtorrent_CFLAGS="$libtorrent_CFLAGS" | ||||
|  elif test -n "$PKG_CONFIG"; then | ||||
|     if test -n "$PKG_CONFIG" && \ | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2") 2>&5 | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2") 2>&5 | ||||
|   ac_status=$? | ||||
|   printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||||
|   test $ac_status = 0; }; then | ||||
|   pkg_cv_libtorrent_CFLAGS=`$PKG_CONFIG --cflags "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" 2>/dev/null` | ||||
|   pkg_cv_libtorrent_CFLAGS=`$PKG_CONFIG --cflags "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" 2>/dev/null` | ||||
| 		      test "x$?" != "x0" && pkg_failed=yes | ||||
| else | ||||
|   pkg_failed=yes | ||||
| @@ -6201,12 +6201,12 @@ if test -n "$libtorrent_LIBS"; then | ||||
|     pkg_cv_libtorrent_LIBS="$libtorrent_LIBS" | ||||
|  elif test -n "$PKG_CONFIG"; then | ||||
|     if test -n "$PKG_CONFIG" && \ | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2") 2>&5 | ||||
|     { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2\""; } >&5 | ||||
|   ($PKG_CONFIG --exists --print-errors "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2") 2>&5 | ||||
|   ac_status=$? | ||||
|   printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||||
|   test $ac_status = 0; }; then | ||||
|   pkg_cv_libtorrent_LIBS=`$PKG_CONFIG --libs "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" 2>/dev/null` | ||||
|   pkg_cv_libtorrent_LIBS=`$PKG_CONFIG --libs "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" 2>/dev/null` | ||||
| 		      test "x$?" != "x0" && pkg_failed=yes | ||||
| else | ||||
|   pkg_failed=yes | ||||
| @@ -6227,14 +6227,14 @@ else | ||||
|         _pkg_short_errors_supported=no | ||||
| fi | ||||
|         if test $_pkg_short_errors_supported = yes; then | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" 2>&1` | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" 2>&1` | ||||
|         else | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2" 2>&1` | ||||
| 	        libtorrent_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2" 2>&1` | ||||
|         fi | ||||
| 	# Put the nasty error message in config.log where it belongs | ||||
| 	echo "$libtorrent_PKG_ERRORS" >&5 | ||||
|  | ||||
| 	as_fn_error $? "Package requirements (libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2) were not met: | ||||
| 	as_fn_error $? "Package requirements (libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2) were not met: | ||||
|  | ||||
| $libtorrent_PKG_ERRORS | ||||
|  | ||||
| @@ -7237,7 +7237,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | ||||
| # report actual input values of CONFIG_FILES etc. instead of their | ||||
| # values after options handling. | ||||
| ac_log=" | ||||
| This file was extended by qbittorrent $as_me v4.6.2, which was | ||||
| This file was extended by qbittorrent $as_me v4.5.4, which was | ||||
| generated by GNU Autoconf 2.71.  Invocation command line was | ||||
|  | ||||
|   CONFIG_FILES    = $CONFIG_FILES | ||||
| @@ -7297,7 +7297,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ | ||||
| cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | ||||
| ac_cs_config='$ac_cs_config_escaped' | ||||
| ac_cs_version="\\ | ||||
| qbittorrent config.status v4.6.2 | ||||
| qbittorrent config.status v4.5.4 | ||||
| configured by $0, generated by GNU Autoconf 2.71, | ||||
|   with options \\"\$ac_cs_config\\" | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| AC_INIT([qbittorrent], [v4.6.2], [bugs.qbittorrent.org], [], [https://www.qbittorrent.org/]) | ||||
| AC_INIT([qbittorrent], [v4.5.4], [bugs.qbittorrent.org], [], [https://www.qbittorrent.org/]) | ||||
| AC_CONFIG_AUX_DIR([build-aux]) | ||||
| AC_CONFIG_MACRO_DIR([m4]) | ||||
| : ${CFLAGS=""} | ||||
| @@ -165,7 +165,7 @@ AS_CASE(["x$enable_qt_dbus"], | ||||
|                FIND_QTDBUS() | ||||
|                AS_IF([test "x$HAVE_QTDBUS" = "xfalse"], | ||||
|                      [AC_MSG_ERROR([Could not find QtDBus])], | ||||
|                      [QBT_ADD_CONFIG="$QBT_ADD_CONFIG dbus" QBT_ADD_DEFINES="$QBT_ADD_DEFINES QBT_USES_DBUS"] | ||||
|                      [QBT_ADD_CONFIG="$QBT_ADD_CONFIG dbus"] | ||||
|                     )], | ||||
|         ["xno"], | ||||
|               [AC_MSG_RESULT([no]) | ||||
| @@ -188,10 +188,10 @@ m4_define([DETECT_BOOST_VERSION_PROGRAM], | ||||
|                      [[(void) ((void)sizeof(char[1 - 2*!!((BOOST_VERSION) < ($1))]));]])]) | ||||
|  | ||||
| PKG_CHECK_MODULES(libtorrent, | ||||
|                   [libtorrent-rasterbar >= 2.0.9], | ||||
|                   [libtorrent-rasterbar >= 2.0.8], | ||||
|                   [CXXFLAGS="$libtorrent_CFLAGS $CXXFLAGS" LIBS="$libtorrent_LIBS $LIBS" QBT_ADD_DEFINES="$QBT_ADD_DEFINES QBT_USES_LIBTORRENT2"], | ||||
|                   [PKG_CHECK_MODULES(libtorrent, | ||||
|                                      [libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2], | ||||
|                                      [libtorrent-rasterbar >= 1.2.18 libtorrent-rasterbar < 2], | ||||
|                                      [CXXFLAGS="$libtorrent_CFLAGS $CXXFLAGS" LIBS="$libtorrent_LIBS $LIBS"])]) | ||||
|  | ||||
| PKG_CHECK_MODULES(openssl, | ||||
|   | ||||
							
								
								
									
										4
									
								
								dist/mac/Info.plist
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								dist/mac/Info.plist
									
									
									
									
										vendored
									
									
								
							| @@ -55,7 +55,7 @@ | ||||
| 	<key>CFBundlePackageType</key> | ||||
| 	<string>APPL</string> | ||||
| 	<key>CFBundleShortVersionString</key> | ||||
| 	<string>4.6.2</string> | ||||
| 	<string>4.5.4</string> | ||||
| 	<key>CFBundleExecutable</key> | ||||
| 	<string>${EXECUTABLE_NAME}</string> | ||||
| 	<key>CFBundleIdentifier</key> | ||||
| @@ -67,7 +67,7 @@ | ||||
| 	<key>NSAppleScriptEnabled</key> | ||||
| 	<string>YES</string> | ||||
| 	<key>NSHumanReadableCopyright</key> | ||||
| 	<string>Copyright © 2006-2023 The qBittorrent project</string> | ||||
| 	<string>Copyright © 2006-2022 The qBittorrent project</string> | ||||
| 	<key>UTExportedTypeDeclarations</key> | ||||
| 	<array> | ||||
| 		<dict> | ||||
|   | ||||
| @@ -68,12 +68,12 @@ | ||||
|   <update_contact>sledgehammer999@qbittorrent.org</update_contact> | ||||
|   <developer_name>The qBittorrent Project</developer_name> | ||||
|   <url type="homepage">https://www.qbittorrent.org/</url> | ||||
|   <url type="bugtracker">https://bugs.qbittorrent.org/</url> | ||||
|   <url type="bugtracker">http://bugs.qbittorrent.org/</url> | ||||
|   <url type="donation">https://www.qbittorrent.org/donate</url> | ||||
|   <url type="help">https://forum.qbittorrent.org/</url> | ||||
|   <url type="help">http://forum.qbittorrent.org/</url> | ||||
|   <url type="translate">https://github.com/qbittorrent/qBittorrent/wiki/How-to-translate-qBittorrent</url> | ||||
|   <content_rating type="oars-1.1"/> | ||||
|   <releases> | ||||
|     <release version="4.6.2" date="2023-11-27"/> | ||||
|     <release version="4.5.4" date="2023-06-18"/> | ||||
|   </releases> | ||||
| </component> | ||||
|   | ||||
							
								
								
									
										138
									
								
								dist/unix/org.qbittorrent.qBittorrent.desktop
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										138
									
								
								dist/unix/org.qbittorrent.qBittorrent.desktop
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										4
									
								
								dist/windows/config.nsi
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								dist/windows/config.nsi
									
									
									
									
										vendored
									
									
								
							| @@ -25,7 +25,7 @@ | ||||
| ; 4.5.1.3 -> good | ||||
| ; 4.5.1.3.2 -> bad | ||||
| ; 4.5.0beta -> bad | ||||
| !define /ifndef QBT_VERSION "4.6.2" | ||||
| !define /ifndef QBT_VERSION "4.5.4" | ||||
|  | ||||
| ; Option that controls the installer's window name | ||||
| ; If set, its value will be used like this: | ||||
| @@ -112,7 +112,7 @@ OutFile "qbittorrent_${QBT_INSTALLER_FILENAME}_setup.exe" | ||||
| ;Installer Version Information | ||||
| VIAddVersionKey "ProductName" "qBittorrent" | ||||
| VIAddVersionKey "CompanyName" "The qBittorrent project" | ||||
| VIAddVersionKey "LegalCopyright" "Copyright ©2006-2023 The qBittorrent project" | ||||
| VIAddVersionKey "LegalCopyright" "Copyright ©2006-2022 The qBittorrent project" | ||||
| VIAddVersionKey "FileDescription" "qBittorrent - A Bittorrent Client" | ||||
| VIAddVersionKey "FileVersion" "${QBT_VERSION}" | ||||
|  | ||||
|   | ||||
							
								
								
									
										2
									
								
								dist/windows/gather_qt_translations.py
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/windows/gather_qt_translations.py
									
									
									
									
										vendored
									
									
								
							| @@ -19,7 +19,7 @@ def main() -> int: | ||||
|     tmp_translations: List[str] = glob.glob(f'{args.qt_translations_folder}/qt_??.qm') | ||||
|     tmp_translations += glob.glob(f'{args.qt_translations_folder}/qt_??_??.qm') | ||||
|     tmp_translations += glob.glob(f'{args.qt_translations_folder}/qtbase_??.qm') | ||||
|     tmp_translations += glob.glob(f'{args.qt_translations_folder}/qtbase_??_??.qm') | ||||
|     tmp_translations += glob.glob(f'{args.qt_translations_folder}qtbase_??_??.qm') | ||||
|  | ||||
|     filtered = filter(isNotStub, tmp_translations) | ||||
|     for file in filtered: | ||||
|   | ||||
| @@ -2,8 +2,8 @@ | ||||
|  | ||||
| ;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)" | ||||
| LangString inst_qbt_req ${LANG_AFRIKAANS} "qBittorrent (required)" | ||||
| ;LangString inst_desktop ${LANG_ENGLISH} "Create Desktop Shortcut" | ||||
| LangString inst_desktop ${LANG_AFRIKAANS} "Create Desktop Shortcut" | ||||
| ;LangString inst_dekstop ${LANG_ENGLISH} "Create Desktop Shortcut" | ||||
| LangString inst_dekstop ${LANG_AFRIKAANS} "Create Desktop Shortcut" | ||||
| ;LangString inst_startmenu ${LANG_ENGLISH} "Create Start Menu Shortcut" | ||||
| LangString inst_startmenu ${LANG_AFRIKAANS} "Create Start Menu Shortcut" | ||||
| ;LangString inst_startup ${LANG_ENGLISH} "Start qBittorrent on Windows start up" | ||||
| @@ -30,8 +30,8 @@ LangString launch_qbt ${LANG_AFRIKAANS} "Launch qBittorrent." | ||||
| LangString inst_requires_64bit ${LANG_AFRIKAANS} "This installer works only in 64-bit Windows versions." | ||||
| ;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7." | ||||
| LangString inst_requires_win7 ${LANG_AFRIKAANS} "This qBittorrent version requires at least Windows 7." | ||||
| ;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 (1809) / Windows Server 2019." | ||||
| LangString inst_requires_win10 ${LANG_AFRIKAANS}  "This installer requires at least Windows 10 (1809) / Windows Server 2019." | ||||
| ;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809." | ||||
| LangString inst_requires_win10 ${LANG_AFRIKAANS}  "This installer requires at least Windows 10 1809." | ||||
| ;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent" | ||||
| LangString inst_uninstall_link_description ${LANG_AFRIKAANS} "Uninstall qBittorrent" | ||||
|  | ||||
|   | ||||
| @@ -2,8 +2,8 @@ | ||||
|  | ||||
| ;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)" | ||||
| LangString inst_qbt_req ${LANG_ALBANIAN} "qBittorrent (required)" | ||||
| ;LangString inst_desktop ${LANG_ENGLISH} "Create Desktop Shortcut" | ||||
| LangString inst_desktop ${LANG_ALBANIAN} "Create Desktop Shortcut" | ||||
| ;LangString inst_dekstop ${LANG_ENGLISH} "Create Desktop Shortcut" | ||||
| LangString inst_dekstop ${LANG_ALBANIAN} "Create Desktop Shortcut" | ||||
| ;LangString inst_startmenu ${LANG_ENGLISH} "Create Start Menu Shortcut" | ||||
| LangString inst_startmenu ${LANG_ALBANIAN} "Create Start Menu Shortcut" | ||||
| ;LangString inst_startup ${LANG_ENGLISH} "Start qBittorrent on Windows start up" | ||||
| @@ -30,8 +30,8 @@ LangString launch_qbt ${LANG_ALBANIAN} "Launch qBittorrent." | ||||
| LangString inst_requires_64bit ${LANG_ALBANIAN} "This installer works only in 64-bit Windows versions." | ||||
| ;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7." | ||||
| LangString inst_requires_win7 ${LANG_ALBANIAN} "This qBittorrent version requires at least Windows 7." | ||||
| ;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 (1809) / Windows Server 2019." | ||||
| LangString inst_requires_win10 ${LANG_ALBANIAN}  "This installer requires at least Windows 10 (1809) / Windows Server 2019." | ||||
| ;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809." | ||||
| LangString inst_requires_win10 ${LANG_ALBANIAN}  "This installer requires at least Windows 10 1809." | ||||
| ;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent" | ||||
| LangString inst_uninstall_link_description ${LANG_ALBANIAN} "Uninstall qBittorrent" | ||||
|  | ||||
|   | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user