'Upsert a package. Required keyword arguments:
- ``name`` (string)
- ``description`` (string)
- ``emails`` (list of strings)
Optional keyword argument:
- ``cursor``
:return None:'

@classmethod
def upsert(cls, package_manager, **kw):

    cursor = kw.pop(u'cursor', cls.db)
    cursor.run(u"\n                                INSERT    INTO    packages\n                                                                                (package_manager,    name,    description,    emails)\n                                                    VALUES    ('npm',    %(name)s,    %(description)s,    %(emails)s)\n\n                                ON    CONFLICT    (package_manager,    name)    DO    UPDATE\n                                                                SET    description=%(description)s,    emails=%(emails)s\n                                ", kw)
