It seems like that Hydra and Siren is the most Resty of all, with Hydra being more REST-compliant.
It's a bit funny to call for instance JSONAPI as a REST compliant spec when, in fact, it only provides links in a standardized way. And I think the authors of JSONAPI know that given that the don't mention anything about REST in their specifiction :)
I also like protocols, like Manson, that add hypermedia in a backwards compatible way :)
I think Hydra is better (although a bit more complex) because it separates data from hypermedia and from data model/documetation/metadata/description/name-it-as-you-want. Also Hydra is very good from linking-data side, quite unique in this feature among all other specs.
However, it misses some things from the REST-perspective (or how you name it).
How can I ask only specific fields of a resource?
This is mainly for collections actually: How can I know what operations I can perform in the **attributes**? not in the resources but in the attributes. Or, how can I ask for sorting (when I request a collection) by an attribute (say `username`)? Or, how can I know what operations I can do in an attribute: if there is an `like`-related operation that I can do in strings, if I can do a sum/avg/aggregated_function in a numeric field, if I can find all items in the collection tha have `x` greater or equal `y`.
One thing that I am happy and I agree with is that the current trend is to separate hypermedia and data model from actual data (like GraphQL does).
I will be back with a much more detailed post, still working on the specs.. One thing that I can say is that I am surprised how much road we have to reach automated api clients.. I thought we were closer :P