On Thu, Nov 22, 2018 at 11:33 PM Vaclav Petras <wenzesl...@gmail.com> wrote: > > > > On Thu, Nov 22, 2018 at 10:57 AM Markus Metz < markus.metz.gisw...@gmail.com> wrote: >> >> >> >> On Thu, Nov 22, 2018 at 3:31 PM Vaclav Petras <wenzesl...@gmail.com> wrote: >> > >> > >> > >> > On Wed, Nov 21, 2018 at 2:12 PM Martin Landa <landa.mar...@gmail.com> wrote: >> >> >> >> Hi, >> >> >> >> st 21. 11. 2018 v 20:05 odesÃlatel <svn_gr...@osgeo.org> napsal: >> >> > + # clean the sqlite db >> >> > + from grass.script import db as gdb >> >> > + from grass.script import core as gcore >> >> > + conn = gdb.db_connection() >> >> > + if conn and conn['driver'] == 'sqlite': >> >> > + # check if db exists >> >> > + gisenv = gcore.gisenv() >> >> > + database = conn['database'] >> >> > + database = database.replace('$GISDBASE', gisenv['GISDBASE']) >> >> > + database = database.replace('$LOCATION_NAME', gisenv['LOCATION_NAME']) >> >> > + database = database.replace('$MAPSET', gisenv['MAPSET']) >> >> > + if os.path.exists(database): >> >> > + message(_("Cleaning up sqlite database ...")) >> >> > + gcore.start_command('db.execute', sql = 'VACUUM') >> >> >> >> a small note, the added code could be probably moved to new a fn eg. >> >> clean_db(), Ma >> > >> > >> > Yes, ideally to grass.script.setup. >> >> But this is only initializing a GRASS session, without any mechanism to terminate a session. Basic usage in the documentation: >> >> # ... use GRASS modules here >> # remove the session's gisrc file to end the session >> os.remove(gisrc) >> >> maybe a new fn to terminate a session is needed? This fn could clean temp files like clean_temp() in grass.py and also clean any default sqlite db when terminating the grass session. > > > That's all correct. There would have to be more to make it the same procedure as in grass.py, but eventually we need to do that. > > What I meant to add it to grass.script.setup module where we should eventually put all the functions needed to setup a proper GRASS session (or in some other module, but setup seems to be something good enough for now and moving things around while keeping the API is easy in Python).
ok, the db cleanup is now (r73704) a function in grass.script.setup
_______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-dev