openrewrite-remote 0.21.0__py3-none-any.whl → 0.21.2__py3-none-any.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.
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: openrewrite-remote
3
- Version: 0.21.0
3
+ Version: 0.21.2
4
4
  Summary: Remoting functionality for the OpenRewrite library.
5
5
  Author-email: "Moderne Inc." <support@moderne.io>
6
6
  License: Moderne, Inc. Commercial License
@@ -1,12 +1,12 @@
1
1
  rewrite_remote/__init__.py,sha256=gl4Dpp7mYIrfNgeyh2IeW2fsj9ep9pveAK_eeoDLu7c,278
2
2
  rewrite_remote/client.py,sha256=95ZCAtVOngF0ZqqKnOsrweUeGKruf3UKGPXNGTrNyy0,1853
3
3
  rewrite_remote/event.py,sha256=texLJD1mcFkpBpiXAa-Rmip0Tgqm2OlBpRPHFZyWcBs,359
4
- rewrite_remote/receiver.py,sha256=XgRhhOBW_77lV34nHkWbrdojajLfWfX38NdzuKJDj8A,20744
5
- rewrite_remote/remote_utils.py,sha256=gU9hN-aHxy9NF4uRqjd4OhvgPrNfDyCt3y1PtrWMCgA,10677
4
+ rewrite_remote/receiver.py,sha256=iwrDvHzoIH-58ykbSZ7SkQuiz7BUgWaSouRCna7bit4,20869
5
+ rewrite_remote/remote_utils.py,sha256=JhMv4V182M2gprU1PRiMngkqSn90U6JRi5GNC0Jpzx4,10725
6
6
  rewrite_remote/remoting.py,sha256=yS2sYMPPBq0gt1xalmCTLbH4VXbBqNl-EXj8ZfgA5UM,13525
7
- rewrite_remote/sender.py,sha256=PXX0hrmeHKEge_7qWEMqNn4KYleDrFUQqhBDWTq1pus,18993
7
+ rewrite_remote/sender.py,sha256=k_8dyvTH3eYr_V3usB925XSHYJPQ243pIr0_3ypbpcg,18943
8
8
  rewrite_remote/server.py,sha256=5pCqHHaHkI2pGBgFeZC6HWx5YmyU6XqZEbMt4W_He_g,9964
9
- rewrite_remote/type_utils.py,sha256=MHfEhbtpvN1jXNG_l2X4jTBVJZsbkmbaJIZEOHpeMTA,4400
9
+ rewrite_remote/type_utils.py,sha256=SOQ8pinPN4Cj_VrC-B7CL8INv9lbId8Ex07HuJzQVNg,4520
10
10
  rewrite_remote/handlers/__init__.py,sha256=ED6jHcYiuYpr_0vjGz0zx2lrrmJT9sDJCzIljoDfmlM,65
11
11
  rewrite_remote/handlers/handler_helpers.py,sha256=xvAKAVGH56Hrjp9sbilp4v1a2_ra0L63YjXurF5K5o0,512
12
12
  rewrite_remote/handlers/hello_world_handler.py,sha256=HLVukS16-PRRidlnfABT6ETXURhQYIJnTSb09PJnDek,1284
@@ -16,10 +16,10 @@ rewrite_remote/handlers/parse_source_handler.py,sha256=5GAarluCBGq8YjDIN9ddlUK7o
16
16
  rewrite_remote/handlers/project_helper.py,sha256=La2lQnS158PevXE1z2Jnx_RNQwQtioelthzdNEJnIew,8711
17
17
  rewrite_remote/handlers/pypi_manager.py,sha256=XulTdZUm5aTme7Qn-jaUvlgO6N9bKS03UUQtbxv9kYE,10247
18
18
  rewrite_remote/handlers/recipe_install_handler.py,sha256=brUAeQeGsXHBLMG1TXfdF8q0x7vx_foY5UfLgOBHQ6c,4976
19
- rewrite_remote/handlers/run_recipe_load_and_visitor_handler.py,sha256=TEo7HgNXthtIapSgeW-xogwfXfWxXov-_xktJNT--E8,4239
19
+ rewrite_remote/handlers/run_recipe_load_and_visitor_handler.py,sha256=aLTi4LRBffDyC9pzaZiulj8Q8KwWta_y71aIPJXUJLc,4418
20
20
  rewrite_remote/handlers/types.py,sha256=5TK_oFp-7iy1iACWisuQJsa_WHTsqcPrV9nQTZ-_xgo,518
