synodic-client 0.0.1.dev83__tar.gz → 0.0.1.dev84__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/PKG-INFO +1 -1
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/pyproject.toml +1 -1
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/tray.py +26 -49
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/LICENSE.md +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/README.md +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/__main__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/bootstrap.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/config_store.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/data.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/debug.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/icon.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/init.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/instance.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/package_state.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/qt.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/schema.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/action_card.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/card.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/install.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/install_workers.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/log_panel.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/plugin_row.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/projects.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/schema.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/screen.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/settings.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/sidebar.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/spinner.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/tool_update_controller.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/update_banner.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/wsl.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/theme.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/update_controller.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/update_model.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/uri.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/config.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/context.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/debug.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/install.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/output.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/project.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/tool.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/cli/update.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/client.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/config.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/logging.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/bootstrap.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/config.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/install.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/project.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/schema.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/tool.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/update.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/protocol.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/py.typed +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/resolution.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/schema.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/startup.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/subprocess_patch.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/updater.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/conftest.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_config.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_install.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_install_plan.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_project.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_tool.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_update.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/conftest.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_action_card.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_gather_packages.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_install_preview.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_log_panel.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_logging.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_package_state.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_preview_model.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_settings.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_sidebar.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_tray_window_show.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_update_banner.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_update_controller.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_update_feedback.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_bootstrap.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_cli.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_client_updater.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_client_version.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_config.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_examples.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_init.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_install.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_resolution.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_updater.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_uri.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/test_workers.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/windows/__init__.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/windows/conftest.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/windows/test_protocol.py +0 -0
- {synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/windows/test_startup.py +0 -0
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/tray.py
RENAMED
|
@@ -4,7 +4,7 @@ import logging
|
|
|
4
4
|
from typing import TYPE_CHECKING
|
|
5
5
|
|
|
6
6
|
from PySide6.QtCore import QTimer
|
|
7
|
-
from PySide6.QtGui import QAction
|
|
7
|
+
from PySide6.QtGui import QAction
|
|
8
8
|
from PySide6.QtWidgets import (
|
|
9
9
|
QApplication,
|
|
10
10
|
QMainWindow,
|
|
@@ -54,13 +54,15 @@ class TrayScreen:
|
|
|
54
54
|
self.tray.setIcon(app_icon())
|
|
55
55
|
self.tray.activated.connect(self._on_tray_activated)
|
|
56
56
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
self._tray_retry_count = 0
|
|
60
|
-
self._tray_retry_timer: QTimer | None = None
|
|
61
|
-
self._show_tray_icon()
|
|
57
|
+
self._build_menu()
|
|
58
|
+
self.tray.setContextMenu(self._menu)
|
|
62
59
|
|
|
63
|
-
|
|
60
|
+
# At early Windows login the notification area may not be ready.
|
|
61
|
+
# Poll until the tray is available, then show the icon.
|
|
62
|
+
self._tray_poll = QTimer()
|
|
63
|
+
self._tray_poll.setInterval(2000)
|
|
64
|
+
self._tray_poll.timeout.connect(self._try_show_tray_icon)
|
|
65
|
+
self._try_show_tray_icon()
|
|
64
66
|
|
|
65
67
|
# Settings window (created once, shown/hidden on demand)
|
|
66
68
|
self._settings_window = SettingsWindow(
|
|
@@ -109,13 +111,13 @@ class TrayScreen:
|
|
|
109
111
|
# Connect ToolsView signals - deferred because ToolsView is created lazily
|
|
110
112
|
window.tools_view_created.connect(self._tool_orchestrator.connect_tools_view)
|
|
111
113
|
|
|
112
|
-
def _build_menu(self
|
|
114
|
+
def _build_menu(self) -> None:
|
|
113
115
|
"""Build the tray context menu."""
|
|
114
116
|
self._menu = QMenu()
|
|
115
117
|
|
|
116
118
|
self._open_action = QAction('Open', self._menu)
|
|
117
119
|
self._menu.addAction(self._open_action)
|
|
118
|
-
self._open_action.triggered.connect(
|
|
120
|
+
self._open_action.triggered.connect(self._show_window)
|
|
119
121
|
|
|
120
122
|
self._menu.addSeparator()
|
|
121
123
|
|
|
@@ -131,55 +133,27 @@ class TrayScreen:
|
|
|
131
133
|
|
|
132
134
|
self._menu.aboutToShow.connect(lambda: logger.debug('Tray context menu about to show'))
|
|
133
135
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
# Delay between retries in milliseconds.
|
|
137
|
-
_TRAY_RETRY_DELAY_MS = 2000
|
|
138
|
-
|
|
139
|
-
def _show_tray_icon(self) -> None:
|
|
140
|
-
"""Show the tray icon, retrying if the system tray is not ready."""
|
|
136
|
+
def _try_show_tray_icon(self) -> None:
|
|
137
|
+
"""Show the tray icon once the system tray is available."""
|
|
141
138
|
if QSystemTrayIcon.isSystemTrayAvailable():
|
|
139
|
+
self._tray_poll.stop()
|
|
142
140
|
self.tray.setVisible(True)
|
|
143
141
|
logger.debug('System tray icon shown')
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
self._tray_retry_count += 1
|
|
148
|
-
logger.warning(
|
|
149
|
-
'System tray not available, retrying (%d/%d)',
|
|
150
|
-
self._tray_retry_count,
|
|
151
|
-
self._TRAY_MAX_RETRIES,
|
|
152
|
-
)
|
|
153
|
-
self._tray_retry_timer = QTimer()
|
|
154
|
-
self._tray_retry_timer.setSingleShot(True)
|
|
155
|
-
self._tray_retry_timer.timeout.connect(self._show_tray_icon)
|
|
156
|
-
self._tray_retry_timer.start(self._TRAY_RETRY_DELAY_MS)
|
|
157
|
-
else:
|
|
158
|
-
# Exhausted retries — show anyway as a best-effort fallback.
|
|
159
|
-
logger.warning(
|
|
160
|
-
'System tray still not available after %d retries, forcing visibility',
|
|
161
|
-
self._TRAY_MAX_RETRIES,
|
|
162
|
-
)
|
|
163
|
-
self.tray.setVisible(True)
|
|
164
|
-
|
|
165
|
-
# Delay before showing the context menu, in milliseconds.
|
|
166
|
-
# Absorbs residual mouse-up events from touchpad two-finger taps
|
|
167
|
-
# that would otherwise land on a menu item (typically "Quit").
|
|
168
|
-
_MENU_POPUP_DELAY_MS = 80
|
|
142
|
+
elif not self._tray_poll.isActive():
|
|
143
|
+
logger.warning('System tray not available, polling until ready')
|
|
144
|
+
self._tray_poll.start()
|
|
169
145
|
|
|
170
146
|
def _on_tray_activated(self, reason: QSystemTrayIcon.ActivationReason) -> None:
|
|
171
147
|
"""Handle tray icon activation."""
|
|
172
148
|
logger.debug('Tray activated: reason=%s', reason.name)
|
|
173
149
|
if reason == QSystemTrayIcon.ActivationReason.DoubleClick:
|
|
174
|
-
self.
|
|
175
|
-
self._window.raise_()
|
|
176
|
-
self._window.activateWindow()
|
|
177
|
-
elif reason == QSystemTrayIcon.ActivationReason.Context:
|
|
178
|
-
QTimer.singleShot(self._MENU_POPUP_DELAY_MS, self._show_tray_menu)
|
|
150
|
+
self._show_window()
|
|
179
151
|
|
|
180
|
-
def
|
|
181
|
-
"""Show
|
|
182
|
-
self.
|
|
152
|
+
def _show_window(self) -> None:
|
|
153
|
+
"""Show, raise, and focus the main window."""
|
|
154
|
+
self._window.show()
|
|
155
|
+
self._window.raise_()
|
|
156
|
+
self._window.activateWindow()
|
|
183
157
|
|
|
184
158
|
def _on_quit_triggered(self) -> None:
|
|
185
159
|
"""Handle the Quit menu action."""
|
|
@@ -189,6 +163,8 @@ class TrayScreen:
|
|
|
189
163
|
def _show_settings(self) -> None:
|
|
190
164
|
"""Show the settings window."""
|
|
191
165
|
self._settings_window.show()
|
|
166
|
+
self._settings_window.raise_()
|
|
167
|
+
self._settings_window.activateWindow()
|
|
192
168
|
|
|
193
169
|
@staticmethod
|
|
194
170
|
def _is_user_active() -> bool:
|
|
@@ -222,6 +198,7 @@ class TrayScreen:
|
|
|
222
198
|
|
|
223
199
|
def shutdown(self) -> None:
|
|
224
200
|
"""Stop all timers and cancel in-flight tasks for a clean exit."""
|
|
201
|
+
self._tray_poll.stop()
|
|
225
202
|
self._update_controller.shutdown()
|
|
226
203
|
self._tool_orchestrator.shutdown()
|
|
227
204
|
logger.info('TrayScreen shut down')
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/__init__.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/bootstrap.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/config_store.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/data.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/debug.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/icon.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/init.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/instance.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/schema.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/card.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/screen/wsl.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/theme.py
RENAMED
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/application/update_model.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/__init__.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/bootstrap.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/config.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/install.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/project.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/schema.py
RENAMED
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/operations/update.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/synodic_client/subprocess_patch.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_config.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_install.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_install_plan.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_project.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_tool.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/operations/test_update.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_gather_packages.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_install_preview.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_package_state.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_preview_model.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_tray_window_show.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_update_banner.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_update_controller.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/qt/test_update_feedback.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/windows/test_protocol.py
RENAMED
|
File without changes
|
{synodic_client-0.0.1.dev83 → synodic_client-0.0.1.dev84}/tests/unit/windows/test_startup.py
RENAMED
|
File without changes
|