reykit 1.1.50__py3-none-any.whl → 1.1.52__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.
- reykit/rimage.py +8 -8
- reykit/rlog.py +5 -5
- reykit/rnet.py +16 -16
- reykit/ros.py +27 -26
- reykit/rrand.py +3 -3
- reykit/rtable.py +4 -4
- reykit/rtask.py +6 -6
- reykit/rtime.py +12 -12
- reykit/rwrap.py +6 -6
- reykit/rzip.py +10 -10
- {reykit-1.1.50.dist-info → reykit-1.1.52.dist-info}/METADATA +1 -1
- {reykit-1.1.50.dist-info → reykit-1.1.52.dist-info}/RECORD +14 -14
- {reykit-1.1.50.dist-info → reykit-1.1.52.dist-info}/WHEEL +0 -0
- {reykit-1.1.50.dist-info → reykit-1.1.52.dist-info}/licenses/LICENSE +0 -0
reykit/rimage.py
CHANGED
@@ -61,8 +61,8 @@ def encode_qrcode(text: str, path: str | None = None) -> bytes:
|
|
61
61
|
|
62
62
|
# Save.
|
63
63
|
if path is not None:
|
64
|
-
|
65
|
-
|
64
|
+
file = File(path)
|
65
|
+
file.write(file_bytes)
|
66
66
|
|
67
67
|
return file_bytes
|
68
68
|
|
@@ -139,8 +139,8 @@ def compress_image(
|
|
139
139
|
|
140
140
|
# Handle parameter.
|
141
141
|
if type(input_image) == str:
|
142
|
-
|
143
|
-
input_image =
|
142
|
+
file = File(input_image)
|
143
|
+
input_image = file.str
|
144
144
|
now_size = len(input_image)
|
145
145
|
if target_size < 1:
|
146
146
|
target_size = now_size * target_size
|
@@ -180,8 +180,8 @@ def compress_image(
|
|
180
180
|
|
181
181
|
## Save file and return path.
|
182
182
|
else:
|
183
|
-
|
184
|
-
|
183
|
+
file = File(ouput_image)
|
184
|
+
file(content)
|
185
185
|
|
186
186
|
|
187
187
|
def to_pil_image(source: str | bytes) -> Image:
|
@@ -252,7 +252,7 @@ def generate_captcha_image(
|
|
252
252
|
|
253
253
|
# Save.
|
254
254
|
if path is not None:
|
255
|
-
|
256
|
-
|
255
|
+
file = File(path)
|
256
|
+
file.write(file_bytes)
|
257
257
|
|
258
258
|
return file_bytes
|
reykit/rlog.py
CHANGED
@@ -983,18 +983,18 @@ class Record(Base):
|
|
983
983
|
|
984
984
|
# To file.
|
985
985
|
else:
|
986
|
-
|
986
|
+
file = File(self.path)
|
987
987
|
|
988
988
|
## Convert.
|
989
989
|
if type(value) != str:
|
990
990
|
value = str(value)
|
991
|
-
if
|
991
|
+
if file:
|
992
992
|
value += ':'
|
993
993
|
else:
|
994
994
|
value = ':%s:' % value
|
995
995
|
|
996
996
|
## Record.
|
997
|
-
|
997
|
+
file(value, True)
|
998
998
|
|
999
999
|
|
1000
1000
|
def is_recorded(
|
@@ -1019,7 +1019,7 @@ class Record(Base):
|
|
1019
1019
|
|
1020
1020
|
# To file.
|
1021
1021
|
else:
|
1022
|
-
|
1022
|
+
file = File(self.path)
|
1023
1023
|
|
1024
1024
|
## Convert.
|
1025
1025
|
if type(value) != str:
|
@@ -1027,7 +1027,7 @@ class Record(Base):
|
|
1027
1027
|
value = ':%s:' % value
|
1028
1028
|
|
1029
1029
|
## Judge.
|
1030
|
-
judge = value in
|
1030
|
+
judge = value in file
|
1031
1031
|
|
1032
1032
|
return judge
|
1033
1033
|
|
reykit/rnet.py
CHANGED
@@ -336,10 +336,10 @@ def request(
|
|
336
336
|
method = 'post'
|
337
337
|
if files is None:
|
338
338
|
if type(data) == str:
|
339
|
-
|
340
|
-
data =
|
339
|
+
file = File(data)
|
340
|
+
data = file.bytes
|
341
341
|
if 'Content-Disposition' not in headers:
|
342
|
-
file_name =
|
342
|
+
file_name = file.name_suffix
|
343
343
|
headers['Content-Disposition'] = f'attachment; filename={file_name}'
|
344
344
|
if type(data) == bytes:
|
345
345
|
if 'Content-Type' not in headers:
|
@@ -351,9 +351,9 @@ def request(
|
|
351
351
|
else:
|
352
352
|
item_data, item_headers = value, {}
|
353
353
|
if type(item_data) == str:
|
354
|
-
|
355
|
-
data =
|
356
|
-
item_headers.setdefault('filename',
|
354
|
+
file = File(item_data)
|
355
|
+
data = file.bytes
|
356
|
+
item_headers.setdefault('filename', file.name_suffix)
|
357
357
|
if type(item_data) == bytes:
|
358
358
|
if 'Content-Type' not in item_headers:
|
359
359
|
item_headers['Content-Type'] = get_content_type(item_data)
|
@@ -441,14 +441,14 @@ def download(url: str, path: str | None = None) -> str:
|
|
441
441
|
path = os_abspath(file_name)
|
442
442
|
|
443
443
|
# Save.
|
444
|
-
|
445
|
-
|
444
|
+
file = File(path)
|
445
|
+
file(content)
|
446
446
|
|
447
447
|
return path
|
448
448
|
|
449
449
|
|
450
450
|
def compute_stream_time(
|
451
|
-
|
451
|
+
source: str | bytes | int,
|
452
452
|
bandwidth: float
|
453
453
|
) -> float:
|
454
454
|
"""
|
@@ -456,7 +456,7 @@ def compute_stream_time(
|
|
456
456
|
|
457
457
|
Parameters
|
458
458
|
----------
|
459
|
-
|
459
|
+
source : File data.
|
460
460
|
- `str`: File path.
|
461
461
|
- `bytes`: File bytes data.
|
462
462
|
- `int`: File bytes size.
|
@@ -468,16 +468,16 @@ def compute_stream_time(
|
|
468
468
|
"""
|
469
469
|
|
470
470
|
# Get parameter.
|
471
|
-
match
|
471
|
+
match source:
|
472
472
|
case str():
|
473
|
-
|
474
|
-
file_size =
|
473
|
+
file = File(source)
|
474
|
+
file_size = file.size
|
475
475
|
case bytes() | bytearray():
|
476
|
-
file_size = len(
|
476
|
+
file_size = len(source)
|
477
477
|
case int():
|
478
|
-
file_size =
|
478
|
+
file_size = source
|
479
479
|
case _:
|
480
|
-
throw(TypeError,
|
480
|
+
throw(TypeError, source)
|
481
481
|
|
482
482
|
# Calculate.
|
483
483
|
seconds = file_size / 125_000 / bandwidth
|
reykit/ros.py
CHANGED
@@ -50,6 +50,7 @@ from .rsys import run_cmd
|
|
50
50
|
|
51
51
|
|
52
52
|
__all__ = (
|
53
|
+
'get_path',
|
53
54
|
'get_md5',
|
54
55
|
'make_dir',
|
55
56
|
'find_relpath',
|
@@ -135,8 +136,8 @@ def make_dir(*paths: str, report: bool = False) -> None:
|
|
135
136
|
|
136
137
|
# Create.
|
137
138
|
for path in paths:
|
138
|
-
|
139
|
-
|
139
|
+
folder = Folder(path)
|
140
|
+
folder.make(report)
|
140
141
|
|
141
142
|
|
142
143
|
def find_relpath(abspath: str, relpath: str) -> str:
|
@@ -187,13 +188,13 @@ def find_relpath(abspath: str, relpath: str) -> str:
|
|
187
188
|
return path
|
188
189
|
|
189
190
|
|
190
|
-
def get_file_str(
|
191
|
+
def get_file_str(source: FileStr) -> str:
|
191
192
|
"""
|
192
193
|
Get file string data.
|
193
194
|
|
194
195
|
Parameters
|
195
196
|
----------
|
196
|
-
|
197
|
+
source : File source.
|
197
198
|
- `'str' and path`: Return this string data.
|
198
199
|
- `'str' and not path`: As a file path read string data.
|
199
200
|
- `TextIOBase`: Read string data.
|
@@ -204,39 +205,39 @@ def get_file_str(file: FileStr) -> str:
|
|
204
205
|
"""
|
205
206
|
|
206
207
|
# Get.
|
207
|
-
match
|
208
|
+
match source:
|
208
209
|
|
209
210
|
## Path or string.
|
210
211
|
case str():
|
211
|
-
exist = os_exists(
|
212
|
+
exist = os_exists(source)
|
212
213
|
|
213
214
|
## Path.
|
214
215
|
if exist:
|
215
|
-
|
216
|
-
file_str =
|
216
|
+
file = File(source)
|
217
|
+
file_str = file.str
|
217
218
|
|
218
219
|
## String.
|
219
220
|
else:
|
220
|
-
file_str =
|
221
|
+
file_str = source
|
221
222
|
|
222
223
|
## IO.
|
223
224
|
case TextIOBase():
|
224
|
-
file_str =
|
225
|
+
file_str = source.read()
|
225
226
|
|
226
227
|
## Throw exception.
|
227
228
|
case _:
|
228
|
-
throw(TypeError,
|
229
|
+
throw(TypeError, source)
|
229
230
|
|
230
231
|
return file_str
|
231
232
|
|
232
233
|
|
233
|
-
def get_file_bytes(
|
234
|
+
def get_file_bytes(source: FileBytes) -> bytes:
|
234
235
|
"""
|
235
236
|
Get file bytes data.
|
236
237
|
|
237
238
|
Parameters
|
238
239
|
----------
|
239
|
-
|
240
|
+
source : File source.
|
240
241
|
- `bytes`: Return this bytes data.
|
241
242
|
- `str`: As a file path read bytes data.
|
242
243
|
- `BufferedIOBase`: Read bytes data.
|
@@ -247,26 +248,26 @@ def get_file_bytes(file: FileBytes) -> bytes:
|
|
247
248
|
"""
|
248
249
|
|
249
250
|
# Get.
|
250
|
-
match
|
251
|
+
match source:
|
251
252
|
|
252
253
|
## Bytes.
|
253
254
|
case bytes():
|
254
|
-
file_bytes =
|
255
|
+
file_bytes = source
|
255
256
|
case bytearray():
|
256
|
-
file_bytes = bytes(
|
257
|
+
file_bytes = bytes(source)
|
257
258
|
|
258
259
|
## Path.
|
259
260
|
case str():
|
260
|
-
|
261
|
-
file_bytes =
|
261
|
+
file = File(source)
|
262
|
+
file_bytes = file.bytes
|
262
263
|
|
263
264
|
## IO.
|
264
265
|
case BufferedIOBase():
|
265
|
-
file_bytes =
|
266
|
+
file_bytes = source.read()
|
266
267
|
|
267
268
|
## Throw exception.
|
268
269
|
case _:
|
269
|
-
throw(TypeError,
|
270
|
+
throw(TypeError, source)
|
270
271
|
|
271
272
|
return file_bytes
|
272
273
|
|
@@ -290,12 +291,12 @@ def read_toml(path: str | File) -> dict[str, Any]:
|
|
290
291
|
|
291
292
|
## File path.
|
292
293
|
case str():
|
293
|
-
|
294
|
-
text =
|
294
|
+
file = File(path)
|
295
|
+
text = file.str
|
295
296
|
|
296
297
|
## File object.
|
297
298
|
case File():
|
298
|
-
text =
|
299
|
+
text = file.str
|
299
300
|
|
300
301
|
# Parse.
|
301
302
|
|
@@ -1014,7 +1015,7 @@ class Folder(Base):
|
|
1014
1015
|
return join_path
|
1015
1016
|
|
1016
1017
|
|
1017
|
-
def
|
1018
|
+
def make(self, report: bool = False) -> None:
|
1018
1019
|
"""
|
1019
1020
|
Create folders.
|
1020
1021
|
|
@@ -1026,12 +1027,12 @@ class Folder(Base):
|
|
1026
1027
|
# Exist.
|
1027
1028
|
exist = os_exists(self.path)
|
1028
1029
|
if exist:
|
1029
|
-
text = '
|
1030
|
+
text = 'Directory already exists | %s' % self.path
|
1030
1031
|
|
1031
1032
|
# Not exist.
|
1032
1033
|
else:
|
1033
1034
|
os_makedirs(self.path)
|
1034
|
-
text = '
|
1035
|
+
text = 'Directory creation complete | %s' % self.path
|
1035
1036
|
|
1036
1037
|
# Report.
|
1037
1038
|
if report:
|
reykit/rrand.py
CHANGED
@@ -196,15 +196,15 @@ def randn(*thresholds: float, precision: int | None = None) -> int | float:
|
|
196
196
|
|
197
197
|
## No seed.
|
198
198
|
thread_id = threading_get_ident()
|
199
|
-
|
200
|
-
if
|
199
|
+
seed = ConfigRandom._rrandom_dict.get(thread_id)
|
200
|
+
if seed is None:
|
201
201
|
range_ = threshold_high - threshold_low + 1
|
202
202
|
number = secrets_randbelow(range_)
|
203
203
|
number += threshold_low
|
204
204
|
|
205
205
|
## Seed.
|
206
206
|
else:
|
207
|
-
number =
|
207
|
+
number = seed.random.randint(threshold_low, threshold_high)
|
208
208
|
number = number / magnifier
|
209
209
|
|
210
210
|
# Convert Integer.
|
reykit/rtable.py
CHANGED
@@ -407,16 +407,16 @@ class Table(Base):
|
|
407
407
|
|
408
408
|
# Get parameter.
|
409
409
|
data = self.to_df()
|
410
|
-
|
411
|
-
if
|
410
|
+
file = File(path)
|
411
|
+
if file:
|
412
412
|
header = False
|
413
413
|
else:
|
414
414
|
header = True
|
415
415
|
|
416
416
|
# Save file.
|
417
|
-
data.to_csv(
|
417
|
+
data.to_csv(file.path, header=header, index=False, mode='a')
|
418
418
|
|
419
|
-
return
|
419
|
+
return file.path
|
420
420
|
|
421
421
|
|
422
422
|
def to_excel(
|
reykit/rtask.py
CHANGED
@@ -449,8 +449,8 @@ async def async_wait(
|
|
449
449
|
"""
|
450
450
|
|
451
451
|
# Set parameter.
|
452
|
-
|
453
|
-
|
452
|
+
tm = TimeMark()
|
453
|
+
tm()
|
454
454
|
|
455
455
|
# Not set timeout.
|
456
456
|
if _timeout is None:
|
@@ -472,8 +472,8 @@ async def async_wait(
|
|
472
472
|
break
|
473
473
|
|
474
474
|
## Timeout.
|
475
|
-
|
476
|
-
if
|
475
|
+
tm()
|
476
|
+
if tm.total_spend > _timeout:
|
477
477
|
|
478
478
|
### Throw exception.
|
479
479
|
if _raising:
|
@@ -485,8 +485,8 @@ async def async_wait(
|
|
485
485
|
await async_sleep(_interval)
|
486
486
|
|
487
487
|
## Return.
|
488
|
-
|
489
|
-
return
|
488
|
+
tm()
|
489
|
+
return tm.total_spend
|
490
490
|
|
491
491
|
|
492
492
|
async def async_request(
|
reykit/rtime.py
CHANGED
@@ -456,8 +456,8 @@ def wait(
|
|
456
456
|
"""
|
457
457
|
|
458
458
|
# Set parameter.
|
459
|
-
|
460
|
-
|
459
|
+
tm = TimeMark()
|
460
|
+
tm()
|
461
461
|
|
462
462
|
# Not set timeout.
|
463
463
|
if _timeout is None:
|
@@ -479,8 +479,8 @@ def wait(
|
|
479
479
|
break
|
480
480
|
|
481
481
|
## Timeout.
|
482
|
-
|
483
|
-
if
|
482
|
+
tm()
|
483
|
+
if tm.total_spend > _timeout:
|
484
484
|
|
485
485
|
### Throw exception.
|
486
486
|
if _raising:
|
@@ -492,8 +492,8 @@ def wait(
|
|
492
492
|
sleep(_interval)
|
493
493
|
|
494
494
|
## Return.
|
495
|
-
|
496
|
-
return
|
495
|
+
tm()
|
496
|
+
return tm.total_spend
|
497
497
|
|
498
498
|
|
499
499
|
class TimeMark(Base):
|
@@ -519,7 +519,7 @@ class TimeMark(Base):
|
|
519
519
|
self.record: dict[int, RecordData] = {}
|
520
520
|
|
521
521
|
|
522
|
-
def
|
522
|
+
def mark(self, note: str | None = None) -> int:
|
523
523
|
"""
|
524
524
|
Marking now time.
|
525
525
|
|
@@ -557,7 +557,7 @@ class TimeMark(Base):
|
|
557
557
|
return index
|
558
558
|
|
559
559
|
|
560
|
-
def
|
560
|
+
def get_report(self, title: str | None = None):
|
561
561
|
"""
|
562
562
|
Return time mark report table.
|
563
563
|
|
@@ -630,7 +630,7 @@ class TimeMark(Base):
|
|
630
630
|
|
631
631
|
|
632
632
|
@property
|
633
|
-
def
|
633
|
+
def total_spend(self) -> float:
|
634
634
|
"""
|
635
635
|
Get total spend seconds.
|
636
636
|
|
@@ -664,7 +664,7 @@ class TimeMark(Base):
|
|
664
664
|
"""
|
665
665
|
|
666
666
|
# Get.
|
667
|
-
report = self.
|
667
|
+
report = self.get_report()
|
668
668
|
|
669
669
|
# Convert.
|
670
670
|
string = str(report)
|
@@ -672,6 +672,6 @@ class TimeMark(Base):
|
|
672
672
|
return string
|
673
673
|
|
674
674
|
|
675
|
-
__call__ = __getitem__ =
|
675
|
+
__call__ = __getitem__ = mark
|
676
676
|
|
677
|
-
__float__ =
|
677
|
+
__float__ = total_spend
|
reykit/rwrap.py
CHANGED
@@ -191,15 +191,15 @@ def wrap_runtime(
|
|
191
191
|
"""
|
192
192
|
|
193
193
|
# Execute function and marking time.
|
194
|
-
|
195
|
-
|
194
|
+
tm = TimeMark()
|
195
|
+
tm()
|
196
196
|
result = func(*args, **kwargs)
|
197
|
-
|
197
|
+
tm()
|
198
198
|
|
199
199
|
# Generate report.
|
200
|
-
start_time =
|
201
|
-
spend_time: Timedelta =
|
202
|
-
end_time =
|
200
|
+
start_time = tm.record[0]['datetime']
|
201
|
+
spend_time: Timedelta = tm.record[1]['timedelta']
|
202
|
+
end_time = tm.record[1]['datetime']
|
203
203
|
start_str = time_to(start_time, True)[:-3]
|
204
204
|
spend_str = time_to(spend_time, True)[:-3]
|
205
205
|
end_str = time_to(end_time, True)[:-3]
|
reykit/rzip.py
CHANGED
@@ -24,7 +24,7 @@ __all__ = (
|
|
24
24
|
|
25
25
|
|
26
26
|
def compress(
|
27
|
-
|
27
|
+
path: str,
|
28
28
|
build_dir: str | None = None,
|
29
29
|
overwrite: bool = True
|
30
30
|
) -> None:
|
@@ -33,7 +33,7 @@ def compress(
|
|
33
33
|
|
34
34
|
Parameters
|
35
35
|
----------
|
36
|
-
|
36
|
+
path : File or folder path.
|
37
37
|
build_dir : Build directory.
|
38
38
|
- `None`: Work directory.
|
39
39
|
- `str`: Use this value.
|
@@ -46,13 +46,13 @@ def compress(
|
|
46
46
|
mode = 'w'
|
47
47
|
else:
|
48
48
|
mode = 'x'
|
49
|
-
is_file = os_isfile(
|
49
|
+
is_file = os_isfile(path)
|
50
50
|
if is_file:
|
51
|
-
|
52
|
-
obj_name =
|
51
|
+
file = File(path)
|
52
|
+
obj_name = file.name_suffix
|
53
53
|
else:
|
54
|
-
|
55
|
-
obj_name =
|
54
|
+
folder = Folder(path)
|
55
|
+
obj_name = folder.name
|
56
56
|
build_name = obj_name + '.zip'
|
57
57
|
build_path = os_join(build_dir, build_name)
|
58
58
|
|
@@ -61,12 +61,12 @@ def compress(
|
|
61
61
|
|
62
62
|
## File.
|
63
63
|
if is_file:
|
64
|
-
zip_file.write(
|
64
|
+
zip_file.write(file.path, file.name_suffix)
|
65
65
|
|
66
66
|
## Folder.
|
67
67
|
else:
|
68
|
-
dir_path_len = len(
|
69
|
-
dirs = os_walk(
|
68
|
+
dir_path_len = len(folder.path)
|
69
|
+
dirs = os_walk(folder.path)
|
70
70
|
for folder_name, sub_folders_name, files_name in dirs:
|
71
71
|
for sub_folder_name in sub_folders_name:
|
72
72
|
sub_folder_path = os_join(folder_name, sub_folder_name)
|
@@ -3,26 +3,26 @@ reykit/rall.py,sha256=7Hip02YOkIDm3_xkoSDjvvYV2LhdBV2r4UKzWWnIfIo,628
|
|
3
3
|
reykit/rbase.py,sha256=KPSMPMenmzsA50Q84r0DOXv4Ei-hbp06HXnCB46dsP4,22121
|
4
4
|
reykit/rdata.py,sha256=DqxoWkbN3WqGZ5FC9VRlhXAwpTGebv1M5VSeOeR2YnQ,10308
|
5
5
|
reykit/remail.py,sha256=s7TXbLgEWEqNoeM42c6FpPufB2LajHgQuahfZri3urQ,6706
|
6
|
-
reykit/rimage.py,sha256=
|
7
|
-
reykit/rlog.py,sha256=
|
6
|
+
reykit/rimage.py,sha256=Dj2ZK0Qprmu0WGLjaMnJgjbT39o1YxqyD8e9pAe3kl0,6151
|
7
|
+
reykit/rlog.py,sha256=jgnI8jFSGw0WcD8SSVmUCkomLXY8uoXdwJMUyB2ED4U,25587
|
8
8
|
reykit/rmonkey.py,sha256=9-NvBM4phThKTHpqTSPlPGfJWcoDSp4EVl8x3xHJacg,7951
|
9
|
-
reykit/rnet.py,sha256=
|
9
|
+
reykit/rnet.py,sha256=15yrZTMET4cdimbslMk9O8HO9ofMtvfo1dZgLd4Bafw,16938
|
10
10
|
reykit/rnum.py,sha256=PhG4V_BkVfCJUsbpMDN1umGZly1Hsus80TW8bpyBtyY,3653
|
11
|
-
reykit/ros.py,sha256=
|
12
|
-
reykit/rrand.py,sha256=
|
11
|
+
reykit/ros.py,sha256=vrzs2biU6qZhNqvwV4iJn7MvJF1vdeblJ6pbjIh12dc,42955
|
12
|
+
reykit/rrand.py,sha256=imysGSoQH4O0yq45EILYYdow_280LDqYioE4Sm-L4_U,8938
|
13
13
|
reykit/rre.py,sha256=4DVxy28dl5zn6_II8-cgr7E2nVPH5QJIJVB4o7Vsf1A,6078
|
14
14
|
reykit/rschedule.py,sha256=_nrfrXYxlFAKCDbM8ibTTb60zNDlHxyE310cv-A19Kw,5799
|
15
15
|
reykit/rstdout.py,sha256=Vgqm66rtjIaYWO-EFEm9PGzgXDzZXZGq-BS1Lg6zD40,8197
|
16
16
|
reykit/rsys.py,sha256=28B-QO0DiKjiNv-kbGh3z-BN4YOrhWVYML3b3cGrPHo,24941
|
17
|
-
reykit/rtable.py,sha256=
|
18
|
-
reykit/rtask.py,sha256=
|
17
|
+
reykit/rtable.py,sha256=RZ4CTyVsPe-38iv_NHsEU_bV8h-ba9wvGXigUxXHxKQ,12194
|
18
|
+
reykit/rtask.py,sha256=d3Fs-_ZB-uHtzz7zyI2aAmiQv3NcIvWrco6x10jFuzc,22842
|
19
19
|
reykit/rtext.py,sha256=gkmA849MBHjchvY4apUTQpkFs13vcmyK_hIwucH2A84,12849
|
20
|
-
reykit/rtime.py,sha256=
|
21
|
-
reykit/rwrap.py,sha256=
|
22
|
-
reykit/rzip.py,sha256=
|
20
|
+
reykit/rtime.py,sha256=xBpXItHRSmftec1ZzqVRTkMNb6gmFx0A8TaUd5nmiy8,16974
|
21
|
+
reykit/rwrap.py,sha256=x4CzSndSdSv_e8lLbLifvC_v2ogWHD42-tDhwsq_DzQ,15317
|
22
|
+
reykit/rzip.py,sha256=TU18pEpbr2T7zWFzxkcZPjN5gudw-FArusf55qeNDCo,3453
|
23
23
|
reykit/rdll/__init__.py,sha256=WrJ_8jp_hbn2nl1osrR3buZMsmAGRVY6HfQdhDoJpSM,698
|
24
24
|
reykit/rdll/rdll_core.py,sha256=o6-rKcTQgxZQe0kD3GnwyNb3KL9IogzgCQNOmYLMm7A,5086
|
25
|
-
reykit-1.1.
|
26
|
-
reykit-1.1.
|
27
|
-
reykit-1.1.
|
28
|
-
reykit-1.1.
|
25
|
+
reykit-1.1.52.dist-info/METADATA,sha256=FaLppu0Wz58YqO4tAD2RzT_acfSws0pUXYq4GD7FC0I,1872
|
26
|
+
reykit-1.1.52.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
27
|
+
reykit-1.1.52.dist-info/licenses/LICENSE,sha256=UYLPqp7BvPiH8yEZduJqmmyEl6hlM3lKrFIefiD4rvk,1059
|
28
|
+
reykit-1.1.52.dist-info/RECORD,,
|
File without changes
|
File without changes
|