Couchdb v1.1.0 'Object.keys não é uma função'

1

Na minha configuração osx local, tenho o couchdb v1.0.2 instalado. Eu escrevi vários scripts contra essa versão, e tudo funcionou bem.

No meu servidor debian 6 remoto, originalmente eu tinha o couch v0.11.0 instalado. Infelizmente, vários dos meus scripts causaram uma exceção Object.keys is not a function . Eu figurei v0.11.0 tinha uma versão antiga do javascript, então eu atualizei para o sofá v1.1.0. Eu segui estas instruções . Depois de um pouco de pesar, finalmente consegui a v1.1.0, mas os erros não funcionaram. Ainda estou vendo exceções Object.keys is not a function . Confirmei que a v1.1.0 do couch está instalada executando couchdb -V e eu matei / reiniciei todas as instâncias de couch, beam e erlang várias vezes.

Alguma ideia do que está acontecendo? Eu atualizei o sofá, mas eu também tenho que atualizar o motor js separadamente? Os restos da v0.11.0 estão escondidos em algum lugar? Eu usei apt-get remove couchdb para desinstalar v0.11.0. Eu usei o apt-get para instalá-lo também.

    
por Xavi 30.09.2011 / 11:25

1 resposta

3

Eu não acho que você tenha remanescentes v0.11.0.

Mas você está correto: o "Javascript" no CouchDB não está integrado, mas sim vinculado ao sistema libjs ou libmozjs .

Não sei como obter uma nova versão do Spidermonkey no OSX, mas muitas pessoas (inclusive eu) usam meu Build CouchDB ferramenta exatamente para este propósito. Agrupa sua própria build de Spidermonkey que tem tem Object.keys , Array.isArray e meu favorito, [].reduce() . A compilação do CouchDB não será integrada ao seu sistema operacional (em última análise, ele apenas executa make install ). Mas, na maior parte, no OSX e no Linux, é tão simples quanto executar rake .

Se você tentar criar o CouchDB, por favor relate um problema no GitHub se tiver algum problema! Eu tento mantê-lo tão bem quanto possível em sistemas operacionais atuais.

    
por 30.09.2011 / 13:14

Tags