Archive for August, 2009

GSOC KGet — wrapup

August 18, 2009

Now that GSOC is over everyone expects to see the results, so here you go. 🙂

The last few weeks were mostly filled with improving the newly added features and adding some small features here and there. I was able to fix lots of bugs in my code I sometimes experienced and hope that the user experience won’t be that bad. 😀

KGet now supports:

  • multisource downloading
  • changing the destination of a download while downloading
  • adding/removing mirrors to downloads while you download and changing the number of connections to the mirrors
  • adding checksums to downloads and manually verifiying them
  • automatically searching for checksums on the server (by e.g. appending .md5 to the url)
  • automatically using present checksums to verify a download that finished
  • repairing a broken download (redownloading foul parts or whole download)
  • Downloading a metalink you can define which files should be downloaded and which not, can be changed later in the transfer settings
  • some data is passed from Metalink to Nepomuk, like Publisher etc.
  • MetalinkCreator –> an assistant to create metalinks, currently it is based on the most recent Metalink Draft (v. 12 — not all parts are supported in the GUI yet) so it is bound to change — I’ll probably show a video of the metalinkcreator in action once I have time
  • the parser used to parse the metalink files does also work with “old” metalink-files (v. 3.0 2nd edition) so it could be used to convert them to the new format

Having digital signatures support and a Bittorrent-TransferDataSource did not made it in though.

That’s a wrapup of what I did, I probably forgot a lot as it has been so much code: the diff has ~18.000 lines, more than 10.000 lines have been added a lot of comments, ui stuff and some code ;). [1] Interested people can look at the code here [2], an instruction can be found on the KGet-Ml in the “GSOC — Review”-thread. And yes, in fact it is planned to push all that to trunk, currently the code is being reviewed and changes are made to it.

What will the future bring? I am going to continue to work on KGet and plan to add some features, though the pace of changes will be a little slower now.

Thanks to my mentor Urs and to Lukas who helped me on my way along.

PS.: I’m a lazy blogger. I like writing code more than writing about writing code.

[1] Yeah, I’m proud of my work. 🙂 I didn’t think that I would end up writing so much.