[Qgis-developer] Rethinking the testing and release procedure of QGIS

Sandro Santilli strk at keybit.net
Tue Jul 12 04:52:59 EDT 2011


On Mon, Jul 11, 2011 at 11:35:58PM +0200, Martin Dobias wrote:
> On Mon, Jul 11, 2011 at 12:03 PM, Sandro Santilli <strk at keybit.net> wrote:
> > On Mon, Jul 11, 2011 at 11:33:10AM +0200, Martin Dobias wrote:
> >> I still have it uncommitted somewhere. Basically what I was trying to
> >> do was to override the path where compiled files are created -- to a
> >> directory structure resembling qgis tree when installed. There is
> >> still an issue with various resources (srs database, svg files etc)
> >> that are outside the build tree. On linux this could be handled by
> >> some symlinks, however on windows we would probably need to copy these
> >> files or use some other tricks.
> >
> > What about allowing specifying different paths for different assets
> > overriding the default [TREE]/hard_coded_path ?
> >
> > Could be done with environmental variables.
> 
> QGIS already supports overriding of default paths for various assets
> by some calls to QgsApplication static methods. Adding the possibility
> to override them with environmental variables should be trivial,
> however I hoped to avoid an additional step such as passing command
> line arguments or setting temporary enviromental variables.

The good thing about using an environment variable is that you could then
also run the real qgis application (rather than just the testcases) from
the build tree. This would help testing fixes that have no associated
testcase (yeah, shouldn't exist, but we're not there yet :)

One thing doesn't exclude the other, so you could have executable testcases
calling the QgsApplication methods but still a QgsApplication allowing env
variables override of that. The override chain should be:

 1. Hard-coded defaults
 2. Env variables
 3. Commandline

--strk; 

  ()   Free GIS & Flash consultant/developer
  /\   http://strk.keybit.net/services.html


More information about the Qgis-developer mailing list