Skip to content

Commit b4e255c

Browse files
committed
Merge branch 'develop'
2 parents c671c0f + 054ed7c commit b4e255c

File tree

430 files changed

+24712
-14310
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

430 files changed

+24712
-14310
lines changed

.github/workflows/deployment.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -555,35 +555,35 @@ jobs:
555555
556556
- name: Download Chromium Addon
557557
continue-on-error: true
558-
uses: actions/download-artifact@v3
558+
uses: actions/download-artifact@v4.1.7
559559
with:
560560
name: artifact_chromium
561561
path: "${{env.Project_RELEASE_DIR}}"
562562

563563
- name: Download Firefox Addon
564564
continue-on-error: true
565-
uses: actions/download-artifact@v3
565+
uses: actions/download-artifact@v4.1.7
566566
with:
567567
name: artifact_firefox
568568
path: "${{env.Project_RELEASE_DIR}}"
569569

570570
- name: Download Linux Portable
571571
continue-on-error: true
572-
uses: actions/download-artifact@v3
572+
uses: actions/download-artifact@v4.1.7
573573
with:
574574
name: artifact_linux_portable
575575
path: "${{env.Project_RELEASE_DIR}}"
576576

577577
- name: Download Windows MinGW 64 Portable
578578
continue-on-error: true
579-
uses: actions/download-artifact@v3
579+
uses: actions/download-artifact@v4.1.7
580580
with:
581581
name: artifact_windows_mingw_64_portable
582582
path: "${{env.Project_RELEASE_DIR}}"
583583

584584
- name: Download Windows 64 Installer
585585
continue-on-error: true
586-
uses: actions/download-artifact@v3
586+
uses: actions/download-artifact@v4.1.7
587587
with:
588588
name: artifact_windows_64_installer
589589
path: "${{env.Project_RELEASE_DIR}}"

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,4 +58,6 @@ CMakeLists.txt.user*
5858
# And reject some specific files
5959
# =======================================
6060
/scripts
61+
*.exe
62+
*.bat
6163

.tx/config

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,20 @@ source_file = src/locale/arrowdl_en_US.ts
99
source_lang = en
1010
type = QT
1111
minimum_perc = 0
12-
lang_map = ar_EG: ar_EG, de_DE: de_DE, en_US: en_US, es_ES: es_ES, fr_FR: fr_FR, hu_HU: hu_HU, it_IT: it_IT, ja_JP: ja_JP, ko_KR: ko_KR, nl_NL: nl_NL, pl_PL: pl_PL, pt_BR: pt_BR, pt_PT: pt_PT, ru_RU: ru_RU, vi_VN: vi_VN, zh_CN: zh_CN
12+
lang_map = ar_EG: ar_EG, de_DE: de_DE, en_US: en_US, es_BO: es_BO, es_ES: es_ES, es_US: es_US, fr_FR: fr_FR, hu_HU: hu_HU, it_IT: it_IT, ja_JP: ja_JP, ko_KR: ko_KR, nl_NL: nl_NL, pl_PL: pl_PL, pt_BR: pt_BR, pt_PT: pt_PT, ru_RU: ru_RU, vi_VN: vi_VN, zh_CN: zh_CN, zh_TW: zh_TW
1313

1414
[o:arrowdl:p:arrowdl:r:web-extension]
1515
file_filter = web-extension/extension/src/base/_locales/<lang>/messages.json
1616
source_file = web-extension/extension/src/base/_locales/en/messages.json
1717
source_lang = en
1818
type = CHROME
1919
minimum_perc = 0
20-
lang_map = ar_EG: ar, de_DE: de, en_US: en, es_ES: es, fr_FR: fr, hu_HU: hu, it_IT: it, ja_JP: ja, ko_KR: ko, nl_NL: nl, pl_PL: pl, pt_BR: pt_BR, pt_PT: pt_PT, ru_RU: ru, vi_VN: vi, zh_CN: zh_CN
20+
lang_map = ar_EG: ar, de_DE: de, en_US: en, es_BO: es_BO, es_ES: es_ES, es_US: es_US, fr_FR: fr, hu_HU: hu, it_IT: it, ja_JP: ja, ko_KR: ko, nl_NL: nl, pl_PL: pl, pt_BR: pt_BR, pt_PT: pt_PT, ru_RU: ru, vi_VN: vi, zh_CN: zh_CN, zh_TW: zh_TW
2121

