pypipr 1.0.169__tar.gz → 1.0.170__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 (98) hide show
  1. {pypipr-1.0.169 → pypipr-1.0.170}/PKG-INFO +150 -150
  2. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/path_to_module.py +1 -1
  3. {pypipr-1.0.169 → pypipr-1.0.170}/pyproject.toml +1 -1
  4. {pypipr-1.0.169 → pypipr-1.0.170}/readme.md +149 -149
  5. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/ComparePerformance.py +0 -0
  6. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/LINUX.py +0 -0
  7. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/PintUreg.py +0 -0
  8. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/PintUregQuantity.py +0 -0
  9. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/RunParallel.py +0 -0
  10. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/TextCase.py +0 -0
  11. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/WINDOWS.py +0 -0
  12. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/__init__.py +0 -0
  13. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/__terminal__.py +0 -0
  14. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/auto_reload.py +0 -0
  15. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/avg.py +0 -0
  16. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/basename.py +0 -0
  17. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/batch_calculate.py +0 -0
  18. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/batchmaker.py +0 -0
  19. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/bin_to_int.py +0 -0
  20. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/calculate.py +0 -0
  21. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/choices.py +0 -0
  22. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/chr_to_int.py +0 -0
  23. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/chunk_array.py +0 -0
  24. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/console_run.py +0 -0
  25. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/create_folder.py +0 -0
  26. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/datetime_from_string.py +0 -0
  27. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/datetime_now.py +0 -0
  28. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/dict_first.py +0 -0
  29. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/dirname.py +0 -0
  30. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/django_clear_migrations.py +0 -0
  31. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/django_runserver.py +0 -0
  32. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/exit_if_empty.py +0 -0
  33. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/filter_empty.py +0 -0
  34. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/get_by_index.py +0 -0
  35. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/get_class_method.py +0 -0
  36. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/get_filemtime.py +0 -0
  37. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/get_filesize.py +0 -0
  38. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/github_init.py +0 -0
  39. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/github_pull.py +0 -0
  40. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/github_push.py +0 -0
  41. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/github_user.py +0 -0
  42. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/hex_to_int.py +0 -0
  43. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/iargv.py +0 -0
  44. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/idir.py +0 -0
  45. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/idumps.py +0 -0
  46. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/idumps_html.py +0 -0
  47. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/ienumerate.py +0 -0
  48. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/ienv.py +0 -0
  49. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/iexec.py +0 -0
  50. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/iinput.py +0 -0
  51. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/ijoin.py +0 -0
  52. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/iloads.py +0 -0
  53. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/iloads_html.py +0 -0
  54. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/input_char.py +0 -0
  55. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/int_to_bin.py +0 -0
  56. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/int_to_chr.py +0 -0
  57. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/int_to_hex.py +0 -0
  58. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/int_to_int.py +0 -0
  59. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/int_to_oct.py +0 -0
  60. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/iopen.py +0 -0
  61. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/iprint.py +0 -0
  62. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/irange.py +0 -0
  63. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/ireplace.py +0 -0
  64. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/is_empty.py +0 -0
  65. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/is_html.py +0 -0
  66. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/is_iterable.py +0 -0
  67. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/is_raw_string.py +0 -0
  68. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/is_valid_url.py +0 -0
  69. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/iscandir.py +0 -0
  70. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/isplit.py +0 -0
  71. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/ivars.py +0 -0
  72. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/log.py +0 -0
  73. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/no_indent.py +0 -0
  74. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/oct_to_int.py +0 -0
  75. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/password_generator.py +0 -0
  76. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/pip_freeze_without_version.py +0 -0
  77. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/pip_update_pypipr.py +0 -0
  78. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/poetry_publish.py +0 -0
  79. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/poetry_update_version.py +0 -0
  80. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/print_colorize.py +0 -0
  81. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/print_dir.py +0 -0
  82. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/print_log.py +0 -0
  83. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/print_to_last_line.py +0 -0
  84. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/random_bool.py +0 -0
  85. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/repath.py +0 -0
  86. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/restart.py +0 -0
  87. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/set_timeout.py +0 -0
  88. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/sets_ordered.py +0 -0
  89. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/sqlite_backup.py +0 -0
  90. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/sqlite_delete_table.py +0 -0
  91. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/sqlite_get_all_tables.py +0 -0
  92. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/sqlite_get_data_table.py +0 -0
  93. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/str_cmp.py +0 -0
  94. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/text_colorize.py +0 -0
  95. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/tiles.py +0 -0
  96. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/to_str.py +0 -0
  97. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/traceback_filename.py +0 -0
  98. {pypipr-1.0.169 → pypipr-1.0.170}/pypipr/traceback_framename.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pypipr
3
- Version: 1.0.169
3
+ Version: 1.0.170
4
4
  Summary: The Python Package Index Project
5
5
  Author: ufiapjj
6
6
  Author-email: ufiapjj@gmail.com
@@ -248,8 +248,8 @@ iprint(irange("z", "a", 4))
248
248
 
249
249
  Output:
250
250
  ```py
251
- <generator object int_range at 0x7dea406840>
252
- <generator object int_range at 0x7dea406940>
251
+ <generator object int_range at 0x75721c6840>
252
+ <generator object int_range at 0x75721c6940>
253
253
  [13, 12, 11, 10, 9, 8, 7, 6]
254
254
  [2, 5, 8]
255
255
  []
@@ -281,7 +281,7 @@ print(list(batchmaker(s)))
281
281
 
282
282
  Output:
283
283
  ```py
