Bug Fixes:
- The download overlap checking was incorrectly detecting mismatches.
- A bug in the network queue caused frequent crashes.
- A bug in the event timing caused failures after 25 days uptime.
- A stalling issue with TLS connections.
- The search retry timeouts weren't accepted.
- The order of items in the search history was wrong.
- The quick-connect limit wasn't respected causing too frequent
connection attempts during startup.
- Removed incorrect use of SF_NODISKIO flag for sendfile() on FreeBSD.
- Fixed crash that could be triggered by changing the listening port
temporarily to zero.
- iconv() was not used correctly which could cause wrong conversions
for longer strings.
- Generated filenames weren't properly restricted in length which
could cause crashes.
- There was a compile issue on NetBSD caused by namespace pollution.
- Added workaround for the issue that on Solaris only the file descriptors
0..255 can be used for stdio.
Improvements:
- Finished downloads are now seeded for the whole session or until
they are manually purged, if partial file-sharing is enabled.
- Server-side support for Tigertree hashes and THEX thanks to patches
provided by Martijn van Oosterhout.
- Improved spam filters.
* Added GUI option "headless".
* Removed dbus dependency. It's just a gimmick, not worth it.
* Added patch-ab to avoid picking up stuff from /usr/local for example.
Bug fixes:
- Fixed issue when browse host is the only search in the list.
- Reset download buffers on incomplete writes.
- Fixed ever-growing sidebar at each relaunch under GTK1.
- Fixed misdetection of chunk completion, causing undue abortion of downloads.
- Was wrongly showing the source download speed twice in download status.
- Range column was sometimes inexact in downloads.
Improvements:
- Print PFS indication for actively queued entries as well.
- Take buffered data into account when showing download progress.
- Downloads now show how many HTTP requests were made on the same connection.
- Try to reposition the main window correctly.
Configuration Changes:
- Minimum connection timeout is set to 15 seconds.
- Default for "maximum % of slots / vendor" raised to 90.
libintl. Hack around the gettext detection in Configure, I twisted
my mind too much trying to understand the "logic". Just assume that
we have and want NLS. Bump revision.
Changes include:
* Now uses HTTP/1.1, which implies support for persistent connections.
* gtk-gnutella will now monitor whether we're connected to Internet and
slow down its connection requests when it detects the connection was
broken (after a delay of ~3 minutes at most).
* Download swarming is now supported: gtk-gnutella will download different
portions of the same file from many hosts, as long as alternate sources
are available.
* The download mesh (alternate source collection during downloads) is now
used to fill the download queue with more sources.
* Alternate locations can also be passively collected from query hits.
You can enable this in the swarming section on the download config pane.
* Download scheduling was entiretly redesigned to avoid hammering busy
hosts and scale to 5000+ entries in the queue without slowing down the
whole.
* Is now smart about the "push" flag and will try to ignore it if possible,
in case the remote host wrongly set the flag but is not firewalled.
* gtk-gnutella now remembers the files it downloaded and will ignore
further requests to download the same file. It will visually mark those
files, as well as the ones it already shares, by showing them in lighter
color in the search results.
* It is possible to supply to gtk-gnutella your own ignore lists by SHA1
and by name/size but the feature is under-documented.
* Added an "expert mode". Only when this is enabled will gtk-gnutella show
the users some of the most complex settings.
* New Gnutella statistics pane, showing the packets we sent and received,
how many we generated, and the reasons why we drop packets, by packet
type.
* Now understands UTF-8 queries, but does not generate them.
* Fixed important bugs whereby all earlier versions of gtk-gnutella were
unintentionally corrupting the Gnutella traffic!
* Moved away from the public hostcaches and now uses the Gnutella Web
Cache.
* Will now show all upload attempts, not only the ones that are
transferring. If the connection is aborted, the reason is also shown.
* New search stats types: queries by router, whole query.
* "Queries by router" shows how many queries have been recieved from any
node gtk-gnutella was directly connected to.
* "Whole query" shows stats based on the complete query string instead of
individual query words.
* New visual indications via icons in the status bar: whether gtk-gnutella
is rebuilding the library, computing SHA1 of shared files in the
background, and whether we are connected to Internet or not.
KNOWN BUGS/PROBLEMS:
* When changing the directory for incomplete/complete files, all partially
downloaded files recorded in ~/.gtk-gnutella/fileinfo will still be
downloaded to the old directory. You need to manually change the paths
in above file using search/replace and your favourite text editor.
* Sorting order of tables is not perserved across sessions.
* Marking/highlighting of results/downloads/uploads heavily depends on
your GTK theme. Especially most themes do not set fg[ACTIVE] and
fg[NORMAL] to different values.
* There is currently no way to un-ignore a file via the gui. You can
however edit the done.sha1 and done.namesize files in your
~/.gtk-gnutella directory manually. Unignoring via gui is planned for
the next release.