synox / void-mail

self-hosted disposable email service (nodejs) using catch-all and imap
GNU General Public License v3.0
135 stars 53 forks source link

UnhandledPromiseRejectionWarning: Handle missing To field #9

Closed erm3nda closed 5 years ago

erm3nda commented 5 years ago

System keeps working, but there's no report about the number of emails on system or other.

root@serveros:~# pm2 logs 0

[TAILING] Tailing last 15 lines for [0] process (change the value with --lines option) /root/.pm2/logs/email-out.log last 15 lines: 0|email | 0|email | > void-mail@0.0.0 start /root/email 0|email | > node ./bin/www 0|email |

/root/.pm2/logs/email-error.log last 15 lines: 0|email | (node:1969) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'flatMap' of undefined 0|email | at ImapService._createMailSummary (/root/email/mailbox/imap-service.js:166:5) 0|email | at mails.forEach.mail (/root/email/mailbox/imap-service.js:223:11) 0|email | at Array.forEach () 0|email | at ImapService._getMailHeadersAndPublish (/root/email/mailbox/imap-service.js:219:10) 0|email | at process._tickCallback (internal/process/next_tick.js:68:7) 0|email | (node:1969) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) 0|email | (node:1969) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

synox commented 5 years ago

Looks like https://github.com/synox/void-mail/blob/db42b9d2d1001a4801b8665335047ca1b4270568/app.js#L13 is not loaded.

synox commented 5 years ago

I was able to preproduce the problem.

Can you please share your pm2 config?

erm3nda commented 5 years ago

I'll update, thanks.

pm2 vanilla, i didn't touch anything after install it. The file module_conf.json totally empty ({}). Im not sure of wich conf do you talk. I launch it vía script with pm2 command pm2 --name email start npm -- start --watch

~~ Self signed ~~

El jue., 27 jun. 2019 a las 6:32, Aravindo Wingeier (< notifications@github.com>) escribió:

I pushed an update, please try again.

Can you please share your pm2 config?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/synox/void-mail/issues/9?email_source=notifications&email_token=AB4TAARZ2J2Z3QLNTGGYAZDP4Q7E3A5CNFSM4H3XBEHKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYVUPTY#issuecomment-506152911, or mute the thread https://github.com/notifications/unsubscribe-auth/AB4TAASJOYZKKXP6XLXMYFDP4Q7E3ANCNFSM4H3XBEHA .

synox commented 5 years ago

Maybe you could add to https://github.com/synox/void-mail/blob/master/docs/installation.md how to use pm2.

I am working on a patch, its coming soon today.

synox commented 5 years ago

Commit https://github.com/synox/void-mail/commit/e818f06b9e87cd51e45f1df1fd826269dabb1198 should resolve the issue. Please test.

erm3nda commented 5 years ago

To clarify: Shoud I update right now or wait for the patch you said now?

~~ Self signed ~~

El jue., 27 jun. 2019 a las 7:43, Aravindo Wingeier (< notifications@github.com>) escribió:

Maybe you could add to https://github.com/synox/void-mail/blob/master/docs/installation.md how to use pm2.

I am working on a patch, its coming soon today.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/synox/void-mail/issues/9?email_source=notifications&email_token=AB4TAASIBINJKSWRIGGMDE3P4RHOXA5CNFSM4H3XBEHKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYV7ZYA#issuecomment-506199264, or mute the thread https://github.com/notifications/unsubscribe-auth/AB4TAAX3H6SMPW47SMU6VKLP4RHOXANCNFSM4H3XBEHA .

synox commented 5 years ago

You can update now.

erm3nda commented 5 years ago

Fixed, thanks.

erm3nda commented 5 years ago

The problem is there again. Seems that is being triggered by a new email.

0|email | > void-mail@0.0.0 start /root/email 0|email | > node ./app.js 0|email |

/root/.pm2/logs/email-error.log last 15 lines: 0|email | (node:2179) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) 0|email | (node:2179) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code. 0|email | (node:7942) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'toLowerCase' of undefined 0|email | at MailRepository.add (/root/email/domain/mail-repository.js:22:29) 0|email | at mail.to.forEach.to (/root/email/application/mail-processing-service.js:56:24) 0|email | at Array.forEach () 0|email | at MailProcessingService.onNewMail (/root/email/application/mail-processing-service.js:55:11) 0|email | at ImapService.imapService.on.mail (/root/email/app.js:28:24) 0|email | at ImapService.emit (events.js:198:13) 0|email | at mails.forEach.mail (/root/email/application/imap-service.js:222:11) 0|email | at Array.forEach () 0|email | at ImapService._getMailHeadersAndEmitAsEvents (/root/email/application/imap-service.js:218:10) 0|email | at process._tickCallback (internal/process/next_tick.js:68:7) 0|email | (node:7942) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) 0|email | (node:7942) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.