Should configuration be read from the environment?
Once https://github.com/AspenWeb/aspen.py/issues/24 is fixed, should Pando continue to read its configuration from the environment? Should it also fill Aspen's configuration from the env?
Does Pando already? If not, I'm not sure we need to add it. Pando is intended to be used as a library, not a framework.
Pando currently reads its own configuration from the environment, but not Aspen's. I don't think it makes sense to keep it this way, we should read both or neither.
@whit537 So, do we drop environment variables entirely?
Yes. Pando and Aspen are libraries now, not CLIs (with the exception of python -m pando ... are we going to keep PORT and PANDO_HOST there, at least?).
Objections that come to mind:
- there are libraries that use environment variables, it's not necessarily a bad practice
- server admins may appreciate being able to tweak settings without touching the code
server admins may appreciate being able to tweak settings without touching the code
If that's the case, then their developers should expose their own envvars, which they then pass through to the library, e.g., something like LIBERAPAY_WWW_ROOT instead of {PANDO,ASPEN}_WWW_ROOT.