2323from version import __version__
2424from psycopg2 import sql
2525
26- # set high logging level for geodiff (used by geodiffinfo executable)
26+ # set high logging level for geodiff (used by geodiff executable)
2727# so we get as much information as possible
2828os .environ ["GEODIFF_LOGGER_LEVEL" ] = '4' # 0 = nothing, 1 = errors, 2 = warning, 3 = info, 4 = debug
2929
@@ -37,7 +37,7 @@ class Config:
3737
3838 def __init__ (self ):
3939 self .project_working_dir = None
40- self .geodiffinfo_exe = None
40+ self .geodiff_exe = None
4141
4242 self .mergin_url = 'https://public.cloudmergin.com'
4343
@@ -76,7 +76,7 @@ def load(self, filename):
7676 cfg .read (filename )
7777
7878 self .project_working_dir = cfg ['general' ]['working_dir' ]
79- self .geodiffinfo_exe = cfg ['general' ]['geodiffinfo_exe ' ]
79+ self .geodiff_exe = cfg ['general' ]['geodiff_exe ' ]
8080
8181 if 'mergin' in cfg :
8282 cfg_mergin = cfg ['mergin' ]
@@ -143,26 +143,26 @@ def _check_has_password():
143143
144144
145145def _run_geodiff (cmd ):
146- """ will run a command (with geodiffinfo ) and report what got to stderr and raise exception
146+ """ will run a command (with geodiff ) and report what got to stderr and raise exception
147147 if the command returns non-zero exit code """
148148 res = subprocess .run (cmd , stderr = subprocess .PIPE )
149149 geodiff_stderr = res .stderr .decode ()
150150 if geodiff_stderr :
151151 print ("GEODIFF: " + geodiff_stderr )
152152 if res .returncode != 0 :
153- raise DbSyncError ("geodiffinfo failed!\n " + str (cmd ))
153+ raise DbSyncError ("geodiff failed!\n " + str (cmd ))
154154
155155
156156def _geodiff_create_changeset (driver , conn_info , base , modified , changeset ):
157- _run_geodiff ([config .geodiffinfo_exe , "createChangesetEx " , driver , conn_info , base , modified , changeset ])
157+ _run_geodiff ([config .geodiff_exe , "diff" , "--driver " , driver , conn_info , base , modified , changeset ])
158158
159159
160160def _geodiff_apply_changeset (driver , conn_info , base , changeset ):
161- _run_geodiff ([config .geodiffinfo_exe , "applyChangesetEx " , driver , conn_info , base , changeset ])
161+ _run_geodiff ([config .geodiff_exe , "apply" , "--driver " , driver , conn_info , base , changeset ])
162162
163163
164- def _geodiff_rebase (driver , conn_info , base , modified , base2their , conflicts ):
165- _run_geodiff ([config .geodiffinfo_exe , "rebaseEx " , driver , conn_info , base , modified , base2their , conflicts ])
164+ def _geodiff_rebase (driver , conn_info , base , our , base2their , conflicts ):
165+ _run_geodiff ([config .geodiff_exe , "rebase-db " , "-- driver" , driver , conn_info , base , our , base2their , conflicts ])
166166
167167
168168def _geodiff_list_changes_details (changeset ):
@@ -173,7 +173,7 @@ def _geodiff_list_changes_details(changeset):
173173 tmp_output = os .path .join (tmp_dir , 'dbsync-changeset-details' )
174174 if os .path .exists (tmp_output ):
175175 os .remove (tmp_output )
176- _run_geodiff ([config .geodiffinfo_exe , "listChanges " , changeset , tmp_output ])
176+ _run_geodiff ([config .geodiff_exe , "as-json " , changeset , tmp_output ])
177177 with open (tmp_output ) as f :
178178 out = json .load (f )
179179 os .remove (tmp_output )
@@ -188,19 +188,19 @@ def _geodiff_list_changes_summary(changeset):
188188 tmp_output = os .path .join (tmp_dir , 'dbsync-changeset-summary' )
189189 if os .path .exists (tmp_output ):
190190 os .remove (tmp_output )
191- _run_geodiff ([config .geodiffinfo_exe , "listChangesSummary " , changeset , tmp_output ])
191+ _run_geodiff ([config .geodiff_exe , "as-summary " , changeset , tmp_output ])
192192 with open (tmp_output ) as f :
193193 out = json .load (f )
194194 os .remove (tmp_output )
195195 return out ["geodiff_summary" ]
196196
197197
198198def _geodiff_make_copy (src_driver , src_conn_info , src , dst_driver , dst_conn_info , dst ):
199- _run_geodiff ([config .geodiffinfo_exe , "makeCopy " , src_driver , src_conn_info , src , dst_driver , dst_conn_info , dst ])
199+ _run_geodiff ([config .geodiff_exe , "copy " , "--driver-1" , src_driver , src_conn_info , "--driver-2" , dst_driver , dst_conn_info , src , dst ])
200200
201201
202202def _geodiff_create_changeset_dr (src_driver , src_conn_info , src , dst_driver , dst_conn_info , dst , changeset ):
203- _run_geodiff ([config .geodiffinfo_exe , "createChangesetDr " , src_driver , src_conn_info , src , dst_driver , dst_conn_info , dst , changeset ])
203+ _run_geodiff ([config .geodiff_exe , "diff " , "--driver-1" , src_driver , src_conn_info , "--driver-2" , dst_driver , dst_conn_info , src , dst , changeset ])
204204
205205
206206def _compare_datasets (src_driver , src_conn_info , src , dst_driver , dst_conn_info , dst , summary_only = True ):
0 commit comments