1. 27 Aug, 2019 1 commit
  2. 17 Feb, 2019 1 commit
  3. 05 Mar, 2018 1 commit
  4. 10 Feb, 2018 1 commit
  5. 15 Jan, 2018 1 commit
  6. 27 Jun, 2011 2 commits
    • Jim Nelson's avatar
      Moved to waf for build system: #3690 · 328683ec
      Jim Nelson authored
      This closes #3690 because waf fulfills that requirement, moving the .c's to a separate directory.  waf also gives us incremental builds, so -j4 is back.
      328683ec
    • Jim Nelson's avatar
      New file naming scheme and organization for the Engine. · 41faa361
      Jim Nelson authored
      The code base is growing much faster than expected, faster than Shotwell it seems (not necessarily line count, but files and necessary organization of the library vs. Shotwell's initial flat directory).  After some thought decided to move to a more standard Vala/GTK naming scheme of all lowercase with dashes for spaces starting with namespace (minus the "geary-", unless the class was in the topmost namespace).  Three motivations:
      
      1. Often confusing when working on code to see three "Folder.vala" in the gedit tabs: one IMAP, one SQLite, and one the interface definition.
      2. This paves the way for waf integration, as right now we're held up using it because it barfs on projects with two files of the same name in different directories.
      3. I find the CamelCase in the file browser becoming hard on the eyes, and this scheme seems a little more browsable.
      41faa361
  7. 24 Jun, 2011 1 commit
    • Jim Nelson's avatar
      Persist messages locally: #3742 · d179cb9b
      Jim Nelson authored
      This completes the heavy lifting of persisting messages locally.  The strategy is that the local database may be sparsely populated, both in the availability of messages in a folder and the fields of a message that is partially stored.  As data is pulled from the remote server it's always stored in the database.  Future requests will always go to the database first, preventing unnecessary network traffic.
      
      Also, this patch will detect when a message is stored in multiple folders on the server.  The database uses soft links from the folder to the message, so the message is stored only once in the database.  This technique relies heavily on the availability and validity of the Message-ID header, but we expect this to be reliable the vast majority of the time.
      d179cb9b
  8. 22 Jun, 2011 1 commit
  9. 16 Jun, 2011 1 commit
    • Jim Nelson's avatar
      Addition of MessageTable and MessageLocationTable toward fixing #3742. · 9221937e
      Jim Nelson authored
      Much of the API between the local and net stores had to be reworked for consistency as well as planning ahead for how messages will be retrieved and stored efficiently.  This work also attempts to keep in mind that other mail sources (POP, etc.) may be required in the future, and hopefully can be added without major rework.
      9221937e
  10. 13 Jun, 2011 1 commit
    • Jim Nelson's avatar
      Fixes message list not updated when folder is selected: #3741 · ac41e926
      Jim Nelson authored
      Engine now uses a master Folder object that synchronizes between the network and the local store.  Also, the Geary.Folder interface was getting ugly to code when the implementation was more than trivial, so moved to standard getters for it.
      ac41e926
  11. 11 Jun, 2011 1 commit
    • Jim Nelson's avatar
      First stab at implementing persistent storage of IMAP data: #3695. · 4b8ac568
      Jim Nelson authored
      This large diff represents a growth of the architecture to persist IMAP data as its downloaded.  When listing folders, a local database is consulted first to immediately feed to the caller.  In the background, network calls fetch the "real" list.  The two are collated for differences which are reported to the caller via signals, who are then responsible for updating the user interface appropriately.  No other synchronization work is represented in this diff.
      
      Note that this breaks functionality: when a folder is selected, no messages appear in the message list.  Fixing this requires more work, and this patch was already large enough.  It's ticketed here: #3741
      4b8ac568
  12. 08 Jun, 2011 1 commit
  13. 07 Jun, 2011 1 commit
  14. 06 Jun, 2011 1 commit
    • Jim Nelson's avatar
      Removed --save-temps from Makefile. · b9836067
      Jim Nelson authored
      --save-temps only speeds up compilation when valac is invoked for compile-only and C compilation and linking are done separately and in parallel.  Since --save-temps leaves a lot of extraneous files sitting around that clutter "git status" (see #3690), removing it from the Makefile.
      b9836067
  15. 03 Jun, 2011 1 commit
    • Jim Nelson's avatar
      Added third pane to display message contents. · 58b4c381
      Jim Nelson authored
      Message contents are now fetched from the server and displayed in the third pane when a message is selected.  Also made session management a bit smarter via ReferenceSemantics.
      58b4c381
  16. 01 Jun, 2011 1 commit
  17. 31 May, 2011 2 commits
    • Jim Nelson's avatar
      Added SelectExamineResults decoder. · 9ac3fd0b
      Jim Nelson authored
      The result of a SELECT or EXAMINE command is now parsed and returned to the caller.  This information is boiled down to the Geary.Folder interface, which adds information about the folder to the object.
      9ac3fd0b
    • Jim Nelson's avatar
      Create ClientSessionManager. · 737f235d
      Jim Nelson authored
      The ClientSessionManager maintains a pool of connections to an IMAP server, reusing them whenever possible.  It allows for multiple folders to be managed and monitored by an application without having to change contexts constantly (which also introduces side-effects, esp. with expunging deleted messages).
      737f235d
  18. 28 May, 2011 1 commit
    • Jim Nelson's avatar
      Added folder list to sidebar. · aa094cb8
      Jim Nelson authored
      geary now has an (unsorted) list of folders in its sidebar.  When one is clicked on the messages in that folder are displayed.  This patch also fixes an issue in the Serializer that wasn't dealing with quoted strings properly.
      aa094cb8
  19. 27 May, 2011 1 commit
    • Jim Nelson's avatar
      Prettier dates and From: labels. Initial GMime integration. · ba81ad43
      Jim Nelson authored
      This adds a VAPI (including generation files and Makefile) for GMime to the repo, which we'll be using extensively to come.  This VAPI is incomplete in many ways, so care should be used going forward.
      
      Also, with GMime now interpreting RFC822 dates, can now pretty-print them.  Prettier From: names also added this time around.
      ba81ad43
  20. 25 May, 2011 1 commit
    • Jim Nelson's avatar
      First pass of UI client in code base. · a581218e
      Jim Nelson authored
      Client code will display a window listing Date, Subject, and From of all messages in inbox.  Username and password must be specified as a command argument.  Note that current IMAP envelope parsing doesn't handle group lists, which means some messages will be skipped over.
      a581218e
  21. 24 May, 2011 1 commit
    • Jim Nelson's avatar
      Added NOOP idling support to ClientSession. · 5021d837
      Jim Nelson authored
      ClientSession can now automatically send NOOP commands as keepalives at a specified interval.  Also, the CommandResponse decoders have been moved into their own directory (they will soon be fertile and multiply).  More work ahead on the FetchResults object, which should be like NoopResults and completely encapsulate all the information returned from a FETCH.
      5021d837
  22. 14 May, 2011 1 commit
    • Jim Nelson's avatar
      Further fleshed out FETCH support. · e56a6a59
      Jim Nelson authored
      Implemented a first stab at buffer management for IMAP literals.  Added FETCH decoding of various RFC822 elements.  Implemented a crude readmail program which will dump the full RFC822 message of any message in a mailbox.
      e56a6a59
  23. 13 May, 2011 1 commit
    • Jim Nelson's avatar
      Expanded and improved FETCH response decoding. · e2d339dc
      Jim Nelson authored
      Library now uses an extensible system for decoding the various structured data that FETCH returns.  This system may be expanded later for decoding other CommandResponses (although FETCH is the command most in need of this).  Also created an RFC822 directory for data structures and code to deal with mail messages and a common directory for code that is used throughout the library but doesn't belong to util as they're "core" classes.
      e2d339dc
  24. 14 Apr, 2011 2 commits
  25. 11 Apr, 2011 1 commit