Anthony Kaufman created COUCHDB-1875:
----------------------------------------

             Summary: CoffeeScript CommonJS Functions Don't Work
                 Key: COUCHDB-1875
                 URL: https://issues.apache.org/jira/browse/COUCHDB-1875
             Project: CouchDB
          Issue Type: Bug
          Components: JavaScript View Server
            Reporter: Anthony Kaufman


Reusable CommonJS functions written in CoffeeScript raise exceptions when 
referenced from map functions.

Consider the following Javascript code:
{
        lib: {
                simple: "exports.callback = function() { return 'Simple' }"
        },
        test: {
                map: "function(doc) { 
emit(require('views/lib/simple').callback(), doc) }"
        }
}

As expected, "Simple" is emitted for the key of every document.

Now the equivalent CoffeeScript code:
{
        lib: {
                simple: "exports.callback = () -> 'Simple'"
        },
        test: {
                map: "(doc) -> emit(require('views/lib/simple').callback(), 
doc)"
        }
}

The view returns no results and an error for every document is printed to the 
log file. For example:
[info] [<0.7270.11>] OS Process #Port<0.96999> Log :: function raised exception 
(new TypeError("require(\"views/lib/simple\").callback is not a function", 
"undefined", 3)) with doc._id 8117

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to