Great, thanks Jan. I'll take a look at util.js and see if I can make anything 
of it.

Thanks again,
Anthony

On Aug 20, 2013, at 1:51 PM, Jan Lehnardt <j...@apache.org> wrote:

> 
> On Aug 20, 2013, at 22:49 , Anthony Kaufman <anthony.kauf...@gmail.com> wrote:
> 
>> I finally gave up and just compiled my CoffeeScripts to Javascript before I 
>> saved them into Couch. That way I can maintain the scripts in CoffeeScript 
>> (which I like), and  store them as Javascript (which CouchDB apparently 
>> likes). I had a script which was automating the save anyway so this wasn't 
>> too tricky (now I'm just bragging).
>> 
>> I still think that this could be a real live bug, or lack of a feature 
>> anyway. Where would be the best place to report something like that?
> 
> http://issues.apache.org/jira/browse/COUCHDB :)
> 
> Thanks!
> 
> I agree this is a bug and should be fixed. Maybe 
> https://github.com/apache/couchdb/blob/master/share/server/util.js#L13 and 
> following give you a clue why this might fail in CS?
> 
> Best
> Jan
> -- 
> 
>> 
>> Thanks, Anthony
>> 
>> On Aug 16, 2013, at 2:03 PM, Anthony Kaufman <anthony.kauf...@gmail.com> 
>> wrote:
>> 
>>> I've been trying to define a CoffeeScript CommonJS Module Function without 
>>> success. I can translate the same function into Javascript and it works 
>>> fine. I'm using CouchDB 1.3.1 on Mac OS X Lion.
>>> 
>>> Here's the CoffeeScript document:
>>> {
>>>     _id: "_design/test",
>>>     language: "coffeescript",
>>>     lib: {
>>>             say_hello: "exports.callback = (name) -> 'Hello ' + name"
>>>     }
>>>     test: {
>>>             map: "(doc) ->
>>>     say_hello = require('views/lib/say_hello').callback
>>>     emit(say_hello(doc._id), doc)"
>>>     }
>>> }
>>> 
>>> When ran, it returns the following errors for each document:
>>> function raised exception (new TypeError("say_hello is not a function", 
>>> "undefined", 5)) with doc._id
>>> 
>>> Here's the Javascript document which works just fine:
>>> {
>>>     _id: "_design/test",
>>>     language: "javascript",
>>>     lib: {
>>>             say_hello: "exports.callback = function(name) { return 'Hello ' 
>>> + name }"
>>>     }
>>>     test: {
>>>             map: "function(doc) { say_hello = 
>>> require('views/lib/say_hello').callback; emit(say_hello(doc._id), doc) }"
>>>     }
>>> }
>>> 
>>> Currently, I have all of my views in a real document defined in 
>>> CoffeeScript and I'd really rather not convert them all to Javascript. Any 
>>> help would be appreciated.
>>> 
>>> - Anthony
>> 
> 

Reply via email to