I did the constructor thing and just didn't like it, it didn't feel clean (I know, I know and monkeying with __builtin__ is?)
As for global, that will just make it modlue-level global (I think?) and I have this reference in multiple modules. I think I tried it already, but I can't remember for sure... Anyway, all of this got me brainstorming and I think I've got a solution that I think is clean and will be effective, I'll bust it out and post it here for comments. Thanks for your input!
Another option for you to consider:
#__main__ ( I forget the script's name) import app_config app_config.setConfiguration(AdminConfig)
from jdbc import DataStore . . .etc
#jdbc.py from app_config import AdminConfig . . .etc
#app_config.py def setConfiguration(adm_cfg): global AdminConfig AdminConfig = adm_cfg
The reason the import solution was breaking for you earlier was that you were setting up circular imports by using your main script as the holder for the global configuration.
By creating a special 'configuration data' module, you can use that to store the data, and every module that needs it can import it without worrying about circular imports.
Any extra global configuration properties can be added by updating the 'setConfiguration' function.
Cheers, Nick.
-- Nick Coghlan | [EMAIL PROTECTED] | Brisbane, Australia --------------------------------------------------------------- http://boredomandlaziness.skystorm.net -- http://mail.python.org/mailman/listinfo/python-list