2222
[o:arrowdl:p:arrowdl:r:windows-installer]
2323
file_filter = installer/windows/NSIS/i18n/sources/<lang>.json
2424
source_file = installer/windows/NSIS/i18n/sources/en.json
2525
source_lang = en
2626
type = KEYVALUEJSON
27-
lang_map = ar_EG: ar, de_DE: de, en_US: en, es_ES: es, fr_FR: fr, hu_HU: hu, it_IT: it, ja_JP: ja, ko_KR: ko, nl_NL: nl, pl_PL: pl, pt_BR: pt_BR, pt_PT: pt, ru_RU: ru, vi_VN: vi, zh_CN: zh_CN
27+
lang_map = ar_EG: ar, de_DE: de, en_US: en, es_BO: es_BO, es_ES: es_ES, es_US: es_US, fr_FR: fr, hu_HU: hu, it_IT: it, ja_JP: ja, ko_KR: ko, nl_NL: nl, pl_PL: pl, pt_BR: pt_BR, pt_PT: pt, ru_RU: ru, vi_VN: vi, zh_CN: zh_CN, zh_TW: zh_TW
2828

3rd/libtorrent-rasterbar/CMakeLists.txt

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -500,6 +500,7 @@ if(CMAKE_CXX_COMPILER_ID MATCHES Clang)
500500
-Wno-exit-time-destructors
501501
-Wno-weak-vtables
502502
-Wno-return-std-move-in-c++11
503+
-Wno-unsafe-buffer-usage
503504
-Wno-unknown-warning-option
504505
)
505506
elseif(CMAKE_CXX_COMPILER_ID MATCHES GNU)
@@ -595,11 +596,17 @@ target_compile_definitions(torrent-rasterbar
595596
BOOST_ASIO_NO_DEPRECATED
596597
PRIVATE
597598
TORRENT_BUILDING_LIBRARY
598-
_FILE_OFFSET_BITS=64
599599
BOOST_EXCEPTION_DISABLE
600600
BOOST_ASIO_HAS_STD_CHRONO
601601
)
602602

603+
if (NOT WIN32)
604+
target_compile_definitions(torrent-rasterbar
605+
PRIVATE
606+
_FILE_OFFSET_BITS=64
607+
)
608+
endif()
609+
603610
target_link_libraries(torrent-rasterbar
604611
PUBLIC
605612
Threads::Threads
@@ -627,12 +634,14 @@ if (WIN32)
627634
)
628635
target_compile_options(torrent-rasterbar
629636
PRIVATE
637+
# allow larger .obj files (with more sections)
638+
/bigobj
639+
# https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170
640+
/permissive-
630641
# https://docs.microsoft.com/en-us/cpp/build/reference/utf-8-set-source-and-executable-character-sets-to-utf-8?view=msvc-170
631642
/utf-8
632643
# https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
633644
/Zc:__cplusplus
634-
/MP # for multi-core compilation
635-
/bigobj # increase the number of sections for obj files
636645
)
637646
set_target_properties(torrent-rasterbar PROPERTIES LINK_FLAGS_RELEASE "/OPT:ICF=5 /OPT:REF")
638647
endif()

3rd/libtorrent-rasterbar/ChangeLog

Lines changed: 30 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
2.0.10 released
2+
3+
* allow on_unknown_torrent method in the absence of active torrents (new plugin feature added)
4+
* add feature to async_move_storage() to not move files
5+
* fix reject resume data if it contains mismatching info hashes
6+
* fix clear the candidate_cache when clear peer_list
7+
* fix missing python converter for dht::announce_flags_t
8+
19
2.0.9 released
210

311
* fix issue with web seed connections when they close and re-open
@@ -150,7 +158,7 @@
150158

151159
2.0 released
152160

