Etherpad-lite: UnhandledPromiseRejectionWarning ao importar um arquivo com extensão desconhecida (ou nenhuma)

Criado em 14 mar. 2020  ·  5Comentários  ·  Fonte: ether/etherpad-lite

Isso acontece em 1.8:

[ERROR] console - (node:27731) UnhandledPromiseRejectionWarning: TypeError [ERR_INVALID_CALLBACK]: Callback must be a function
   at makeCallback (fs.js:136:11)
   at Object.rename (fs.js:578:14)
   at doImport (/opt/etherpad-lite/src/node/handler/ImportHandler.js:104:16)
   at process._tickCallback (internal/process/next_tick.js:68:7)

Isso acontece ao importar um arquivo sem extensão conhecida no nome do arquivo (por exemplo, nenhuma extensão). Como alternativa, você deve definir o nome do arquivo e deixá-lo terminar com uma extensão, por exemplo, .txt .


Editar por @muxator : isso acontece não apenas quando nenhuma extensão é fornecida, mas para cada extensão desconhecida (incluindo nenhuma) quando allowUnknownFileEnds em settings.json é true . Alterou o título de acordo.

ExporImport Minor Bug async-migration

Comentários muito úteis

Retirada de # 3722 corrigida por @tudorconstantin.
Obrigado a todos.

Todos 5 comentários

Ok, isso foi devido ao trabalho assíncrono cc @raybellis

https://github.com/ether/etherpad-lite/blob/develop/src/node/handler/ImportHandler.js#L104

Esta é a linha problemática, se você carregar um Whatever.md etc para o Etherpad, você verá este erro.

Você tem tempo para dar uma olhada @raybellis

Para mim, para o desenvolvimento de plug-ins, simplesmente faço um hack.

https://github.com/ether/etherpad-lite/pull/3718/files é minha solução alternativa. @raybellis

A correção não hacky é substituir a chamada para fs.rename(src, dst, cb) por await fsp_rename(src, dst)

Ah, vejo que @tudorconstantin

Retirada de # 3722 corrigida por @tudorconstantin.
Obrigado a todos.

Esta página foi útil?
0 / 5 - 0 avaliações