284
- <generator object batchmaker at 0x7dea4172e0>
284
+ <generator object batchmaker at 0x75721db2e0>
285
285
  ['Urutan 1 dan 10 dan j dan Z saja.', 'Urutan 1 dan 10 dan j dan K saja.', 'Urutan 1 dan 10 dan j dan saja.']
286
286
  ```
287
287
 
@@ -335,7 +335,7 @@ print(list(batch_calculate("{1 10} m ** {1 3}")))
335
335
 
336
336
  Output:
337
337
  ```py
338
- <generator object batch_calculate at 0x7dea42f300>
338
+ <generator object batch_calculate at 0x75721ef300>
339
339
  [('1 m ** 1', <Quantity(1, 'meter')>), ('1 m ** 2', <Quantity(1, 'meter ** 2')>), ('1 m ** 3', <Quantity(1, 'meter ** 3')>)]
340
340
  ```
341
341
 
@@ -441,7 +441,7 @@ print(list(chunk_array(arr, 5)))
441
441
 
442
442
  Output:
443
443
  ```py
444
- <generator object chunk_array at 0x7dea413100>
444
+ <generator object chunk_array at 0x75721d3100>
445
445
  [[2, 3, 12, 3, 3], [42, 42, 1, 43, 2], [42, 41, 4, 24, 32], [42, 3, 12, 32, 42], [42]]
446
446
  ```
447
447
 
@@ -492,9 +492,9 @@ print(datetime_now("Etc/GMT+7"))
492
492
 
493
493
  Output:
494
494
  ```py
495
- 2025-04-10 22:27:31.779538+07:00
496
- 2025-04-10 15:27:31.780368+00:00
497
- 2025-04-10 08:27:31.781876-07:00
495
+ 2025-04-10 22:32:28.405547+07:00
496
+ 2025-04-10 15:32:28.407844+00:00
497
+ 2025-04-10 08:32:28.410478-07:00
498
498
  ```
499
499
 
500
500
  ## dict_first
@@ -584,7 +584,7 @@ iprint(filter_empty(var))
584
584
 
585
585
  Output:
586
586
  ```py
587
- <generator object filter_empty at 0x7dea4132e0>
587
+ <generator object filter_empty at 0x75721d32e0>
588
588
  [1, '0', True, {}, ['eee']]
589
589
  ```
590
590
 
@@ -655,8 +655,8 @@ print(list(get_class_method(ExampleGetClassMethod)))
655
655
 
656
656
  Output:
657
657
  ```py
658
- <generator object get_class_method at 0x7dea42fe60>
659
- [<function ExampleGetClassMethod.a at 0x7dea482de0>, <function ExampleGetClassMethod.b at 0x7dea482c00>, <function ExampleGetClassMethod.c at 0x7dea482ca0>, <function ExampleGetClassMethod.d at 0x7dea482e80>]
658
+ <generator object get_class_method at 0x75721efe60>
659
+ [<function ExampleGetClassMethod.a at 0x7572242de0>, <function ExampleGetClassMethod.b at 0x7572242c00>, <function ExampleGetClassMethod.c at 0x7572242ca0>, <function ExampleGetClassMethod.d at 0x7572242e80>]
660
660
  ```
661
661
 
662
662
  ## get_filesize
@@ -1084,7 +1084,7 @@ Output:
1084
1084
 
1085
1085
  ## ienumerate
1086
1086
 
1087
- `ienumerate(iterator, start=0, key=<function int_to_int at 0x7ded8ce5c0>)`
1087
+ `ienumerate(iterator, start=0, key=<function int_to_int at 0x75764265c0>)`
1088
1088
 
1089
1089
  meningkatkan fungsi enumerate() pada python
1090
1090
  untuk key menggunakan huruf dan basis angka lainnya.
@@ -1097,7 +1097,7 @@ iprint(ienumerate(it, key=int_to_chr))
1097
1097
 
1098
1098
  Output:
1099
1099
  ```py
1100
- <generator object ienumerate at 0x7dea4132e0>
1100
+ <generator object ienumerate at 0x75721d32e0>
1101
1101
  [('a', 'ini'), ('b', 'contoh'), ('c', 'enumerator')]
1102
1102
  ```
1103
1103
 
@@ -1174,7 +1174,7 @@ print(ijoin(10, ' '))
1174
1174
 
1175
1175
  Output:
1176
1176
  ```py
1177
- weq, qweqw, asd, dfs
1177
+ asd, weq, qweqw, dfs
1178
1178
  ,ini,path,seperti,url,
1179
1179
  ini,path,seperti,url
1180
1180
  <li>satu</li>
