Philipp Hörist pushed to branch master at gajim / gajim
Commits: 6424a64a by Philipp Hörist at 2019-08-02T10:34:03Z Preferences: Show debug option on all platforms - - - - - 13078dfd by Philipp Hörist at 2019-08-02T11:10:56Z Delete debug logs older than 3 days - - - - - 3 changed files: - gajim/application.py - gajim/common/app.py - gajim/gtk/preferences.py Changes: ===================================== gajim/application.py ===================================== @@ -33,6 +33,7 @@ # You should have received a copy of the GNU General Public License # along with Gajim. If not, see <http://www.gnu.org/licenses/>. +import time import sys from datetime import datetime from pathlib import Path @@ -357,8 +358,9 @@ class GajimApplication(Gtk.Application): configpaths.init() - if app.get_win_debug_mode(): + if app.get_debug_mode(): # Redirect has to happen before logging init + self._cleanup_debug_logs() self._redirect_output() logging_helpers.init() logging_helpers.set_verbose() @@ -393,11 +395,21 @@ class GajimApplication(Gtk.Application): @staticmethod def _redirect_output(): debug_folder = Path(configpaths.get('DEBUG')) - date = datetime.today().strftime('%Y-%m-%d') + date = datetime.today().strftime('%d%m%Y-%H%M%S') filename = '%s-debug.log' % date fd = open(debug_folder / filename, 'a') sys.stderr = sys.stdout = fd + @staticmethod + def _cleanup_debug_logs(): + debug_folder = Path(configpaths.get('DEBUG')) + debug_files = list(debug_folder.glob('*-debug.log*')) + now = time.time() + for file in debug_files: + # Delete everything older than 3 days + if file.stat().st_ctime < now - 259200: + file.unlink() + def add_actions(self): ''' Build Application Actions ''' from gajim import app_actions ===================================== gajim/common/app.py ===================================== @@ -680,7 +680,7 @@ def load_css_config(): from gajim.gtk.css_config import CSSConfig css_config = CSSConfig() -def set_win_debug_mode(enable: bool) -> None: +def set_debug_mode(enable: bool) -> None: debug_folder = Path(configpaths.get('DEBUG')) debug_enabled = debug_folder / 'debug-enabled' if enable: @@ -689,9 +689,7 @@ def set_win_debug_mode(enable: bool) -> None: if debug_enabled.exists(): debug_enabled.unlink() -def get_win_debug_mode() -> bool: - if sys.platform != 'win32': - return False +def get_debug_mode() -> bool: debug_folder = Path(configpaths.get('DEBUG')) debug_enabled = debug_folder / 'debug-enabled' return debug_enabled.exists() ===================================== gajim/gtk/preferences.py ===================================== @@ -13,7 +13,6 @@ # along with Gajim. If not, see <http://www.gnu.org/licenses/>. import os -import sys from gi.repository import Gtk from gi.repository import Gdk @@ -410,10 +409,8 @@ class Preferences(Gtk.ApplicationWindow): st = app.config.get('log_contact_status_changes') self._ui.log_show_changes_checkbutton.set_active(st) - # Enable debug logging - if sys.platform == 'win32': - self._ui.enable_logging.set_active(app.get_win_debug_mode()) - self._ui.enable_logging.show() + self._ui.enable_logging.set_active(app.get_debug_mode()) + self._ui.enable_logging.show() self._ui.connect_signals(self) self.connect('key-press-event', self._on_key_press) @@ -1000,7 +997,7 @@ class Preferences(Gtk.ApplicationWindow): # Enable debug logging def on_enable_logging_toggled(self, widget): - app.set_win_debug_mode(widget.get_active()) + app.set_debug_mode(widget.get_active()) # Advanced Config Editor (ACE) def on_open_advanced_editor_button_clicked(self, _widget): View it on GitLab: https://dev.gajim.org/gajim/gajim/compare/298adcf072d69893949e51d32fc6bc16d41337be...13078dfd1235ea929e1ea80cd5224f34969bdd74 -- View it on GitLab: https://dev.gajim.org/gajim/gajim/compare/298adcf072d69893949e51d32fc6bc16d41337be...13078dfd1235ea929e1ea80cd5224f34969bdd74 You're receiving this email because of your account on dev.gajim.org.
_______________________________________________ Commits mailing list [email protected] https://lists.gajim.org/cgi-bin/listinfo/commits
