[tahoe-lafs-trac-stream] [tahoe-lafs] #1732: consider changes to webapi "Move" API before release

tahoe-lafs trac at tahoe-lafs.org
Thu Mar 21 18:20:49 UTC 2013


#1732: consider changes to webapi "Move" API before release
-------------------------------+-------------------------------------------
     Reporter:  warner         |      Owner:  warner
         Type:  enhancement    |     Status:  new
     Priority:  critical       |  Milestone:  1.10.0
    Component:  code-          |    Version:  1.9.1
  frontend-web                 |   Keywords:  forward-compatibility blocker
   Resolution:                 |
Launchpad Bug:                 |
-------------------------------+-------------------------------------------

Comment (by warner):

 I mentioned to zooko this morning that I don't think I'm picky about this
 API, and am happy go along with whatever everyone else likes. But then I
 thought of two constraints that I think are important:

 * don't remove an existing API (so `t=rename` must stick around)
 * don't add parameters to an existing API that can't be discovered by
 callers, since our webapi practice is to ignore arguments we don't
 recognize

 The latter constraint precludes adding some new argument to `t=rename`
 that would change behavior, because then a new client (who knows about the
 new argument) who submits such a request to an older gateway (who ignores
 the new argument) will get a very different behavior than they were
 expecting. It's the same reason that python functions reject unrecognized
 keyword-arguments: the use of kwargs allows new callees to add new kwargs
 over time, but still get a clear error when a new caller calls an older
 callee, instead of silently ignoring the new arg and doing something
 completely different.

 So I guess that means I *am* picky about it, and I'm voting for a new
 `t=move`. :)

-- 
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1732#comment:35>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list