@@ -1220,7 +1220,7 @@ Output:
1220
1220
  ```py
1221
1221
  (['Home', 'Emas 1 Gram', 'History', 'Trend', 'Perak 1 Gram', 'Pluang'],
1222
1222
  [['Harga Emas Hari Ini - Kamis, 10 April 2025'],
1223
- ['Spot Emas USD↑3.164,58 (+73,54) / oz',
1223
+ ['Spot Emas USD↑3.167,57 (+76,53) / oz',
1224
1224
  'Kurs IDR1,00 / USD',
1225
1225
  'Emas IDR↑102 (+2) / gr'],
1226
1226
  ['LM Antam (Jual)↓1.513.000 (-30.000) / gr',
@@ -1245,10 +1245,10 @@ Output:
1245
1245
  'Update harga LM Pegadaian :31 Desember 1969']],
1246
1246
  [['Spot Harga Emas Hari Ini (Market Open)'],
1247
1247
  ['Satuan', 'USD', 'Kurs\xa0Dollar', 'IDR'],
1248
- ['Ounce\xa0(oz)', '3.164,58 (+73,54)', '1,00', '3.165'],
1249
- ['Gram\xa0(gr)', '101,74', '1,00', '102 (+2)'],
1250
- ['Kilogram\xa0(kg)', '101.743,61', '1,00', '101.744'],
1251
- ['Update harga emas :10 April 2025, pukul 22:27Update kurs :14 Maret 2025, '
1248
+ ['Ounce\xa0(oz)', '3.167,57 (+76,53)', '1,00', '3.168'],
1249
+ ['Gram\xa0(gr)', '101,84', '1,00', '102 (+2)'],
1250
+ ['Kilogram\xa0(kg)', '101.839,74', '1,00', '101.840'],
1251
+ ['Update harga emas :10 April 2025, pukul 22:32Update kurs :14 Maret 2025, '
1252
1252
  'pukul 10:13']],
1253
1253
  [['Gram', 'UBS Gold 99.99%'],
1254
1254
  ['Jual', 'Beli'],
@@ -1286,36 +1286,36 @@ Output:
1286
1286
  ['Unit', 'USD', 'IDR'],
1287
1287
  ['Angka', '+/-', 'Angka', '+/-'],
1288
1288
  ['Hari Ini', 'Kurs', '', '', '1', '%'],
1289
- ['oz', '3.091,04', '+73,54+2,38%', '3.091', '+74+2,38%'],
1290
- ['gr', '99,38', '+2,36+2,38%', '99', '+2+2,38%'],
1289
+ ['oz', '3.091,04', '+76,53+2,48%', '3.091', '+77+2,48%'],
1290
+ ['gr', '99,38', '+2,46+2,48%', '99', '+2+2,48%'],
1291
1291
  ['30 Hari', 'Kurs', '', '', '16.326', '-16.325-99,99%'],
1292
- ['oz', '2.916,73', '+247,85+8,50%', '47.618.534', '-47.615.369-99,99%'],
1293
- ['gr', '93,78', '+7,97+8,50%', '1.530.971', '-1.530.870-99,99%'],
1292
+ ['oz', '2.916,73', '+250,84+8,60%', '47.618.534', '-47.615.366-99,99%'],
1293
+ ['gr', '93,78', '+8,06+8,60%', '1.530.971', '-1.530.870-99,99%'],
1294
1294
  ['2 Bulan', 'Kurs', '', '', '16.330', '-16.329-99,99%'],
1295
- ['oz', '2.861,26', '+303,32+10,60%', '46.724.376', '-46.721.211-99,99%'],
1296
- ['gr', '91,99', '+9,75+10,60', '1.502.224', '-1.502.122-99,99%'],
1295
+ ['oz', '2.861,26', '+306,31+10,71%', '46.724.376', '-46.721.208-99,99%'],
1296
+ ['gr', '91,99', '+9,85+10,71', '1.502.224', '-1.502.122-99,99%'],
1297
1297
  ['6 Bulan', 'Kurs', '', '', '15.658', '-15.657-99,99%'],
1298
- ['oz', '2.656,78', '+507,80+19,11%', '41.599.861', '-41.596.697-99,99%'],
1299
- ['gr', '85,42', '+16,33+19,11%', '1.337.467', '-1.337.365-99,99%'],
1298
+ ['oz', '2.656,78', '+510,79+19,23%', '41.599.861', '-41.596.694-99,99%'],
1299
+ ['gr', '85,42', '+16,42+19,23%', '1.337.467', '-1.337.365-99,99%'],
1300
1300
  ['1 Tahun', 'Kurs', '', '', '15.907', '-15.906-99,99%'],
1301
- ['oz', '2.338,57', '+826,01+35,32%', '37.199.633', '-37.196.468-99,99%'],
1302
- ['gr', '75,19', '+26,56+35,32%', '1.195.996', '-1.195.894-99,99%'],
1301
+ ['oz', '2.338,57', '+829,00+35,45%', '37.199.633', '-37.196.465-99,99%'],
1302
+ ['gr', '75,19', '+26,65+35,45%', '1.195.996', '-1.195.894-99,99%'],
1303
1303
  ['2 Tahun', 'Kurs', '', '', '15.731', '-15.730-99,99%'],
1304
- ['oz', '1.823,86', '+1.340,72+73,51%', '28.691.142', '-28.687.977-99,99%'],
1305
- ['gr', '58,64', '+43,11+73,51%', '922.442', '-922.340-99,99%'],
1304
+ ['oz', '1.823,86', '+1.343,71+73,67%', '28.691.142', '-28.687.974-99,99%'],
1305
+ ['gr', '58,64', '+43,20+73,67%', '922.442', '-922.340-99,99%'],
1306
1306
  ['3 Tahun', 'Kurs', '', '', '14.365', '-14.364-99,99%'],
1307
- ['oz', '1.942,64', '+1.221,94+62,90%', '27.906.043', '-27.902.878-99,99%'],
1308
- ['gr', '62,46', '+39,29+62,90%', '897.200', '-897.098-99,99%'],
1307
+ ['oz', '1.942,64', '+1.224,93+63,05%', '27.906.043', '-27.902.875-99,99%'],
1308
+ ['gr', '62,46', '+39,38+63,05%', '897.200', '-897.098-99,99%'],
1309
1309
  ['5 Tahun', 'Kurs', '', '', '16.241', '-16.240-99,99%'],
1310
- ['oz', '1.688,78', '+1.475,80+87,39%', '27.427.493', '-27.424.328-99,99%'],
1311
- ['gr', '54,30', '+47,45+87,39%', '881.814', '-881.713-99,99%']])
1310
+ ['oz', '1.688,78', '+1.478,79+87,57%', '27.427.493', '-27.424.325-99,99%'],
1311
+ ['gr', '54,30', '+47,54+87,57%', '881.814', '-881.713-99,99%']])
1312
1312
  (['Home', 'Emas 1 Gram', 'History', 'Trend', 'Perak 1 Gram', 'Pluang'],
1313
1313
  [[''],
1314
1314
  ['Emas 24 KaratHarga Emas 1 Gram', ''],
1315
- ['USD', '101,74↑', '+2,36+2,37%'],
1315
+ ['USD', '101,84↑', '+2,46+2,48%'],
1316
1316
  ['KURS', '16.355,25↓', '%'],
1317
- ['IDR', '1.664.042,17↑', '+38.669,79+2,38%'],
1318
- ['Kamis, 10 April 2025 22:27']],
1317
+ ['IDR', '1.665.614,41↑', '+40.242,03+2,48%'],
1318
+ ['Kamis, 10 April 2025 22:32']],
1319
1319
  [[''],
1320
1320
  ['Emas 1 Gram (IDR)Emas 1 Gram (USD)Kurs USD-IDR',
1321
1321
  'Hari Ini',
@@ -1326,25 +1326,25 @@ Output:
1326
1326
  '']],
1327
1327
  [['Pergerakkan Harga Emas 1 Gram'],
1328
1328
  ['', 'Penutupan Kemarin', 'Pergerakkan Hari Ini', 'Rata-rata'],
1329
- ['USD', '99,38', '99,38 - 101,74', '100,56'],
1329
+ ['USD', '99,38', '99,38 - 101,84', '100,61'],
1330
1330
  ['KURS', '16.355,25', '16.355,25 - 16.355,25', '16.355,25'],
1331
- ['IDR', '1.625.372,38', '1.625.372,38 - 1.664.042,17', '1.644.707,28'],
1331
+ ['IDR', '1.625.372,38', '1.625.372,38 - 1.665.614,41', '1.645.493,40'],
1332
1332
  [''],
1333
1333
  ['', 'Awal Tahun', 'Pergerakkan YTD', '+/- YTD'],
1334
- ['USD', '84,42', '84,38 - 101,74', '+17,32 (20,52%)'],
1334
+ ['USD', '84,42', '84,38 - 101,84', '+17,42 (20,63%)'],
1335
1335
  ['KURS', '16.220,76', '16.156,70 - 16.387,00', '+134,49 (0,83%)'],
1336
1336
  ['IDR',
1337
1337
  '1.369.306,75',
1338
- '1.368.695,74 - 1.664.042,17',
1339
- '+294.735,42 (21,52%)'],
1338
+ '1.368.695,74 - 1.665.614,41',
1339
+ '+296.307,66 (21,64%)'],
1340
1340
  [''],
1341
1341
  ['', 'Tahun Lalu / 52 Minggu', 'Pergerakkan 52 Minggu', '+/- 52 Minggu'],
1342
- ['USD', '75,37', '73,75 - 101,74', '+26,37 (34,99%)'],
1342
+ ['USD', '75,37', '73,75 - 101,84', '+26,47 (35,12%)'],
1343
1343
  ['KURS', '15.877,00', '15.100,00 - 16.509,65', '+478,25 (3,01%)'],
1344
1344
  ['IDR',
1345
1345
  '1.196.609,14',
1346
- '1.181.943,88 - 1.664.042,17',
1347
- '+467.433,03 (39,06%)']])
1346
+ '1.181.943,88 - 1.665.614,41',
1347
+ '+469.005,27 (39,19%)']])
1348
1348
  ```
