Hello,
It seems that plugin discussions don't create passionate debates... It's
a pity because it is really a good feature, and since from what I
understood taht the couchdb core might be reduced in the future, plugins
will be always used more.
Maybe creating a plugin is not a in itself problem. I watched the
interesting talk[1] from Jason Smith which is a very good start. And it
made me realize that writing a plugin is in fact equivalent to writing a
bit of code in couchdb core.
So what I need is to learn what a couchdb developer knows : couchdb
architecture and API.
Is there any resource online where I can learn this stuff ? A quick
start guide to develop in couchdb (especially for people who never used
erlang before) ? Or is the only way to dig inside couchdb git tree and
try to understand ? Before doing this, I want to be sure I won't loose
too much time. So please people who entered the couchdb project later,
how did you reach your level ?
Thanks for your help,
Franck
[1]
http://www.youtube.com/watch?v=saNjXpE1h1Y&list=PLJa_sXrJUZb8ZuaQShicg6oWI682Bavjb&index=9
On 05/12/2013 19:05, Franck Eyraud wrote:
Hello,
I cross post this since it seems better to follow up on the developers
mailing list.
I started to work from Jan's my-first-couchdb-plugin to adapt the LDAP
feature from chao into a couchDB plugin.
https://github.com/franck-eyraud/ldap-auth-couchdb-plugin
Up to now, I managed to do it, by adding an auth handler.
But in order to develop a plugin, I would need to know where it is
possible to hook to change behaviour.
I'd say that a list of pluggable points of the code, from people who
know very well the couchdb architecture, would be very useful. I
didn't find such resource on the web, and I have the feeling that it
doesn't exist. Would it be possible to have such a list, even in draft
version just to begin. I can then contribute to the documentation to
help future plugin developers.
Up to now I only counted three public plugins, including two real ones
: CouchPerUser, GeoCouch and MyFirstCouchdbPlugin (and the new born
LdapAuth)
I would like to know for instance if features that act more deep
inside the couchdb engine, such as the validate_doc_read function,
could be made as plugin ?
Thank you for your help,
Franck
On 15/09/2013 14:45, Jason Smith wrote:
Hi, Aurélien.
I think LDAP is a great candidate to convert to a plugin. The
foundation is
there however it is still more developer-focused than user-focused.
Probably the best starting place is Jan's example plugin:
https://github.com/janl/my-first-couchdb-plugin
On Sun, Sep 15, 2013 at 7:38 PM, Aurélien Bénel <[email protected]>
wrote:
No idea?
Any plugin expert out there?
Hi everyone,
In version 1.4, the feature that excites me the most is the plugin
system. I see it as a way to foster innovation on CouchDB, letting
people
test unstable features, without having to weaken the core of CouchDB.
However, I haven't found much on the Web about what can be done
exactly
as a plugin, and how difficult it is to turn a "feature hidden in some
developer’s git repository" into a plugin.
As an example of a long forgotten (yet needed) feature, let's take
the LDAP authentication handler (
https://github.com/chao/couchdb/commits/ldap_auth). Could it be
turned into
a plugin? Would it be easy?
Regards,
Aurélien