21
- openrewrite_remote-0.21.0.dist-info/METADATA,sha256=qNSix2_23WX0Rnv5LHlOgV8nyr7iLHA6tRvESXKiUZI,386
22
- openrewrite_remote-0.21.0.dist-info/WHEEL,sha256=52BFRY2Up02UkjOa29eZOS2VxUrpPORXg1pkohGGUS8,91
23
- openrewrite_remote-0.21.0.dist-info/entry_points.txt,sha256=SMukuF7TPjQr3IZIcH8f98-_QBCqYSbYXYrVv-5UzRI,69
24
- openrewrite_remote-0.21.0.dist-info/top_level.txt,sha256=ansTioSZ-62aH3F2L3d1Bua0pJF4GOtgQ1PpG-CzcP0,15
25
- openrewrite_remote-0.21.0.dist-info/RECORD,,
21
+ openrewrite_remote-0.21.2.dist-info/METADATA,sha256=nlzI6E1oFQLYVvXXZRn2tN2fCDmZEMZCVOwsU-CsHlg,386
22
+ openrewrite_remote-0.21.2.dist-info/WHEEL,sha256=1tXe9gY0PYatrMPMDd6jXqjfpz_B-Wqm32CPfRC58XU,91
23
+ openrewrite_remote-0.21.2.dist-info/entry_points.txt,sha256=SMukuF7TPjQr3IZIcH8f98-_QBCqYSbYXYrVv-5UzRI,69
24
+ openrewrite_remote-0.21.2.dist-info/top_level.txt,sha256=ansTioSZ-62aH3F2L3d1Bua0pJF4GOtgQ1PpG-CzcP0,15
25
+ openrewrite_remote-0.21.2.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (76.0.0)
2
+ Generator: setuptools (77.0.3)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,5 +1,6 @@
1
1
  import logging
2
2
  import socket
3
+ import traceback
3
4
  from io import BytesIO
4
5
  from typing import List, TypedDict, Any
5
6
  from cbor2 import dumps, CBORDecoder
@@ -91,7 +92,8 @@ def run_recipe_load_and_visitor_handler(
91
92
  RemotingMessenger, decoder, RemotingMessenger._state
92
93
  )
93
94
  except Exception as e:
94
- # logging.error(f"Failed to receive tree: {e}")
95
+ logging.error(f"Failed to receive tree: {e}")
96
+ logging.error(traceback.format_exc())
95
97
  respond_with_error(f"Failed to receive tree: {e}", sock)
96
98
  return
97
99
 
@@ -117,6 +119,8 @@ def run_recipe_load_and_visitor_handler(
117
119
  if RemotingMessenger._state is None:
118
120
  raise ValueError("RemotingMessenger.state cannot be None")
119
121
  except Exception as e:
122
+ logging.error(f"Failed to process input data with recipe: {e}")
123
+ logging.error(traceback.format_exc())
120
124
  respond_with_error(f"Failed to process input data with recipe: {e}", sock)
121
125
  return
122
126
 
@@ -297,6 +297,10 @@ class DeserializationContext:
297
297
  assert field_name == "@c"
298
298
  concrete_type = decoder.decode()
299
299
 
300
+ # values
301
+ elif major_type == 3:
302
+ concrete_type = decoder.decode_string(subtype)
303
+
300
304
  if concrete_type:
301
305
  if concrete_type == "org.openrewrite.marker.SearchResult":
302
306
  field_name = decoder.decode()
@@ -310,6 +314,27 @@ class DeserializationContext:
310
314
  elif field_name == "id":
311
315
  id_ = UUID(bytes=decoder.decode())
312
316
  return SearchResult(id_, desc)
317
+ elif concrete_type == "org.openrewrite.FileAttributes":
318
+ map = decoder.read_cbor_map()
319
+ return FileAttributes(None, None, None, False, False, False, 0)
320
+ elif concrete_type == "java.lang.String":
321
+ return decoder.decode()
322
+ elif concrete_type == "java.lang.Boolean":
323
+ return decoder.decode()
324
+ elif concrete_type == "java.lang.Integer":
325
+ return decoder.decode()
326
+ elif concrete_type == "java.lang.Character":
327
+ return decoder.decode()[0] # type: ignore
328
+ elif concrete_type == "java.lang.Long":
329
+ return decoder.decode()
330
+ elif concrete_type == "java.lang.Double":
331
+ return decoder.decode()
332
+ elif concrete_type == "java.lang.Float":
333
+ return decoder.decode()
334
+ elif concrete_type == "java.math.BigInteger":
335
+ return decoder.decode()
336
+ elif concrete_type == "java.math.BigDecimal":
337
+ return decoder.decode()
313
338
 
314
339
  if deser := self.value_deserializers.get(concrete_type):
315
340
  return deser(concrete_type, decoder, self)
@@ -367,29 +392,6 @@ class DeserializationContext:
367
392
  else expected_type.__name__
368
393
  )
