launchpad-dev team mailing list archive
-
launchpad-dev team
-
Mailing list archive
-
Message #03394
Re: API issue moving branches
On Thursday 13 May 2010 15:25:54 Francis J. Lacoste wrote:
> I don't think Bjorn and you are agreeing.
>
> From my understanding what you call 'internal model', I would call
> 'implementation details'. Put another way, I think everything you describe
> as internal model should have _ in front of their name. In other word,
> these API shouldn't be called outside the class. (And much less exported
> as webservice).
>
> API have versioning support now, which makes some form of transition
> possible.
I agree in that we can hide implementation details like that, but that's not
what I mean by internal model.
What I am talking about is the model (or schema) itself, not the methods on
the model objects. We expose the model very directly, which makes it very
hard to add versioning for model changes without some additional abstraction
layer.
Consider the situation where we have a model object "A" in version 1.0 and we
want to split it into "B" and "C" for version 1.1.
I don't see how it's currently possible make big changes like that without
breaking API users, unless I am missing something?
Follow ups
References