1349
1349
 
1350
1350
  ## iloads
@@ -1474,7 +1474,7 @@ Output:
1474
1474
  ```py
1475
1475
  8
1476
1476
  ['mana', 'aja']
1477
- [<Element a at 0x7dea1113b0>, <Element a at 0x7dea168050>, <Element a at 0x7dea1680a0>, <Element a at 0x7dea1680f0>, <Element a at 0x7dea168140>, <Element a at 0x7dea168190>, <Element a at 0x7dea1681e0>, <Element a at 0x7dea168230>, <Element a at 0x7dea168280>, <Element a at 0x7dea1682d0>, <Element a at 0x7dea168320>, <Element a at 0x7dea168370>, <Element a at 0x7dea1683c0>, <Element a at 0x7dea168410>, <Element a at 0x7dea168460>, <Element a at 0x7dea1684b0>, <Element a at 0x7dea168500>, <Element a at 0x7dea168550>]
1477
+ [<Element a at 0x7571ec9360>, <Element a at 0x7571efbfc0>, <Element a at 0x7571f20050>, <Element a at 0x7571f200a0>, <Element a at 0x7571f200f0>, <Element a at 0x7571f20140>, <Element a at 0x7571f20190>, <Element a at 0x7571f201e0>, <Element a at 0x7571f20230>, <Element a at 0x7571f20280>, <Element a at 0x7571f202d0>, <Element a at 0x7571f20320>, <Element a at 0x7571f20370>, <Element a at 0x7571f203c0>, <Element a at 0x7571f20410>, <Element a at 0x7571f20460>, <Element a at 0x7571f204b0>, <Element a at 0x7571f20500>]
1478
1478
  False
1479
1479
  ```
