femto-email / client

A simple, extendable mail client written in Node.JS
http://femto.email
MIT License
28 stars 4 forks source link

[HELP WANTED] Stucked at grabbing gmail #29

Open rajat-np opened 6 years ago

rajat-np commented 6 years ago

I tried running Femto with Gmail, but it gets stucked at grabbing [gmail], but when I try an outlook email, it runs properly.

ishaansharma commented 6 years ago

Same Issue here, Any one have any idea why this is happening and how I can sign-in with my gmail account.

pbexe commented 6 years ago

The issue could be caused by Google requiring a sign in using their sign in method. You could get around this problem by enabling less secure apps for your Google account.

rajat-np commented 6 years ago
app.js:4 Stop!
app.js:5 This is a browser feature intended for developers. If someone told you to copy-paste something here to enable a feature or “hack” someone’s account, it is a scam and will give them access to your account.
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:26:49] [SetupPage.load()] Application Paths Found:
    App Dir   - /home/blizzard/drc/client
    Store Dir - /home/blizzard/.config/Femto
    Temp Dir  - /tmp
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:26:49] [SetupPage.load()] Other Paths Found:
    Exe Path  - /home/blizzard/drc/client/node_modules/electron/dist/electron
    Desktop   - /home/blizzard/Desktop
    Documents - /home/blizzard/Documents
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:26:49] [SetupPage.load()] Setup complete, we've read the config file and loaded the databases.
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:26:49] [StateManager.update()] This is a new user, we'll welcome them in to the application.
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:26:49] [Utils.time()] The () function took 15.04 milliseconds to run.
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:26:50] [WelcomePage.load()] Loading up the welcome page...
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:26:50] [StateManager.page()] Switching page to welcome
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:26:50] [Utils.time()] The () function took 94.44 milliseconds to run.
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:27:05] [AccountManager.addAccount()] Successfully logged in to user testrajat123@gmail.com.
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:27:06] [AccountManager.addAccount()] Successfully created a database account for testrajat123@gmail.com
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:27:06] [AccountManager.addAccount()] Added testrajat123@gmail.com to the accounts database.
/home/blizzard/drc/client/app/helpers/logger.js:134 [16:27:07] [IMAPClient.updateAccount()] Retrieved all mailboxes from testrajat123@gmail.com
/home/blizzard/drc/client/app/modules/IMAPClient.js:98 Uncaught (in promise) OperationalError {cause: Error: Unknown Mailbox: [Gmail] (Failure)
    at Connection._resTagged (/home/blizzard/drc/client/no…, isOperational: true, type: "no", textCode: "NONEXISTENT", source: "protocol"…}cause: Error: Unknown Mailbox: [Gmail] (Failure)
    at Connection._resTagged (/home/blizzard/drc/client/node_modules/imap/lib/Connection.js:1502:11)
    at Parser.<anonymous> (/home/blizzard/drc/client/node_modules/imap/lib/Connection.js:194:10)
    at emitOne (events.js:115:13)
    at Parser.emit (events.js:210:7)
    at Parser._resTagged (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:175:10)
    at Parser._parse (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:139:16)
    at Parser._tryread (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:82:15)
    at TLSSocket.Parser._cbReadable (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:53:12)
    at emitNone (events.js:105:13)
    at TLSSocket.emit (events.js:207:7)
    at emitReadable_ (_stream_readable.js:502:10)
    at emitReadable (_stream_readable.js:496:7)
    at addChunk (_stream_readable.js:263:7)
    at readableAddChunk (_stream_readable.js:239:11)
    at TLSSocket.Readable.push (_stream_readable.js:197:10)
    at TLSWrap.onread (net.js:589:20)source: "protocol"textCode: "NONEXISTENT"type: "no"message: "Unknown Mailbox: [Gmail] (Failure)"stack: "Error: Unknown Mailbox: [Gmail] (Failure)↵    at Connection._resTagged (/home/blizzard/drc/client/node_modules/imap/lib/Connection.js:1502:11)↵    at Parser.<anonymous> (/home/blizzard/drc/client/node_modules/imap/lib/Connection.js:194:10)↵    at emitOne (events.js:115:13)↵    at Parser.emit (events.js:210:7)↵    at Parser._resTagged (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:175:10)↵    at Parser._parse (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:139:16)↵    at Parser._tryread (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:82:15)↵    at TLSSocket.Parser._cbReadable (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:53:12)↵    at emitNone (events.js:105:13)↵    at TLSSocket.emit (events.js:207:7)↵    at emitReadable_ (_stream_readable.js:502:10)↵    at emitReadable (_stream_readable.js:496:7)↵    at addChunk (_stream_readable.js:263:7)↵    at readableAddChunk (_stream_readable.js:239:11)↵    at TLSSocket.Readable.push (_stream_readable.js:197:10)↵    at TLSWrap.onread (net.js:589:20)"__proto__: Objectconstructor: function Error()prepareStackTrace: undefinedstackTraceLimit: 16arguments: nullcaller: nullcaptureStackTrace: function captureStackTrace()arguments: nullcaller: nulllength: 2name: "captureStackTrace"__proto__: function ()apply: function apply()arguments: nullcaller: nulllength: 2name: "apply"__proto__: function ()arguments: (...)bind: function bind()arguments: nullcaller: nulllength: 1name: "bind"__proto__: function ()call: function call()caller: (...)constructor: function Function()length: 0name: ""toString: function toString()Symbol(Symbol.hasInstance): function [Symbol.hasInstance]()get arguments: function ThrowTypeError()set arguments: function ThrowTypeError()get caller: function ThrowTypeError()set caller: function ThrowTypeError()__proto__: Object[[FunctionLocation]]: <unknown>length: 1name: "Error"prototype: Object__BluebirdErrorTypes__: Object__proto__: function ()message: ""name: "Error"toString: function toString()__proto__: ObjectisOperational: truesource: "protocol"textCode: "NONEXISTENT"type: "no"message: "Unknown Mailbox: [Gmail] (Failure)"name: "Error"stack: "Error: Unknown Mailbox: [Gmail] (Failure)↵    at Connection._resTagged (/home/blizzard/drc/client/node_modules/imap/lib/Connection.js:1502:11)↵    at Parser.<anonymous> (/home/blizzard/drc/client/node_modules/imap/lib/Connection.js:194:10)↵    at emitOne (events.js:115:13)↵    at Parser.emit (events.js:210:7)↵    at Parser._resTagged (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:175:10)↵    at Parser._parse (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:139:16)↵    at Parser._tryread (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:82:15)↵    at TLSSocket.Parser._cbReadable (/home/blizzard/drc/client/node_modules/imap/lib/Parser.js:53:12)↵    at emitNone (events.js:105:13)↵    at TLSSocket.emit (events.js:207:7)↵    at emitReadable_ (_stream_readable.js:502:10)↵    at emitReadable (_stream_readable.js:496:7)↵    at addChunk (_stream_readable.js:263:7)↵    at readableAddChunk (_stream_readable.js:239:11)↵    at TLSSocket.Readable.push (_stream_readable.js:197:10)↵    at TLSWrap.onread (net.js:589:20)"__proto__: Errorconstructor: function OperationalError(message)constructor$: function Error()__proto__: Object
Promise @ /home/blizzard/drc/client/app/modules/IMAPClient.js:98
_tickCallback @ internal/process/next_tick.js:188
rajat-np commented 6 years ago

This is the stack trace, please have a look. Also my account is enabled for less secured apps still I am getting error on sign in.

popey456963 commented 6 years ago

Looks like a namespace issue on our side. We make a bunch of assumptions about the initial namespace to try to fix compatibility between multiple providers (e.g. Yahoo goes off spec it seems).

Will look into fixing it this afternoon.

popey456963 commented 6 years ago

Is anyone actually intending to use this client for a purpose, and if so may I inquire as to what the purpose is? Would be happy to fix namespacing for non-standard servers (like GMail), but I must admit I wasn't intending to work on this anymore.

rajat-np commented 6 years ago

Actually I am trying to make an email client of my own with some advanced features and adding additional layer of security . I found femto mail the best fit to start as it has all the basic needs, but since the gmail is by-far the most used email system on the internet and femto mail is showing error in login but is working with other mailing servers, I really would appreciate if you could fix the gmail part.

rajat-np commented 6 years ago

@popey456963 I am implemeting node-imap library in react environment, any idea how I can make it work, imap cannot resolve core node modules like tls ,net and fs.

popey456963 commented 6 years ago

Whoops, totally forgot about this issue and am now on holiday.

Your issue sounds like a webpack issue, not related to react / electron. You can force webpack to bundle them like so:

  node: {
    console: false,
    fs: 'empty',
    net: 'empty',
    tls: 'empty'
  }

You can also use webpack-node-externals like so:

const nodeExternals = require('webpack-node-externals');

{
  target: 'node',
  externals: [nodeExternals()],
}
rajat-np commented 6 years ago

@popey456963, thank you so much , I tried using this solution and the resolve error is gone but I get another error.

bundle.js:sourcemap:49358 Uncaught TypeError: Invalid Version: 
    at new SemVer (bundle.js:sourcemap:49358)
    at compare (bundle.js:sourcemap:49631)
    at Function.gte (bundle.js:sourcemap:49680)
    at Object.<anonymous> (bundle.js:sourcemap:9994)
    at Object.<anonymous> (bundle.js:sourcemap:10111)
    at __webpack_require__ (bundle.js:sourcemap:679)
    at fn (bundle.js:sourcemap:89)
    at Object.<anonymous> (bundle.js:sourcemap:46667)
    at Object.exports.byteLength (bundle.js:sourcemap:48790)
    at __webpack_require__ (bundle.js:sourcemap:679)
rajat-np commented 6 years ago

I tried many solutions like rm -rf node_modules, delete package-lock.json etc etc , but still the error is same.

popey456963 commented 6 years ago

You're possibly using a package that's really out of date, if so, you can solve it by removing node_modules, package-lock.json AND updating all your dependencies to the latest version (using something like https://www.npmjs.com/package/npm-check-updates).

Note that upgrading dependencies has a significant chance of causing the rest of your project to break if any of your packages go up a major semver.