153-
* dropped depenency on iconv
161+
* dropped dependency on iconv
154162
* deprecate set_file_hash() in torrent creator, as it's superceded by v2 torrents
155163
* deprecate mutable access to info_section in torrent_info
156164
* removed deprecated lazy_entry/lazy_bdecode
@@ -268,7 +276,7 @@
268276
* fix issue with moving the session object
269277
* deprecate torrent_status::allocating. This state is no longer used
270278
* fix bug creating torrents with symbolic links
271-
* remove special case to save metadata in resume data unconditionally when added throught magnet link
279+
* remove special case to save metadata in resume data unconditionally when added through magnet link
272280
* fix bugs in mutable-torrent support (reusing identical files from different torrents)
273281
* fix incorrectly inlined move-assignment of file_storage
274282
* add session::paused flag, and the ability to construct a session in paused mode
@@ -322,7 +330,7 @@
322330
* limit number of concurrent HTTP announces
323331
* fix queue position for force_rechecking a torrent that is not auto-managed
324332
* improve rate-based choker documentation, and minor tweak
325-
* undeprecate upnp_ignore_nonrouters (but refering to devices on our subnet)
333+
* undeprecate upnp_ignore_nonrouters (but referring to devices on our subnet)
326334
* increase default tracker timeout
327335
* retry failed socks5 server connections
328336
* allow UPnP lease duration to be changed after device discovery
@@ -402,7 +410,7 @@
402410
1.2.1 release
403411

404412
* add dht_pkt_alert and alerts_dropped_alert to python bindings
405-
* fix python bindins for block_uploaded_alert
413+
* fix python bindings for block_uploaded_alert
406414
* optimize resolving duplicate filenames in loading torrent files
407415
* fix python binding of dht_settings
408416
* tighten up various input validation checks
@@ -411,7 +419,7 @@
411419
* fix python bindings for peer_info
412420
* support creating symlinks, for torrents with symlinks in them
413421
* fix error in seed_mode flag
414-
* support magnet link parameters with number siffixes
422+
* support magnet link parameters with number suffixes
415423
* consistently use "lt" namespace in examples and documentation
416424
* fix Mingw build to use native cryptoAPI
417425
* uPnP/NAT-PMP errors no longer set the client's advertised listen port to zero
@@ -605,7 +613,7 @@
605613

606614
* fix infinite loop when parsing certain invalid magnet links
607615
* fix parsing of torrents with certain invalid filenames
608-
* fix leak of torrent_peer objecs (entries in peer_list)
616+
* fix leak of torrent_peer objects (entries in peer_list)
609617
* fix leak of peer_class objects (when setting per-torrent rate limits)
610618
* expose peer_class API to python binding
611619
* fix integer overflow in whole_pieces_threshold logic
@@ -640,7 +648,7 @@
640648
* fix proxying of https connections
641649
* fix race condition in disk I/O storage class
642650
* fix http connection timeout on multi-homed hosts
643-
* removed depdendency on boost::uintptr_t for better compatibility
651+
* removed dependency on boost::uintptr_t for better compatibility
644652
* fix memory leak in the disk cache
645653
* fix double free in disk cache
646654
* forward declaring libtorrent types is discouraged. a new fwd.hpp header is provided
@@ -926,7 +934,7 @@
926934
* tweak flag_override_resume_data semantics to make more sense (breaks
927935
backwards compatibility of edge-cases)
928936
* improve DHT bootstrapping and periodic refresh
929-
* improve DHT maintanence performance (by pinging instead of full lookups)
937+
* improve DHT maintenance performance (by pinging instead of full lookups)
930938
* fix bug in DHT routing table node-id prefix optimization
931939
* fix incorrect behavior of flag_use_resume_save_path
932940
* fix protocol race-condition in super seeding mode
@@ -1109,7 +1117,7 @@
11091117
* fix piece-picker stat bug when only selecting some files for download
11101118
* fix bug in async_add_torrent when settings file_priorities
11111119
* fix boost-1.42 support for python bindings
1112-
* fix memory allocation issue (virtual addres space waste) on windows
1120+
* fix memory allocation issue (virtual address space waste) on windows
11131121

11141122
0.16.11 release
11151123

