xoscar 0.7.8__cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl → 0.7.9__cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

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.

Potentially problematic release.


This version of xoscar might be problematic. Click here for more details.

@@ -63,8 +63,8 @@ def _shm_put_object(seq: _ShmSeq, shm: shared_memory.SharedMemory, o: object):
63
63
  assert (
64
64
  len(serialized) < _SUBPROCESS_SHM_SIZE - 8
65
65
  ), f"Serialized object {o} is too long."
66
- shm.buf[4:12] = struct.pack("<II", sys.hexversion, len(serialized))
67
- shm.buf[12 : 12 + len(serialized)] = serialized
66
+ shm.buf[4:8] = struct.pack("<I", len(serialized))
67
+ shm.buf[8 : 8 + len(serialized)] = serialized
68
68
  shm.buf[:4] = struct.pack("<I", seq)
69
69
 
70
70
 
@@ -72,12 +72,8 @@ def _shm_get_object(seq: _ShmSeq, shm: shared_memory.SharedMemory):
72
72
  recv_seq = struct.unpack("<I", shm.buf[:4])[0]
73
73
  if recv_seq != seq:
74
74
  return
75
- python_version_hex, size = struct.unpack("<II", shm.buf[4:12])
76
- if python_version_hex != sys.hexversion:
77
- raise RuntimeError(
78
- f"Python version mismatch, sender: {python_version_hex}, receiver: {sys.hexversion}"
79
- )
80
- return pickle.loads(shm.buf[12 : 12 + size])
75
+ size = struct.unpack("<I", shm.buf[4:8])[0]
76
+ return pickle.loads(shm.buf[8 : 8 + size])
81
77
 
82
78
 
83
79
  @_register_message_handler
@@ -175,6 +171,16 @@ class MainActorPool(MainActorPoolBase):
175
171
  shm = shared_memory.SharedMemory(shm_name, track=False)
176
172
  try:
177
173
  config = _shm_get_object(_ShmSeq.INIT_PARAMS, shm)
174
+ # Check Python version once.
175
+ sub_pool_python_version = config.pop("python_version", None)
176
+ if (
177
+ sub_pool_python_version is not None
178
+ and sub_pool_python_version != sys.hexversion
179
+ ):
180
+ logger.warning(
181
+ f"The sub pool is using a different Python version, you may encounter serialization issues."
182
+ f" sub pool: {sub_pool_python_version}, main pool: {sys.hexversion}"
183
+ )
178
184
  actor_config = config["actor_pool_config"]
179
185
  process_index = config["process_index"]
180
186
  main_pool_pid = config["main_pool_pid"]
@@ -276,6 +282,7 @@ class MainActorPool(MainActorPoolBase):
276
282
  "actor_pool_config": actor_pool_config,
277
283
  "process_index": process_index,
278
284
  "main_pool_pid": os.getpid(),
285
+ "python_version": sys.hexversion,
279
286
  },
280
287
  )
281
288
  cmd = [
xoscar/virtualenv/core.py CHANGED
@@ -63,6 +63,8 @@ class VirtualEnvManager(ABC):
63
63
  ] # Extract actual package name, e.g., "torch"
64
64
  try:
65
65
  version = importlib.metadata.version(real_pkg)
66
+ # Strip build metadata like "+cpu"
67
+ version = version.split("+")[0]
66
68
  except importlib.metadata.PackageNotFoundError:
