letta-client 0.1.185__py3-none-any.whl → 0.1.186__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.

Potentially problematic release.


This version of letta-client might be problematic. Click here for more details.

@@ -97,6 +97,7 @@ class BlocksClient:
97
97
  read_only: typing.Optional[bool] = OMIT,
98
98
  description: typing.Optional[str] = OMIT,
99
99
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
100
+ source_id: typing.Optional[str] = OMIT,
100
101
  request_options: typing.Optional[RequestOptions] = None,
101
102
  ) -> Block:
102
103
  """
@@ -135,6 +136,9 @@ class BlocksClient:
135
136
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
136
137
  Metadata of the block.
137
138
 
139
+ source_id : typing.Optional[str]
140
+ The source ID associated with this block (for file blocks).
141
+
138
142
  request_options : typing.Optional[RequestOptions]
139
143
  Request-specific configuration.
140
144
 
@@ -169,6 +173,7 @@ class BlocksClient:
169
173
  "read_only": read_only,
170
174
  "description": description,
171
175
  "metadata": metadata,
176
+ "source_id": source_id,
172
177
  },
173
178
  request_options=request_options,
174
179
  omit=OMIT,
@@ -467,6 +472,7 @@ class AsyncBlocksClient:
467
472
  read_only: typing.Optional[bool] = OMIT,
468
473
  description: typing.Optional[str] = OMIT,
469
474
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
475
+ source_id: typing.Optional[str] = OMIT,
470
476
  request_options: typing.Optional[RequestOptions] = None,
471
477
  ) -> Block:
472
478
  """
@@ -505,6 +511,9 @@ class AsyncBlocksClient:
505
511
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
506
512
  Metadata of the block.
507
513
 
514
+ source_id : typing.Optional[str]
515
+ The source ID associated with this block (for file blocks).
516
+
508
517
  request_options : typing.Optional[RequestOptions]
509
518
  Request-specific configuration.
510
519
 
@@ -547,6 +556,7 @@ class AsyncBlocksClient:
547
556
  "read_only": read_only,
548
557
  "description": description,
549
558
  "metadata": metadata,
559
+ "source_id": source_id,
550
560
  },
551
561
  request_options=request_options,
552
562
  omit=OMIT,
@@ -122,6 +122,7 @@ class BlocksClient:
122
122
  read_only: typing.Optional[bool] = OMIT,
123
123
  description: typing.Optional[str] = OMIT,
124
124
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
125
+ source_id: typing.Optional[str] = OMIT,
125
126
  request_options: typing.Optional[RequestOptions] = None,
126
127
  ) -> Block:
127
128
  """
@@ -153,6 +154,9 @@ class BlocksClient:
153
154
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
154
155
  Metadata of the block.
155
156
 
157
+ source_id : typing.Optional[str]
158
+ The source ID associated with this block (for file blocks).
159
+
156
160
  request_options : typing.Optional[RequestOptions]
157
161
  Request-specific configuration.
158
162
 
@@ -187,6 +191,7 @@ class BlocksClient:
187
191
  "read_only": read_only,
188
192
  "description": description,
189
193
  "metadata": metadata,
194
+ "source_id": source_id,
190
195
  },
191
196
  request_options=request_options,
192
197
  omit=OMIT,
@@ -391,6 +396,7 @@ class BlocksClient:
391
396
  read_only: typing.Optional[bool] = OMIT,
392
397
  description: typing.Optional[str] = OMIT,
393
398
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
399
+ source_id: typing.Optional[str] = OMIT,
394
400
  request_options: typing.Optional[RequestOptions] = None,
395
401
  ) -> Block:
396
402
  """
@@ -425,6 +431,9 @@ class BlocksClient:
425
431
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
426
432
  Metadata of the block.
427
433
 
434
+ source_id : typing.Optional[str]
435
+ The source ID associated with this block (for file blocks).
436
+
428
437
  request_options : typing.Optional[RequestOptions]
429
438
  Request-specific configuration.
430
439
 
@@ -458,6 +467,7 @@ class BlocksClient:
458
467
  "read_only": read_only,
459
468
  "description": description,
460
469
  "metadata": metadata,
470
+ "source_id": source_id,
461
471
  },
462
472
  request_options=request_options,
463
473
  omit=OMIT,
@@ -599,6 +609,7 @@ class AsyncBlocksClient:
599
609
  read_only: typing.Optional[bool] = OMIT,
600
610
  description: typing.Optional[str] = OMIT,
