couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brian Candler <B.Cand...@pobox.com>
Subject Re: Use of json2.js in HEAD
Date Tue, 09 Feb 2010 18:28:32 GMT
On Tue, Feb 09, 2010 at 09:01:06AM -0800, Chris Anderson wrote:
> On Tue, Feb 9, 2010 at 3:10 AM, Brian Candler <B.Candler@pobox.com> wrote:
> > FWIW, I get the same with 0.10.1 so it doesn't appear to be a regression.
> > Both current and 0.10.1 were built under Ubuntu Hardy with spidermonkey
> > 1.8.1.18
> 
> On thing that could be impacting this: json2.js prefers to drop back
> to a native JSON serializer if one is available. This means
> differences in spidermonkey version could conceivably give different
> date formats.
> 
> For what it's worth, this is what I'm seeing when serializing date
> objects on my end:
> 
> "2010-02-09T06:26:44.355Z"

Ah, there appears to be a difference between new Date(n) and Date().

Here are the results again, this time built on a newer machine (Ubuntu
Karmic):

$ curl -d'{"map":"function(doc) { emit(new Date(0),null);}"}' -X POST http://127.0.0.1:5984/briantest/_temp_view
{"total_rows":1,"offset":0,"rows":[
{"id":"foo","key":"1970-01-01T00:00:00.000Z","value":null}
]}
$ curl -d'{"map":"function(doc) { emit(Date(),null);}"}' -X POST http://127.0.0.1:5984/briantest/_temp_view
{"total_rows":1,"offset":0,"rows":[
{"id":"foo","key":"Tue Feb 09 2010 18:26:08 GMT+0000 (BST)","value":null}
]}
$ curl -d'{"map":"function(doc) { emit(toJSON(Date()),null);}"}' -X POST http://127.0.0.1:5984/briantest/_temp_view
{"total_rows":1,"offset":0,"rows":[
{"id":"foo","key":"\"Tue Feb 09 2010 18:27:05 GMT+0000 (BST)\"","value":null}
]}

Is it defined that Date() always returns a string, not a Date object??

Built as follows:

$ cat build-local.sh
PREFIX=/v/build/couchdb
./bootstrap &&
LD_RUN_PATH=/usr/lib/xulrunner-1.9.1.7 ./configure --prefix=$PREFIX \
  --with-js-lib=/usr/lib/xulrunner-1.9.1.7 \
  --with-js-include=/usr/lib/xulrunner-devel-1.9.1.7/include &&
LD_RUN_PATH=/usr/lib/xulrunner-1.9.1.7 make &&
sudo rm -rf $PREFIX/couchdb/erlang/lib/couch-* &&
sudo make install &&
grep chown README | sed -e "s#/usr/local#$PREFIX#g" | sudo sh
grep chmod README | sed -e "s#/usr/local#$PREFIX#g" -e 's#0770#0775#g' |
sudo sh
sudo $PREFIX/etc/init.d/couchdb restart

$ curl http://127.0.0.1:5984
{"couchdb":"Welcome","version":"0.11.0bcc31819f-git"}

Regards,

Brian.

Mime
View raw message