GithubHelp home page GithubHelp logo

Comments (4)

gauteh avatar gauteh commented on August 16, 2024

Yup, a lot has happened since that documentation was written.. I'd suggest starting from mbox or maildir and take it from there (mbox is probably the easiest). @hsanson has been experimenting with a GMail source.

from sup.

ppetr avatar ppetr commented on August 16, 2024

Thanks for help. To clarify, my aim is to use sup with GMail on multiple computers with locally cached messages. For this to work correctly I need to synchronize labels back to GMail. Since this seems problematic with maildir, my idea is to:

  • Store emails in a SQLite database. This way I'll get ACID properties for free, as well as the possibility to add additional information to messages, such as labels. Another bonus are simple backups - everything is in one file.
  • Write a simple GMail-IMAP synchronization tool that only downloads messages from All mail to the database and synchronizes labels back using GMail extensions. (There could be some time limit like
    "download only messages newer than 1 year or so.)
  • Modify sup so that it can use this SQLite store and store (or copy) labels into it.

This also solves the awkward intermediate step when using OfflineIMAP that labels are first converted into IMAP folders, downloaded locally to multiple folders and then again converted to labels for sup (and sup needs to check multiple folders). Using instead one big folder that understand labels seems much cleaner.

(Perhaps it would be worth to store GMail thread ID too?)

from sup.

gauteh avatar gauteh commented on August 16, 2024

Hi Petr,

Take a look at Horacio's work, he has gotten pretty far doing just that!
But some of the label stuff can be very slow for large volumes atm.

His gmail.rb is well-written and relatively easy to understand:
https://github.com/hsanson/sup/tree/gmail_source

His last message to sup-devel:
http://rubyforge.org/pipermail/sup-devel/2013-July/001415.html

Also, feel free to sign up to the devel mailing list:
http://rubyforge.org/mailman/listinfo/sup-devel

or the users list, sup-talk: http://rubyforge.org/mailman/listinfo/sup-talk

Regards, Gaute

On 29. juli 2013 09:44, Petr Pudlák wrote:

Thanks for help. To clarify, my aim is to use sup with GMail on
multiple computers with locally cached messages. For this to work
correctly I need to synchronize labels back to GMail. Since this
seems problematic with maildir, my idea is to:

  • Store emails in a SQLite database. This way I'll get ACID
    properties for free, as well as the possibility to add additional
    information to messages, such as labels. Another bonus are simple
    backups - everything is in one file. - Write a simple GMail-IMAP
    synchronization tool that only downloads messages from All mail to
    the database and synchronizes labels back using GMail
    extensions
    .

(There could be some time limit like "download only messages newer
than 1 year or so.) - Modify sup so that it can use this SQLite
store and store (or copy) labels into it.

This also solves the awkward intermediate step when using
OfflineIMAP that labels are first converted into IMAP folders,
downloaded locally to multiple folders and then again converted to
labels for sup (and sup needs to check multiple folders). Using
instead one big folder that understand labels seems much cleaner.

(Perhaps it would be worth to store GMail thread ID too?)

--- Reply to this email directly or view it on GitHub:
#113 (comment)

from sup.

gauteh avatar gauteh commented on August 16, 2024

Fixed in #114.

from sup.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.