601
611
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
612
+ source_id: typing.Optional[str] = OMIT,
602
613
  request_options: typing.Optional[RequestOptions] = None,
603
614
  ) -> Block:
604
615
  """
@@ -630,6 +641,9 @@ class AsyncBlocksClient:
630
641
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
631
642
  Metadata of the block.
632
643
 
644
+ source_id : typing.Optional[str]
645
+ The source ID associated with this block (for file blocks).
646
+
633
647
  request_options : typing.Optional[RequestOptions]
634
648
  Request-specific configuration.
635
649
 
@@ -672,6 +686,7 @@ class AsyncBlocksClient:
672
686
  "read_only": read_only,
673
687
  "description": description,
674
688
  "metadata": metadata,
689
+ "source_id": source_id,
675
690
  },
676
691
  request_options=request_options,
677
692
  omit=OMIT,
@@ -900,6 +915,7 @@ class AsyncBlocksClient:
900
915
  read_only: typing.Optional[bool] = OMIT,
901
916
  description: typing.Optional[str] = OMIT,
902
917
  metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
918
+ source_id: typing.Optional[str] = OMIT,
903
919
  request_options: typing.Optional[RequestOptions] = None,
904
920
  ) -> Block:
905
921
  """
@@ -934,6 +950,9 @@ class AsyncBlocksClient:
934
950
  metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
935
951
  Metadata of the block.
936
952
 
953
+ source_id : typing.Optional[str]
954
+ The source ID associated with this block (for file blocks).
955
+
937
956
  request_options : typing.Optional[RequestOptions]
938
957
  Request-specific configuration.
939
958
 
@@ -975,6 +994,7 @@ class AsyncBlocksClient:
975
994
  "read_only": read_only,
976
995
  "description": description,
977
996
  "metadata": metadata,
997
+ "source_id": source_id,
978
998
  },
979
999
  request_options=request_options,
980
1000
  omit=OMIT,
@@ -24,7 +24,7 @@ class BaseClientWrapper:
24
24
  headers: typing.Dict[str, str] = {
25
25
  "X-Fern-Language": "Python",
26
26
  "X-Fern-SDK-Name": "letta-client",
27
- "X-Fern-SDK-Version": "0.1.185",
27
+ "X-Fern-SDK-Version": "0.1.186",
28
28
  }
29
29
  if self._project is not None:
30
30
  headers["X-Project"] = self._project
@@ -36,6 +36,7 @@ class StepsClient:
36
36
  feedback: typing.Optional[StepsListRequestFeedback] = None,
37
37
  has_feedback: typing.Optional[bool] = None,
38
38
  tags: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
39
+ project_id: typing.Optional[str] = None,
39
40
  request_options: typing.Optional[RequestOptions] = None,
40
41
  ) -> typing.List[Step]:
41
42
  """
@@ -80,6 +81,9 @@ class StepsClient:
80
81
  tags : typing.Optional[typing.Union[str, typing.Sequence[str]]]
81
82
  Filter by tags
82
83
 
84
+ project_id : typing.Optional[str]
85
+ Filter by the project ID that is associated with the step (cloud only).
86
+
83
87
  request_options : typing.Optional[RequestOptions]
84
88
  Request-specific configuration.
85
89
 
@@ -114,6 +118,7 @@ class StepsClient:
114
118
  "feedback": feedback,
115
119
  "has_feedback": has_feedback,
116
120
  "tags": tags,
121
+ "project_id": project_id,
117
122
  },
118
123
  request_options=request_options,
119
124
  )
@@ -219,6 +224,7 @@ class AsyncStepsClient:
219
224
  feedback: typing.Optional[StepsListRequestFeedback] = None,
220
225
  has_feedback: typing.Optional[bool] = None,
221
226
  tags: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
227
+ project_id: typing.Optional[str] = None,
222
228
  request_options: typing.Optional[RequestOptions] = None,
223
229
  ) -> typing.List[Step]:
224
230
  """
@@ -263,6 +269,9 @@ class AsyncStepsClient:
263
269
  tags : typing.Optional[typing.Union[str, typing.Sequence[str]]]
264
270
  Filter by tags
265
271
 
272
+ project_id : typing.Optional[str]
273
+ Filter by the project ID that is associated with the step (cloud only).
274
+
266
275
  request_options : typing.Optional[RequestOptions]
267
276
  Request-specific configuration.
268
277
 
