Gnus development mailing list
 help / color / mirror / Atom feed
From: Ted Zlatanov <tzz@lifelogs.com>
To: ding@gnus.org
Subject: Re: gnus-cloud work
Date: Wed, 06 Jul 2016 10:50:17 -0400	[thread overview]
Message-ID: <87lh1eg6s6.fsf@lifelogs.com> (raw)
In-Reply-To: <87shvsj1lg.fsf@lifelogs.com>

On Fri, 01 Jul 2016 21:00:27 -0400 Ted Zlatanov <tzz@lifelogs.com> wrote: 

TZ> Update:
TZ> * newsrc data format changed, new entries have type :newsrc-data and the
TZ>   contents are inlined

TZ> * `M-x gnus-cloud-upload-all-data' will upload all the data, files and
TZ>   newsrc both

TZ> * (this must be run manually for now) `M-: (gnus-cloud-download-data t 1)'
TZ>   will get all the download data and install the newsrc and file data

TZ> Only full uploads/downloads work.

TZ> This is worth another test if people are adventurous, but *make sure you
TZ> back up your newsrc.eld* before downloading the data.

I made a few more tweaks:

* only update if data is newer (can be overriden)
* add `gnus-cloud-interactive' variable to confirm updates (good for testing and paranoia)

The last piece missing is where to hook the upload and download code.

Upload could happen every 30 minutes or every time more than 10 groups
are updated? We have to be careful of race conditions where two machines
are not aware that the other has uploaded "locally newer" data. But
maybe that's OK, if we agree that the typical use case is one user on
multiple machines, not multiple users on multiple machines.

Download... not sure... maybe every time Gnus refreshes all groups with `g'?

Or maybe a background process could continuously monitor IMAP for new
articles in the cloud group? I don't know how that would work from the
Gnus side, but it would be super nice for the user. Any IMAP/nnimap experts?

Finally, currently the sequence number is a local number. Each machine
starts from 1 and walks up to the global max sequence (from the IMAP
articles). I think that's not ideal, because two machines can easily end
up uploading with the same sequence number without careful
synchronization. Global counters are hard to implement. Maybe it's
better to simply use a timestamp string or the raw IMAP article number
as the sequence number. The IMAP article number sequence in particular
is guaranteed by the IMAP server, so I'm leaning towards that. What do
you think?

Once upload, download, and sequence numbers are settled, I'll squash all
the commits and merge this into Emacs master branch.

