Mising ICouchbaseClient interface?
Hi Guys,
I am building our first site using Couchbase (mostly the memcached support right now) and it all works great but it is difficult to unit test because there is now ICouchbaseClient interface I can mock for my tests. The underlying Enyim.MemcachedClient has an IMemcachedClient interface, so really the Couchbase client should also have the same.
I am probably going to modify my source code tree to add this in, but I would really like to see this supported out of the box for a future release.
What is the process of getting my changes submitted to the official GIT sources for this kind of thing?
The 1.2 client will have an ICouchbaseClient interface. That code will make its way out of Gerrit Code Review next week and into Github. I will update the forums with a thread when that's ready.
-- John
Excellent. I assume the 1.2 client will support both Couchbase 1.8 and 2.0?
That's correct. The 1.2 client is available as a developer preview at http://www.couchbase.com/develop/net/next. The version up there now doesn't have the ICouchbaseClient interface, but it should in a few days... Also note that even though it is backward compatible with 1.8, there is 2.0 specific config that you'd use - it would just never be used by the client.
Thanks! One thing I would love to see added to the official Couchbase .NET libraries is the Enyim memcached providers project. I have not yet compiled it but I know the source for the Couchbase .NET 1.1 library depends on an older version of the Enyim library so it makes it more difficult to get that library and use it for a project.
Having drop in support for using the Memcached caching layers in Couchbase with the ASP.NET caching system is extremely useful for people developing ASP.NET applications (and ASP.NET MVC which we use). I plan to get this going myself, but it would be nice if this was included out of the box with the .NET libraries and that the source code was included in the GIT repository that would depend on the same version of the Enyim library that the Couchbase client is using.
Hellooo? Anyone out there?