Commit Graph

1001 Commits

Author SHA1 Message Date
arvidn 749d0da875 make iovec_t an alias for span<char>, in preparation for removing it altogether in favour of span 2017-04-30 11:49:08 -04:00
Steven Siloti fd50630020 announce to trackers for all listen interfaces 2017-04-30 08:11:56 -04:00
arvidn d138f02424 introduce lt namespace alias 2017-04-23 23:43:58 -04:00
arvidn 645d658214 merged RC_1_1 into master 2017-04-13 07:42:32 -07:00
Arvid Norberg e7a379551c discourage forward declarations of libtorrent types, introduce forward declaration header (#1910) 2017-04-13 06:48:01 -07:00
arvidn 79d7ae3638 separate path and filesystem functions out into its own translation unit/header file pair, separating it from the file and directory class 2017-04-11 18:07:55 -04:00
Arvid Norberg 09274842f7 fix resume data issue in client_test and some warnings (#1897)
fix resume data issue in client_test and some warnings
2017-04-09 09:37:06 -04:00
Arvid Norberg 13b16a63a3 use unsigned type for file flags. make file_pool private to disk_io_thread (#1894)
use unsigned type for file flags. make file_pool private to disk_io_thread. move close_file_interval logic to the disk thread. don't expose file in public interface, and make pool_file_status properly public (not part of file_pool and renamed to open_file_status), this is exposed in public interface via torrent_handle::file_status()
2017-04-08 18:24:50 -04:00
arvidn 51c42adc3e steps towars making file_pool private to disk_io_thread 2017-04-07 08:38:35 -04:00
arvidn 7c35c2270f improve client_test 2017-04-04 18:22:10 -04:00
Arvid Norberg 694127a875 fix build (#1874)
fix build
2017-03-30 22:51:39 -04:00
arvidn 0b6fe4d0bd merged RC_1_1 into master 2017-03-30 18:07:24 -04:00
Arvid Norberg d896e9bab3 replace use of add_torrent_params::url in some examples (#1866)
replace use of add_torrent_params::url in some examples
2017-03-29 19:19:23 -04:00
Arvid Norberg b8e77444d5 use span for read_resume_data() (#1867)
use span for read_resume_data()
2017-03-29 16:10:32 -04:00
Arvid Norberg 8ebbad19d4 deprecate add_torrent_params::url field. use parse_magnet_uri instead (#1864)
deprecate add_torrent_params::url field. use parse_magnet_uri instead
2017-03-29 02:16:07 -04:00
arvidn d5a6256b51 improve documentation on peer classes 2017-03-27 23:39:03 -04:00
arvidn b25178e7c8 avoid flooding the alert queue in client_test 2017-03-26 21:48:27 -04:00
arvidn fb60c23807 improve resume data handling in client_test 2017-03-26 19:04:50 -04:00
arvidn 6cdd598e7c make add_torrent_params movable and have add_torrent/async_add_torrent take it by value 2017-03-26 16:48:57 -04:00
Arvid Norberg 967ad06899 greatly simplify client_test (#1851)
greatly simplify client_test
2017-03-26 14:20:40 -04:00
arvidn 9ea9075b2a remove support for adding torrents by http URLs in client_test (since that's deprecated) 2017-03-26 12:11:28 -04:00
Arvid Norberg 103b1176c1 remove torrent_file_path asynchronous loading of .torrent files. (#1848)
remove torrent_file_path asynchronous loading of .torrent files. This is not the responsibility of the client, to simplify and unify the path of adding torrents
2017-03-26 09:16:42 -04:00
arvidn 7640c0641e optimize download queue management with an explicit queue 2017-03-25 20:47:33 -04:00
Arvid Norberg 2c131dbbc4 optimize client_test path handling (#1845)
optimize client_test path handling
2017-03-25 00:01:47 -04:00
arvidn 488c1a2dcf deprecated (undocumented) file:// urls, added torrent_file_path alternative 2017-03-23 20:26:55 -04:00
arvidn 64f5567cdd merged RC_1_1 into master 2017-03-19 12:58:55 -04:00
arvidn ddf2c2e1ca don't call libtorrent functions from global constructor 2017-03-19 10:10:12 -04:00
arvidn 1dd0e9b280 use string_view instead of strcmp 2017-03-18 15:54:38 -04:00
Arvid Norberg 65cb7cdf34 improve deprecated markup (#1823)
improve deprecated markup
2017-03-17 20:41:47 -04:00
arvidn 6f650aa7d9 document deprecation of dynamic loading/unloading of torrents 2017-03-13 21:21:38 -04:00
Andrei Kurushin 713c412682 loop conversion #2 (#1804)
loop conversions. replace unsafe "erase(iter++)" with "iter = erase(iter)"
2017-03-12 11:34:42 -04:00
Arvid Norberg 94effa6ba7 improve parallelism of connection_tester gen-torrent (#1805)
improve parallelism of connection_tester gen-torrent
2017-03-11 19:03:19 -05:00
arvidn 6d54c20adf merge RC_1_1 into master 2017-03-08 18:01:59 -05:00
Arvid Norberg a34ce0278e add write_resume_data() function (#1776)
add write_resume_data() function. Make resume data alert use an add_torrent_params object
2017-03-05 09:31:28 -05:00
arvidn 56925ee8f3 fix openssl include in makefile 2017-02-26 14:07:55 -05:00
arvidn 081365fbcf merge RC_1_1 into master 2017-02-26 00:48:12 -05:00
arvidn 5a19c9a5a1 fix makefile 2017-02-25 23:01:28 -05:00
Arvid Norberg 3d06371f31 factor out some common storage utilities out of storage.cpp (#1515)
factor out some common storage utilities out of storage.cpp
2017-01-11 00:42:10 -05:00
Arvid Norberg 3f1084d63d strengthened type safety in handling of piece and file indices (#1409)
strengthened type safety in handling of piece and file indices
2016-12-22 10:42:33 -05:00
Alden Torres 2b58cb9de3 using std instead of boost for integral types and some headers cleanup 2016-11-12 21:22:59 -05:00
arvidn 1f04520e3b Merge branch 'RC_1_1' 2016-11-12 17:40:27 -05:00
arvidn d92f9ecc50 fix typo 2016-11-12 01:08:24 -05:00
arvidn d4be34ddce fix signed shift bug in client_test 2016-11-12 01:05:34 -05:00
arvidn d91f6f8c05 merged RC_1_1 into master 2016-11-03 01:19:38 -04:00
Arvid Norberg 21d05945f2 documentation and deprecation fixes (#1275)
documentation and deprecation fixes
2016-10-31 20:00:01 -04:00
Arvid Norberg d1a59879cb deprecate mmap_cache (#1269)
deprecated mmap_cache feature
2016-10-29 13:42:42 -04:00
arvidn 500bb24dba merged RC_1_1 into master 2016-10-26 23:30:58 -04:00
Alden Torres 6751a1eeb1 removed spaces in template types and more c++11 auto/loop refactor 2016-10-26 00:08:00 -04:00
Arvid Norberg 675d16a2c3 remove remainder of eviction/ghost torrent feature (#1251)
remove remainder of eviction/ghost torrent feature
2016-10-25 08:02:34 -04:00
Arvid Norberg f16d0b7953 add unit test for 'file_sizes' entry in resume data (#1248)
add unit test for 'file_sizes' entry in resume data. fix resume data bug in client_test for magnet links and minor resume data cleanup in default_storage
2016-10-23 22:01:09 -04:00
Alden Torres ded3ed6abf refactor in alert types to use more const fields and more clear API (#1222)
refactor in alert types to use more const fields and more clear API
2016-10-19 01:32:15 -04:00
Alden Torres 0f20af3710 minor refactor, consts and cleanup in alerts (#1210)
minor refactor, consts and cleanup in alerts
2016-10-16 03:12:41 -04:00
Arvid Norberg c18c12a144 remove ghost torrent/torrent eviction feature. (#1214)
remove ghost torrent/torrent eviction feature. It was very complex and did not solve the problem very well
2016-10-15 13:32:59 -04:00
Arvid Norberg e0c8ad738d include target in DHT lookups, when queried from the session (#1207) 2016-10-12 23:39:00 -04:00
arvidn 1c89fcda48 merge RC_1_1 into master 2016-10-08 14:17:51 -04:00
Arvid Norberg 15bf443bfd fix connection_tester to support generating fake data for arbitrary torrents (#1181) 2016-10-04 07:31:07 -07:00
Arvid Norberg 7a52a285a1 back-port error_code cleanup from master (#1173)
back-port error_code cleanup from master
2016-10-03 16:32:40 -07:00
Arvid Norberg a057e22e90 don't use internal functions in connection_tester (#1172) 2016-10-02 21:17:14 -07:00
Arvid Norberg cebd976cc2 fix error_code vs. error_condition traits (#1169)
fix error_code vs. error_condition traits. deprecate get_*_category(), instead use *_category()
2016-10-02 12:27:50 -07:00
Alden Torres 84e735c0ea refactor for more use of move with settings_pack (#1162) 2016-09-28 13:28:43 -04:00
Arvid Norberg 97c6a75084 add proper error handling to peer connections and session (#1149)
add proper error handling to peer connections and session. i.e. catch exceptions in asio handlers and catch by const reference
2016-09-25 09:50:48 -04:00
Alden Torres a75c2ba47e fix examples/make_torrent.cpp compilation (#1140)
fix examples/make_torrent.cpp compilation
2016-09-23 07:45:35 -07:00
arvidn 1d677f24d2 fix 2016-09-22 16:28:12 -07:00
arvidn 70199041f7 merged RC_1_1 into master 2016-09-22 13:48:12 -07:00
arvidn 93381505d0 clean up some examples 2016-09-18 17:14:18 -07:00
arvidn 33414de68d merged RC_1_1 into master 2016-09-11 21:01:03 -04:00
Alden Torres 4c53d7b2da refactor to use std unordered containers and minor cleanup (#1070) 2016-09-06 23:37:36 -04:00
Arvid Norberg 5f5589d137 deprecate and remove remote_dl_rate feature (#1051)
deprecate and remove remote_dl_rate feature
2016-09-01 09:43:08 -04:00
arvidn 599967c4b5 add missing files to makefile 2016-08-23 02:04:24 -04:00
arvidn 6aacc0bf03 fix bug in bt-get2.cpp example 2016-08-23 00:27:11 -04:00
Arvid Norberg 8f7901dd25 build with warnings as errors in autotools build on travis (#1013)
build with warnings as errors in autotools build on travis
2016-08-19 01:05:43 -04:00
Alden Torres 5789b02e1b storage_interface refactor to use span and references (#1007)
storage_interface refactor to use span and references
2016-08-18 11:57:50 -04:00
Alden Torres bb388563b3 refactor to use torrent_info with std::shared_ptr (#1006) 2016-08-17 17:26:35 -04:00
Alden Torres 2f7adfbb92 no more deprecated std::random_shuffle (#999)
replace deprecated std::random_shuffle. more aggressive random_shuffle in DHT simulation setup. use travis_retry.
2016-08-14 19:48:31 -04:00
Arvid Norberg bc8c49dc15 make file_status return the vector instead of taking an out-parameter (#1000)
make file_status return the vector instead of taking an out-parameter
2016-08-14 13:11:59 -04:00
arvidn 8c8c3d5587 replace boost::function with std::function 2016-08-13 07:07:26 -04:00
arvidn 5308de69fe make dump_torrent print web seeds 2016-08-13 07:07:25 -04:00
Arvid Norberg e36e5efaba use boost::string_ref (#996)
use boost::string_ref/boost::string_view in various parts of the code, in file_storage, some file functions and in bdecode.
2016-08-13 07:04:53 -04:00
Arvid Norberg 1bae47479b make settings_pack moveable (#982) 2016-08-05 00:28:03 -04:00
arvidn bd4827db35 fix missing include 2016-08-03 22:10:38 -04:00
Arvid Norberg 5b230694e5 check autotools on travis (#973)
build and run tests with autotools on travis, and fix configure issues.
2016-08-02 00:46:15 -04:00
Arvid Norberg 8c03718117 apply modernization transforms to headers too. nullptr, explicit constructors, = default (#903) 2016-07-10 14:27:42 -04:00
Arvid Norberg c3432aedd9 move constructor arguments into members (#902) 2016-07-10 10:03:49 -04:00
Arvid Norberg a740a49fd6 modernize misc (#898)
modernize misc
2016-07-10 07:34:45 -04:00
Arvid Norberg e801d2e6de modernize replace deprecated headers (#897) 2016-07-09 23:17:55 -04:00
Arvid Norberg 770935cd46 modernize-use-nullptr (#894) 2016-07-09 16:26:26 -04:00
Arvid Norberg c567a66f5e simplify peer_connection's read handlers and the receive buffer. (#853)
simplify peer_connection's read handlers and the receive buffer. removed the concept of soft-packet-size. removed the secondary null-buffer receive path. removed try_read. simplify the buffer class to not be resizeable. make receive_buffer shrink the buffer allocation. add cap to growing the receive buffer. buffer sizes are always divisible by 8.
2016-06-26 20:41:03 -04:00
Arvid Norberg 6aabe3762b general modernization (#836)
general modernization. use nullptr instead of NULL, use std::tuple instead of boost::tuple, transition some unordered set/map from boost to std. some clean-up of includes
2016-06-20 11:32:06 -04:00
Arvid Norberg ed077c8358 use cstdint intead of boost/cstdint.hpp (#833)
use cstdint intead of boost/cstdint.hpp
2016-06-18 14:01:38 -04:00
Arvid Norberg 53c9b7ad25 restore some accidental removal in client_test from previous patch (#812) 2016-06-13 00:06:15 -04:00
Arvid Norberg 223f24ca27 some cleanup and transition to std::unique_ptr (#786)
some cleanup and transition to std::unique_ptr
2016-06-05 14:07:24 -04:00
arvidn b3942a08fa fix issue in client_test 2016-06-04 21:35:12 -04:00
Arvid Norberg 8c8f5bb03b deprecated public to_hex() and from_hex() functions (#784) 2016-06-04 10:01:43 -04:00
arvidn 420b5f51e6 merged RC_1_1 into master 2016-05-27 12:35:53 -07:00
Arvid Norberg 96999ad67f replace uses of boost::bind with std::bind and lambdas (#745) 2016-05-25 00:31:52 -04:00
arvidn 98eabc63e9 using _WIN32 appears safer than WIN32 2016-05-23 23:02:52 -04:00
Arvid Norberg 748af6eec1 general cleanup. remove valgrind markup, log_hash_failures and C headers (#752)
general cleanup. remove valgrind markup, log_hash_failures and C headers
2016-05-23 08:15:39 -04:00
Arvid Norberg e8380e1d0b factor out includes from config.hpp into the files actually using it. primarily, printf family of functions, since C++11 version is used now. This removes the need for an snprintf-wrapper on windows (#732) 2016-05-17 09:24:06 -04:00
Arvid Norberg 44a668db62 build with gcc/mingw on appveyor (#722)
enable gcc/mingw builds on appveyor. Some mingw tests crash currently, they need debugging and are currently disabled.
2016-05-15 13:28:22 -04:00
Arvid Norberg 045e9316ad update CMakeLists.txt to build with C++11 (#682) 2016-05-02 14:38:12 -04:00
Arvid Norberg c91a700c07 Msvc warnings (#685)
fix msvc warnings and build examples with warnings-as-errors
2016-05-02 12:36:21 -04:00
arvidn 78bc269832 use std::chrono and not boost::chrono 2016-05-01 08:50:30 -04:00
Steven Siloti ff0675e64e use standard array container (#676) 2016-04-30 23:10:47 -04:00
Arvid Norberg 20b41ad0b9 Threads (#671)
use std::thread, std::mutex, std::condition_variable instead of pulling them in from boost.asio internals.
2016-04-30 18:54:23 -04:00
Arvid Norberg f856b6bbe3 dial up cppcheck (#663)
increase cppcheck coverage and make sure there are no warnings
2016-04-30 00:24:45 -04:00
Andrei Kurushin 62eb956c54 fix x64 build with VS2015 UP2 compiler (#640)
fix VS2015 compiler warnings for: address-model=64, deprecated-functions=on, link=shared
2016-04-25 17:22:09 -04:00
Arvid Norberg 97bdb4ba25 don't support c++98 anymore. build bt-get and bt-get2 by default (which require C++11). simplify address-model configuration in appveyor script. enable msvc-14 builds. use boost 1.59 on appveyor (#618) 2016-04-24 09:17:58 -04:00
Andrei Kurushin c41ab094be fix release build with VS2015 UP2 compiler warnings for: examples, test, tools (#627)
fix release build with VS2015 UP2 compiler warnings for: examples, test, tools
2016-04-20 00:45:32 -04:00
arvidn d84a38fdf2 improve converters for add_torrent_params 2016-04-15 00:48:47 -04:00
arvidn 867b83ccda merged RC_1_1 into master 2016-04-08 02:20:24 -04:00
arvidn 238e7515ea fix typo in travis to actually build bt-get and bt-get2 examples. fix bt-get2 build 2016-03-30 02:32:53 -04:00
arvidn 96e2693d13 merge RC_1_1 into master 2016-03-19 16:02:46 -04:00
arvidn f7c9062019 deprecate more parts of explicit cache as well as fixing typos of TORRENT_NO_DEPRECATE preprocessor tests 2016-03-19 07:54:29 -04:00
arvidn b446fe4bba deprecate settings_pack::hashing_threads and replace it with aio_threads in documentation 2016-03-18 16:40:52 -04:00
arvidn 5c360247b6 move piece_bar into print.cpp in client_test. make client_test take arbitrary libtorrent settings 2016-03-17 08:19:11 -04:00
arvidn f79a9c7adf merged RC_1_1 into master 2016-03-16 19:59:53 -04:00
arvidn c9c401d15c add piece matrix to client_test 2016-03-13 19:13:38 -04:00
Michael Smith 7657373fe3 Fix building examples
Add finding OpenSSL for examples (on Mac it's common for OpenSSL
installed via Homebrew to not be on normal paths, so find it via
CMAKE_PREFIX_PATH). Also make the example cmake helper script
executable.
2016-03-12 15:09:03 -08:00
arvidn 6d85c7c5f0 merge RC_1_1 into master 2016-03-08 01:10:48 -05:00
arvidn 442979c318 support filtering which parts of session state are loaded by load_state() 2016-03-06 16:35:49 -05:00
arvidn adf56344e6 add interactive option to toggle use of disk cache to client_test 2016-03-06 16:15:17 -05:00
arvidn 8ca76f9d59 fix support for auto disk cache size and disk buffer pool allocator behavior 2016-03-06 16:14:55 -05:00
arvidn 2e7e679eed simplify client_test shutdown and make it keep logging as saving resume data 2016-03-03 01:20:15 -05:00
arvidn 021375c07f extend tutorial and finish bt-get example 2016-02-28 15:44:59 -05:00
arvidn 296a38efba improve windows output of client_test 2016-02-27 19:40:04 -05:00
arvidn ac2916c426 enable disk cache pool allocator by default. fix ansi escape code conversion in client_test on windows 2016-02-27 17:42:31 -05:00
arvidn 0b173c6651 merged RC_1_1 2016-02-23 23:48:29 -05:00
arvidn c919c63ca3 extend the tutorial 2016-02-23 00:54:14 -05:00
arvidn 0e805d7d06 fix client_test for new read_resume_data functionality 2016-02-22 00:23:31 -05:00
arvidn a725a3ded2 make client_test use the new read_resume_data function 2016-02-20 13:26:16 -05:00
arvidn 9f45156b5a Merge branch 'RC_1_1' 2016-02-18 21:46:46 -05:00
arvidn a675a749e0 remove 'full' allocation from client_test 2016-02-18 20:42:15 -05:00
arvidn b2a6e8bf06 make client_test expose the new binding options 2016-02-12 15:46:24 -05:00
arvidn 645b121df6 deprecate resolve-countries 2015-12-14 21:32:30 -05:00
arvidn 60df41cd85 fix save_resume_data in client_test and make torrent a bit more instrumentable. This could be greatly simplified if resume data would not have file_sizes and timestamps 2015-11-29 20:31:57 -05:00
arvidn fd3b53604c add new piece picker logging alert category 2015-11-29 08:25:55 -05:00
arvidn 06b648203f clean up use of error categories 2015-11-24 00:50:51 -05:00
arvidn ebb9fdaf54 add error_code to torrent_status instead of error string 2015-11-05 20:43:23 -05:00
Jakob Petsovits a3316ec49d CMake build: Asio is now used header-only, remove definitions saying otherwise. 2015-11-02 14:24:56 -05:00
arvidn 5c96a35a66 scanf fix in client_test 2015-10-04 10:57:12 -04:00
arvidn b628692223 separate out announce_entry and torrent_status into their own headers 2015-09-18 08:08:08 -04:00
arvidn 17c5759829 disable warning for unused command line argument and fix warnings. remove redundant travis build config. use new preprocessor on clang to avoid warnings 2015-09-06 22:55:41 -04:00
arvidn 3018546b37 fix warning 2015-08-22 01:22:04 +02:00
arvidn b7b0dafcca fix some warnings 2015-08-21 10:05:51 +02:00
arvidn 7f695f05d5 use boost.asio as headers only library again (simplify builds and hopefully fix shared linking of python module on gcc linux) 2015-07-27 23:09:24 -07:00
Jakob Petsovits a699cfae7e CMake build: Require Boost.Random from FindLibtorrentRasterbar.
Also remove outdated requirements for Boost.Thread and
Boost.DateTime linking.
2015-07-17 20:59:19 -04:00
Jakob Petsovits 8fe8a843e5 CMake build: Use ${CMAKE_STATIC_LIBRARY_SUFFIX} to look for .lib on Windows. 2015-07-17 20:13:14 -04:00
Jakob Petsovits baa9f86407 CMake build: specify examples sources manually instead of globbing.
This is necessary because the client_test example spans multiple
files, so creating an executable for each one separately doesn't
make so much sense anymore.
2015-07-17 20:13:14 -04:00
Arvid Norberg 6241958aee Merge pull request #27 from Chocobo1/py2
Project cleanup
2015-07-12 10:58:30 -04:00
Chocobo1 a59d1d3240 Add/fix shebang in python scripts, add execute permission (linux), remove whitespace/tabs at end of line 2015-07-12 14:24:01 +08:00