1480
1480
 
@@ -1544,7 +1544,7 @@ print(list(iscandir("./", recursive=False, scan_file=False)))
1544
1544
 
1545
1545
  Output:
1546
1546
  ```py
1547
- <generator object iscandir at 0x7dea4131f0>
1547
+ <generator object iscandir at 0x75721d31f0>
1548
1548
  [PosixPath('.git'), PosixPath('.vscode'), PosixPath('pypipr'), PosixPath('__pycache__'), PosixPath('dist')]
1549
1549
  ```
1550
1550
 
@@ -1577,98 +1577,98 @@ iprint(ivars(__import__('pypipr')))
1577
1577
 
1578
1578
  Output:
1579
1579
  ```py
1580
- {'function': {'avg': <function avg at 0x7df2df0680>,
1581
- 'get_filemtime': <function get_filemtime at 0x7ded81d3a0>,
1582
- 'print_colorize': <function print_colorize at 0x7ded81d580>,
1583
- 'print_log': <function print_log at 0x7dedf774c0>,
1584
- 'console_run': <function console_run at 0x7ded81d440>,
1585
- 'auto_reload': <function auto_reload at 0x7ded81cd60>,
1586
- 'basename': <function basename at 0x7ded81d620>,
1587
- 'chr_to_int': <function chr_to_int at 0x7ded81dbc0>,
1588
- 'int_to_chr': <function int_to_chr at 0x7ded81dc60>,
1589
- 'irange': <function irange at 0x7ded81e160>,
1590
- 'batchmaker': <function batchmaker at 0x7ded81d940>,
1591
- 'calculate': <function calculate at 0x7ded81d4e0>,
1592
- 'batch_calculate': <function batch_calculate at 0x7ded81d6c0>,
1593
- 'bin_to_int': <function bin_to_int at 0x7ded81d8a0>,
1594
- 'is_empty': <function is_empty at 0x7ded81ea20>,
1595
- 'exit_if_empty': <function exit_if_empty at 0x7ded81e8e0>,
1596
- 'input_char': <function input_char at 0x7ded81e980>,
1597
- 'choices': <function choices at 0x7ded81eca0>,
1598
- 'chunk_array': <function chunk_array at 0x7ded81ed40>,
1599
- 'create_folder': <function create_folder at 0x7ded81ede0>,
1600
- 'datetime_from_string': <function datetime_from_string at 0x7ded81ee80>,
1601
- 'datetime_now': <function datetime_now at 0x7ded81ef20>,
1602
- 'dict_first': <function dict_first at 0x7ded83d1c0>,
1603
- 'is_iterable': <function is_iterable at 0x7ded83d4e0>,
1604
- 'to_str': <function to_str at 0x7ded83d620>,
1605
- 'filter_empty': <function filter_empty at 0x7ded83d3a0>,
1606
- 'dirname': <function dirname at 0x7ded83d260>,
1607
- 'django_clear_migrations': <function django_clear_migrations at 0x7ded83d300>,
1608
- 'django_runserver': <function django_runserver at 0x7ded83d8a0>,
1609
- 'get_by_index': <function get_by_index at 0x7ded83db20>,
1610
- 'get_class_method': <function get_class_method at 0x7ded83dbc0>,
1611
- 'get_filesize': <function get_filesize at 0x7ded83dd00>,
1612
- 'github_init': <function github_init at 0x7ded83dda0>,
1613
- 'github_pull': <function github_pull at 0x7ded83de40>,
1614
- 'github_push': <function github_push at 0x7ded83df80>,
1615
- 'github_user': <function github_user at 0x7ded83e020>,
1616
- 'hex_to_int': <function hex_to_int at 0x7ded83e0c0>,
1617
- 'iargv': <function iargv at 0x7ded83e160>,
1618
- 'idir': <function idir at 0x7ded83e200>,
1619
- 'idumps_html': <function idumps_html at 0x7ded8ce0c0>,
1620
- 'idumps': <function idumps at 0x7ded83e2a0>,
1621
- 'int_to_int': <function int_to_int at 0x7ded8ce5c0>,
1622
- 'ienumerate': <function ienumerate at 0x7ded8b4900>,
1623
- 'ienv': <function ienv at 0x7ded8ce480>,
1624
- 'iexec': <function iexec at 0x7ded8ce660>,
1625
- 'iinput': <function iinput at 0x7ded8ce700>,
1626
- 'ijoin': <function ijoin at 0x7ded8ce7a0>,
1627
- 'iloads_html': <function iloads_html at 0x7ded8ceac0>,
1628
- 'iloads': <function iloads at 0x7df38a5260>,
1629
- 'int_to_bin': <function int_to_bin at 0x7ded8ce840>,
1630
- 'int_to_hex': <function int_to_hex at 0x7ded8ce8e0>,
1631
- 'int_to_oct': <function int_to_oct at 0x7ded8ceb60>,
1632
- 'is_valid_url': <function is_valid_url at 0x7ded8cede0>,
1633
- 'iopen': <function iopen at 0x7ded69a980>,
1634
- 'iprint': <function iprint at 0x7ded6f1940>,
1635
- 'is_raw_string': <function is_raw_string at 0x7dea5d4220>,
1636
- 'ireplace': <function ireplace at 0x7ded75a700>,
1637
- 'is_html': <function is_html at 0x7dea5d4180>,
1638
- 'iscandir': <function iscandir at 0x7dea5d42c0>,
1639
- 'isplit': <function isplit at 0x7dea5d4360>,
1640
- 'ivars': <function ivars at 0x7dea5d4400>,
1641
- 'log': <function log at 0x7dea5d44a0>,
1642
- 'no_indent': <function no_indent at 0x7dea5d4540>,
1643
- 'oct_to_int': <function oct_to_int at 0x7dea5d45e0>,
1644
- 'password_generator': <function password_generator at 0x7dea5d4680>,
1645
- 'path_to_module': <function path_to_module at 0x7dea5d4720>,
1646
- 'pip_freeze_without_version': <function pip_freeze_without_version at 0x7dea5d47c0>,
1647
- 'pip_update_pypipr': <function pip_update_pypipr at 0x7dea5d4860>,
1648
- 'poetry_publish': <function poetry_publish at 0x7dea5d4900>,
1649
- 'poetry_update_version': <function poetry_update_version at 0x7dea5d4a40>,
1650
- 'print_dir': <function print_dir at 0x7dea5d4b80>,
1651
- 'print_to_last_line': <function print_to_last_line at 0x7dea5d4c20>,
1652
- 'random_bool': <function random_bool at 0x7dea5d4cc0>,
1653
- 'repath': <function repath at 0x7dea5d4e00>,
1654
- 'restart': <function restart at 0x7dea5d4ea0>,
1655
- 'set_timeout': <function set_timeout at 0x7dea5d4f40>,
1656
- 'sets_ordered': <function sets_ordered at 0x7dea5d4fe0>,
1657
- 'sqlite_backup': <function sqlite_backup at 0x7dea5d5080>,
1658
- 'sqlite_delete_table': <function sqlite_delete_table at 0x7dea5d5120>,
1659
- 'sqlite_get_all_tables': <function sqlite_get_all_tables at 0x7dea5d51c0>,
1660
- 'sqlite_get_data_table': <function sqlite_get_data_table at 0x7dea5d5260>,
1661
- 'str_cmp': <function str_cmp at 0x7dea5d5b20>,
1662
- 'text_colorize': <function text_colorize at 0x7dea5d5bc0>,
1663
- 'tiles': <function tiles at 0x7dea5d5c60>,
1664
- 'traceback_filename': <function traceback_filename at 0x7dea5d5d00>,
1665
- 'traceback_framename': <function traceback_framename at 0x7dea5d5da0>},
1580
+ {'function': {'avg': <function avg at 0x757ad68680>,
1581
+ 'get_filemtime': <function get_filemtime at 0x75763793a0>,
1582
+ 'print_colorize': <function print_colorize at 0x7576379580>,
1583
+ 'print_log': <function print_log at 0x7576ab34c0>,
1584
+ 'console_run': <function console_run at 0x7576379440>,
1585
+ 'auto_reload': <function auto_reload at 0x7576378d60>,
1586
+ 'basename': <function basename at 0x7576379620>,
1587
+ 'chr_to_int': <function chr_to_int at 0x7576379bc0>,
1588
+ 'int_to_chr': <function int_to_chr at 0x7576379c60>,
1589
+ 'irange': <function irange at 0x757637a160>,
1590
+ 'batchmaker': <function batchmaker at 0x7576379940>,
1591
+ 'calculate': <function calculate at 0x75763794e0>,
1592
+ 'batch_calculate': <function batch_calculate at 0x75763796c0>,
1593
+ 'bin_to_int': <function bin_to_int at 0x75763798a0>,
1594
+ 'is_empty': <function is_empty at 0x757637aa20>,
1595
+ 'exit_if_empty': <function exit_if_empty at 0x757637a8e0>,
1596
+ 'input_char': <function input_char at 0x757637a980>,
1597
+ 'choices': <function choices at 0x757637aca0>,
1598
+ 'chunk_array': <function chunk_array at 0x757637ad40>,
1599
+ 'create_folder': <function create_folder at 0x757637ade0>,
1600
+ 'datetime_from_string': <function datetime_from_string at 0x757637ae80>,
1601
+ 'datetime_now': <function datetime_now at 0x757637af20>,
1602
+ 'dict_first': <function dict_first at 0x75763991c0>,
1603
+ 'is_iterable': <function is_iterable at 0x75763994e0>,
1604
+ 'to_str': <function to_str at 0x7576399620>,
1605
+ 'filter_empty': <function filter_empty at 0x75763993a0>,
1606
+ 'dirname': <function dirname at 0x7576399260>,
1607
+ 'django_clear_migrations': <function django_clear_migrations at 0x7576399300>,
1608
+ 'django_runserver': <function django_runserver at 0x75763998a0>,
1609
+ 'get_by_index': <function get_by_index at 0x7576399b20>,
1610
+ 'get_class_method': <function get_class_method at 0x7576399bc0>,
1611
+ 'get_filesize': <function get_filesize at 0x7576399d00>,
1612
+ 'github_init': <function github_init at 0x7576399da0>,
1613
+ 'github_pull': <function github_pull at 0x7576399e40>,
1614
+ 'github_push': <function github_push at 0x7576399f80>,
1615
+ 'github_user': <function github_user at 0x757639a020>,
1616
+ 'hex_to_int': <function hex_to_int at 0x757639a0c0>,
1617
+ 'iargv': <function iargv at 0x757639a160>,
1618
+ 'idir': <function idir at 0x757639a200>,
1619
+ 'idumps_html': <function idumps_html at 0x75764260c0>,
1620
+ 'idumps': <function idumps at 0x757639a2a0>,
1621
+ 'int_to_int': <function int_to_int at 0x75764265c0>,
1622
+ 'ienumerate': <function ienumerate at 0x757640c900>,
1623
+ 'ienv': <function ienv at 0x7576426480>,
1624
+ 'iexec': <function iexec at 0x7576426660>,
1625
+ 'iinput': <function iinput at 0x7576426700>,
1626
+ 'ijoin': <function ijoin at 0x75764267a0>,
1627
+ 'iloads_html': <function iloads_html at 0x7576426ac0>,
1628
+ 'iloads': <function iloads at 0x757b161260>,
1629
+ 'int_to_bin': <function int_to_bin at 0x7576426840>,
1630
+ 'int_to_hex': <function int_to_hex at 0x75764268e0>,
1631
+ 'int_to_oct': <function int_to_oct at 0x7576426b60>,
1632
+ 'is_valid_url': <function is_valid_url at 0x7576426de0>,
1633
+ 'iopen': <function iopen at 0x75761e2980>,
1634
+ 'iprint': <function iprint at 0x7576239940>,
1635
+ 'is_raw_string': <function is_raw_string at 0x7572394220>,
1636
+ 'ireplace': <function ireplace at 0x75762a6700>,
1637
+ 'is_html': <function is_html at 0x7572394180>,
1638
+ 'iscandir': <function iscandir at 0x75723942c0>,
1639
+ 'isplit': <function isplit at 0x7572394360>,
1640
+ 'ivars': <function ivars at 0x7572394400>,
1641
+ 'log': <function log at 0x75723944a0>,
1642
+ 'no_indent': <function no_indent at 0x7572394540>,
1643
+ 'oct_to_int': <function oct_to_int at 0x75723945e0>,
1644
+ 'password_generator': <function password_generator at 0x7572394680>,
1645
+ 'path_to_module': <function path_to_module at 0x7572394720>,
1646
+ 'pip_freeze_without_version': <function pip_freeze_without_version at 0x75723947c0>,
1647
+ 'pip_update_pypipr': <function pip_update_pypipr at 0x7572394860>,
1648
+ 'poetry_publish': <function poetry_publish at 0x7572394900>,
1649
+ 'poetry_update_version': <function poetry_update_version at 0x7572394a40>,
1650
+ 'print_dir': <function print_dir at 0x7572394b80>,
1651
+ 'print_to_last_line': <function print_to_last_line at 0x7572394c20>,
1652
+ 'random_bool': <function random_bool at 0x7572394cc0>,
1653
+ 'repath': <function repath at 0x7572394e00>,
1654
+ 'restart': <function restart at 0x7572394ea0>,
1655
+ 'set_timeout': <function set_timeout at 0x7572394f40>,
1656
+ 'sets_ordered': <function sets_ordered at 0x7572394fe0>,
1657
+ 'sqlite_backup': <function sqlite_backup at 0x7572395080>,
1658
+ 'sqlite_delete_table': <function sqlite_delete_table at 0x7572395120>,
1659
+ 'sqlite_get_all_tables': <function sqlite_get_all_tables at 0x75723951c0>,
1660
+ 'sqlite_get_data_table': <function sqlite_get_data_table at 0x7572395260>,
1661
+ 'str_cmp': <function str_cmp at 0x7572395b20>,
1662
+ 'text_colorize': <function text_colorize at 0x7572395bc0>,
1663
+ 'tiles': <function tiles at 0x7572395c60>,
1664
+ 'traceback_filename': <function traceback_filename at 0x7572395d00>,
1665
+ 'traceback_framename': <function traceback_framename at 0x7572395da0>},
1666
1666
  'class': {'ComparePerformance': <class 'pypipr.ComparePerformance.ComparePerformance'>,
1667
1667
  'PintUregQuantity': <class 'pint.Quantity'>,
1668
1668
  'RunParallel': <class 'pypipr.RunParallel.RunParallel'>,
1669
1669
  'TextCase': <class 'pypipr.TextCase.TextCase'>},
1670
1670
  'variable': {'LINUX': True,
1671
- 'PintUreg': <pint.registry.UnitRegistry object at 0x7df38f7830>,
1671
+ 'PintUreg': <pint.registry.UnitRegistry object at 0x757b1977a0>,
1672
1672
  'WINDOWS': False},
1673
1673
  'module': {'asyncio': <module 'asyncio' from '/data/data/com.termux/files/usr/lib/python3.12/asyncio/__init__.py'>,
1674
1674
  'colorama': <module 'colorama' from '/data/data/com.termux/files/home/.cache/pypoetry/virtualenvs/pypipr-ZoJyDxLL-py3.12/lib/python3.12/site-packages/colorama/__init__.py'>,
@@ -1763,7 +1763,7 @@ print(password_generator())
1763
1763
 
1764
1764
  Output:
1765
1765
  ```py
