Micropub Status

tl;dr:

   - #22 <https://github.com/aaronpk/Micropub/issues/22>: Should Micropub
   adopt the ActivityPub syntax for updates? If so, it will need to add new
   vocab to ActivityPub to support the types of edits that Micropub can
   currently make, and at least 3 existing implementations will need to be
   updated. If not, no new action is required, and no changes are required to
   existing implementations.
   - #25 <https://github.com/aaronpk/Micropub/issues/25>: Should Micropub
   allow only JSON requests for update operations? If so, server logic can be
   slightly simpler. If not, clients have the flexibility to use either
   form-encoded or JSON.

Long version:

Here is a summary of the status of Micropub after our last F2F meeting at
MIT.
After the last meeting, we had talked about adopting a new syntax for
Micropub updates and deletes, based off of the ActivityPub syntax. I
started a draft of that here:
http://micropub.net/draft/socialpub/#update However,
in exploring that further, there proved to be some limitations:

   - There is no current ActivityPub syntax for partial updates of an
   object, the entire object has to be replaced. This is too limiting for
   practical applications, since often times a client wants to only affect a
   single property like "tags", and the server doesn't necessarily trust it to
   preserve the rest of the data properly when replacing the object.
   - If we developed a new vocabulary for partial updates in ActivityPub,
   there is then no way to perform multiple kinds of updates in a single
   request. See
   https://github.com/aaronpk/Micropub/issues/22#issuecomment-214231628 for
   some more discussion on that.

In the mean time, there have now been two additional implementations of a
Micropub server that supports updates and deletes other than my own
implementation. They both implemented the current editor's draft
syntax. Feedback
from the implementors has indicated that the current syntax is fine. This
is leading me to believe that the best course of action is to not change
the syntax in the spec.

Separately, there is another discussion about whether or not form-encoded
syntax should be supported for updates, or limit updates to only JSON
requests. It sounds like the implementors so far are all in agreement that
it wasn't a lot of extra work to support both form-encoded and JSON syntax
for updates, but that it would be simpler to only have to support JSON.
More details and discussion here:
https://github.com/aaronpk/Micropub/issues/25

Hope this helps!

Aaron

Received on Wednesday, 4 May 2016 18:45:10 UTC