?

Log in

No account? Create an account

Interface Versions...

« previous entry | next entry »
Nov. 2nd, 2007 | 07:40 pm

Came to a realization tonight that an interface choice I made was probably a bad idea.

Why? I just looked at a new version of what I have been working on and realized that it would have been to encapsulate the return value.

So why is this a problem?

I am wondering if a 0.7 release that changes its principle interface is going to really annoy people... even when the library has not been declared stable yet....

I hate backwards compatibility...

Link | Leave a comment | Share

Comments {2}

dormando

(no subject)

from: dormando
date: Nov. 3rd, 2007 06:34 am (UTC)
Link

They'll deal :)

Reply | Thread

Brian "Krow" Aker

(no subject)

from: krow
date: Nov. 3rd, 2007 07:21 am (UTC)
Link

Yeah, but I hate having to tell people to change their code :)

Right now I am going to either change this:
char *memcached_fetch(memcached_st *ptr, char *key, size_t *key_length,
size_t *value_length, uint16_t *flags,
memcached_return *error);

To be
memcached_result *memcached_fetch(memcached_st *, memcached_result *res);

Or come up with a a new memcached_fetch_result()

This was inspired because of the change in next version of memcached for the cas parameter. A result object would let me hide any number of changes behind a structure with fetch methods.

I've got several users already... and while I have not said "this is stable" I don't like to change code willy nilly on people.

Reply | Parent | Thread