Activity

From 06/26/2009 to 07/25/2009

07/25/2009

06:19 PM Revision ce73da5864aaf286f1e3ddea1dcd83b24a598f12: Cleaned up even more code.
Cleaned up even more code. David Verhasselt
05:52 PM Revision 2dc675c12ec1961bf3912d15ab57c6cb919cd478: Freeing MailBoxes in MailDatabase destructor.
Freeing MailBoxes in MailDatabase destructor. David Verhasselt
05:38 PM Revision 43e7a1fe9119e8fa385cbc56688e4a44b77c7d8e: Fixed mark&sweep of maillinks.
Fixed mark&sweep of maillinks. David Verhasselt
05:27 PM Revision 0ceed0c202b7de3389a613919851960df44c06ca: Cleaned some more code.
Cleaned some more code. David Verhasselt
05:14 PM Revision d71404765213d4f8900ecfbf327cb6c48b0b72d2: Cleaned up some code.
Cleaned up some code. David Verhasselt
04:51 PM Bug #19 (Resolved): INBOX not actual Maildir inbox
Applied in changeset commit:"b7f5549bafc5c03fa1cbaf0b117bf66916782ca2". David Verhasselt
04:50 PM Revision b7f5549bafc5c03fa1cbaf0b117bf66916782ca2: Subfolder INBOX is now Maildir inbox (fixes #19).
Subfolder INBOX is now Maildir inbox (fixes #19). David Verhasselt
04:33 PM Revision d64993ac64f7cc8d983d7f6b6b14f5a91aab4d25: Ignore mail without message-id (fixes #20).
Ignore mail without message-id (fixes #20). David Verhasselt
04:33 PM Bug #20 (Resolved): Fetching message id causes NULL string error
We fixed the error by ignoring the mail, but this problem still spawns issue #21 "If message-id is empty, the mail isn't saved". David Verhasselt
04:32 PM Bug #21: If message-id is empty, the mail isn't saved
Because gmailcc indexes the mails using the message-id, if the message-id is empty, which happens mostly because of malformed mails, gmailcc just ignores it (which we implemented to fix issue #20). Maybe we can try to use other data on this mai... David Verhasselt
04:26 PM Revision fe7e4bfc962ac166f0c65c68f3b047b9dd9daac8: Cleaned-up exit procedure a bit.
Cleaned-up exit procedure a bit. David Verhasselt
04:09 PM Revision d3fc5f9bf6bbee495c9da58031f1d9c4b479aef8: Added some short-options.
Added some short-options. David Verhasselt
04:09 PM Revision e327520fa9bc38d8107265fd7b6b78aa0fc39dbe: Added detection of 'Web Login Required' error.
Added detection of 'Web Login Required' error. David Verhasselt
03:17 PM Bug #16 (Resolved): Rename binary to "gmailcc"
Applied in changeset commit:"b6c846d63a39f29e25ed9cce66a217dcedd9289e". David Verhasselt
03:10 PM Revision b6c846d63a39f29e25ed9cce66a217dcedd9289e: Changed name of binary to 'gmailcc' (fixes #16).
Changed name of binary to 'gmailcc' (fixes #16). David Verhasselt
12:25 AM Bug #20: Fetching message id causes NULL string error
... David Verhasselt

07/24/2009

09:11 PM Bug #7 (Assigned): Invalid credentials not always detected
David Verhasselt
09:10 PM Bug #5 (Assigned): Link with changed <info> not detected
David Verhasselt
09:10 PM Bug #2 (Assigned): Mailboxes aren't removed when a Label is deleted
David Verhasselt
04:55 PM Bug #8 (Resolved): Not all mails cached
Resolved. The discrepancy is attributed to a bug in Gmail's IMAP server. We're only using *get_cachecount()* now anymore. David Verhasselt
04:40 PM Revision 36d16118a17f011b4362a8319f7b411d5ba5ee0e: Fixed cachecount/mailcount discrepancy (fixed ...
Fixed cachecount/mailcount discrepancy (fixed #8). David Verhasselt

07/23/2009

11:00 PM Bug #19 (Assigned): INBOX not actual Maildir inbox
David Verhasselt
11:00 PM Bug #19: INBOX not actual Maildir inbox
The Maildir inbox is the root cur/ map, but gmailcc blatantly copies Gmail's convention of subfolder INBOX being the main inbox. Gmailcc should detect the INBOX subfolder and actually use the Maildir root folder to store the mails in there. David Verhasselt
10:54 PM Feature #18: Recovery after premature exit
I propose the following method: [[Recovery]] David Verhasselt
10:40 PM Feature #18: Recovery after premature exit
If for some reason gmailcc exists prematurely, the database-file is not written, and all mails downloaded are for nothing. There should be a mechanism to resume gmailcc with recovery of work done. David Verhasselt
10:04 PM Revision 967b930daa29301c55f513973e5f9ae7eca6b1f0: Added timer.
Added timer. David Verhasselt
09:58 PM Revision 1167ae7d5a42aad341c92176ec896e8295326c1e: Added parsing of header. The database-format ...
Added parsing of header. The database-format now accepts an indetermined number of comment lines at the beginning of the file, seperated from the rest of the file with an endl. David Verhasselt
09:18 PM Revision fb78919fff14016b309527211d49cd8a5f7e9ea3: Fixed all warnings given during build.
Fixed all warnings given during build. David Verhasselt

07/22/2009

01:36 AM Bug #9 (Resolved): Ask for password/username/maildir in interactive mode
David Verhasselt
01:35 AM Bug #17 (Resolved): Incremental backup not incremental
David Verhasselt
01:34 AM Revision bef998b53fc6ced5a032393b20c9517de2eee753: Clean up to take care of some compiler warnings.
Clean up to take care of some compiler warnings. David Verhasselt
01:30 AM Revision 068e1bdd46353c0db0aa2d8c91c71b08e8795756: Added interactive mode (fixes #9), fixed incre...
Added interactive mode (fixes #9), fixed incremental (fixes #17). David Verhasselt

07/21/2009

11:43 PM Bug #17: Incremental backup not incremental
Previously downloaded mails are not recognized and are downloaded all over again on the next run. David Verhasselt

07/20/2009

03:30 PM Bug #16: Rename binary to "gmailcc"
At the moment the generated binary is still called GMailBackup, which is a throwback to when I first started developing Gmailcc and I didn't have much inspiration. This should obviously be changed to "gmailcc". David Verhasselt
02:51 PM Feature #4 (Resolved): Trying invalid credentials 3 times
Fixed, we had to pass a long, not a pointer to a long, regardless of what the docs said. David Verhasselt
02:50 PM Bug #15 (Resolved): Database-file not found when re-executing Gmailcc
Had to add the specified path before opening "database". The file was saved in the current dir, while it was loaded in the maildir. Fixed. David Verhasselt
02:48 PM Revision 7663798f25212342fe9a1493e809d5f41ed5110e: Database-file is found, incremental backup wor...
Database-file is found, incremental backup works (fixes #15). David Verhasselt
02:47 PM Revision a0d93affee87d310a06eef4ae7d78224ad8fc298: Fixed login trials set to 1 (fixes #4) and tim...
Fixed login trials set to 1 (fixes #4) and timeout to 5. David Verhasselt
02:30 PM Feature #4 (Assigned): Trying invalid credentials 3 times
Reopening, the fix made the problem worse. Even though we set it to 1, it now tries 10 times before giving up. David Verhasselt
02:22 PM Bug #15: Database-file not found when re-executing Gmailcc
The database-file is not found when Gmailcc is executed after a succesful backup. This means an incremental backup is impossible and Gmailcc downloads all the messages again. David Verhasselt
12:19 PM Bug #13 (Resolved): Out of Memory
The garbage collecting fixes this issue. David Verhasselt
01:10 AM Feature #4 (Resolved): Trying invalid credentials 3 times
David Verhasselt
01:01 AM Revision 41f6ded8cdab3b6ae8e9de108342a156b9bf0d7a: Added garbage collecting. Fixes #13. Added ga...
Added garbage collecting. Fixes #13. Added garbage collecting of the TEXTS after every mail, and of the ENVELOPE after every 20 mails, which is the same number that are prefetched. David Verhasselt
12:30 AM Revision c11ae79eaa9003c2743cd31d59d0820f31abb24a: Set login trials to 1 (fixes #4), set timeout ...
Set login trials to 1 (fixes #4), set timeout to 5 (instead of 75). David Verhasselt

07/19/2009

10:57 PM Bug #13: Out of Memory
After downloading a lot of mails Gmailcc sometimes crashes with an "Out of Memory" error: ... David Verhasselt
10:54 PM Feature #12: Automatically subscribe to Labels
When creating a new Maildir from a Gmail account, and opening said Maildir through an IMAP server, the client won't see any folders because he won't be subscribed to them. IMAP servers save settings like the subscribed folders in setting-files ins... David Verhasselt
10:13 PM Bug #10 (Assigned): An error while fetching body is not noticed
Apparently fully empty mails including headers do exist, so this issue is re-opened. David Verhasselt
10:09 PM Revision e35fdade90851f2ece23c8ea412fc2773822b549: Fixed detecting of empty mails to fix #6. App...
Fixed detecting of empty mails to fix #6. Apparently an empty header+mail does exist, so I took out the check again to fix #6. This opened issue #10 again. David Verhasselt
09:19 PM Revision 2091a65ced25e4358a29f8173980f183fccf7fed: Replaced mail_fetchheader and mail_fetchtext w...
Replaced mail_fetchheader and mail_fetchtext with mail_fetchbody to fix issue #10 and #11. David Verhasselt
09:15 PM Bug #11 (Resolved): Attachments only partly saved
Replacing *mail_fetchheader* and *mail_fetchtext* with *mail_fetchbody* with an empty section designator ("") makes the server return the full, non-truncated mailbody. Fixed. David Verhasselt
09:08 PM Bug #11 (Assigned): Attachments only partly saved
Turning on debugging telemetry in c-client showed us the size of the mail transmitted by the Gmail IMAP server was actually the size of the trucated mail. This means the error is caused by the server and not our application. David Verhasselt
09:04 PM Bug #10 (Resolved): An error while fetching body is not noticed
To fix issue #11 we replaced *mail_fetchheader* and *mail_fetchtext* with *mail_fetchbody* which returns one string containing both header and mailbody. This function also returns an empty string when an error has occured, but header+body will nev... David Verhasselt
08:59 PM Bug #6 (Resolved): Gmailcc doesn't backup all the mails
Seeing an empty mailbody as an error was the cause of this bug. I changed the code so that this is not the case anymore. Fixed, but spawned issue #10: "An error while fetching body is not noticed". David Verhasselt

07/18/2009

05:36 PM Bug #11: Attachments only partly saved
Attachments always have very low sizes, like 60 bytes. This is probably because we handle the body as a null-terminated string. If the attachment contains the NULL-character the string will end there. David Verhasselt
04:04 PM Bug #6: Gmailcc doesn't backup all the mails
This error is probably (partly) because an empty mailbody is taken as a sign of a broken connection (as per c-client docs). Empty mails therefor abort gmailcc. David Verhasselt
04:02 PM Bug #10: An error while fetching body is not noticed
To fix issue #6 we disabled aborting on error while fetching the body of an email. This can be fixed by creating a "check for errors" function to test if an error has really occured and test it each time we receive an empty string from mail_fet... David Verhasselt
03:55 PM Bug #9: Ask for password/username/maildir in interactive mode
Instead of having to set password, username and maildir with options when executing gmailcc, check if a terminal is available, and ask the user for them. When inputting the data this way it isn't saved in the shell-log, which might be a security r... David Verhasselt
03:51 PM Feature #4: Trying invalid credentials 3 times
Use the *mail_parameters()* function with option *SET_MAXLOGINTRIALS*. David Verhasselt
02:55 PM Revision 0976cb724eef163102ffd9046ef8914e9299936f: Added errors to finalize(), no error on empty ...
Added errors to finalize(), no error on empty body to try fix issue #6. David Verhasselt
02:01 PM Bug #8: Not all mails cached
Lucas encountered this problem. His /All Mails contained 12246 messages (client.count_messages) but only 12195 were cached (client.get_cachecount) David Verhasselt
02:00 PM Bug #8: Not all mails cached
When trying to cache all the mails in a mailbox, it's possible not all mails are cached: ... David Verhasselt
01:45 PM Bug #7: Invalid credentials not always detected
When using username "david@crowdway" instead of "david@crowdway.com" gmailcc didn't detect the invalid credentials error. It was like it was opening multiple streams: it got "LOGIN already in progress" errors when retrying. ... David Verhasselt
01:33 PM Bug #6: Gmailcc doesn't backup all the mails
Some people's backups contain merely a part of all their mails. Some have discrepancies as large as 1GB on 1100MB mails. David Verhasselt

07/17/2009

09:58 PM Revision 63732c6bfb57c940c01c645f66403fe75916f172: Added makefile for easy building (generated by...
Added makefile for easy building (generated by Eclipse). David Verhasselt
02:29 PM Bug #5: Link with changed <info> not detected
If the backed up maildir is actively used by an IMAP-server, when a message's status is changed (e.g. from "new" to "read") the <info> part of the filename is updated to reflect the new status. This means gmailcc doesn't have the correct linkname ... David Verhasselt
02:19 PM Revision 92e16dba06ed232a3a87427a377d0a372a661a55: Moved some TODO items to Issues, cleaned up so...
Moved some TODO items to Issues, cleaned up some comments. David Verhasselt
01:52 PM Feature #4: Trying invalid credentials 3 times
You should check if there's a method to cancel a pending connection from inside mm_log, where the event "invalid credentials" is generated. David Verhasselt
01:51 PM Feature #4: Trying invalid credentials 3 times
If the user enters invalid credentials, gmailcc tries to log-in using the same credentials 3 times, which is completely redundant because after the first time the credentials won't become valid all of a sudden. David Verhasselt
01:48 PM Feature #3: Restore backup to Gmail
Gmailcc should be able to restore the backed-up mails back to Gmail. David Verhasselt
01:47 PM Bug #2: Mailboxes aren't removed when a Label is deleted
At the moment gmailcc doesn't check if a mailbox should be removed because a label doesn't exist anymore. David Verhasselt
01:45 PM Feature #1: Back-up mails in Trash and Spam
Right now only one primary inbox is downloaded, namely [Gmail]/All Mail. [Gmail]/Trash and [Gmail]/Spam are both primary inboxes as well and should be downloaded seperately. David Verhasselt

07/16/2009

09:55 PM Revision b25e9c4727c0e786b4f83382587076b2956e57bc: Updated the name of the application to Gmail C...
Updated the name of the application to Gmail Carbon Copy. David Verhasselt
09:50 PM Revision 18a948f8ac728685347358d394d541e244372d8a: Added a todo on link syncing.
Added a todo on link syncing. David Verhasselt
01:44 AM Revision 6370ee2d22ca50dc83bea5ef5ba0b3b7f99acb25: Fixed filesystem problems, changed from symlin...
Fixed filesystem problems, changed from symlinks to hardlinks. Fully working version. David Verhasselt

07/15/2009

07:32 PM Revision f69c5f9b6bd0ff20f6c94aa81e07d2d697248ba2: Fix (2) for simultaneous connections, now recy...
Fix (2) for simultaneous connections, now recycles previous stream for faster connecting. David Verhasselt
06:33 PM Revision b71174357ca6cfeaa032fb6a96fd4022b4e9ccc0: Added cur/new/tmp (Maildir), fixed streams bei...
Added cur/new/tmp (Maildir), fixed streams being left open. David Verhasselt
04:05 PM Revision 0033d6d0cd8ea47f08313085ba452bc3da33adf9: Added Exceptions. Converted authing to excepti...
Added Exceptions. Converted authing to exceptions. David Verhasselt
03:42 AM Revision 5cae8796c3a231932aa3dd00f8b4c28baf411dd2: Added some filesystem checks + directory creat...
Added some filesystem checks + directory creation before loading the Database. David Verhasselt
02:10 AM Revision 39ee713f490e7ca8cb667481223dd1038d1313cb: Cleaned up some logging in Client, added detec...
Cleaned up some logging in Client, added detecting of invalid credentials. David Verhasselt
01:17 AM Revision 6f5c7059c9d853dfd02718785213a4b4b3f93864: Converted some prints to Log-outputs, added so...
Converted some prints to Log-outputs, added some config parameters. Started to convert some prints and cout-outputs to use the Log, with the correct level and some better formatting. Also added some config-parameters ready for use: - username ... David Verhasselt

07/14/2009

02:52 PM Revision c2279204bbc777f6e8a3ea263d141b12994f5f17: Log class works completely. The log class is ...
Log class works completely. The log class is finally complete. It works and one can use it like I intended though, however, manipulators don't work yet (see branch exp-manipulator-log). David Verhasselt
03:18 AM Revision 789699a453e5ce77a8240bd6f7a3960bed4425fc: Advanced Logger, will add manipulators next. ...
Advanced Logger, will add manipulators next. The logger is more advanced now but I'm having trouble checking for endlines, which is critical to detect a new line. I will add support for manipulators next which should resolve the impasse. David Verhasselt

07/13/2009

09:02 PM Revision fcc38527ab35687b027f07d5b485c4ebaa0eea06: Initial commit
Initial commit David Verhasselt
« Previous
Next »
 

Also available in: Atom