@@ -1125,7 +1133,7 @@
11251133
* GCC 4.8 fix
11261134
* fix proxy failure semantics with regards to anonymous mode
11271135
* fix round-robin seed-unchoke algorithm
1128-
* add bootstrap.sh to generage configure script and run configure
1136+
* add bootstrap.sh to generate configure script and run configure
11291137
* fix bug in SOCK5 UDP support
11301138
* fix issue where torrents added by URL would not be started immediately
11311139

@@ -1302,7 +1310,7 @@
13021310
* support banning web seeds sending corrupt data
13031311
* don't let hung outgoing connection attempts block incoming connections
13041312
* improve SSL torrent support by using SNI and a single SSL listen socket
1305-
* improved peer exchange performance by sharing incoming connections which advertize listen port
1313+
* improved peer exchange performance by sharing incoming connections which advertise listen port
13061314
* deprecate set_ratio(), and per-peer rate limits
13071315
* add web seed support for torrents with pad files
13081316
* introduced a more scalable API for torrent status updates (post_torrent_updates()) and updated client_test to use it
@@ -1694,7 +1702,7 @@ release 0.14.9
16941702

16951703
release 0.14.8
16961704

1697-
* ignore unkown metadata messages
1705+
* ignore unknown metadata messages
16981706
* fixed typo that would sometimes prevent queued torrents to be checked
16991707
* fixed bug in auto-manager where active_downloads and active_seeds would
17001708
sometimes be used incorrectly
@@ -1721,7 +1729,7 @@ release 0.14.7
17211729
ended with a /
17221730
* fixed bug in error handling when parsing torrent files
17231731
* fixed file checking bug when renaming a file before checking the torrent
1724-
* fixed race conditon when receiving metadata from swarm
1732+
* fixed race condition when receiving metadata from swarm
17251733
* fixed assert in ut_metadata plugin
17261734
* back-ported some fixes for building with no exceptions
17271735
* fixed create_torrent when passing in a path ending with /
@@ -1814,7 +1822,7 @@ release 0.14.3
18141822
* fixed issue where renamed files were sometimes not saved in resume data
18151823
* accepts tracker responses with no 'peers' field, as long as 'peers6'
18161824
is present
1817-
* fixed CIDR-distance calculation in the precense of IPv6 peers
1825+
* fixed CIDR-distance calculation in the presence of IPv6 peers
18181826
* save partial resume data for torrents that are queued for checking
18191827
or checking, to maintain stats and renamed files
18201828
* Don't try IPv6 on windows if it's not installed
@@ -1839,7 +1847,7 @@ release 0.14.2
18391847
tracker urls
18401848
* fixed bug where the files requested from web seeds would be the
18411849
renamed file names instead of the original file names in the torrent.
1842-
* documentation fix of queing section
1850+
* documentation fix of queueing section
18431851
* fixed potential issue in udp_socket (affected udp tracker support)
18441852
* made name, comment and created by also be subject to utf-8 error
18451853
correction (filenames already were)
@@ -1853,7 +1861,7 @@ release 0.14.2
18531861
* fixed race condition when saving DHT state
18541862
* fixed bugs related to lexical_cast being locale dependent
18551863
* added support for SunPro C++ compiler
1856-
* fixed bug where messeges sometimes could be encrypted in the
1864+
* fixed bug where messages sometimes could be encrypted in the
18571865
wrong order, for encrypted connections.
18581866
* fixed race condition where torrents could get stuck waiting to
18591867
get checked
@@ -1874,7 +1882,7 @@ release 0.14.1
18741882
sometimes quit when an error occurred
18751883
* fixed DHT bug
18761884
* fixed potential shutdown crash in disk_io_thread
1877-
* fixed usage of deprecated boost.filsystem functions
1885+
* fixed usage of deprecated boost.filesystem functions
18781886
* fixed http_connection unit test
18791887
* fixed bug in DHT when a DHT state was loaded
18801888
* made rate limiter change in 0.14 optional (to take estimated
@@ -1945,7 +1953,7 @@ release 0.14
19451953
* Disk cache support.
19461954
* New, more memory efficient, piece picker with sequential download
19471955
support (instead of the more complicated sequential download threshold).
1948-
* Auto Upload slots. Automtically opens up more slots if
1956+
* Auto Upload slots. Automatically opens up more slots if
19491957
upload limit is not met.
19501958
* Improved NAT-PMP support by querying the default gateway
19511959
* Improved UPnP support by ignoring routers not on the clients subnet.
@@ -2056,7 +2064,7 @@ release 0.12
20562064
* fixed bug in DHT code which would send incorrect announce messages.
20572065
* fixed bug where the http header parser was case sensitive to the header
20582066
names.
2059-
* Implemented an optmization which frees the piece_picker once a torrent
2067+
* Implemented an optimization which frees the piece_picker once a torrent
20602068
turns into a seed.
20612069
* Added support for uT peer exchange extension, implemented by Massaroddel.
20622070
* Modified the quota management to offer better bandwidth balancing
@@ -2086,9 +2094,9 @@ release 0.11
20862094
* fixed bug with file_progress() with files = 0 bytes
20872095
* fixed a race condition bug in udp_tracker_connection that could
20882096
cause a crash.
2089-
* fixed bug occuring when increasing the sequenced download threshold
2097+
* fixed bug occurring when increasing the sequenced download threshold
20902098
with max availability lower than previous threshold.
2091-
* fixed an integer overflow bug occuring when built with gcc 4.1.x
2099+
* fixed an integer overflow bug occurring when built with gcc 4.1.x
20922100
* fixed crasing bug when closing while checking a torrent
20932101
* fixed bug causing a crash with a torrent with piece length 0
20942102
* added an extension to the DHT network protocol to support the
@@ -2154,7 +2162,7 @@ release 0.10
21542162

21552163
release 0.9.1
21562164

2157-
* made the session disable file name checks within the boost.filsystem library
2165+
* made the session disable file name checks within the boost.filesystem library
21582166
* fixed race condition in the sockets
21592167
* strings that are invalid utf-8 strings are now decoded with the
21602168
local codepage on windows

3rd/libtorrent-rasterbar/Jamfile

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import cast ;
1212

1313
# we need version numbers in the form X.Y.Z in order to trigger the built-in
1414
# support for generating symlinks to the installed library
15-
VERSION = 2.0.9 ;
15+
VERSION = 2.0.10 ;
1616

1717
BOOST_ROOT = [ modules.peek : BOOST_ROOT ] ;
1818
CXXFLAGS = [ modules.peek : CXXFLAGS ] ;
@@ -155,6 +155,14 @@ rule linking ( properties * )
155155
result += <framework>CoreFoundation <framework>SystemConfiguration ;
156156
}
157157

