diff --git a/ChangeLog b/ChangeLog index 9386e5ab6..8c62c2a1e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -17,6 +17,7 @@ Features + #1297 The task₋sync(5) man pages is rewritten with examples. + #1339 The configuration file now supports JSON encoding of Unicode characters, by specifying \uNNNN. + + #1423 sync vs. push, pull, merge collision avoidance. + #1385 Need a way to configure the trust of self-signed certificates. + Stores un-synched transactions in /backlog.data. + Adds a new 'synchronize' command to sync data with a task server. diff --git a/src/commands/CmdShow.cpp b/src/commands/CmdShow.cpp index 5b13bbf41..b2fa840ac 100644 --- a/src/commands/CmdShow.cpp +++ b/src/commands/CmdShow.cpp @@ -168,7 +168,7 @@ int CmdShow::execute (std::string& output) " list.all.tags" " locale" " locking" - " merge.autopush" + " merge.autopush" // Deprecated 2.3.0 " merge.default.uri" // Deprecated 2.3.0 " monthsperline" " nag" @@ -300,19 +300,7 @@ int CmdShow::execute (std::string& output) color = warning; } - // TODO Deprecated. std::string value = i->second; - // hide sensible information - if ((i->first.substr (0, 5) == "push." || - i->first.substr (0, 5) == "pull." || - i->first.substr (0, 6) == "merge.") && - (i->first.find (".uri") != std::string::npos)) - { - Uri uri (value); - uri.parse (); - value = uri.ToString (); - } - int row = view.addRow (); view.set (row, 0, i->first, color); view.set (row, 1, value, color); diff --git a/src/commands/CmdSync.cpp b/src/commands/CmdSync.cpp index 153f7d9a8..715abf645 100644 --- a/src/commands/CmdSync.cpp +++ b/src/commands/CmdSync.cpp @@ -78,6 +78,13 @@ int CmdSync::execute (std::string& output) connection.rfind (':') == std::string::npos) throw std::string (STRING_CMD_SYNC_NO_SERVER); + // If push/pull/merge is configured, quit. + if (context.config.get ("merge.autopush") != "" || + context.config.get ("merge.default.uri") != "" || + context.config.get ("push.default.uri") != "" || + context.config.get ("pull.default.uri") != "") + throw std::string (STRING_CMD_SYNC_NOMERGE); + // Obtain credentials. std::string credentials_string = context.config.get ("taskd.credentials"); if (credentials_string == "") diff --git a/src/en-US.h b/src/en-US.h index 4ae879cfd..ab8e7acb8 100644 --- a/src/en-US.h +++ b/src/en-US.h @@ -428,6 +428,7 @@ #define STRING_CMD_SYNC_NO_CA "CA certificate not found." #define STRING_CMD_SYNC_CONNECT "Could not connect to {1} {2}" #define STRING_CMD_SYNC_HANDSHAKE "Handshake failed. {1}" +#define STRING_CMD_SYNC_NOMERGE "Task push/pull/merge is configured, deprecated, and does not work with 'sync'." #define STRING_CMD_DIAG_USAGE "Platform, build and environment details" #define STRING_CMD_DIAG_PLATFORM "Platform" #define STRING_CMD_DIAG_UNKNOWN "" diff --git a/src/es-ES.h b/src/es-ES.h index b0478dcc3..7c2e4ff59 100644 --- a/src/es-ES.h +++ b/src/es-ES.h @@ -439,6 +439,7 @@ #define STRING_CMD_SYNC_NO_CA "Certificado CA no encontrado." #define STRING_CMD_SYNC_CONNECT "No se pudo conectar a {1} {2}" #define STRING_CMD_SYNC_HANDSHAKE "Handshake fallido. {1}" +#define STRING_CMD_SYNC_NOMERGE "Task push/pull/merge is configured, deprecated, and does not work with 'sync'." #define STRING_CMD_DIAG_USAGE "Detalles de plataforma, construcción y entorno" #define STRING_CMD_DIAG_PLATFORM "Plataforma" #define STRING_CMD_DIAG_UNKNOWN "" diff --git a/src/fr-FR.h b/src/fr-FR.h index 366e224fc..0be2a7960 100644 --- a/src/fr-FR.h +++ b/src/fr-FR.h @@ -428,6 +428,7 @@ #define STRING_CMD_SYNC_NO_CA "CA certificate not found." #define STRING_CMD_SYNC_CONNECT "Could not connect to {1} {2}" #define STRING_CMD_SYNC_HANDSHAKE "Handshake failed. {1}" +#define STRING_CMD_SYNC_NOMERGE "Task push/pull/merge is configured, deprecated, and does not work with 'sync'." #define STRING_CMD_DIAG_USAGE "Platform, build and environment details" #define STRING_CMD_DIAG_PLATFORM "Platform" #define STRING_CMD_DIAG_UNKNOWN "" diff --git a/src/it-IT.h b/src/it-IT.h index 3c0274c3d..0653e1dcf 100644 --- a/src/it-IT.h +++ b/src/it-IT.h @@ -429,6 +429,7 @@ #define STRING_CMD_SYNC_NO_CA "CA certificate not found." #define STRING_CMD_SYNC_CONNECT "Could not connect to {1} {2}" #define STRING_CMD_SYNC_HANDSHAKE "Handshake failed. {1}" +#define STRING_CMD_SYNC_NOMERGE "Task push/pull/merge is configured, deprecated, and does not work with 'sync'." #define STRING_CMD_DIAG_USAGE "Dettagli su piattaforma, build e ambiente" #define STRING_CMD_DIAG_PLATFORM "Piattaforma" #define STRING_CMD_DIAG_UNKNOWN ""