subsurface/desktop-widgets
Linus Torvalds 2d760a7bff Don't write back dive data that hasn't changed in git
This caches the git ID for the dive on load, and avoids building the
dive directory and hashing it on save as long as nothing has invalidated
the git ID cache.

That should make it much faster to write back data to the git
repository, since the dive tree structure and the divecomputer blobs in
particular are the bulk of it (due to all the sample data).  It's not
actually the git operations that are all that expensive, it's literally
generating the big blob with all the snprintf() calls for the data.

The git save used to be a fairly expensive with large data sets,
especially noticeable on mobile with much weaker CPU's.  This should
speed things up by at least a factor of two.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-04-04 17:27:10 -07:00
..
css Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
marble Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
plugins Silence warnings in facebook_integration.cpp 2016-03-09 21:50:37 -08:00
preferences Preferences: fix missing slot problem when creating new account 2016-03-19 07:52:33 -07:00
statistics Clean up signedness confusion in statisticswidget.cpp 2016-03-09 21:50:26 -08:00
about.cpp Update copyright for 2016 2016-02-02 09:28:56 -08:00
about.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
about.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
btdeviceselectiondialog.cpp btdeviceselectiondialog.cpp: fix unused variable 2015-11-07 22:22:41 +02:00
btdeviceselectiondialog.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
btdeviceselectiondialog.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
CMakeLists.txt Don't rely on CMAKE_AUTOUIC 2015-11-09 18:00:56 -08:00
configuredivecomputerdialog.cpp typo fix 2016-03-23 12:16:56 -07:00
configuredivecomputerdialog.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
configuredivecomputerdialog.ui configure OSTC/OSTC3: Add safety stop parameters 2016-01-22 06:50:22 -08:00
divecomponentselection.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
divecomputermanagementdialog.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
divecomputermanagementdialog.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
divecomputermanagementdialog.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
divelistview.cpp Silence warnings in divelistview.cpp 2016-03-09 21:50:26 -08:00
divelistview.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
divelogexportdialog.cpp Silence warnings in divelogexportdialog.cpp 2016-03-09 21:50:36 -08:00
divelogexportdialog.h Remove unused member function 2016-03-09 21:50:36 -08:00
divelogexportdialog.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
divelogimportdialog.cpp Silence warnings in divelogimportdialog.cpp 2016-03-09 21:50:34 -08:00
divelogimportdialog.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
divelogimportdialog.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
divepicturewidget.cpp Make pictures respond to double clicks again 2015-11-29 13:08:26 -08:00
divepicturewidget.h Drag and Drop Images 2015-11-24 09:22:16 -08:00
diveplanner.cpp When changing units from psi to bar first change value, then max 2016-03-23 09:34:49 -07:00
diveplanner.h Remove unused member function 2016-03-09 21:50:26 -08:00
diveplanner.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
diveshareexportdialog.cpp Silence warnings in diveshareexportdialog.cpp 2016-03-09 21:50:26 -08:00
diveshareexportdialog.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
diveshareexportdialog.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
downloadfromdivecomputer.cpp Silence warnings in downloadfromdivecomputer.cpp 2016-03-09 21:50:26 -08:00
downloadfromdivecomputer.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
downloadfromdivecomputer.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
filterwidget.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
globe.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
globe.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
groupedlineedit.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
groupedlineedit.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
kmessagewidget.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
kmessagewidget.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
listfilter.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
locationinformation.cpp Silence warnings in locationinformation.cpp 2016-03-09 21:50:37 -08:00
locationinformation.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
locationInformation.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
maintab.cpp Don't write back dive data that hasn't changed in git 2016-04-04 17:27:10 -07:00
maintab.h Context menu for images: add loading from file / web 2015-11-03 08:31:41 -08:00
maintab.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
mainwindow.cpp Change the git progress update callback signature 2016-04-04 14:17:45 -07:00
mainwindow.h Start to use the QSettings ObjectWrapper 2016-01-25 13:04:01 -08:00
mainwindow.ui Add menu entry for creating GPS location 2015-11-18 19:17:32 -08:00
modeldelegates.cpp Silence warnings in modeldelegates.cpp 2016-03-09 21:50:26 -08:00
modeldelegates.h modeldelegates: remove printing related delegates 2015-11-10 09:08:16 -08:00
notificationwidget.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
notificationwidget.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
plannerDetails.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
plannerSettings.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
printdialog.cpp Silence warnings in printdialog.cpp 2016-03-09 21:50:37 -08:00
printdialog.h Lazy Initialize QPrinter 2016-01-08 08:04:58 -08:00
printer.cpp Move Profile widget out of desktop-widgets 2015-10-30 10:36:49 -07:00
printer.h Move Profile widget out of desktop-widgets 2015-10-30 10:36:49 -07:00
printoptions.cpp Don't if true then true 2016-01-08 10:02:20 -08:00
printoptions.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
printoptions.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
qtwaitingspinner.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
qtwaitingspinner.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
renumber.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
searchbar.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
setpoint.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
shiftimagetimes.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
shifttimes.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
simplewidgets.cpp Don't write back dive data that hasn't changed in git 2016-04-04 17:27:10 -07:00
simplewidgets.h Parse html links in the Notes section. 2015-11-15 22:22:53 -08:00
starwidget.cpp Silence warnings in starwidget.cpp 2016-03-09 21:50:27 -08:00
starwidget.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
subsurfacewebservices.cpp Silence warnings in subsurfacewebservices.cpp 2016-03-09 21:50:27 -08:00
subsurfacewebservices.h Silence warnings in subsurfacewebservices.h 2016-03-09 21:50:26 -08:00
tableview.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
tableview.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
tableview.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
tagwidget.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
tagwidget.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
templateedit.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
templateedit.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
templateedit.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
templatelayout.cpp templatelayout.cpp: fix potential issue in preprocessTemplate() 2016-02-29 15:42:33 -08:00
templatelayout.h Removed grantlee template code to deal with non-Qobject 2016-01-08 08:05:36 -08:00
undocommands.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
undocommands.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
updatemanager.cpp Fix build breakage 2016-01-26 09:51:58 -08:00
updatemanager.h Cloud storage: modify protocol for checking cloud connectivity 2015-11-18 17:57:13 -08:00
urldialog.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
usermanual.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
usermanual.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
usersurvey.cpp Remove the non-canonical Subusrface version 2015-12-20 07:59:50 -08:00
usersurvey.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
usersurvey.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
webservices.ui Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00