@@ -305,6 +314,7 @@ class AsyncStepsClient:
305
314
  "feedback": feedback,
306
315
  "has_feedback": has_feedback,
307
316
  "tags": tags,
317
+ "project_id": project_id,
308
318
  },
309
319
  request_options=request_options,
310
320
  )
@@ -67,6 +67,11 @@ class Block(UncheckedBaseModel):
67
67
  Metadata of the block.
68
68
  """
69
69
 
70
+ source_id: typing.Optional[str] = pydantic.Field(default=None)
71
+ """
72
+ The source ID associated with this block (for file blocks).
73
+ """
74
+
70
75
  id: typing.Optional[str] = pydantic.Field(default=None)
71
76
  """
72
77
  The human-friendly ID of the Block
@@ -56,6 +56,11 @@ class BlockUpdate(UncheckedBaseModel):
56
56
  Metadata of the block.
57
57
  """
58
58
 
59
+ source_id: typing.Optional[str] = pydantic.Field(default=None)
60
+ """
61
+ The source ID associated with this block (for file blocks).
62
+ """
63
+
59
64
  if IS_PYDANTIC_V2:
60
65
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
61
66
  else:
@@ -52,6 +52,11 @@ class CreateBlock(UncheckedBaseModel):
52
52
  Metadata of the block.
53
53
  """
54
54
 
55
+ source_id: typing.Optional[str] = pydantic.Field(default=None)
56
+ """
57
+ The source ID associated with this block (for file blocks).
58
+ """
59
+
55
60
  if IS_PYDANTIC_V2:
56
61
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
57
62
  else:
@@ -106,6 +106,11 @@ class Step(UncheckedBaseModel):
106
106
  The feedback for this step. Must be either 'positive' or 'negative'.
