Not to rain on your parade, but 2.0 is in feature freeze, this will have to 
wait for 2.1., but there is no reason that can’t happen shortly after 2.0 :)

Good work everyone!

Best
Jan
--

> On 17 Oct 2015, at 21:20, Harald Kisch <haraldki...@gmail.com> wrote:
> 
> Johs, thank you for testing the amazing features unlocked by ermouth.
> Now it would be great to monk this up to the release of CouchDB 2.0.
> This new feature sets are a great cntribution for the community and all
> couchappers.
> I am very excited about the outcome of ermouth's work. He saw it, figured
> it out what to do, and did it.
> Thank you for this ermouth.
> +100
> 
> On Sat, Oct 17, 2015 at 4:45 PM, Johs Ensby <j...@b2w.com> wrote:
> 
>> Thanks for your efforts, ermouth
>> 
>> I have been playing with it using the community AMI you put up adn it
>> works just great.
>> It is a big step forward for couchapps since it is not possible to
>> use username, or role from userCtx in rewrite rules
>> you can use the users IP address to firewall your system
>> you can redirect from GET to PUT
>> by going from a simple path, pick up username from userCtx, add timestamp
>> and other context info you have a lot to play with
>> doing so by pointing to a _update function expands the possibilities
>> further
>> creating nested rules is really easy
>> using regExp offers another host of possibilities
>> since you can return a http code and body directly, you can skip creating
>> pages for common respons. A simple template function and the
>> this.template[whatever] that is sitting in your ddoc will do in most cases,
>> especially having usrCtx available
>> 
>> What I did was to create a EC2 instannce, redirect traffic on port 80
>> directly to CouchDB 2, set up a few vhosts and their corresponding design
>> documents.
>> I always set up a design document to the the API for my app or system of
>> apps and it feels akward to speak of a rewrite handler after this.
>> 
>> _rewrite concecptual upgrade #1
>> *************************************
>> At least we now have a router management system.
>> It would be easy to implement your favourite router in the CouchDB
>> _rewrite, making nice isomorphic sollutions
>> 
>> _rewrite concecptual upgrade #2
>> *************************************
>> I woud call my first experiment an API server. Inside a ddoc, yes.
>> The simplicity is a bit hard to grasp.
>> The power of this simplicity is even hard to grasp.
>> 
>> I hope there is someone that would pick up where ermouth left this and
>> push it through testing so it could be released with 2.0
>> It unlocks a lot of the hidden power of couchapps, and with the Pouch
>> based tools Ddoc Lab and Inliner that ermouth has made for the site builder
>> and content people, this is a very low barrier of entry to CouchDB for new
>> developers.
>> 
>> Johs
>> 
>> 
>> 
>> 
>>> On 16. okt. 2015, at 14.19, ermouth <ermo...@gmail.com> wrote:
>>> 
>>> Closing proposal off.
>>> 
>>> If someone wants to carry it on, current state is:
>>> 
>>> 
>> https://github.com/ermouth/couchdb-chttpd/commit/8e50451aec2b07f95b9115dddc9b33b512651026
>>> 
>> https://github.com/ermouth/couchdb-couch/commit/54b4324eeefe27431f5b42a89226b1ea63e17eb6
>>> 
>> https://github.com/ermouth/couchdb/commit/4d2d91ed67ed982ff2667cafa5c308e1a95350bc
>>> 
>> https://github.com/ermouth/couchdb-couch-mrview/commit/ae7ff262a8ace666891d6c9af5386ed2d1910303
>>> 
>>> It all works pretty fine and tested, but with own tests, since I was
>> unable
>>> to overcome CouchDB test set in reasonable time – so no PR.
>>> 
>>> Current syntax example:
>>> 
>>> rewrites: function(req) {
>>> // req is similar to req obj in list fn, but without .id, .info, .uuid,
>>> .form
>>> return {
>>>  // path is mandatory
>>>  path:"/some/path?with=query&some=params",
>>>  // other fields are optional
>>>  headers:{/*headers go here*/},
>>>  method:"POST",
>>>  code:404,
>>>  body:JSON.stringify([1,2,3])
>>> }
>>> }
>>> 
>>> ermouth
>> 
>> 
> 
> 
> -- 
> 
> Dipl.-Inf. Harald R. Kisch
> 
> Büro besetzt von Di - Do 9:00 Uhr bis 18:00 Uhr
> Jahnstr. 3
> 80469 München
> Germany
> 
> Tel: +49 (0) 89 41 61 58 57-6
> Mobil DE: +49 (0) 176 56 58 58 38
> 
> Skype: harald.kisch
> Mail: haraldki...@gmail.com

-- 
Professional Support for Apache CouchDB:
http://www.neighbourhood.ie/couchdb-support/

Reply via email to