1766
- ^}IuwReP
1766
+ :svh0IIu
1767
1767
  ```
1768
1768
 
1769
1769
  ## path_to_module
@@ -1842,7 +1842,7 @@ Output:
1842
1842
  __enter__ : https:/www.google.com
1843
1843
  __fspath__ : https:/www.google.com
1844
1844
  __getstate__ : (None, {'_raw_paths': ['https://www.google.com/'], '_drv': '', '_root': '', '_tail_cached': ['https:', 'www.google.com'], '_str': 'https:/www.google.com'})
1845
- __hash__ : 4044854816993747545
1845
+ __hash__ : 9008990908881599149
1846
1846
  __init__ : None
1847
1847
  __init_subclass__ : None
1848
1848
  __module__ : pathlib
@@ -1854,7 +1854,7 @@ Output:
1854
1854
  __subclasshook__ : NotImplemented
1855
1855
  _drv :
1856
1856
  _flavour : <module 'posixpath' (frozen)>
1857
- _hash : 4044854816993747545
1857
+ _hash : 9008990908881599149
1858
1858
  _lines : https:
1859
1859
  www.google.com
1860
1860
  _lines_cached : https:
@@ -1888,7 +1888,7 @@ _parts_normcase_cached : ['https:', 'www.google.com']
1888
1888
  is_reserved : False
1889
1889
  is_socket : False
1890
1890
  is_symlink : False
1891
- iterdir : <generator object Path.iterdir at 0x7dea41be00>
1891
+ iterdir : <generator object Path.iterdir at 0x75721dfe00>
1892
1892
  joinpath : .
1893
1893
  name :
1894
1894
  parent : https:/www.google.com
@@ -1899,7 +1899,7 @@ _parts_normcase_cached : ['https:', 'www.google.com']
1899
1899
  stem :
1900
1900
  suffix :
1901
1901
  suffixes : []
1902
- walk : <generator object Path.walk at 0x7dea69fd80>
1902
+ walk : <generator object Path.walk at 0x757245bd80>
1903
1903
  with_segments : .
1904
1904
  ```