107
107
  """
108
108
 
109
+ project_id: typing.Optional[str] = pydantic.Field(default=None)
110
+ """
111
+ The project that the agent that executed this step belongs to (cloud only).
112
+ """
113
+
109
114
  if IS_PYDANTIC_V2:
110
115
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
111
116
  else:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: letta-client
3
- Version: 0.1.185
3
+ Version: 0.1.186
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Intended Audience :: Developers
@@ -1,7 +1,7 @@
1
1
  letta_client/__init__.py,sha256=OW9d5lmZRZOZF5Yn7b_1h3oJUoJz5TyMSayQW89iZRw,18094
2
2
  letta_client/agents/__init__.py,sha256=9L60SAZIihZzh_KhVxu0uX4RS7z2iKKctzQsS8ycXHc,1954
3
3
  letta_client/agents/blocks/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
4
- letta_client/agents/blocks/client.py,sha256=HwUOGmCQ_wuKb3_52ij1BBHRXdzIEd8SjW9-9Rop26Q,25044
4
+ letta_client/agents/blocks/client.py,sha256=T9Hrp3O6Bbpk_w9X-quR_WStTWDy7l1T1vsaMPqE4QE,25448
5
5
  letta_client/agents/client.py,sha256=95dMCgwMeIFtBwcDWw3-e14fUhd8N6d-mTDG6TRAhIk,89413
6
6
  letta_client/agents/context/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
7
7
  letta_client/agents/context/client.py,sha256=O1gxStQyfzXi4MblatWalLTWM425gS_fndW3W_es08U,4887
@@ -52,7 +52,7 @@ letta_client/batches/client.py,sha256=DHnsRYHgxVh6OvfAE8etlbno1FMg4cIzAYiydJrfmJ
52
52
  letta_client/blocks/__init__.py,sha256=c6SGOs9_YGdydYAzhe5TUiaXq52rpWT1mNMcke8qGTQ,108
53
53
  letta_client/blocks/agents/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
54
54
  letta_client/blocks/agents/client.py,sha256=KBeIrslvPqO4AlYMb3L4iDxvtqsS2GfvPRgzhvxI4Ws,4976
55
- letta_client/blocks/client.py,sha256=N4wZjI0gCDOQDgquwAnV9FfVPUudxo-js5AEzW8rJz0,32107
55
+ letta_client/blocks/client.py,sha256=Prnpr1q2CIdBI6PgtsSjJC5V3gOlLr_HAdlfreANABE,32915
56
56
  letta_client/client.py,sha256=k2mZqqEWciVmEQHgipjCK4kQILk74hpSqzcdNwdql9A,21212
57
57
  letta_client/client_side_access_tokens/__init__.py,sha256=z_wHT4UTBK7RzDIfLpdLMtBJBuuDosqgbzdmx-QME_o,763
58
58
  letta_client/client_side_access_tokens/client.py,sha256=0JUMP4g57xaoXY17g1XiPrfQXpIHMcat6hvwF3jGEMw,12416
@@ -65,7 +65,7 @@ letta_client/client_side_access_tokens/types/client_side_access_tokens_create_re
65
65
  letta_client/client_side_access_tokens/types/client_side_access_tokens_create_response_policy_data_item_access_item.py,sha256=R-H25IpNp9feSrW8Yj3h9O3UTMVvFniQJElogKxLuoE,254
66
66
  letta_client/core/__init__.py,sha256=OKbX2aCZXgHCDUsCouqv-OiX32xA6eFFCKIUH9M5Vzk,1591
67
67
  letta_client/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
68
- letta_client/core/client_wrapper.py,sha256=ixVgLEjDkjT5ta-bvwzWOccU6vZDGpHAVzsJJalmSNo,2336
68
+ letta_client/core/client_wrapper.py,sha256=8G_jACxEL8hyDvZDV0T68ISe1CkCwDTKzDl00Uc8KMg,2336
69
69
  letta_client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
70
70
  letta_client/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
71
71
  letta_client/core/http_client.py,sha256=Z77OIxIbL4OAB2IDqjRq_sYa5yNYAWfmdhdCSSvh6Y4,19552
@@ -132,7 +132,7 @@ letta_client/sources/files/client.py,sha256=xyK22UrVGMqHSKR7HNM8YrSY2RUgcI4u_PrV
132
132
  letta_client/sources/passages/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
133
133
  letta_client/sources/passages/client.py,sha256=G1WtDHHd5RTImEIGMEZ5XXKg3HQQ__y2g6adcKpndfw,6041
134
134
  letta_client/steps/__init__.py,sha256=Vitg85t2RrFWGxc4yqPbmd1dDZ44L0A1cnQFVTGRDCw,184
135
- letta_client/steps/client.py,sha256=YppOqkbvMTWKSIYValpaWjN_QeuSmA9SqQ1KfBvnlQY,13470
135
+ letta_client/steps/client.py,sha256=DFLrtpsPfeqk9RwMeb_KRGFTFtY1RwdWfg7KKmF1GuA,13906
136
136
  letta_client/steps/feedback/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
137
137
  letta_client/steps/feedback/client.py,sha256=F4815wJRjXnBrAT9_1l3C-HQ4anSzC1RVLl_HKaGM_U,5111
138
138
  letta_client/steps/types/__init__.py,sha256=afgL6YcS_8FJ3Syf7DwWW82CmYDqb9zelSZpJ4Rt70o,171
@@ -184,8 +184,8 @@ letta_client/types/bad_request_error_body.py,sha256=E4_eWEc9xeW9BkXGViBDrevV8Jf6
184
184
  letta_client/types/base_64_image.py,sha256=RarQnUE-5AnRAZF8W73h6y9K-b6Deq27KnMe93te5Lw,964
185
185
  letta_client/types/base_tool_rule_schema.py,sha256=FbnJy6gb8wY_DPiU3Gs-u1Ol_l4K7-nAmPTc1oR3kOo,582
186
186
  letta_client/types/batch_job.py,sha256=MIycCFHvBeVqSoi4WX_L_MPI92jnq-x4-F5XnHw-sYg,2364
187
- letta_client/types/block.py,sha256=43aeirQFWcifNrXLjQnfEekQjfodO6DbTQXKjy8gofY,3185
188
- letta_client/types/block_update.py,sha256=ALEConFeolPh9N1fhW9oY3De9JWOs75KK6DtkTUaWV4,1781
187
+ letta_client/types/block.py,sha256=FZsL0BAOAjdPNXEZDqTFkbFd6vnaI3VsF9PqL0NISzw,3333
188
+ letta_client/types/block_update.py,sha256=GuMV8FOP9ww2BUTy1deirJO5OiL_0I8t_RGnKFexqfg,1929
189
189
  letta_client/types/chat_completion_assistant_message_param.py,sha256=QwxAJ9RQqxtZKnt6g6RfDppuMIt-1RAIlpnfSrVdHgg,1219
190
190
  letta_client/types/chat_completion_assistant_message_param_content.py,sha256=CJ7Z_Jik2fzBYGy0UuvgDk0aLt3-Xpj3qswBLmWM0Sg,323
191
191
  letta_client/types/chat_completion_assistant_message_param_content_item.py,sha256=tF-E0jNH0ilRJgm4vPTqHguCb-TZZ0LJfTXxOnon23w,405
@@ -243,7 +243,7 @@ letta_client/types/conflict_error_body.py,sha256=Mena-q1jti6nv_7-xrp6sDb_5MXNKPG
243
243
  letta_client/types/context_window_overview.py,sha256=9pwiObSxu-SFyQ1pxSTlQiRatVAyFgqa6t0_qrrsGfU,2815
244
244
  letta_client/types/continue_tool_rule.py,sha256=cGKyCh9LwxXJfWKEi8HMAcyBv3QTrmZkwt9YugzwtqY,1035
245
245
  letta_client/types/core_memory_block_schema.py,sha256=DGHyLAcFhHBm7oXkhkGIkkckcl9S2bCaU9b3qrUeNtc,984
246
- letta_client/types/create_block.py,sha256=cyyufU4MBcLGjCNeTFZE7TX4LUhQXIaZAVwaoYkMlpE,1562
246
+ letta_client/types/create_block.py,sha256=fbmJT8mXoTYt7_SntNZW8QjZM8lhi6pDpo85RLQv1rE,1710
247
247
  letta_client/types/dynamic_manager.py,sha256=5DRNqtUnjeTwOe5mkNB-SXItqLOfEX0avSrwsrJt1Aw,853
248
248
  letta_client/types/dynamic_manager_update.py,sha256=Kew94BsFP6vP9pUXpZDMFZAo3TyaYWKu1KPgoQQjKYg,888
249
249
  letta_client/types/e_2_b_sandbox_config.py,sha256=w3R4QpPjeie5aKw8sb_eKhl78J0k5vLCcATNS3Qaeyw,957
@@ -358,7 +358,7 @@ letta_client/types/sleeptime_manager_update.py,sha256=JMzgtvGMDI5VBzlTuzm4FpuFAL
358
358
  letta_client/types/source.py,sha256=BsfE9yrefXREQtskGZnR-TFGqmHkFKIGHC5udtHUi14,2370
359
359
  letta_client/types/sse_server_config.py,sha256=IN-FdECflYF-XiIM_fvVOwyDu215Csoixepv44PAVvQ,1738
360
360
  letta_client/types/stdio_server_config.py,sha256=dEQ7bguiLikGemLxYZJ3JCmmEQgAMsSPO_P52oHZSl0,1091
361
- letta_client/types/step.py,sha256=iMc18pPufFs9Bs-QLYWWChZ0-Dy2WHhp9aJ_Dszb0uE,3338
361
+ letta_client/types/step.py,sha256=0s2j8j_nZ4oqH8BXBOgqycnqblUjR1zq8F1nwcYGBqU,3503
362
362
  letta_client/types/step_feedback.py,sha256=JXUkclvJ6C-6ZTgd2lteOxqEyO5KRDNQ8ronBPYMdbo,160
363
363
  letta_client/types/stop_reason_type.py,sha256=PyYTS9bIvCSDfzyG4wJyk6bi9fCdDBNsoleLd7nMJYI,228
364
364
  letta_client/types/streamable_http_server_config.py,sha256=ya5IZi_bHa3IW0SIbWuQfKXUqSAPlZ_qGZYXiwl4sh0,1775
@@ -414,6 +414,6 @@ letta_client/types/web_search_options_user_location_approximate.py,sha256=Ywk01J
414
414
  letta_client/version.py,sha256=bttKLbIhO3UonCYQlqs600zzbQgfhCCMjeXR9WRzid4,79
415
415
  letta_client/voice/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
416
416
  letta_client/voice/client.py,sha256=47iQYCuW_qpKI4hM3pYVxn3hw7kgQj3emU1_oRpkRMA,5811
417
- letta_client-0.1.185.dist-info/METADATA,sha256=TSjSmQpH8m4_MabZeDlT_bAnB7u8JXoa4mUmJDEjvLs,5177
418
- letta_client-0.1.185.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
419
- letta_client-0.1.185.dist-info/RECORD,,
417
+ letta_client-0.1.186.dist-info/METADATA,sha256=v4T5GG9qyqmDmNUSn9ZLIISKpHON-Jv7bKRqO9EnWUA,5177
418
+ letta_client-0.1.186.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
419
+ letta_client-0.1.186.dist-info/RECORD,,