Solved - Email Issues - Outgoing Not working in Certain Cases

I tried this and it doesn’t work for me. Here’s the error I get from the Sparkpost config above:

Traceback (most recent call last):
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/desk/form/save.py", line 20, in savedocs
    doc.save()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/model/document.py", line 250, in save
    self._validate()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/model/document.py", line 369, in _validate
    self._save_passwords()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/model/base_document.py", line 582, in _save_passwords
    set_encrypted_password(self.doctype, self.name, new_password, df.fieldname)
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/utils/password.py", line 25, in set_encrypted_password
    { 'doctype': doctype, 'name': name, 'fieldname': fieldname, 'pwd': encrypt(pwd) })
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/utils/password.py", line 95, in encrypt
    cipher_suite = Fernet(encode(get_encryption_key()))
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/env/lib/python2.7/site-packages/cryptography/fernet.py", line 32, in __init__
    backend = default_backend()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/env/lib/python2.7/site-packages/cryptography/hazmat/backends/__init__.py", line 35, in default_backend
    _default_backend = MultiBackend(_available_backends())
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/env/lib/python2.7/site-packages/cryptography/hazmat/backends/__init__.py", line 22, in _available_backends
    "cryptography.backends"
AttributeError: 'EntryPoint' object has no attribute 'resolve'
Traceback (most recent call last):
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/app.py", line 58, in application
    response = frappe.handler.handle()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/handler.py", line 19, in handle
    execute_cmd(cmd)
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/handler.py", line 36, in execute_cmd
    ret = frappe.call(method, **frappe.form_dict)
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/__init__.py", line 875, in call
    return fn(*args, **newargs)
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/desk/form/save.py", line 20, in savedocs
    doc.save()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/model/document.py", line 250, in save
    self._validate()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/model/document.py", line 369, in _validate
    self._save_passwords()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/model/base_document.py", line 582, in _save_passwords
    set_encrypted_password(self.doctype, self.name, new_password, df.fieldname)
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/utils/password.py", line 25, in set_encrypted_password
    { 'doctype': doctype, 'name': name, 'fieldname': fieldname, 'pwd': encrypt(pwd) })
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/apps/frappe/frappe/utils/password.py", line 95, in encrypt
    cipher_suite = Fernet(encode(get_encryption_key()))
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/env/lib/python2.7/site-packages/cryptography/fernet.py", line 32, in __init__
    backend = default_backend()
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/env/lib/python2.7/site-packages/cryptography/hazmat/backends/__init__.py", line 35, in default_backend
    _default_backend = MultiBackend(_available_backends())
  File "/opt/bitnami/apps/erpnext/htdocs/frappe-bench/env/lib/python2.7/site-packages/cryptography/hazmat/backends/__init__.py", line 22, in _available_backends
    "cryptography.backends"
AttributeError: 'EntryPoint' object has no attribute 'resolve'

Tried a bunch of other stuff too so must be my machine. But seriously, Gmail, Sendgrid, Cpanel Mail, O365, SES, Mailgun and now Sparkpost. Haven’t got a single one authenticated with ERP next mail settings. I did just manage to send with Sparkpost via a terminal API call.

I have the most current version of the Bitnami AWS ERPNext stack (Ubuntu 14). I’ve tried following ERPNext documentation. Tried Bitnami docs to modify the site-config.json. Tried the Amazon SES documentation extensively (including stunnel & postfix).

Also tried some stuff around this error like: yt target x86-linux-native fails with 'EntryPoint' object has no attribute 'resolve' · Issue #764 · ARMmbed/yotta · GitHub

I must be daft. Probably done more harm than good by now.

EDIT: Just created my own thread for this: Unable to configure outgoing mail