1905
1905
 
@@ -1941,7 +1941,7 @@ print(random_bool())
1941
1941
 
1942
1942
  Output:
1943
1943
  ```py
1944
- True
1944
+ False
1945
1945
  ```
1946
1946
 
1947
1947
  ## repath
@@ -1979,7 +1979,7 @@ x.cancel()
1979
1979
 
1980
1980
  Output:
1981
1981
  ```py
1982
- <Timer(Thread-2, started 540775611632)>
1982
+ <Timer(Thread-2, started 504400248048)>
1983
1983
  menghentikan timeout 7
1984
1984
  ```
1985
1985
 
@@ -1997,7 +1997,7 @@ print(list(sets_ordered(array)))
1997
1997
 
1998
1998
  Output:
1999
1999
  ```py
2000
- <generator object sets_ordered at 0x7dea12ac20>
2000
+ <generator object sets_ordered at 0x7571ee2c20>
2001
2001
  [2, 3, 12, 42, 1, 43, 41, 4, 24, 32]
2002
2002
  ```
2003
2003
 
@@ -2119,15 +2119,15 @@ print(ExampleComparePerformance().compare_performance())
2119
2119
 
2120
2120
  Output:
2121
2121
  ```py
2122
- {'a': <generator object ExampleComparePerformance.a.<locals>.<genexpr> at 0x7dea458b80>,
2122
+ {'a': <generator object ExampleComparePerformance.a.<locals>.<genexpr> at 0x7572218b80>,
2123
2123
  'b': (0, 1, 2, 3, 4, 5, 6, 7, 8, 9),
2124
2124
  'c': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
2125
2125
  'd': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]}
2126
- {'a': 168, 'b': 183, 'c': 99, 'd': 165}
2127
- {'a': 128, 'b': 169, 'c': 99, 'd': 172}
2128
- {'a': 121, 'b': 170, 'c': 100, 'd': 177}
2129
- {'a': 133, 'b': 164, 'c': 100, 'd': 160}
2130
- {'a': 126, 'b': 167, 'c': 100, 'd': 174}
2126
+ {'a': 124, 'b': 164, 'c': 100, 'd': 281}
2127
+ {'a': 102, 'b': 158, 'c': 100, 'd': 229}
2128
+ {'a': 100, 'b': 154, 'c': 100, 'd': 208}
2129
+ {'a': 103, 'b': 156, 'c': 100, 'd': 212}
2130
+ {'a': 100, 'b': 155, 'c': 100, 'd': 215}
2131
2131
  ```
2132
2132
 
2133
2133
  ## PintUregQuantity
@@ -18,7 +18,7 @@ def path_to_module(path, indeks=0):
18
18
  Returns:
19
19
  str: Path bergaya modul Python (dipisah dengan ".")
20
20
  """
21
- path = dirname(path, abs_path=False)
21
+ path = dirname(path, abs_path=False, indeks=indeks)
22
22
  return path.replace(os.sep, ".")
23
23
 
24
24
  cwd = os.getcwd()
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pypipr"
3
- version = "1.0.169"
3
+ version = "1.0.170"
4
4
  description = "The Python Package Index Project"
5
5
  authors = ["ufiapjj <ufiapjj@gmail.com>"]
6
6
  readme = "readme.md"