{"id":21725,"library":"py3createtorrent","title":"py3createtorrent","description":"Command-line tool and Python module for creating torrent files. Version 1.2.1 supports multithreading, trackerless torrents, and bestN trackers shortcut. Requires Python 3.5-3.11. Active development on GitHub.","status":"active","version":"1.2.1","language":"python","source_language":"en","source_url":"https://github.com/rsnitsch/py3createtorrent","tags":["torrent","bittorrent","torrent-creation","cli","module"],"install":[{"cmd":"pip install py3createtorrent","lang":"bash","label":"latest release"}],"dependencies":[],"imports":[{"note":"Common mistake using wrong submodule path","wrong":"from py3createtorrent.torrent import createTorrent","symbol":"createTorrent","correct":"from py3createtorrent import createTorrent"},{"note":"Main class, introduced in v1.2.0","symbol":"Py3CreateTorrent","correct":"from py3createtorrent import Py3CreateTorrent"}],"quickstart":{"code":"from py3createtorrent import createTorrent\n\ncreateTorrent(\n    source='/path/to/files',\n    output='/path/to/output.torrent',\n    trackers=['udp://tracker.opentrackr.org:1337/announce'],\n    name='My Torrent'\n)","lang":"python","description":"Create a torrent file with trackers."},"warnings":[{"fix":"No action needed unless license compliance is an issue; LGPL is more permissive.","message":"License changed from GPL to LGPL in v1.2.0. If you relied on GPL, check compatibility.","severity":"breaking","affected_versions":">=1.2.0"},{"fix":"Install typing-extensions: pip install typing-extensions or upgrade to Python 3.8+.","message":"Python 3.7 and earlier require typing-extensions. Without it, import may fail.","severity":"gotcha","affected_versions":"<1.2.1, Python <3.8"},{"fix":"Upgrade to py3createtorrent>=1.2.1 or set PYTHONIOENCODING=utf-8.","message":"UnicodeEncodeError when printing paths with rare characters. Fixed in v1.2.1b1.","severity":"gotcha","affected_versions":"<1.2.1"},{"fix":"Review piece size if backward compatibility needed; use --piece-size-min/--piece-size-max to override.","message":"Old default piece size maximum (16 MiB) increased to 64 MiB in v1.2.0. Torrents created with older version may have different piece sizes.","severity":"deprecated","affected_versions":">=1.2.0"},{"fix":"Update scripts that always passed trackers; now you can omit them.","message":"Specifying trackers became optional (--trackers flag) in v1.0.0; trackerless torrents now possible.","severity":"breaking","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Run: pip install py3bencode","cause":"Missing dependency py3bencode, though it should be installed automatically.","error":"ModuleNotFoundError: No module named 'py3bencode'"},{"fix":"Install typing-extensions: pip install typing-extensions","cause":"Python <3.8 lacks typing-extensions, but it's not listed as automatic dependency for old Python versions.","error":"py3createtorrent 1.2.0 requires typing-extensions, which is not installed."},{"fix":"Upgrade to py3createtorrent>=1.2.1 or set environment variable PYTHONIOENCODING=utf-8 before running.","cause":"File paths contain characters not supported by terminal's encoding.","error":"UnicodeEncodeError: 'charmap' codec can't encode character"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}