369
394
 
370
- if concrete_type == "org.openrewrite.FileAttributes":
371
- map = decoder.read_cbor_map()
372
- return FileAttributes(None, None, None, False, False, False, 0)
373
-
374
- if concrete_type == "java.lang.String":
375
- return decoder.decode()
376
- if concrete_type == "java.lang.Boolean":
377
- return decoder.decode()
378
- if concrete_type == "java.lang.Integer":
379
- return decoder.decode()
380
- if concrete_type == "java.lang.Character":
381
- return decoder.decode()[0] # type: ignore
382
- if concrete_type == "java.lang.Long":
383
- return decoder.decode()
384
- if concrete_type == "java.lang.Double":
385
- return decoder.decode()
386
- if concrete_type == "java.lang.Float":
387
- return decoder.decode()
388
- if concrete_type == "java.math.BigInteger":
389
- return decoder.decode()
390
- if concrete_type == "java.math.BigDecimal":
391
- return decoder.decode()
392
-
393
395
  raise NotImplementedError(f"No deserialization implemented for: {concrete_type}")
394
396
 
395
397
  if state == cbor2.CborReaderState.ARRAY:
@@ -283,7 +283,7 @@ def _decode_length(
283
283
  def decode_array_start(decoder: CBORDecoder) -> Optional[int]:
284
284
  initial_byte = decoder.read(1)[0]
285
285
  major_type = initial_byte >> 5
286
- assert major_type == 4
286
+ assert major_type == 4, f"Expected major type 4, but got {major_type}"
287
287
  subtype = initial_byte & 31
288
288
  return _decode_length(decoder, subtype, allow_indefinite=True)
289
289
 
rewrite_remote/sender.py CHANGED
@@ -128,7 +128,7 @@ class SenderContext(Generic[T]):
128
128
  self.send_typed_value_internal(after_value, before_value)
129
129
 
130
130
  def send_list_event(self, after: Optional[List[V]], before: Optional[List[V]]) -> bool:
131
- if after == before:
131
+ if after is before:
132
132
  evt = DiffEvent(EventType.NoChange, None, None)
133
133
  elif before is None:
134
134
  evt = DiffEvent(EventType.Add, None, len(after) if after is not None else 0)
@@ -241,10 +241,7 @@ class SenderContext(Generic[T]):
241
241
 
242
242
  @staticmethod
243
243
  def are_equal(after: Optional[V], before: Optional[V]) -> bool:
244
- if after is None or before is None:
245
- return after == before
246
-
247
- return isinstance(after, (Tree, Markers)) or isinstance(before, (Tree, Markers))
244
+ return after is before
248
245
 
249
246
  def send_node_internal(
250
247
  self,
@@ -305,10 +302,11 @@ class SerializationContext:
305
302
  encoder.encode_none(None)
306
303
  return
307
304
 
308
- for type_cls, serializer in self.value_serializers.items():
309
- if isinstance(value, type_cls):
310
- serializer(value, type_name, encoder, self)
311
- return
305
+ if not isinstance(value, (UUID, int, float, bool, str, bytes)):
306
+ for type_cls, serializer in self.value_serializers.items():
307
+ if isinstance(value, type_cls):
308
+ serializer(value, type_name, encoder, self)
309
+ return
312
310
 
313
311
  DefaultValueSerializer().serialize(value, type_name, encoder, self)
314
312
 
@@ -50,6 +50,8 @@ def to_java_type_name(t: typing.Type[Any]) -> Optional[str]:
50
50
  return "org.openrewrite.java.tree.JRightPadded"
51
51
  if t.__name__ == "JContainer":
52
52
  return "org.openrewrite.java.tree.JContainer"
53
+ if t.__qualname__.startswith("JavaType"):
54
+ return "org.openrewrite.java.tree.JavaType$" + t.__name__
53
55
  if t.__module__.startswith("rewrite.java.markers"):
54
56
  return "org.openrewrite.java.marker." + t.__qualname__
55
57
  if t.__module__.startswith("rewrite.java.tree"):