remoteRF-server 0.1.88__tar.gz → 0.1.89__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 (42) hide show
  1. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/PKG-INFO +1 -1
  2. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/pyproject.toml +1 -1
  3. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/host/host_tunnel_server.py +28 -11
  4. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server.egg-info/PKG-INFO +1 -1
  5. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/README.md +0 -0
  6. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/setup.cfg +0 -0
  7. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/__init__.py +0 -0
  8. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/__init__.py +0 -0
  9. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/grpc/__init__.py +0 -0
  10. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/grpc/grpc_host_pb2.py +0 -0
  11. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/grpc/grpc_host_pb2_grpc.py +0 -0
  12. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/grpc/grpc_pb2.py +0 -0
  13. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/grpc/grpc_pb2_grpc.py +0 -0
  14. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/utils/__init__.py +0 -0
  15. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/utils/ansi_codes.py +0 -0
  16. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/utils/api_token.py +0 -0
  17. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/utils/db_connection.py +0 -0
  18. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/utils/db_location.py +0 -0
  19. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/utils/list_string.py +0 -0
  20. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/common/utils/process_arg.py +0 -0
  21. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/drivers/__init__.py +0 -0
  22. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/drivers/adalm_pluto/__init__.py +0 -0
  23. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/drivers/adalm_pluto/pluto_remote_server.py +0 -0
  24. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/host/__init__.py +0 -0
  25. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/host/host_directory_store.py +0 -0
  26. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/__init__.py +0 -0
  27. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/acc_perms.py +0 -0
  28. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/cert_provider.py +0 -0
  29. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/device_manager.py +0 -0
  30. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/grpc_server.py +0 -0
  31. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/reservation.py +0 -0
  32. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/rpc_manager.py +0 -0
  33. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/user_group_cli.py +0 -0
  34. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/server/user_group_handler.py +0 -0
  35. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/serverrf_cli.py +0 -0
  36. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/tools/__init__.py +0 -0
  37. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server/tools/gen_certs.py +0 -0
  38. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server.egg-info/SOURCES.txt +0 -0
  39. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server.egg-info/dependency_links.txt +0 -0
  40. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server.egg-info/entry_points.txt +0 -0
  41. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server.egg-info/requires.txt +0 -0
  42. {remoterf_server-0.1.88 → remoterf_server-0.1.89}/src/remoteRF_server.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: remoteRF-server
3
- Version: 0.1.88
3
+ Version: 0.1.89
4
4
  Description-Content-Type: text/markdown
5
5
  Requires-Dist: grpcio
6
6
  Requires-Dist: protobuf
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "remoteRF-server"
7
- version = "0.1.88"
7
+ version = "0.1.89"
8
8
  dependencies = [
9
9
  "grpcio",
10
10
  "protobuf",
@@ -1118,17 +1118,34 @@ class HostTunnelServicer(host_tunnel_pb2_grpc.HostTunnelServicer):
1118
1118
  warn(f"[inbound] rpc_response has no inflight waiter req_id={rid} stream_sess={stream_uuid}")
1119
1119
 
1120
1120
  elif which == "meta_response":
1121
- try:
1122
- mr = frame.meta_response
1123
- ok = bool(getattr(mr, "ok", False))
1124
- err_s = str(getattr(mr, "error", "") or "")
1125
- info(f"[inbound] META_RESPONSE ok={ok} error={err_s!r} stream_sess={stream_uuid}")
1126
- try:
1127
- info(f"[inbound] META_RESPONSE proto:\n{mr}")
1128
- except Exception:
1129
- pass
1130
- except Exception:
1131
- exception("[inbound] meta_response handling crashed")
1121
+ mr = frame.meta_response
1122
+ ok = bool(getattr(mr, "ok", False))
1123
+ err_s = str(getattr(mr, "error", "") or "")
1124
+ info(f"[inbound] META_RESPONSE ok={ok} error={err_s!r} stream_sess={stream_uuid}")
1125
+
1126
+ # ---- NEW: apply devices from meta_response if present ----
1127
+ if ok and host_id is not None:
1128
+ devs = []
1129
+ # try common field names defensively
1130
+ for fld in ("devices", "device_infos", "device_info"):
1131
+ try:
1132
+ v = getattr(mr, fld, None)
1133
+ if v:
1134
+ devs = list(v)
1135
+ break
1136
+ except Exception:
1137
+ pass
1138
+
1139
+ if devs:
1140
+ info(f"[inbound] META_RESPONSE applying {len(devs)} devices to registry host_id={host_id!r}")
1141
+ try:
1142
+ self.registry.announce_devices(host_id, devs)
1143
+ # optional: heartbeat bump
1144
+ self.registry.heartbeat(host_id, now_ms())
1145
+ except Exception:
1146
+ exception("[inbound] META_RESPONSE announce_devices failed")
1147
+ else:
1148
+ info("[inbound] META_RESPONSE had no devices field (or empty)")
1132
1149
 
1133
1150
  elif which == "heartbeat":
1134
1151
  if session is not None and host_id is not None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: remoteRF-server
3
- Version: 0.1.88
3
+ Version: 0.1.89
4
4
  Description-Content-Type: text/markdown
5
5
  Requires-Dist: grpcio
6
6
  Requires-Dist: protobuf