gunicorn 19.2 fails to start with 18.0 configuration

(Of the comments posted to the question, I must especially call out the one by skarap, since it helped me to find a solution on my own by making gunicorn properly output errors. I wish I could award a partial bounty for this; the conversion of that comment into an answer would not yet be a complete answer, but it did help substantially.)

Turns out this was the problematic row in the config file:

worker_class = 'egg:gunicorn#sync'

It caused this error:

Error: class uri 'egg:gunicorn#sync' invalid or not found: 

[Traceback (most recent call last):
  File "/home/django/.venv/lib/python2.7/site-packages/gunicorn/util.py", line 113, in load_class
    return pkg_resources.load_entry_point(dist, section, name)
  File "/home/django/.venv/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 318, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/home/django/.venv/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 2220, in load_entry_point
    raise ImportError("Entry point %r not found" % ((group,name),))
ImportError: Entry point ('gunicorn.workers', 'sync') not found
]

Replacing it with worker_class = 'sync' fixed the ImportError and therefore the problem. No other config changes were necessary in the 18.0 -> 19.2.1 upgrade.

There seems to be a problem with gunicorn's documentation, which I intend to report, because at the time of writing this, the docs for v19.2.1 still state that the egg:gunicorn#[worker] syntax is valid. (The example there uses gevent, but it looks like it should apply to other types). Who knows, it may be valid in some circumstances, but in mine (gunicorn in a virtualenv, installed with pip), it's not.