friendica/friendica — pull request #431 by fermionic (2012-08-10 14:29:10+00:00)
Title: Couple of Diaspora fixes

First, move the "Transform tags" code into `bb2diaspora` so that it happens for comments as well (whether or not Diaspora uses tags in comments is up to them).

Second: there was another particular situation where relayable retractions weren't working (for Diaspora). There were a couple of ways of fixing it. One way allows possible simplification of Friendica's code and de-coupling, to a great extent, of the Diaspora handling code from the main Friendica code.

It relies on the fact that Diaspora currently (and historically) doesn't check the author_signature of a relayable if it has a parent_author_signature. Thus, anything that Friendica acts as the final relay for doesn't need an author_signature. We only need it in the "followup" situation, when we should always (?) have access to the private key of interest. (A possible exception to this statement is when someone likes a comment, but the main Diaspora code doesn't support that currently, and there are some other fairly thorny problems with getting it to work for pods using the older code.)

It should be possible to remove a lot of the Diaspora signature handling that Friendica does on the basis of this approach and move almost all the Diaspora handling into the Diaspora library, separate from the rest of the Friendica code. That is my goal, but I'm going about it slowly to avoid introducing a lot of bugs.