Hey all,

So, the view changes PRs have been hanging out for a bit (review welcome!)
but things have changed a fair bit since I last emailed wider dev
community. Bob's had a chance to do a bit of review (thanks Bob!) and
voiced his preference for there to be a single view changes row returned in
the response body for each sequence changed (rather than for each seq-key
pair changed). So, that would mean returning the keys added and removed
from the index on each row rather than one key per row. Initially, I
thought a format like:

{"id": "docid", "add": [{"key": "value"},{"key":"value2"}], "remove":
["key_a", "key_b"], "seq": 5, "changes": [{"_rev": "1-abcdef"}]}

(Note: "add" is a list of {"key": "value"} objects rather than a single
multi-KV object because duplicate keys can be emitted in a single change)

Though I realized that keys can be non-strings, which would make that
return format invalid JSON. So, what I'm currently going with is:

{"id": "docid", "add": [["key", "value"],["key", "value2"]], "remove":
["key_a", "key_b"], "seq": 5, "changes": [{"_rev": "1-abcdef"}]}

I can see why one might find this esoteric/yucky, so I thought I'd express
the reasoning and ask for some input/alternatives. So, does anyone have
thoughts/preferences?

In other news, I'll be rebasing/squashing soon to remove some less-useful
commits, but after that I think it'll be mergeable. If anyone feels
comfortable to delve into the changes, I'd appreciate some feedback (and
hopefully some +1s).

Thanks!
Ben

Reply via email to