libtorrent with premiere torrent support
Go to file
Arvid Norberg 4b27ad80b8 Merge pull request #159 from arvidn/msvc-14-fix
attempt to fix msvc-14 build on appveyor
2015-09-15 08:08:51 -04:00
bindings fix typos in appveyor.yml. attempt to cut down build times 2015-09-11 23:13:27 -04:00
docs update queuing documentation and regenerate html 2015-09-06 18:14:06 -04:00
ed25519 conform crypt api detection to coding standard 2015-07-04 01:42:33 +02:00
examples 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
include/libtorrent Fix routing_table bucket_size(int bucket) out_of_range logic error. 2015-09-10 17:19:00 -04:00
m4 merge small unit tests to make running the tests quicker. expand the test framework a bit. add ax_boost_random.m4 script to link against boost.random correctly from makefile. 2015-05-30 04:31:23 +00:00
simulation revert appveyor build image 2015-09-15 08:08:00 -04:00
src Merge pull request #154 from thomas-yuan/counter 2015-09-11 21:45:39 -04:00
test fix typos in appveyor.yml. attempt to cut down build times 2015-09-11 23:13:27 -04:00
tools remove parse_hash_fails from tools directory 2015-09-12 09:59:37 -04:00
.gitignore include unit test output in .gitignore 2015-07-17 20:42:30 -04:00
.gitmodules add .gitmodules 2015-08-07 23:19:37 -04:00
.travis.yml fix typos in appveyor.yml. attempt to cut down build times 2015-09-11 23:13:27 -04:00
AUTHORS cleanup root of repository 2015-06-05 23:14:53 -04:00
CMakeLists.txt initial support for disabling proxy for tracker connections 2015-08-29 19:44:54 -04:00
COPYING update copyright year 2015-06-03 05:18:48 +00:00
ChangeLog add unit test for new tracker proxy option 2015-08-30 01:50:33 -04:00
Jamfile disable simulation on travis osx. fix more warnings 2015-09-06 22:55:42 -04:00
Jamroot.jam
LICENSE fix no-deprecated build. extend .travis.yml to build the 3 test configurations too. rename README to README.rst 2015-06-05 02:31:52 -04:00
Makefile.am 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
NEWS polishing, update copyright 2014-07-02 07:17:50 +00:00
README.rst extend pull request checklist 2015-09-07 20:18:23 -04:00
appveyor.yml revert appveyor build image 2015-09-15 08:08:00 -04:00
autotool.sh merged configure fix from RC_0_16 2012-11-19 05:23:46 +00:00
bootstrap.sh merged bootstrap.sh script from RC_0_16 2013-05-29 02:11:15 +00:00
build_dist.sh merged changes from RC_1_0 2014-11-12 16:57:59 +00:00
configure.ac Added missing dependencies to fix examples build 2015-08-12 11:36:29 +03:00
libtorrent-rasterbar-cmake.pc.in
libtorrent-rasterbar.pc.in merged fixes from RC_0_16 2013-09-07 21:27:07 +00:00
setup.py 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

README.rst

libtorrent
----------

.. image:: https://travis-ci.org/arvidn/libtorrent.svg?branch=master
    :target: https://travis-ci.org/arvidn/libtorrent

.. image:: https://ci.appveyor.com/api/projects/status/w7teauvub5813mew/branch/master?svg=true
    :target: https://ci.appveyor.com/project/arvidn/libtorrent/branch/master

.. image:: https://www.openhub.net/p/rasterbar-libtorrent/widgets/project_thin_badge.gif
    :target: https://www.openhub.net/p/rasterbar-libtorrent?ref=sample

libtorrent is an open source C++ library implementing the BitTorrent protocol,
along with most popular extensions, making it suitable for real world
deployment. It is configurable to be able to fit both servers and embedded
devices.

The main goals of libtorrent are to be efficient and easy to use.

See `libtorrent.org`__ for more detailed build and usage instructions.

.. __: http://libtorrent.org

To build with boost-build, make sure boost and boost-build is installed and run:

   b2

In the libtorrent root. To build the examples, run ``b2`` in the ``examples``
directory.

See `building.html`__ for more details on how to build and which configuration
options are available. For python bindings, see `the python docs`__.

.. __: docs/building.rst
.. __: docs/python_binding.rst

pull request checklist
......................

When creating a pull request, please consider the following checklist:

* make sure both travis-CI and appveyor builds are green. Note that on gcc and
  clang warnings are treated as errors. Some tests may be flapping, if so,
  please issue a rebuild of the specific build configuration. (I'm working on
  making all tests deterministic)
* If adding a user-facing feature, please add brief entry to ``ChangeLog``
* Add a unit test to confirm the new behavior or feature. Don't forget negative
  tests (i.e. failure cases) and please pay as much care to tests as you would
  production code.
* rebase on top of master periodically
* if your patch is against the current stable release branch, please also
  forward-poret the patch to master (at the time of this writing, automatic
  merge in git does not work, possibly because the branch was created in svn)
* if your patch adds a new .cpp file, please make sure it's added to the
  appropriate ``Jamfile``, ``Makefile.am`` and ``CMakeList.txt``. If it's adding
  a header file, make sure it's added to ``include/libtorrent/Makefile,am``.