Hello community,
here is the log from the commit of package when-command for openSUSE:Factory checked in at 2016-08-03 11:44:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/when-command (Old)
and /work/SRC/openSUSE:Factory/.when-command.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "when-command"
Changes:
--------
--- /work/SRC/openSUSE:Factory/when-command/when-command.changes 2016-05-17 17:16:16.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.when-command.new/when-command.changes 2016-08-03 11:44:54.000000000 +0200
@@ -1,0 +2,10 @@
+Sat Jul 23 16:15:39 UTC 2016 - sor.alexei@meowr.ru
+
+- Update to version 0.9.12~beta3:
+ * Add a possibility to reset the success status of condition
+ tests so that also tests that have been successful during one
+ very long session can be performed again at user's request.
+ * Workaround a potential error when a locale is not supported.
+- Add a missing python3-gobject-Gdk dependency.
+
+-------------------------------------------------------------------
Old:
----
when-command-0.9.11-beta.1.tar.gz
New:
----
when-command-0.9.12-beta.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ when-command.spec ++++++
--- /var/tmp/diff_new_pack.PVWf7u/_old 2016-08-03 11:44:55.000000000 +0200
+++ /var/tmp/diff_new_pack.PVWf7u/_new 2016-08-03 11:44:55.000000000 +0200
@@ -16,9 +16,9 @@
#
-%define _version 0.9.11-beta.1
+%define _version 0.9.12-beta.3
Name: when-command
-Version: 0.9.11~beta1
+Version: 0.9.12~beta3
Release: 0
Summary: Configurable user task scheduler
License: BSD-3-Clause
@@ -41,6 +41,9 @@
Requires: python3-pyinotify
Recommends: %{name}-lang
BuildArch: noarch
+%if 0%{?suse_version} > 1320 || 0%{?sle_version} >= 120200
+Requires: python3-gobject-Gdk
+%endif
%description
When is a configurable user task scheduler. It interacts with the
++++++ when-command-0.9.11-beta.1.tar.gz -> when-command-0.9.12-beta.3.tar.gz ++++++
++++ 1973 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/when-command-0.9.11-beta.1/po/it.po new/when-command-0.9.12-beta.3/po/it.po
--- old/when-command-0.9.11-beta.1/po/it.po 2016-05-03 19:52:11.000000000 +0200
+++ new/when-command-0.9.12-beta.3/po/it.po 2016-06-15 23:35:46.000000000 +0200
@@ -7,7 +7,7 @@
msgstr ""
"Project-Id-Version: when-command 0.9.1-beta.1\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-02-09 19:35+0100\n"
+"POT-Creation-Date: 2016-05-14 21:02+0200\n"
"PO-Revision-Date: 2015-12-21 14:43+0100\n"
"Last-Translator: Francesco Garosi \n"
"Language-Team: Italian\n"
@@ -18,61 +18,73 @@
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.5.4\n"
-#: when-command.py:599
+#: when-command.py:623
#, python-format
msgid "Are you sure you want to delete task %s?"
msgstr "Confermi di voler eliminare il task %s?"
-#: when-command.py:600
+#: when-command.py:624
#, python-format
msgid "Are you sure you want to delete condition %s?"
msgstr "Confermi di voler eliminare la condizione %s?"
-#: when-command.py:601
+#: when-command.py:625
#, python-format
msgid "Are you sure you want to delete signal handler %s?"
msgstr "Confermi di voler eliminare il gestore di segnali %s?"
-#: when-command.py:602
+#: when-command.py:626
+msgid "Are you sure you want to reset condition tests?"
+msgstr "Confermi di voler ripristinare i test delle condizioni?"
+
+#: when-command.py:627
#, python-format
msgid "Task %s could not be deleted."
msgstr "Il task %s non può essere eliminato."
-#: when-command.py:603
+#: when-command.py:628
#, python-format
msgid "Condition %s could not be deleted."
msgstr "La condizione %s non può essere eliminata."
-#: when-command.py:604
+#: when-command.py:629
#, python-format
msgid "Signal handler %s could not be deleted."
msgstr "Il gestore di segnali %s non può essere eliminato."
-#: when-command.py:605
+#: when-command.py:630
#, python-format
msgid "Task %s could not be found."
msgstr "Il task %s non è stato trovato."
-#: when-command.py:606
+#: when-command.py:631
#, python-format
msgid "Condition %s could not be found."
msgstr "La condizione %s non è stata trovata."
-#: when-command.py:607
+#: when-command.py:632
#, python-format
msgid "Signal handler %s could not be found."
msgstr "Il gestore di segnali %s non è stato trovato."
-#: when-command.py:608
+#: when-command.py:633
#, python-format
msgid "Signal handler %s could not be registered."
msgstr "Il gestore di segnali %s non può essere registrato."
-#: when-command.py:609
+#: when-command.py:634 when-command.py:647
+msgid ""
+"Could not reset tests: a restart\n"
+"of the applet may be required"
+msgstr ""
+"Impossibile effettuare il reset dei test:\n"
+"potrebbe essere necessario riavviare l'applet"
+
+#: when-command.py:635
msgid "Must specify watched path: condition not created."
msgstr "Il percorso va specificato: condizione non creata."
-#: when-command.py:610
+#: when-command.py:636
msgid ""
"Invalid value for exit status specified.\n"
"Please consider reviewing it."
@@ -80,7 +92,7 @@
"Il valore specificato per l'esito non è valido.\n"
"Si prega di verificarlo."
-#: when-command.py:611
+#: when-command.py:637
msgid ""
"Invalid value for signal parameter index specified.\n"
"Cannot add parameter test."
@@ -88,457 +100,474 @@
"Il valore specificato per il parametro del segnale non è valido.\n"
"Non è possibile aggiungere il test sul parametro."
-#: when-command.py:612
+#: when-command.py:638
msgid "This feature has not been implemented yet."
msgstr "Questa feature non è stata ancora realizzata."
-#: when-command.py:613
+#: when-command.py:639
msgid ""
"This feature is not enabled.\n"
"Please check documentation for possible reasons."
msgstr ""
-"Questa feature non è abilitata. Consulta la documentazione per il possibile "
-"motivo."
+"Questa feature non è abilitata.\n"
+"Consulta la documentazione per il possibile motivo."
-#: when-command.py:614
+#: when-command.py:640
#, python-format
msgid "Version: %s"
msgstr "Versione: %s"
-#: when-command.py:615
+#: when-command.py:641
msgid "[disabled]"
msgstr "[disabilitato]"
-#: when-command.py:616
+#: when-command.py:642
msgid "Choose File"
msgstr "Scelta File"
-#: when-command.py:617
+#: when-command.py:643
msgid "Choose Directory"
msgstr "Scelta Directory"
-#: when-command.py:618
+#: when-command.py:644
msgid "Choose File or Directory"
msgstr "Scelta File o Directory"
-#: when-command.py:620
+#: when-command.py:646
#, python-format
msgid "Task failed: %s"
msgstr "Task fallito: %s"
-#: when-command.py:622
+#: when-command.py:649
msgid "Edit Tasks..."
msgstr "Modifica Task..."
-#: when-command.py:623
+#: when-command.py:650
msgid "Edit Conditions..."
msgstr "Modifica Condizioni..."
-#: when-command.py:624
+#: when-command.py:651
msgid "Settings..."
msgstr "Impostazioni..."
-#: when-command.py:625
+#: when-command.py:652
msgid "Task History..."
msgstr "Storico Task..."
-#: when-command.py:626
+#: when-command.py:653
msgid "Pause"
msgstr "Pausa"
-#: when-command.py:627
+#: when-command.py:654
+msgid "Reset Tests"
+msgstr "Ripristino Test"
+
+#: when-command.py:655
msgid "About..."
msgstr "Informazioni..."
-#: when-command.py:628
+#: when-command.py:656
msgid "Quit"
msgstr "Esci"
-#: when-command.py:630
+#: when-command.py:658
msgid "User Defined Event"
msgstr "Evento Definito dall'Utente"
-#: when-command.py:632
+#: when-command.py:660
msgid "Variable"
msgstr "Variabile"
-#: when-command.py:633 when-command.py:646
+#: when-command.py:661 when-command.py:674
msgid "Value"
msgstr "Valore"
-#: when-command.py:634 when-command.py:636
+#: when-command.py:662 when-command.py:664
msgid "Task Name"
msgstr "Nome Task"
-#: when-command.py:635
+#: when-command.py:663
msgid "Time / Duration"
msgstr "Orario / Durata"
-#: when-command.py:637
+#: when-command.py:665
msgid "Trigger"
msgstr "Causa"
-#: when-command.py:638 when-command-edit-condition.glade.h:10
+#: when-command.py:666 when-command-edit-condition.glade.h:10
#: when-command-edit-task.glade.h:14
msgid "Exit Code"
msgstr "Esito"
-#: when-command.py:639
+#: when-command.py:667
msgid "Result"
msgstr "Risultato"
-#: when-command.py:640
+#: when-command.py:668
msgid "Reason"
msgstr "Motivo"
-#: when-command.py:641
+#: when-command.py:669
msgid "Row ID"
msgstr "ID Riga"
-#: when-command.py:642
+#: when-command.py:670
msgid "Param"
msgstr "Param"
-#: when-command.py:643
+#: when-command.py:671
msgid "Sub"
msgstr "Sub"
-#: when-command.py:644
+#: when-command.py:672
msgid "Negate"
msgstr "Negazione"
-#: when-command.py:645
+#: when-command.py:673
msgid "Compare"
msgstr "Comparazione"
-#: when-command.py:649
+#: when-command.py:677
#, python-format
msgid "an existing instance will be %s"
msgstr "un'istanza esistente verrà %s"
-#: when-command.py:650
+#: when-command.py:678
msgid "shut down"
msgstr "arrestata"
-#: when-command.py:651
+#: when-command.py:679
msgid "killed"
msgstr "terminata"
-#: when-command.py:652
+#: when-command.py:680
msgid "instance shutdown finished"
msgstr "arresto dell'istanza concluso"
-#: when-command.py:653
+#: when-command.py:681
#, python-format
msgid "showing %s box of currently running instance"
msgstr "visualizzazione %s box dell'istanza corrente"
-#: when-command.py:654
+#: when-command.py:682
#, python-format
msgid "attempting to run condition %s"
msgstr "tentativo di avviare la condizione %s"
-#: when-command.py:655
+#: when-command.py:683
#, python-format
msgid "condition %s could not be run"
msgstr "la condizione %s non è stata avviata"
-#: when-command.py:656
+#: when-command.py:684
#, python-format
msgid "attempting to export task history to %s"
msgstr "tentativo di esportare lo storico dei task su %s"
-#: when-command.py:657
+#: when-command.py:685
msgid "could not save task history"
msgstr "impossibile esportare lo storico task"
-#: when-command.py:658
+#: when-command.py:686
msgid "history exported to specified file"
msgstr "storico file esportato nel file specificato"
-#: when-command.py:659
+#: when-command.py:687
msgid "removing all items"
msgstr "rimozione di tutti gli elementi"
-#: when-command.py:660
+#: when-command.py:688
msgid "could not remove condition list file"
msgstr "impossibile rimuovere il file lista di condizioni"
-#: when-command.py:661
+#: when-command.py:689
msgid "could not remove task list file"
msgstr "impossibile rimuovere il file lista di task"
-#: when-command.py:662
+#: when-command.py:690
msgid "could not remove signal handler list file"
msgstr "impossibile rimuovere il file lista di gestori di segnali"
-#: when-command.py:663
+#: when-command.py:691
msgid "exporting items:"
msgstr "esportazione elementi:"
-#: when-command.py:664 when-command.py:671
+#: when-command.py:692 when-command.py:699
#, python-format
msgid " %s tasks"
msgstr " %s task"
-#: when-command.py:665 when-command.py:672
+#: when-command.py:693 when-command.py:700
#, python-format
msgid " %s conditions"
msgstr " %s condizioni"
-#: when-command.py:666 when-command.py:673
+#: when-command.py:694 when-command.py:701
#, python-format
msgid " %s signal handlers"
msgstr " %s gestori di segnali"
-#: when-command.py:667
+#: when-command.py:695
#, python-format
msgid "items exported to file %s"
msgstr "elementi esportati nel file %s"
-#: when-command.py:668
+#: when-command.py:696
#, python-format
msgid "importing items from file %s"
msgstr "importazione elementi dal file %s"
-#: when-command.py:669
+#: when-command.py:697
msgid "could not import from dump file"
msgstr "impossibile importare dal file di dump"
-#: when-command.py:670
+#: when-command.py:698
msgid "restoring items:"
msgstr "ripristino elementi:"
-#: when-command.py:674
+#: when-command.py:702
msgid "items successfully imported"
msgstr "elementi importati con successo"
-#: when-command.py:675
+#: when-command.py:703
msgid "item successfully deleted"
msgstr "elemento eliminato con successo"
-#: when-command.py:676
+#: when-command.py:704
msgid "cannot delete item"
msgstr "impossibile eliminare elemento"
-#: when-command.py:677
+#: when-command.py:705
msgid "cannot add items from provided file"
msgstr "impossibile aggiungere elementi dal file"
-#: when-command.py:678
+#: when-command.py:706
msgid "cannot add items: malformed item file"
msgstr "impossibile aggiungere elementi: file malformato"
-#: when-command.py:679
+#: when-command.py:707
+msgid "condition checks restarted successfully"
+msgstr "test delle condizioni riavviati correttamente"
+
+#: when-command.py:708
msgid "no instance could be found"
msgstr "impossibile trovare un'istanza"
-#: when-command.py:680
+#: when-command.py:709
msgid "found a running instance"
msgstr "istanza attiva trovata"
-#: when-command.py:681
+#: when-command.py:710
msgid "tasks and conditions successfully exported"
msgstr "task e condizioni esportati con successo"
-#: when-command.py:682
+#: when-command.py:711
msgid "configuration has been reset"
msgstr "la configurazione è stata reimpostata"
-#: when-command.py:683
+#: when-command.py:712
msgid "tasks and conditions deleted"
msgstr "task e condizioni eliminati"
-#: when-command.py:684
+#: when-command.py:713
msgid "icons and data installed"
msgstr "icone e dati installati"
-#: when-command.py:686
+#: when-command.py:715
msgid "this program requires a graphical session"
msgstr "questo programma ha bisogno di una sessione grafica"
-#: when-command.py:687
+#: when-command.py:716
msgid "another instance is present: leaving"
msgstr "istanza attiva già presente: uscita"
-#: when-command.py:688
+#: when-command.py:717
msgid "could not find a running instance, please start it first"
msgstr "impossibile trovare un'istanza attiva, deve essere avviata"
-#: when-command.py:689
+#: when-command.py:718
msgid "feature not available in minimalistic mode"
msgstr "non disponibile in modalità minimale"
-#: when-command.py:690
+#: when-command.py:719
msgid "could not find a running instance"
msgstr "impossibile trovare un'istanza attiva"
-#: when-command.py:691
+#: when-command.py:720
msgid "dbus signals disabled by configuration"
msgstr "segnali dbus disabilitati dalla configurazione"
-#: when-command.py:692
+#: when-command.py:721
msgid "error in communication with running applet"
msgstr "errore nella comunicazione con l'istanza attiva"
-#: when-command.py:693
+#: when-command.py:722
msgid "an error occurred while trying to export items"
msgstr "si è verificato un errore nell'esportazione degli elementi"
-#: when-command.py:694
+#: when-command.py:723
msgid "cannot reset configuration, please close instance first"
msgstr "impossibile reimpostare la configurazione, chiudere l'istanza"
-#: when-command.py:695
+#: when-command.py:724
msgid "an error occurred while trying to reset configuration"
msgstr "errore verificato nel reimpostare la configurazione"
-#: when-command.py:696
+#: when-command.py:725
msgid "cannot clear items, please close instance first"
msgstr "impossibile eliminare elementi, chiudere l'istanza"
-#: when-command.py:697
+#: when-command.py:726
msgid "an error occurred while trying to delete items"
msgstr "errore verificato nell'eliminazione degli elementi"
-#: when-command.py:698
+#: when-command.py:727
msgid "cannot import items, please close instance first"
msgstr "impossibile importare elementi, chiudere l'istanza"
-#: when-command.py:699
+#: when-command.py:728
msgid "an error occurred while trying to import items"
msgstr "errore verificato nell'importazione degli elementi"
-#: when-command.py:700
+#: when-command.py:729
+#, python-format
msgid "%s items could not be imported"
msgstr "%s elementi non sono stati importati"
-#: when-command.py:701
+#: when-command.py:730
msgid "cannot install, please close instance first"
msgstr "impossibile installare, chiudere l'istanza"
-#: when-command.py:702
+#: when-command.py:731
msgid "an error occurred while trying to install icons"
msgstr "errore verificato nell'installazione"
-#: when-command.py:703
+#: when-command.py:732
+msgid "an error occurred while restarting conditions"
+msgstr "errore nel ripristino dei test delle condizioni"
+
+#: when-command.py:733
msgid "no error found"
msgstr "nessun errore trovato"
-#: when-command.py:704
+#: when-command.py:734
msgid "unknown item type"
msgstr "tipo di elemento sconosciuto"
-#: when-command.py:705
+#: when-command.py:735
msgid "item name conflict"
msgstr "conflitto tra nomi di elementi"
-#: when-command.py:706
+#: when-command.py:736
msgid "item not found"
msgstr "elemento non trovato"
-#: when-command.py:707
+#: when-command.py:737
msgid "error communicating with applet"
msgstr "errore nella comunicazione con l'applet"
-#: when-command.py:708
+#: when-command.py:738
msgid "unknown error or dependency conflict"
msgstr "errore sconosciuto o conflitto di dipendenza"
-#: when-command.py:710
+#: when-command.py:740
msgid "show applet version"
msgstr "visualizza la versione dell'applet"
-#: when-command.py:711
+#: when-command.py:741
msgid "show settings dialog box for the running instance [R]"
msgstr "visualizza box impostazioni per l'istanza attiva [R]"
-#: when-command.py:712
+#: when-command.py:742
msgid "show history dialog box for the running instance [R]"
msgstr "visualizza box storico per l'istanza attiva [R]"
-#: when-command.py:713
+#: when-command.py:743
msgid "show tasks dialog box for the running instance [R]"
msgstr "visualizza box dei task per l'istanza attiva [R]"
-#: when-command.py:714
+#: when-command.py:744
msgid "show conditions box for the running instance [R]"
msgstr "visualizza box condizioni per l'istanza attiva [R]"
-#: when-command.py:715
+#: when-command.py:745
msgid "show dbus signals box for the running instance [R]"
msgstr "visualizza box segnali dbus per l'istanza attiva [R]"
-#: when-command.py:716
+#: when-command.py:746
msgid "reset general configuration to default [S]"
msgstr "reimposta la configurazione a predefinita [S]"
-#: when-command.py:717
+#: when-command.py:747
msgid "show applet icon"
msgstr "visualizza icona applet"
-#: when-command.py:718
+#: when-command.py:748
msgid "clear all tasks and conditions [S]"
msgstr "elimina tutti i task e condizioni [S]"
-#: when-command.py:719
+#: when-command.py:749
msgid "install application icons and autostart [S]"
msgstr "installazione di icone e autostart applicazione [S]"
-#: when-command.py:720
+#: when-command.py:750
msgid "query for a running instance"
msgstr "verifica se c'è un'istanza attiva"
-#: when-command.py:721
+#: when-command.py:751
msgid "export task history to a text file [R]"
msgstr "esporta storico task in un file di testo [R]"
-#: when-command.py:722
+#: when-command.py:752
msgid "run a command-line bound condition [R]"
msgstr "avvia una condizione da linea di comando [R]"
-#: when-command.py:723
+#: when-command.py:753
msgid "enqueue a command-line bound condition [R]"
msgstr "accoda una condizione da linea di comando [R]"
-#: when-command.py:724
+#: when-command.py:754
msgid "run shutdown tasks and close an existing istance [R]"
msgstr "chiusura istanza attiva avviando task di chiusura [R]"
-#: when-command.py:725
+#: when-command.py:755
+msgid "reset tests for already successful conditions [R]"
+msgstr "ripristina test per condizioni già verificate [R]"
+
+#: when-command.py:756
msgid "kill an existing istance [R]"
msgstr "terminazione istanza attiva [R]"
-#: when-command.py:726
+#: when-command.py:757
msgid "save tasks and conditions to a portable format"
msgstr "esporta task e condizioni su file portabile"
-#: when-command.py:727
+#: when-command.py:758
msgid "import tasks and conditions from saved file [S]"
msgstr "importa task e condizioni da file portabile [S]"
-#: when-command.py:728
+#: when-command.py:759
msgid "list items of the given type to console"
msgstr "mostra elementi del tipo specificato su console"
-#: when-command.py:729
+#: when-command.py:760
msgid "add items from specified file or standard input"
msgstr "aggiungi elementi da un file o dallo standard input"
-#: when-command.py:730
+#: when-command.py:761
msgid "delete the item specified as [type:]NAME"
msgstr "elimina elemento specificato come [tipo:]NOME"
-#: when-command.py:731
+#: when-command.py:762
msgid "show verbose output for some options"
msgstr "visualizza output esteso per alcune opzioni"
-#: when-command.py:732
+#: when-command.py:763
#, python-format
msgid "%s: %s, version %s"
msgstr "%s: %s, versione %s"
-#: when-command.py:733
+#: when-command.py:764
#, python-format
msgid ""
"%s: %s - %s /\n"
@@ -556,7 +585,7 @@
"l'opzione --verbose per ottenere output dal comando, poiché la maggior parte "
"delle operazioni non produce output per default.\n"
-#: when-command.py:740
+#: when-command.py:771
#, python-format
msgid ""
"Note: options marked with [R] require an instance running in the "
@@ -1047,62 +1076,66 @@
msgstr "Mantiene Pausa tra Sessioni"
#: when-command-settings.glade.h:15
+msgid "Reset Condition Tests on Wakeup Events"
+msgstr "Ripristino Test su Condizioni per Eventi di Wakeup"
+
+#: when-command-settings.glade.h:16
msgid "Scheduler"
msgstr "Scheduler"
-#: when-command-settings.glade.h:16
+#: when-command-settings.glade.h:17
msgid "Max Concurrent Tasks:"
msgstr "Max Task Concorrenti:"
-#: when-command-settings.glade.h:17
+#: when-command-settings.glade.h:18
msgid "Critical"
msgstr "Critical"
-#: when-command-settings.glade.h:18
+#: when-command-settings.glade.h:19
msgid "Error"
msgstr "Error"
-#: when-command-settings.glade.h:19
+#: when-command-settings.glade.h:20
msgid "Warning"
msgstr "Warning"
-#: when-command-settings.glade.h:20
+#: when-command-settings.glade.h:21
msgid "Info"
msgstr "Info"
-#: when-command-settings.glade.h:21
+#: when-command-settings.glade.h:22
msgid "Debug"
msgstr "Debug"
-#: when-command-settings.glade.h:22
+#: when-command-settings.glade.h:23
msgid "Log Level:"
msgstr "Livello Log:"
-#: when-command-settings.glade.h:23
+#: when-command-settings.glade.h:24
msgid "Max Log Size (bytes):"
msgstr "Max Dimensione Log (byte):"
-#: when-command-settings.glade.h:24
+#: when-command-settings.glade.h:25
msgid "Number Of Log Backups:"
msgstr "Numero dei Backup Log:"
-#: when-command-settings.glade.h:25
+#: when-command-settings.glade.h:26
msgid "Instance History Items:"
msgstr "Elementi Storico Istanza:"
-#: when-command-settings.glade.h:26
+#: when-command-settings.glade.h:27
msgid "Enable User Defined Events (DBus)"
msgstr "Abilita Eventi Utente (DBus)"
-#: when-command-settings.glade.h:27
+#: when-command-settings.glade.h:28
msgid "Enable File and Directory Notifications"
msgstr "Abilita Notifiche File e Directory"
-#: when-command-settings.glade.h:28
+#: when-command-settings.glade.h:29
msgid "Enable Task and Condition Environment Variables"
msgstr "Abilita Variabili Ambiente di Task e Condizioni"
-#: when-command-settings.glade.h:29
+#: when-command-settings.glade.h:30
msgid "Advanced"
msgstr "Avanzate"
Files old/when-command-0.9.11-beta.1/share/locale/it/LC_MESSAGES/when-command.mo and new/when-command-0.9.12-beta.3/share/locale/it/LC_MESSAGES/when-command.mo differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/when-command-0.9.11-beta.1/share/man/man1/when-command.1 new/when-command-0.9.12-beta.3/share/man/man1/when-command.1
--- old/when-command-0.9.11-beta.1/share/man/man1/when-command.1 2016-05-03 19:52:11.000000000 +0200
+++ new/when-command-0.9.12-beta.3/share/man/man1/when-command.1 2016-06-15 23:35:46.000000000 +0200
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH "WHEN-COMMAND" "1" "January 12, 2016" "0.9" "When Documentation"
+.TH "WHEN-COMMAND" "1" "May 22, 2016" "0.9" "When Documentation"
.SH NAME
when-command \- When Documentation
.
@@ -51,7 +51,7 @@
something has gone the wrong way \-\- such as the \fB\-\-show\-settings\fP switch
mentioned above, or the \fB\-I\fP (or \fB\-\-show\-icon\fP) switch, to recover from an
unwantedly hidden icon. There are also switches that grant access to "advanced"
-features, which are better covered in the next sections.
+features, which are better covered in the online documentation.
.sp
The available options are:
.INDENT 0.0
@@ -72,15 +72,19 @@
.TP
.B \-d\fP,\fB \-\-show\-signals
show the DBus signal handler editor box for an
-existing instance [1]
+existing instance
.TP
.B \-R\fP,\fB \-\-reset\-config
reset applet configuration to default, requires the
applet to be shut down with an appropriate switch
.TP
+.B \-E\fP,\fB \-\-restart\-conditions
+reset conditions to be checked as if they had not
+been already successful: it allows to restore checks
+also for conditions that are not recurrent
+.TP
.B \-I\fP,\fB \-\-show\-icon
-show applet icon, the icon will be shown at the next
-startup
+show applet icon
.TP
.B \-T\fP,\fB \-\-install
install or reinstall application icon and autostart
@@ -241,7 +245,12 @@
will remain paused upon applet restart if it was paused when the applet (or
session) was closed. Please notice that the indicator icon gives feedback
anyway about the paused/non\-paused state. Use \fBpreserve pause\fP in the
-configuration file.
+configuration file
+.IP \(bu 2
+\fIReset Condition Tests on Wakeup Events\fP: automatically restore condition
+checks for non recurring conditions also on wakeup (usually from suspended
+state) as if the applet were restarted. The option is \fBwakeup reset\fP in
+the configuration.
.UNINDENT
.UNINDENT
.UNINDENT
@@ -286,20 +295,10 @@
.UNINDENT
.UNINDENT
.sp
-The configuration is \fIimmediately stored upon confirmation\fP to the
-configuration file, although some settings (such as \fINotifications\fP,
-\fIIcon Theme\fP, and most advanced settings) might require a restart of the
-applet. The configuration file can be edited with a standard text editor, and
-it follows some conventions common to most configuration files. The sections
+The configuration file can be edited with a standard text editor, and it
+follows some conventions common to most configuration files. The sections
in the file might slightly differ from the tabs in the \fISettings\fP dialog, but
the entries are easily recognizable.
-.sp
-Manual configuration can be particularly useful to bring back the program
-icon once the user decided to hide it losing access to the menu,
-by setting the \fBshow icon\fP entry to \fBtrue\fP\&. Another way to force access to
-the \fISettings\fP dialog box when the icon is hidden is to invoke the applet from
-the command line using the \fB\-\-show\-settings\fP (or \fB\-s\fP) switch when an
-instance is running.
.SH ITEM DEFINITION FILE
.sp
The \fIitems\fP (\fItasks\fP, \fIconditions\fP and especially \fIsignal handlers\fP) managed
@@ -402,7 +401,7 @@
.SS Signal Handlers
.sp
Signal handlers are an advanced feature, and cannot be defined if they are
-not enabled in the configuration: read the appropriate section on how to
+not enabled in the configuration: read the appropriate paragraph on how to
enable \fIuser defined events\fP\&. If user events are enabled, the following
entries can be used:
.INDENT 0.0
@@ -711,10 +710,6 @@
generated using the \fB\-\-export\fP switch. If no argument is given, \fBWhen\fP
expects that items have been exported giving no file specification to the
\fB\-\-export\fP switch. After import \fBWhen\fP can be restarted.
-.IP [1] 5
-This is an advanced feature and is not available by default.
-It has to be enabled in the program settings to be accessible. Refer to the
-appropriate chapter for more information.
.SH AUTHOR
Francesco Garosi
.SH COPYRIGHT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/when-command-0.9.11-beta.1/share/when-command/when-command-settings.glade new/when-command-0.9.12-beta.3/share/when-command/when-command-settings.glade
--- old/when-command-0.9.11-beta.1/share/when-command/when-command-settings.glade 2016-05-03 19:52:11.000000000 +0200
+++ new/when-command-0.9.12-beta.3/share/when-command/when-command-settings.glade 2016-06-15 23:35:46.000000000 +0200
@@ -304,6 +304,22 @@
<property name="height">1</property>
</packing>
</child>
+ <child>
+ <object class="GtkCheckButton" id="chkResetConditions">
+ <property name="label" translatable="yes">Reset Condition Tests on Wakeup Events</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">4</property>
+ <property name="width">2</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/when-command-0.9.11-beta.1/share/when-command/when-command.py new/when-command-0.9.12-beta.3/share/when-command/when-command.py
--- old/when-command-0.9.11-beta.1/share/when-command/when-command.py 2016-05-03 19:52:11.000000000 +0200
+++ new/when-command-0.9.12-beta.3/share/when-command/when-command.py 2016-06-15 23:35:46.000000000 +0200
@@ -78,8 +78,8 @@
# * the first holds the version ID that build utilities can extract
# * the second one includes a message that is used both as a commit message
# and as a tag-associated message (in `git tag -m`)
-APPLET_VERSION = '0.9.11~beta.1'
-APPLET_TAGDESC = 'Correctly manage storage device attachment in Xenial'
+APPLET_VERSION = '0.9.12~beta.3'
+APPLET_TAGDESC = 'Work around an issue occurring on unsupported locales'
# logging constants
LOG_FORMAT = '%(asctime)s %(levelname)s: %(message)s'
@@ -493,6 +493,12 @@
# TODO: add more stock event definitions here
}
+# list of events that may reset conditions
+sysevents_reset_conditions = [
+ EVENT_SYSTEM_RESUME,
+ # EVENT_SESSION_SCREENSAVER_EXIT,
+]
+
# verify that the user folders are present, otherwise create them
def verify_user_folders():
@@ -566,9 +572,12 @@
# setup i18n for both applet text and dialogs
-locale.setlocale(locale.LC_ALL, locale.getlocale())
-locale.bindtextdomain(APPLET_NAME, APP_LOCALE_FOLDER)
-locale.textdomain(APPLET_NAME)
+try:
+ locale.setlocale(locale.LC_ALL, locale.getlocale())
+ locale.bindtextdomain(APPLET_NAME, APP_LOCALE_FOLDER)
+ locale.textdomain(APPLET_NAME)
+except locale.Error:
+ locale.setlocale(locale.LC_ALL, 'C')
_ = locale.gettext
@@ -617,6 +626,7 @@
resources.DLG_CONFIRM_DELETE_TASK = _("Are you sure you want to delete task %s?")
resources.DLG_CONFIRM_DELETE_CONDITION = _("Are you sure you want to delete condition %s?")
resources.DLG_CONFIRM_DELETE_SIGHANDLER = _("Are you sure you want to delete signal handler %s?")
+resources.DLG_CONFIRM_RESET_CONDITIONS = _("Are you sure you want to reset condition tests?")
resources.DLG_CANNOT_DELETE_TASK = _("Task %s could not be deleted.")
resources.DLG_CANNOT_DELETE_CONDITION = _("Condition %s could not be deleted.")
resources.DLG_CANNOT_DELETE_SIGHANDLER = _("Signal handler %s could not be deleted.")
@@ -624,6 +634,7 @@
resources.DLG_CANNOT_FIND_CONDITION = _("Condition %s could not be found.")
resources.DLG_CANNOT_FIND_SIGHANDLER = _("Signal handler %s could not be found.")
resources.DLG_CANNOT_REGISTER_SIGHANDLER = _("Signal handler %s could not be registered.")
+resources.DLG_RESET_CONDITIONS_FAILED = _("Could not reset tests: a restart\nof the applet may be required")
resources.DLG_PATH_NOT_SPECIFIED = _("Must specify watched path: condition not created.")
resources.DLG_WRONG_EXIT_STATUS = _("Invalid value for exit status specified.\nPlease consider reviewing it.")
resources.DLG_WRONG_PARAM_INDEX = _("Invalid value for signal parameter index specified.\nCannot add parameter test.")
@@ -636,12 +647,14 @@
resources.DLG_TITLE_CHOOSE_FILEDIR = _("Choose File or Directory")
resources.NOTIFY_TASK_FAILED = _("Task failed: %s")
+resources.NOTIFY_RESET_CONDITIONS_FAILED = _("Could not reset tests: a restart\nof the applet may be required")
resources.MENU_EDIT_TASKS = _("Edit Tasks...")
resources.MENU_EDIT_CONDITIONS = _("Edit Conditions...")
resources.MENU_SETTINGS = _("Settings...")
resources.MENU_TASK_HISTORY = _("Task History...")
resources.MENU_PAUSE = _("Pause")
+resources.MENU_RESET_CONDS = _("Reset Tests")
resources.MENU_ABOUT = _("About...")
resources.MENU_QUIT = _("Quit")
@@ -694,6 +707,7 @@
resources.OERR_ITEMOPS_DEL_FAIL = _("cannot delete item")
resources.OERR_ITEMOPS_ADD_NOREAD = _("cannot add items from provided file")
resources.OERR_ITEMOPS_ADD_FAIL = _("cannot add items: malformed item file")
+resources.OERR_RESTART_CONDITIONS = _("condition checks restarted successfully")
resources.OERR_NO_INSTANCE = _("no instance could be found")
resources.OERR_FOUND_INSTANCE = _("found a running instance")
resources.OERR_EXPORT = _("tasks and conditions successfully exported")
@@ -718,6 +732,7 @@
resources.OERR_ERR_IMPORT_FAILITEMS = _("%s items could not be imported")
resources.OERR_ERR_INSTALL_RUNNING = _("cannot install, please close instance first")
resources.OERR_ERR_INSTALL_GENERIC = _("an error occurred while trying to install icons")
+resources.OERR_ERR_RESTART_CONDITIONS = _("an error occurred while restarting conditions")
resources.OERR_ERR_ITEMOPS_OK = _("no error found")
resources.OERR_ERR_ITEMOPS_TYPE = _("unknown item type")
resources.OERR_ERR_ITEMOPS_CONFLICT = _("item name conflict")
@@ -740,6 +755,7 @@
resources.COMMAND_LINE_HELP_RUN_CONDITION = _("run a command-line bound condition [R]")
resources.COMMAND_LINE_HELP_DEFER_CONDITION = _("enqueue a command-line bound condition [R]")
resources.COMMAND_LINE_HELP_SHUTDOWN = _("run shutdown tasks and close an existing istance [R]")
+resources.COMMAND_LINE_HELP_RESTART_CONDITIONS = _("reset tests for already successful conditions [R]")
resources.COMMAND_LINE_HELP_KILL = _("kill an existing istance [R]")
resources.COMMAND_LINE_HELP_EXPORT = _("save tasks and conditions to a portable format")
resources.COMMAND_LINE_HELP_IMPORT = _("import tasks and conditions from saved file [S]")
@@ -1927,6 +1943,10 @@
signal_handlers.save()
conditions.save()
+ @dbus.service.method(APPLET_BUS_NAME, out_signature='b')
+ def RestartConditions(self):
+ return reset_conditions()
+
@dbus.service.method(APPLET_BUS_NAME, out_signature='as')
def GetHistoryEntries(self):
l = []
@@ -1978,6 +1998,7 @@
'tick seconds': int,
'skip seconds': int,
'preserve pause': bool_spec,
+ 'wakeup reset': bool_spec,
},
'General': {
'show icon': bool_spec,
@@ -2006,6 +2027,7 @@
tick seconds = 15
skip seconds = 60
preserve pause = true
+ wakeup reset = true
[General]
show icon = true
@@ -2148,6 +2170,17 @@
applet_lock.release()
+# check if current event should reset conditions
+def sysevent_check_reset_conditions(event):
+ if event in sysevents_reset_conditions \
+ and config.get('Scheduler', 'wakeup reset'):
+ applet_log.info("SYSEVENT: event %s is configured to reset conditions" % event)
+ if not reset_conditions():
+ applet_log.error("SYSEVENT: conditions could not be correctly reset")
+ applet.set_attention()
+ applet.notify(resources.NOTIFY_RESET_CONDITIONS_FAILED)
+
+
# check among the path notifications by setting the global changed path:
# it is not going to be used for now, all file notification events are handled
# in a deferred fashion until a safe way to specify synchronous notifications
@@ -2344,6 +2377,18 @@
return next((c for c in self._list if c.cond_name == cond_name), None)
+# a simple utility to reset successfulness flag on all conditions
+# note that the flag name is not mangled, so it can be used as it is
+# TODO: transition to either a condition method or a non private variable
+def reset_conditions():
+ applet_log.info("MAIN: resetting success flag on all conditions")
+ applet_lock.acquire()
+ for condition in conditions:
+ condition._has_succeeded = False
+ applet_lock.release()
+ return True
+
+
class SignalHandlers(object):
_list = []
@@ -4358,6 +4403,7 @@
return
if signal_caught and self.callback(self.manager, *args):
self._info("stock event signal caught: raising event %s" % self.handler_name)
+ sysevent_check_reset_conditions(self.handler_name)
if self.defer:
deferred_events.append(self.handler_name)
else:
@@ -5573,6 +5619,8 @@
o('chkNotifications').set_active(config.get('General', 'notifications'))
o('chkPreservePause').set_active(
config.get('Scheduler', 'preserve pause'))
+ o('chkResetConditions').set_active(
+ config.get('Scheduler', 'wakeup reset'))
o('cbLogLevel').set_active(log_level_idx)
o('cbIconTheme').set_active(icon_theme_idx)
o('txtTickSeconds').set_text(
@@ -5634,6 +5682,8 @@
o('chkEnableEnvVars').get_active())
preserve_pause = o('chkPreservePause').get_active()
config.set('Scheduler', 'preserve pause', preserve_pause)
+ wakeup_reset = o('chkResetConditions').get_active()
+ config.set('Scheduler', 'wakeup reset', wakeup_reset)
if not preserve_pause:
unlink_pause_file()
try:
@@ -6129,6 +6179,12 @@
item_pause.show()
menu.append(item_pause)
+ if not minimalistic:
+ item_reset_conds = Gtk.MenuItem(label=resources.MENU_RESET_CONDS)
+ item_reset_conds.connect('activate', self.reset_conditions)
+ item_reset_conds.show()
+ menu.append(item_reset_conds)
+
separator = Gtk.SeparatorMenuItem()
separator.show()
menu.append(separator)
@@ -6162,6 +6218,22 @@
self.indicator.set_icon_theme_path(
os.path.join(APP_ICON_FOLDER, icon_suffix))
+ def reset_conditions(self, _):
+ msgbox = Gtk.MessageDialog(type=Gtk.MessageType.QUESTION,
+ buttons=Gtk.ButtonsType.YES_NO)
+ msgbox.set_markup(resources.DLG_CONFIRM_RESET_CONDITIONS)
+ ret = msgbox.run()
+ msgbox.hide()
+ msgbox.destroy()
+ if ret == Gtk.ResponseType.YES:
+ if not reset_conditions():
+ msgbox = Gtk.MessageDialog(type=Gtk.MessageType.ERROR,
+ buttons=Gtk.ButtonsType.OK)
+ msgbox.set_markup(resources.DLG_RESET_CONDITIONS_FAILED)
+ msgbox.run()
+ msgbox.hide()
+ msgbox.destroy()
+
# try to do most configuration tasks automatically
def reconfigure(self):
global ui_add_task
@@ -6469,6 +6541,23 @@
return False
+def call_restart_conditions(verbose=False):
+ bus = dbus.SessionBus()
+ proxy = bus.get_object(APPLET_BUS_NAME, APPLET_BUS_PATH)
+ try:
+ if not proxy.RestartConditions():
+ applet_log.error("MAIN: failed to restart conditions")
+ oerr(resources.OERR_ERR_RESTART_CONDITIONS, verbose)
+ return False
+ else:
+ applet_log.info("MAIN: conditions restarted successfully")
+ oerr(resources.OERR_RESTART_CONDITIONS, verbose)
+ return True
+ except dbus.exceptions.DBusException:
+ oerr(resources.OERR_ERR_ITEMOPS_DBUS, verbose)
+ return False
+
+
def do_add_items(filename, verbose=False):
if filename == '-':
applet_log.info("MAIN: reading items from standard input")
@@ -6961,6 +7050,11 @@
help=resources.COMMAND_LINE_HELP_DEFER_CONDITION
)
parser.add_argument(
+ '-E', '--restart-conditions',
+ dest='restart_conditions', action='store_true',
+ help=resources.COMMAND_LINE_HELP_RESTART_CONDITIONS
+ )
+ parser.add_argument(
'--item-list',
dest='item_list', metavar='ITEMTYPE', nargs='?', const='*',
help=resources.COMMAND_LINE_HELP_ITEM_LIST
@@ -7082,19 +7176,27 @@
if args.run_condition:
if not running:
- oerr(resources.OERR_ERR_DBUS_DISABLED, verbose)
+ oerr(resources.OERR_ERR_REQUIRE_INSTANCE, verbose)
sys.exit(2)
else:
if not(call_run_condition(args.run_condition, False, verbose)):
sys.exit(2)
if args.defer_condition:
if not running:
- oerr(resources.OERR_ERR_DBUS_DISABLED, verbose)
+ oerr(resources.OERR_ERR_REQUIRE_INSTANCE, verbose)
sys.exit(2)
else:
if not(call_run_condition(args.defer_condition, True, verbose)):
sys.exit(2)
+ if args.restart_conditions:
+ if not running:
+ oerr(resources.OERR_ERR_REQUIRE_INSTANCE, verbose)
+ sys.exit(2)
+ else:
+ if not(call_restart_conditions(verbose)):
+ sys.exit(2)
+
if args.item_delete:
if running:
if not call_remove_item(args.item_delete, verbose):