plesty-server 0.3.2__tar.gz → 0.3.3__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.
Files changed (48) hide show
  1. {plesty_server-0.3.2 → plesty_server-0.3.3}/PKG-INFO +2 -2
  2. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/view/window.py +15 -2
  3. {plesty_server-0.3.2 → plesty_server-0.3.3}/pyproject.toml +2 -2
  4. {plesty_server-0.3.2 → plesty_server-0.3.3}/LICENSE +0 -0
  5. {plesty_server-0.3.2 → plesty_server-0.3.3}/LICENSES/LGPL-3.0-or-later.txt +0 -0
  6. {plesty_server-0.3.2 → plesty_server-0.3.3}/README.md +0 -0
  7. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/__init__.py +0 -0
  8. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/__main__.py +0 -0
  9. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/assets/console.qss +0 -0
  10. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/assets/env.example +0 -0
  11. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/assets/fleet.example.yaml +0 -0
  12. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/assets/plesty-mark.svg +0 -0
  13. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/cli/__init__.py +0 -0
  14. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/cli/main.py +0 -0
  15. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/config.yaml +0 -0
  16. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/host.py +0 -0
  17. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/__init__.py +0 -0
  18. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/agent.py +0 -0
  19. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/catalogue.py +0 -0
  20. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/device.py +0 -0
  21. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/device_manager.py +0 -0
  22. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/envfile.py +0 -0
  23. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/errors.py +0 -0
  24. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/field_test.py +0 -0
  25. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/fleet.py +0 -0
  26. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/home.py +0 -0
  27. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/job.py +0 -0
  28. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/ports.py +0 -0
  29. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/process.py +0 -0
  30. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/purge.py +0 -0
  31. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/model/traffic.py +0 -0
  32. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/presenter/__init__.py +0 -0
  33. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/presenter/bench.py +0 -0
  34. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/reexec.py +0 -0
  35. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/__init__.py +0 -0
  36. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/agent.py +0 -0
  37. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/catalogue.py +0 -0
  38. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/control.py +0 -0
  39. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/gitbin.py +0 -0
  40. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/installer.py +0 -0
  41. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/jobs.py +0 -0
  42. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/launch.py +0 -0
  43. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/services/supervisor.py +0 -0
  44. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/view/__init__.py +0 -0
  45. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/view/app.py +0 -0
  46. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/view/control.py +0 -0
  47. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/view/dialogs.py +0 -0
  48. {plesty_server-0.3.2 → plesty_server-0.3.3}/plesty/server/view/workers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: plesty-server
3
- Version: 0.3.2
3
+ Version: 0.3.3
4
4
  Summary: The PLESTY bench application: installs, runs and field-tests device servers.
5
5
  Project-URL: Homepage, https://gitlab.com/plesty/core/plesty-bench
6
6
  Project-URL: Documentation, https://plesty.gitlab.io/core/plesty-bench/
@@ -11,7 +11,7 @@ License-File: LICENSE
11
11
  License-File: LICENSES/LGPL-3.0-or-later.txt
12
12
  Requires-Python: >=3.12
13
13
  Requires-Dist: click>=8.1
14
- Requires-Dist: plesty-bench==0.3.2
14
+ Requires-Dist: plesty-bench==0.3.3
15
15
  Requires-Dist: plesty-lib>=0.4.0
16
16
  Requires-Dist: pyyaml>=6.0
17
17
  Requires-Dist: pyzmq>=26
@@ -367,8 +367,21 @@ class MainWindow(QMainWindow):
367
367
  self.worker.run(lambda: self.bench.devices(probe=True), on_done=self._show_devices)
368
368
 
369
369
  def _show_devices(self, views: list[DeviceView]) -> None:
370
- keep = self._pending_select or self.selected
371
- self._pending_select = None
370
+ # A pending selection is spent only on a repaint that can honour it.
371
+ # The refresh timer fires every REFRESH_MS and the pool runs four
372
+ # tasks at once, so a refresh started before a rename can land after
373
+ # it, carrying devices read under the old name. That repaint used to
374
+ # take the pending name, find no row for it, select nothing, and
375
+ # clear it -- and the repaint that did carry the new row then fell
376
+ # back to self.selected, which is still the old name. The rename
377
+ # worked and the highlight jumped back to a device that no longer
378
+ # existed. Held instead until the row is there.
379
+ pending = self._pending_select
380
+ if pending is not None and any(view.name == pending for view in views):
381
+ self._pending_select = None
382
+ keep: str | None = pending
383
+ else:
384
+ keep = self.selected
372
385
  self._views = views
373
386
  self._painting = True
374
387
  self.table.setRowCount(len(views))
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "plesty-server"
3
- version = "0.3.2"
3
+ version = "0.3.3"
4
4
  license = "LGPL-3.0-or-later"
5
5
  license-files = ["LICENSE", "LICENSES/*"]
6
6
  description = "The PLESTY bench application: installs, runs and field-tests device servers."
@@ -9,7 +9,7 @@ maintainers = [{ name = "Plesty Development Team", email = "plesty.dev@example.c
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
11
11
  dependencies = [
12
- "plesty-bench==0.3.2",
12
+ "plesty-bench==0.3.3",
13
13
  "plesty-lib>=0.4.0",
14
14
  "pyyaml>=6.0",
15
15
  "pyzmq>=26",
File without changes
File without changes