Add wrapper around the stream passed to the loggers streamhandler
when no log file is specified. Console in interactive mode now
ignores the log output with no logfile specified.
* Testing the torrent with other bencode libs doesn't raise exceptions
so just revert the 'small fix' applied in b193d87499.
* Add BTFailure exception so bdecode issue can be caught in deluge code.
* Move Private label to Trackers Tab.
* Move Owner to Options Tab with a future plan for a dropdown box
to change ownership.
* Put the torrent status message into the progress bar.
* Remove duplicate Shared label in Details Tab.
* Details Tab allow more horizontal room for long folder paths
and fix horizontal scrolling.
* Use print function
* Fix except as statements
* Remove old twisted 8 code
* Remove empty docstring
* Refactor try statement to only contain the relevant import and
disable pylint import msgs.
* Use flake8 noqa and pylint comment and drop pyflakes workarounds.
The builtin cmp() and the __cmp__() special method is no longer used in Python 3, instead we use functools.total_ordering decorator and the __lt__/__eq__ special methods to get the same effect.
* Replace the uses of long with int.
* Replace im_func with __func__ as it has been provided for Python 3 forward-compatibility.
* Fix next/__next__ for Python 3 compatibility.
* Remove the long number literal
* Ensure freespace() returns int
To make the code more Python 3 compatible, I've made a few changes to how we handle keys() or iterkeys() calls on dictionaries. All functionality should remain the same.
* Remove the use of .keys() or .iterkeys() when iterating through a dictionary.
* Remove the use of .keys() when checking if key exists in dictionary.
* Replace dict.keys() with list(dict) to obtain a list of dictionary keys. In Python 3 dict.keys() returns a dict_keys object, not a list.
* Use markup in gtkui to reduce font size of displayed units.
* Reduced statusbar item sizes using markup and <small> tag. Provides an
interim solution to #1326 and has reduced width from 930px to ~600px.
* Integer value for Progress bar value in Peers and Files Tabs.
* Remove trailing zeros for Pieces size in Details Tab.
* Change position of Share Ratio in Status Tab.
* Increase minimum width of column from 10px to 20px for listview.
* Use shortform units e.g. Columns, Title speed, Status tab, Status bar.
* Use less precision displaying values in columns.
* libtorrent >= 1.1 dropped support for GeoIP so this adds support
again using MaxMind GeoIP Legacy Python Extension API.
For reference it is known by the following package names:
* Maxmind: geoip-api-python
* Linux: python-geoip
* PyPi: GeoIP
* #2133 Add flags for port reuse and disable binding to system port.
* #2122 For random port, use single port and store it for reuse.
* #2343 Fix 'Invalid Arg' from listen_on, likely due to whitespace as interface value.
* Consolidate listen_on and outgoing_port into single '__set...' methods.
* Copy-pasting from web page can include extra space at end of string.
* Also make minor change to populate the magnet name with infohash
for nicer UI display.
* Ensure all file descriptors are closed. Using the with statement ensures
closure.
* The main problem was with thousands of unclosed file desciptors from
tracker_icons mkstemp.
* Use a prefix 'deluge_ticon.' to identify created tracker_icon tmp files.
When installed to the system, not using .app, error is raised on startup
as nsapp_open_file is ignoring Deluge-bin but not deluge or deluge-gtk for
potential 'filename' when connecting NSApplicationOpenFile.
Due to the nature of passing a command and args to cmd.exe and then
to a batch file in Windows any ampersands in execute args need to be
double-escaped so prefixing with tripe-caret (^^^&) is the fix for this.