MLDonkey Downloads Import Module Development
Development in progress.
Thursday, June 30, 2005
Performance and stability testing on Windows platform
As you'r aware, the Windows port of Hydranode is the one needing most of the work and testing right now. So what's going on right now is long-time testing of Hydranode and it's performance on Windows platform, trying to iron out the remaining bugs and improve the performance where needed.
There are some things that seem to block the main thread at times, for example MetaDb saving can take up to 30 seconds on slow hardware, so optimizations need to be made there. Other thing is temp file allocation, which needs to be moved to WorkThread, since on Windows, allocating the new file takes time (different from Linux, where it's almost instant). This and other Windows-port-related things are the current active topics of development.
Monday, June 27, 2005
When I left to vacatation at the start of this month, a friend told me that there won't be any serious development this month (despite the fact that I returned on 22nd). Sadly, that seems to be holding true. For one thing, I'm still lacking some hardware components in my dev-system, which slows things, there are also some RL distractions and so on.
However, this doesn't mean the project isn't moving. Wubbla has made real nice progress with his HTTP module, theos did nice job at the wiki (moved all dev-docs to wiki, and added initial user-manual pages). And I'v already seen some initial components of Hydranode GUI from our designer, which look promising. Theos and co are also running a very interesting analysis on Hydranode performance, the results of which should be posted to forums soon.
Saturday, June 25, 2005
DownloadList over Core/GUI comm
Had to do several re-organizations in lib_cgcomm test-suite to be able to scale the test-suite well. Some files are now shared between multiple test-apps, and EngineComm class was generalized (the class that deals with networking - not part of lib_cgcomm) into re-usable class.
The second test-app in the lib_cgcomm test-suite is test-download, which - naturally - displays downloadlist, and allows testing related functionality. Today I finally got the protocol stuff, as well as the lib_cgcomm side working properly - here's a screenshot
It definately needs more work, not all data is transmitted yet, and operations cannot be performed yet (in test-search, you can start downloads from search results for example).
The main problems in all this is that I'd like to re-use a lot of Hydranode code in lib_cgcomm, and from that, also in GUI. lib_cgcomm is implemented using same things as the Engine, e.g. Boost libs and STL only, but it doesn't do any networking, and doesn't do any events (all notifications are done via boost::function callbacks). As such, it's pretty standalone, so the choice of Engine code brought into it must be done carefully. For one thing, I'd like to bring in range.h and rangelist.h for range management - those are standalone headers, and the API is generic enough.
Thursday, June 23, 2005
Been doing post-vacation briefings with several people, on the topics of where we go now, in short-term. The bottom line is that I'd like to get Core/GUI comm stuff finished with a week, and then throw together initial GUI in ~3 weeks, so we can release first Beta GUI in second half of July.
Also did some fixes in mod_cgcomm, which fixed multiple consequent searches (over core/gui comm). Searching works fine now, tomorrow moving on to ... we'll see, but I guess downloadlist displaying would be the next logical step.
HTTP module (developed by wubbla
) was also discussed in depth today, including design review, as well as several functionality-related topics. Yes, HTTP module can be fully multi-net capable and do cooperative downloads with other plugins (not implemented yet tho).
Wednesday, June 22, 2005
Back from vacation
Returned from vacation yesterday, and been setting up my hardware (which was lent out while I was away) since then. Main box is back up, support systems are still down, lacking some components (which should arrive in 1-2 week time), so development is somewhat complicated during that time (mainly affects linux port). However, since the current work is on Core/GUI comm, it shouldn't have any big effect on development, since the development happens on win32 mainly anyway.
On the GUI side, everything seems to be going as planned, QT4 RC was releasd on June 10th, and they'r promising QT4 final (GPL'ed on all platforms) at the end of june, as scheduled.
On the web-interface idea, it's still a bit open. I had some rather cool ideas for it, but some of them would require stuff on hydranode server (mainly for ease-of-use and remote-controlling), so they might be dropped if it would put too much load on server. These questions shall be discussed and resolved over the next few days.
Friday, June 03, 2005
Taking a vacation until 21st June
It's been 5 months of nearly 24/7 development since my last vacation in december, and considering our plans for the next 6 months (interface and bittorrent being the major targets), a short vacation is neccesery to get some perspective and regain energy.
During this time, I will not be available on IRC, but I will most likely keep an eye on forums/devcenter once in a while (but don't rely on it).
Madcat, signing off.
Thursday, June 02, 2005
Introducing Hydranode DevCenter
Not many people know that we had online SVN repository browser, bugtracker as well as wiki prior to 0.1 release and the new site launch. However, the old repobrowser, bugtracker and wiki did not live up to the quality required by the new site, so I never added links to them on the site.
Instead, chemical made an interesting discovery some weeks ago - Trac CMS, which provides tracker ('ticket system' in trac terminology), svn repo browser, as well as wiki engine. It was originally mentioned about a week ago, but due to some delays, came online early today (3am). Since then I'v been setting it up further, adding content etc, so now I present you:Hydranode Development Center
My personal favourites: Detailed timeline of all updates
, nicely-formatted checkin diffs
, and oh-so-good ticket system
, which nicely integrates with roadmap
, versions handling etc.
PS: About the communication-topic discussed last night - note taken, a newsgroup/mailinglist will be set up soon.
PPS: I also resurrected the old blog archive
(May 15, 2004 to Nov 30 2004), which is now viewable as read-only archive for those interested in the early months of Hydranode development.
September 2006 Current Posts