Thank you @majorsimon. Your replay encouraged me and i searched some more.
Here is the accounts parts inconfig.json codes:
"accounts": [
{
"id": "ACCOUNT_ID",
"metadata": [],
"name": "MY_NAME",
"provider": "gmail",
"emailAddress": "MY_EMAIL@gmail.com",
"settings": {
"imap_host": "imap.gmail.com",
"imap_port": 993,
"imap_username": "MY_EMAIL@gmail.com",
"imap_security": "SSL / TLS",
"imap_allow_insecure_ssl": false,
"smtp_host": "smtp.gmail.com",
"smtp_port": 587,
"smtp_username": "MY_EMAIL@gmail.com",
"smtp_security": "STARTTLS",
"smtp_allow_insecure_ssl": false,
"refresh_client_id": "MY_REFRESH_CLIENT_ID.apps.googleusercontent.com"
},
"label": "MY_EMAIL@gmail.com",
"autoaddress": {
"type": "bcc",
"value": ""
},
"aliases": [],
"syncState": "sync_error",
"syncError": {
"code": 1,
"error": {
"stack": "Error: Account is missing required fields:imap_password or refresh_token\n at ChildProcess.onStreamCloseOrExit (file:///C:/Users/appveyor/AppData/Local/Temp/1/nylas-build/electron-packager/win32-ia32/Mailspring-win32-ia32/resources/app/src/mailsync-process.ts:293:21)\n at ChildProcess.emit (events.js:210:5)\n at ChildProcess.EventEmitter.emit (domain.js:476:20)\n at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)",
"message": "Account is missing required fields:imap_password or refresh_token"
},
"signal": null
},
"authedAt": 1623430253.809,
"color": "",
"__cls": "Account"
}
],
"accountsVersion": 17
}
I looked up mailsync-process.ts on github and found where the problem was. It seems lastJSON parsing error from outbuffer.
I also googled about Process.ChildProcess._handle.onexit (internal/child_process.js:272:12). This seems like a node-gyp build error on windows because the node version is not compatible.