I've decided instead to release a minimum viable product for v0.7.0 and
get some feedback from the community, and most importantly some
motivation as well to be able to keep working on magnetico as it
currently feels like a Sisyphean where the development seem to never
going to end...
v0.6.0, overall, tries to make magnetico more stable rather than
introducing new features.
## magneticod
* Removed better_bencode internal fork (but we are still using it so no
loss at performance). This has caused some issues for some users and
this release should solve the issue (e.g. #98).
* General cleanup, performance improvements, minor bug fixes...
* Most notably among all, we improved our still-primitive congestion
control support for BSD-based OSes, including OS X.
## magneticow
* There are no changes in magneticow, but version number is bumped to
stay in-sync with magneticod.
* Removed unnecessary functions such as those that just wraps a standard
library function (e.g. '__random_bytes()' in SybilNode), and those
that are wrongly abstracted (e.g. `cleanup` in __main__.py)
* Created `__build_GET_PEERS_query()` and `__build_ANNOUNCE_PEER()` in
SybilNode to eliminate the cost of calling `bencode.dumps()` in these
critical functions.
* Added some more comments to explain the rationale behind some
decisions in-place.
* Improved our still-primitive congestion control support for BSD-based
OSes, including OS X.
Phew, what an effort it was to ship magnetico out this time!
CHANGELOG
=========
magneticod
----------
* Thanks to @richardkiss' heoric effort, magneticod now is ported to Python's
asyncio (and uses uvloop for further performance improvements).
CPU usage is reduced by 60%, and many older bugs are eliminated: #3, #55, #61
* Switched to better-bencode from bencoder.pyx for performance reasons. CPU
utilization dropped by half.
magneticow
----------
* magneticow is finally became _fast_! Database indexes are created to speed-up
file-list page (i.e. torrent info) and statistics.
Thanks to everyone who were involved in contributing to this release!
Special thanks to @ad-m who has been nagging me day and night to make me
take informed decision, I appreciate that.
Changes are below.
magneticod:
* Performance improvements
* Unregistering WRITE event when possible
* Using files instead of memory for temporary SQLite
objects
* Stability improvements
* Limit metadata size to prevent crashes due to
malicious or malformed answers.
* Flushing metadata buffer while exiting gracefully
magneticow:
* Stability improvements
* Homepage crash due to count functionality when the
database is empty, is fixed.
* Statistics page added, although very slow!