67
69
  raise RuntimeError(
68
70
  f"System package '{real_pkg}' not found. Cannot resolve '{pkg}'."
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xoscar
3
- Version: 0.7.8
3
+ Version: 0.7.9
4
4
  Summary: Python actor framework for heterogeneous computing.
5
5
  Home-page: http://github.com/xorbitsai/xoscar
6
6
  Author: Qin Xuye
@@ -47,7 +47,7 @@ xoscar/backends/indigen/__main__.py,sha256=-pfio-Y4Ogbk6lBFksH-gRatp-N6sZ7wuNc-i
47
47
  xoscar/backends/indigen/backend.py,sha256=znl_fZzWGEtLH8hZ9j9Kkf0fva25jEem2_KO7I1RVvc,1612
48
48
  xoscar/backends/indigen/driver.py,sha256=VGzkacYKykegW5qhCuhx01gdgBZEKJjNIyfNCnA6Nm8,952
49
49
  xoscar/backends/indigen/fate_sharing.py,sha256=3QUHwq5Cjk9oCKFUISvkqHaoxWZIaXcq8JNOetdBl-A,8655
50
- xoscar/backends/indigen/pool.py,sha256=8EvQ7z2cv4T3O0-AvHBwCtuKIW3F0CZURW18oy8L-Ps,16228
50
+ xoscar/backends/indigen/pool.py,sha256=t8zQ1i6Kf3JEy8EMMX7vTbKakilkn4TuxPdsxaxh27A,16573
51
51
  xoscar/backends/indigen/shared_memory.py,sha256=wqbckbgnd0qNm5KzlP_hklF3F_n8fKnCehSox5uMwNs,19082
52
52
  xoscar/backends/test/__init__.py,sha256=j2ZfD6prD9WjUxRUDC7Eq5Z7N7TkL6fFr59oNyc_vY4,682
53
53
  xoscar/backends/test/backend.py,sha256=nv9WFhH5Bbq4Q1HB9yfpciZBaeHT4IQAtzugBWESrUY,1263
@@ -78,10 +78,10 @@ xoscar/serialization/numpy.py,sha256=5Kem87CvpJmzUMp3QHk4WeHU30FoQWTJJP2SwIcaQG0
78
78
  xoscar/serialization/pyfury.py,sha256=sifOnVMYoS82PzZEkzkfxesmMHei23k5UAUUKUyoOYQ,1163
79
79
  xoscar/serialization/scipy.py,sha256=yOEi0NB8cqQ6e2UnCZ1w006RsB7T725tIL-DM_hNcsU,2482
80
80
  xoscar/virtualenv/__init__.py,sha256=65t9_X1DvbanNjFy366SiiWZrRTpa9SXWMXPmqayE-4,1117
81
- xoscar/virtualenv/core.py,sha256=dZqwg2IzHsLEERvohZx0rvBINopMRUImqxG3HHGO0q4,2744
81
+ xoscar/virtualenv/core.py,sha256=qHKqI6R92SN0_OWVAX1xy9wJiZr-r0VfLHTskZtZE4U,2851
82
82
  xoscar/virtualenv/utils.py,sha256=mL_uATHhj82xec0-0IZ6N8yI-laPAB4t8G3alPUGtPA,2439
83
83
  xoscar/virtualenv/uv.py,sha256=XCjeCEntMhA0kyZS0qG7qu9AWzPtIwdeTJRLYRIOiDI,4788
84
- xoscar-0.7.8.dist-info/METADATA,sha256=mVx1Q4B9xIdAvrBELdbgCSzdLqpIvjon6kOu1nS2I2E,9134
85
- xoscar-0.7.8.dist-info/WHEEL,sha256=Zqf17R98VQuI9JZEwsfDDfsqkexN9tbZpiCgdvPM64U,154
86
- xoscar-0.7.8.dist-info/top_level.txt,sha256=vYlqqY4Nys8Thm1hePIuUv8eQePdULVWMmt7lXtX_ZA,21
87
- xoscar-0.7.8.dist-info/RECORD,,
84
+ xoscar-0.7.9.dist-info/METADATA,sha256=af3hRvcba-yfLchiCmdJCPCYIt8lvXOsFNrWA2Tf_1s,9134
85
+ xoscar-0.7.9.dist-info/WHEEL,sha256=Zqf17R98VQuI9JZEwsfDDfsqkexN9tbZpiCgdvPM64U,154
86
+ xoscar-0.7.9.dist-info/top_level.txt,sha256=vYlqqY4Nys8Thm1hePIuUv8eQePdULVWMmt7lXtX_ZA,21
87
+ xoscar-0.7.9.dist-info/RECORD,,
File without changes