﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc	branch	changelog	apichanges	internalchanges
13247	Log warning if necessary environment directories are not writeable	Ryan J Ollos		"The following directories need to be writable:
* `files`
* `conf`: only if web administration is used. A warning is already raised (""Warning: Error writing to trac.ini, make sure it is writable by the web server. Your changes have not been saved.), but it could still be useful to log at environment startup.

If `file` logging is used, `log` must be writable, but the following error is already raised:
{{{
Internal Server Error

TracError: IOError: [Errno 13] Permission denied: u'/Users/rjollos/Documents/Workspace/trac-dev/tracenvs/proj-1.4/log/trac.log'
}}}

If SQLite is used, `db` must be writable, but an error is already raised/logged:
{{{
14:46:59 Trac[env] WARNING: Component <Component trac.db.api.DatabaseManager> failed with ConfigurationError: The user <code>rjollos</code> requires read _and_ write permissions to the database file <code>/Users/rjollos/Documents/Workspace/trac-dev/tracenvs/proj-1.4/db/trac.db</code> and the directory it is located in.
}}}

We could log a warning in [browser:tags/trac-1.4/trac/env.py Environment.verify] if the directories are not writable. Or we could have the associated module log the warning, such as `trac.admin.web_ui` for `conf`.

I'd also like to add some guidance to `TracInstall` or `TracEnvironment` on what files and directories need to be writable by the web server user. TracEnvironment says

    The user under which the web server runs will require file system write permission to the environment directory and all the files inside. 

However, that's not very precise. Write permissions aren't needed, and may be undesirable for security reasons, for the `htdocs`, `plugins` and `templates` directories."	enhancement	new	normal	next-stable-1.6.x	general		normal		environment					
