Somebody please explain pump.io to me

mray at 2014-07-30T11:13:29Z

There is a debate going on that really matters to me: https://pump.jpope.org/maiki/note/NJJCKEFIQM-5Nk153J1p-w

But for some reason I cannot watch the conversation in pumpa, no can i see my own answer by visiting that page.

This conversation seems awfully locked away in a very untransparent way - at leat to me. Probably I can finally read the whle thread if I login to pump.jpope.org, since that's what i have don in order to post there.

I don't get why my conversations aren't accessible to me on identi.ca or pumpa. Who gets to read my answer after all?

... yes, I'm confused.

Luke likes this.

Doug Whitfield , sazius , ostfriesenmärz shared this.

Show all 18 replies

@mray yes your replies to this thread are being sent to me only, meaning only I am seeing them, not anyone else on pump. (Your last message was sent to me and @Evan , though, since you tagged him causing Pumpa to add him.) If you look in the To/Cc when you reply you should see this. In order for others to see them you need to add either "Public" or "Followers" for example to the Cc field.

The problem stems from the only-thread-originator-gets-notification problem, and how I have tried to solve it in Pumpa. I'll try to explain this problem again:

  1. Person A posts a new major post in pump.io (ie. a new note, not a comment). Let's say this post was directed "Cc: Public", i.e. a publicly readable pump.io message.
  2. Person B replies to this. If he or she uses anything else than Pumpa the client will not fill in the To/Cc fields of the reply, but instead rely on the server doing this. The server will automatically copy the To/Cc of the original post plus add person A in the "To" fields so that person A receives a notification of it. So far, so good. (We'll get to what Pumpa does in a moment.)
  3. Then person C comes along and also replies to the conversation. Since the web UI doesn't really support deeper threads, most clients place this reply as a reply to the original post by A. If person C uses anything else than Pumpa the client again will not fill in the To/Cc fields and rely on the server doing that. The server will do exactly what it did in step 2, i.e. copy the original posts To/Cc (Cc: Public) and fill in person A only in the "To" field. This leads to the situation that only A gets notified of the reply, and not B. This is what you are seeing in the thread in question, when you are not getting notified of new replies by Maiki. Only if you manually open the thread page are you seeing the new replies.

We've known about this issue in the pump.io community for a long time, and I've posted about it many times before, but no global solution has yet been settled on. To try to fix this problem in Pumpa, which is the third party client I wrote, it does something slightly different when posting replies (steps. 2 and 3.). Instead of relying on the server it tries to fill in the To and Cc fields itself. It copies the To/Cc of the original post, adds person A, and then if person C pressed "comment" on person B's reply also adds person B to the To field, thus both should get notifications in step 3. above.

Unfortunately this behaviour by Pumpa doesn't always work as expected, and I'm unsure if it was a good idea in the first place. The problem is, there are cases where the client no longer is able to deduce the To and Cc of the original that it should be copying. Since the user is closing the client and starting it again it cannot have the same information in memory as the server. And if you are e.g. seeing the object you are replying to via someone liking it or repeating it may have lost the original To/Cc information (which is really connected to the posting action not the object, but this is getting to deep details of the protocol). So I believe this may be the problem why your replies to me are not having proper To/Cc's.

I have also tried to make some fixes to Pumpa to improve the situation. You didn't yet answer what version of Pumpa you are using? Just go to Help -> About to check that.

Sorry for the long post, but I don't know how to explain this in a shorter way. I tried the short version, but nobody seemed to understand me :-)

sazius at 2014-07-31T06:01:49Z

OK, since my reply was so freakin' long I made it into a blog post: http://sjoberg.fi/blog/pump-problem.html

sazius at 2014-07-31T07:01:50Z

v.0.8.2: OK, the "good" news is that the problem of your replies going to me only is that it's a bug in Pumpa that has been fixed in version 0.8.3 and later. I'm not sure what to do to get that version into Ubuntu, though. Debian testing has v0.8.3. If you're up for that you could build it from source, there are some instructions on the Pumpa web site.

But this is just a side-issue to the main thing. I wrote some suggested fixes to this issue in my blog post, repeated in this post.

sazius at 2014-07-31T08:16:31Z

@mray Oh and don't despair yet of pump.io. It's still early days and the basic protocol is quite sound and IMHO has great potential. We just need to straighten out these special cases. I think a solution can be found that doesn't require such "hacks" :-)

sazius at 2014-07-31T08:33:46Z