158+
if <target-os>iphone in $(properties)
159+
{
160+
# boost.asio seems to mis-detect iOS as supporting the __thread
161+
# keyword, resulting in the error:
162+
# error: thread-local storage is not supported for the current target
163+
result += <define>BOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION ;
164+
}
165+
158166
if <toolset>gcc in $(properties)
159167
&& <target-os>linux in $(properties)
160168
&& ( <asserts>on in $(properties)
@@ -262,6 +270,10 @@ rule warnings ( properties * )
262270

263271
# libtorrent uses alloca() carefully
264272
result += <cxxflags>-Wno-alloca ;
273+
274+
# these warnings should all be addressed. Either by transitioning to span and
275+
# array, or by suppressing the warning for specific code
276+
result += <cxxflags>-Wno-unsafe-buffer-usage ;
265277
}
266278

267279
if <toolset>gcc in $(properties)
@@ -321,10 +333,20 @@ rule building ( properties * )
321333
{
322334
# allow larger .obj files (with more sections)
323335
result += <cxxflags>/bigobj ;
336+
324337
# https://docs.microsoft.com/en-us/cpp/build/reference/utf-8-set-source-and-executable-character-sets-to-utf-8?view=msvc-170
325338
result += <cxxflags>/utf-8 ;
339+
340+
# two-phase lookup is not supported by C++/CX on msvc, so it needs to be
341+
# disabled. We can't set permissive- in that case
342+
if ! <windows-api>store in $(properties)
343+
{
344+
# https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170
345+
result += <cxxflags>/permissive- ;
346+
}
326347
}
327348

349+
328350
if <toolset>gcc in $(properties) && <target-os>windows in $(properties)
329351
{
330352
# allow larger .obj files (with more sections)

0 commit comments

Comments
 (0)