GSOC Day 76-78 – Copy/Paste, Testing
The past few days, I’ve been working on order copy/paste. I had thought I was done with it, but then Mithro showed me that my old method could lead to strange behaviour if an order was changed while it had been copied. So, back to the drawing board I went.
With a hint in the right direction by Mithro (man, that libtpproto-py stuff is complicated), I eventually managed to fix up the copy/paste. It now uses the __str__method of the order to serialize it, save it, and then reconstitutes it with the fromstr() method of the Header class, applying the __process__ method to get the rest of the order filled out. This is actually quite simple, even though it took me a long time to figure out how to do it.
I then merged in the changes from some previous code reviews, submitted some patches, and went back to Media downloading.
Mithro still isn’t completely satisfied with the way the media downloading works, so I’m going to look tomorrow at his comments and do my best to resolve the remaining questions. Once that’s done, I should be pretty much finished with coding, and I’ll start packaging the client up for release.
I’ve tested the client on Linux and Mac over the past few days, and I have set up a testing environment for Windows. I’ll test on Windows tomorrow.