Ted




  reply	other threads:[~2016-07-06 14:50 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-07  3:11 check mtime of newsrc.eld before saving it Ted Zlatanov
2014-10-07  3:49 ` Eric Abrahamsen
2014-10-14 19:41   ` Ted Zlatanov
2015-01-27  1:40 ` Lars Ingebrigtsen
2015-02-04 11:39   ` Ted Zlatanov
2015-02-04 21:05     ` Steinar Bang
2015-02-04 22:40       ` Ted Zlatanov
2015-05-20 15:53         ` Any cloudy news...? (Was: check mtime of newsrc.eld before saving it) Steinar Bang
2015-06-07 21:28           ` Trying to get gnus-sync working with plink (Was: Any cloudy news...?) Steinar Bang
2015-06-08 16:15             ` Trying to get gnus-sync working with plink Steinar Bang
2015-06-08 16:25               ` Steinar Bang
2015-06-09 10:24                 ` Sivaram Neelakantan
2015-06-09 14:47                   ` Steinar Bang
2016-03-07 14:10             ` gnus-sync work (was: Trying to get gnus-sync working with plink) Ted Zlatanov
2016-05-19 22:45               ` gnus-sync work Dave Abrahams
2016-05-20 17:43                 ` Steinar Bang
2016-05-24 19:17                   ` Ted Zlatanov
2016-05-31 21:33                     ` Dave Abrahams
2016-06-01  5:38                       ` Steinar Bang
2016-06-05 20:27                       ` Dave Abrahams
2016-06-07 18:22                         ` Ted Zlatanov
2016-06-07 19:53                           ` Steinar Bang
2016-06-15 18:55                           ` gnus-cloud work (was: gnus-sync work) Ted Zlatanov
2016-06-17 20:21                             ` gnus-cloud work Ted Zlatanov
2016-06-20 12:21                               ` Steinar Bang
2016-06-20 19:10                                 ` Steinar Bang
2016-06-20 19:56                                   ` Steinar Bang
2016-06-21 15:39                                     ` Steinar Bang
2016-06-21 17:35                                       ` Andreas Schwab
2016-06-21 18:05                                         ` Steinar Bang
2016-06-21 18:52                                 ` Steinar Bang
2016-06-27 14:09                                   ` Ted Zlatanov
2016-06-27 15:07                                     ` Steinar Bang
2016-06-27 15:43                                       ` Ted Zlatanov
2016-07-03 10:10                                         ` Steinar Bang
2016-07-03 17:05                                           ` Steinar Bang
2016-07-05  2:39                                             ` Ted Zlatanov
2016-07-06 21:19                                               ` Steinar Bang
2016-07-07 12:52                                                 ` Ted Zlatanov
2016-06-27 14:08                                 ` Ted Zlatanov
2016-06-30 14:42                               ` Eric Abrahamsen
2016-06-30 15:02                                 ` Ted Zlatanov
2016-07-01  2:00                                   ` Eric Abrahamsen
2016-07-01  4:27                                     ` Eric Abrahamsen
2016-07-01 17:44                                     ` Ted Zlatanov
2016-07-02  1:00                                       ` Ted Zlatanov
2016-07-06 14:50                                         ` Ted Zlatanov [this message]
2016-07-20 12:58                                           ` Ted Zlatanov
2016-07-23 20:27                                             ` Steinar Bang
2016-07-24 13:33                                               ` Steinar Bang
2016-07-24 13:38                                                 ` Steinar Bang
2016-07-24 14:46                                                   ` Steinar Bang
2016-07-25 13:00                                                     ` Ted Zlatanov
2016-07-25 17:42                                                       ` Andreas Schwab
2016-07-26  2:09                                                         ` Ted Zlatanov
2016-07-26  8:15                                                           ` Steinar Bang
2016-07-26 14:14                                                             ` Ted Zlatanov
2016-07-26 18:42                                                               ` Steinar Bang
2016-07-26 18:55                                                                 ` Steinar Bang
2016-07-26 19:46                                                                   ` Ted Zlatanov
2016-07-26 21:19                                                                     ` Steinar Bang
2016-07-27 14:00                                                                       ` Ted Zlatanov
2016-07-27 15:59                                                                         ` Steinar Bang
2016-07-28 13:37                                                                           ` Ted Zlatanov
2016-07-28 17:18                                                                             ` Steinar Bang
2016-07-28 17:41                                                                               ` Ted Zlatanov
2016-07-28 20:50                                                                                 ` Steinar Bang
2016-07-29 20:35                                                                                   ` Steinar Bang
2016-07-29 23:04                                                                                     ` What happenend Gmane? (Was: Re: gnus-cloud work) Byung-Hee HWANG (황병희)
2016-07-30  6:36                                                                                       ` What happenend Gmane? Steinar Bang
2016-07-30  8:40                                                                                         ` Byung-Hee HWANG (황병희)
2016-08-01 16:28                                                                                     ` gnus-cloud work Ted Zlatanov
2016-08-01 19:34                                                                                       ` Steinar Bang
2016-08-02  9:59                                                                                         ` Ted Zlatanov
2016-08-03  7:20                                                                                           ` Steinar Bang
2016-08-03  7:44                                                                                             ` gnus-cloud: Invalid base64 data (Was: gnus-cloud work) Steinar Bang
2016-09-19  0:06                                                                                       ` gnus-cloud work Dave Abrahams
2016-09-20 12:54                                                                                         ` Ted Zlatanov
2016-09-30 18:27                                                                                           ` Dave Abrahams
2016-09-30 18:29                                                                                           ` Dave Abrahams
2016-07-23 20:32                                           ` Steinar Bang
2016-07-24  7:33                                             ` Steinar Bang
2015-02-05  3:13     ` check mtime of newsrc.eld before saving it Lars Ingebrigtsen
2015-02-05  4:08       ` Ted Zlatanov
2015-02-05  4:40         ` Lars Ingebrigtsen
2015-02-05 10:49           ` Steinar Bang
2015-02-05 10:59   ` Ted Zlatanov
2015-02-13  6:25     ` Lars Ingebrigtsen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lh1eg6s6.fsf@lifelogs.com \
    --to=tzz@lifelogs.com \
    --cc=ding@gnus.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).