JSONFeed icon indicating copy to clipboard operation
JSONFeed copied to clipboard

Problems with "hubs" feature

Open JKingweb opened this issue 4 years ago • 1 comments

There's a few problems I see with the hubs feature. Below are some points for discussion:

  1. The hub types are ill-defined. The spec suggests ("such as") "WebSub and "rssCloud" without marking these up as sample text, so it's not evident these are to be taken literally as string values i.e. "rssCloud" and "WebSub"
  2. Even if the types are taken literally, capitalization is inconsistent. I realize this is because that's how the schemes refer to themselves, but it gives authors of future hub schemes no guide on how a future type should be named
  3. Using this for rssCloud is impractical because rssCloud is actually three related schemes using SOAP, XML-RPC, or application/x-www-form-urlencoded payloads. Though clients can do HEAD requests to figure out which payload(s) the endpoint will accept, RSS technology isn't exactly known for its robustness; I doubt any rssCloud clients (assuming any still exist?) actually do this.
  4. The structure of a hub object has no formal description, unlike every other object

JKingweb avatar Mar 05 '20 17:03 JKingweb

These are my very non-authoritative opinions as the author of an implementation of a rssCloud server. I think these problems can be solved with a little extra documentation. Feel free to ignore me 😄

  1. I think it's fine that these values are not pre-defined. It should be up to the publisher and the subscriber to know what they want to support.
  2. If there is no specification about capitalization I'd treat the type field as a case insensitive string so "rssCloud" or "rsscloud" or "RssCloud" would all be the same.
  3. It's not really an issue for rssCloud because you're just specifying where to subscribe to notifications so you'd do http://rpc.rsscloud.io:5337/pleaseNotify or xmlrpc://rpc.rsscloud.io:5337/RPC2;rssCloud.pleaseNotify. As far as I know there are no implementations that currently support SOAP. Neither Dave's original rssCloud.root or my node server support it.
  4. It looks like the spec says "Each object has a type and url, both of which are required." If you want the fields described further that's fine but I can't imagine they would be anything other than strings.

andrewshell avatar Mar 15 '20 03:03 andrewshell