id,summary,reporter,owner,description,type,status,priority,milestone,component,version,severity,resolution,keywords,cc,branch,changelog,apichanges,internalchanges 12096,Specify MySQLdb and psycopg2 in extras_require,Ryan J Ollos,Ryan J Ollos,"The optional dependencies are specified in [browser:tags/trac-1.1.5/setup.py@:105-110,126-128#L98] for all optional dependencies except `MySQLdb` and `psycopg2`. Any particular reason for that, or is it just an oversight? With the proposed change, the components are skipped when the dependencies are not installed, and they don't appear on the plugin admin page: {{{ 15:21:16 Trac[loader] DEBUG: Loading trac.db.mysql from /Users/rjollos/Documents/Workspace/trac-dev/pve-test/lib/python2.7/site-packages 15:21:16 Trac[loader] DEBUG: Skipping ""trac.db.mysql = trac.db.mysql_backend [mysql]"": (""DistributionNotFound: MySQLdb>=1.2.2"" not found) 15:21:16 Trac[loader] DEBUG: Loading trac.db.postgres from /Users/rjollos/Documents/Workspace/trac-dev/pve-test/lib/python2.7/site-packages 15:21:16 Trac[loader] DEBUG: Skipping ""trac.db.postgres = trac.db.postgres_backend [postgresql]"": (""DistributionNotFound: psycopg2>=2.0"" not found) }}} In both cases an error is displayed when using a `database` string containing `postgres` or `mysql`: {{{#!html

Trac Error

Cannot load Python bindings for PostgreSQL

TracGuide — The Trac User and Administration Guide

}}} ",enhancement,closed,low,1.1.6,database backend,,normal,fixed,postgresql mysql,,,`psycopg2` and `MySQLdb` are specified as dependencies in `setup.py`'s `extras_require`.,,