radboy 0.0.351__py3-none-any.whl → 0.0.353__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 radboy might be problematic. Click here for more details.

Binary file
radboy/DB/db.py CHANGED
@@ -736,8 +736,11 @@ class EntryDataExtras(BASE,Template):
736
736
  with Session(ENGINE) as session:
737
737
  check=session.query(self.__class__).filter(self.__class__.field_name==kwargs[k],self.__class__.EntryId==kwargs['EntryId']).first()
738
738
  if isinstance(check,self.__class__):
739
- dateStr=datetime.now().strftime("[Updated on %m/%d/%Y at %H:%M:%S.]")
740
- kwargs[k]=f"{kwargs[k]} {dateStr}"
739
+ if check.field_value == kwargs['field_value']:
740
+ raise Exception(f"Value is duplicated for {k}={kwargs['field_value']}")
741
+ else:
742
+ dateStr=datetime.now().strftime("[Updated on %m/%d/%Y at %H:%M:%S.]")
743
+ kwargs[k]=f"{kwargs[k]} {dateStr}"
741
744
  setattr(self,k,str(kwargs[k]))
742
745
  else:
743
746
  setattr(self,k,kwargs[k])
@@ -866,128 +866,132 @@ class EntryDataExtrasMenu:
866
866
  def sch_f2e(self,barcode=None):
867
867
  with Session(ENGINE) as session:
868
868
  while True:
869
- if self.code is None or not isinstance(self.code,str):
870
- if barcode != None:
871
- search=barcode
869
+ try:
870
+ if self.code is None or not isinstance(self.code,str):
871
+ if barcode != None:
872
+ search=barcode
873
+ else:
874
+ search=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Search? [Barcode,Code,Name]",helpText="searches Barcode,Code,Name",data="string")
875
+ if search in [None]:
876
+ return
872
877
  else:
873
- search=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Search? [Barcode,Code,Name]",helpText="searches Barcode,Code,Name",data="string")
874
- if search in [None]:
875
- return
876
- else:
877
- search=self.code
878
+ search=self.code
878
879
 
879
- results=session.query(Entry).filter(or_(Entry.Barcode==search,Entry.Code==search,Entry.Barcode.icontains(search),Entry.Code.icontains(search),Entry.Name.icontains(search))).all()
880
- ct=len(results)
881
- if ct == 0:
882
- print("No Results were Found!")
883
- return
884
- msg=[]
885
- for num,i in enumerate(results):
886
- msg.append(f"{Fore.cyan}{num}/{Fore.light_yellow}{num+1} of {Fore.light_red}{ct}{Fore.grey_50} -> {i.seeShort()}")
887
- msg='\n'.join(msg)
888
- product=None
889
- while True:
890
- print(msg)
891
- index=Prompt.__init2__(None,func=FormBuilderMkText,ptext="which index do you wish to use?",helpText=msg,data="integer")
892
- if index in [None,]:
880
+ results=session.query(Entry).filter(or_(Entry.Barcode==search,Entry.Code==search,Entry.Barcode.icontains(search),Entry.Code.icontains(search),Entry.Name.icontains(search))).all()
881
+ ct=len(results)
882
+ if ct == 0:
883
+ print("No Results were Found!")
893
884
  return
894
- try:
895
- product=results[index]
896
- break
897
- except Exception as e:
898
- print(e)
899
- if product in [None,]:
900
- return
901
- print("sf2e()")
902
- while True:
885
+ msg=[]
886
+ for num,i in enumerate(results):
887
+ msg.append(f"{Fore.cyan}{num}/{Fore.light_yellow}{num+1} of {Fore.light_red}{ct}{Fore.grey_50} -> {i.seeShort()}")
888
+ msg='\n'.join(msg)
889
+ product=None
903
890
  while True:
891
+ print(msg)
892
+ index=Prompt.__init2__(None,func=FormBuilderMkText,ptext="which index do you wish to use?",helpText=msg,data="integer")
893
+ if index in [None,]:
894
+ return
904
895
  try:
905
- fs=[]
906
- fse=session.query(EntryDataExtras).group_by(EntryDataExtras.field_name,EntryDataExtras.field_type).all()
907
- ct_fse=len(fse)
908
- for nunm,i in enumerate(fse):
909
- fs.append(f"{Fore.light_yellow}{num}/{Fore.light_cyan}{num+1} of {Fore.light_red}{ct_fse} -> {Fore.light_magenta}{i.field_name}{Style.reset}")
910
- fs='\n'.join(fs)
911
- field_search=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Search field?",helpText=f"searches EntryDataExtras field_names:\n{fs}",data="string")
912
- if field_search in [None]:
913
- return
914
- elif field_search in ['d',]:
915
- field_search=''
916
- query=session.query(EntryDataExtras).filter(EntryDataExtras.field_name.icontains(field_search))
917
- results_ede=query.group_by(EntryDataExtras.field_name,EntryDataExtras.field_type).all()
918
- if len(results_ede) < 1:
919
- continue
896
+ product=results[index]
920
897
  break
921
898
  except Exception as e:
922
899
  print(e)
923
- field=None
924
- msg_ede=[]
925
- for num,i in enumerate(results_ede):
926
- if num%2==0:
927
- color=Fore.cyan
928
- elif num%3==0:
929
- color=Fore.light_cyan
930
- elif num%4==0:
931
- color=Fore.light_steel_blue
932
- elif num%5==0:
933
- color=Fore.light_green
934
- elif num%6==0:
935
- color=Fore.turquoise_4
936
- elif num%7==0:
937
- color=Fore.deep_sky_blue_3a
938
- elif num%8==0:
939
- color=Fore.spring_green_3a
940
- elif num%9==0:
941
- color=Fore.dark_cyan
942
- else:
943
- color=Fore.light_blue
944
- msg_ede.append(f"{Fore.cyan}{num}/{Fore.light_yellow}{num+1} of {Fore.light_red}{ct}{Fore.grey_50} -> {color}{i.field_name}{Style.reset}:{i.field_type} ede_id={i.ede_id} doe={i.doe}")
945
- msg_ede='\n'.join(msg_ede)
900
+ if product in [None,]:
901
+ return
902
+ print("sf2e()")
946
903
  while True:
947
- try:
948
- print(msg_ede)
949
- index=Prompt.__init2__(None,func=FormBuilderMkText,ptext="which index do you wish to use?",helpText=msg_ede,data="integer")
950
- if index in [None,]:
951
- return
952
- if not isinstance(index,int):
953
- print(f"{Fore.light_red}Index must be an {Fore.light_cyan}integer{Style.reset}")
954
- continue
904
+ while True:
955
905
  try:
956
- print(index)
957
- if index <= len(results_ede)-1:
958
- field=results_ede[index]
959
- else:
960
- print(f"index is not within 0-{len(results_ede)-1}")
906
+ fs=[]
907
+ fse=session.query(EntryDataExtras).group_by(EntryDataExtras.field_name,EntryDataExtras.field_type).all()
908
+ ct_fse=len(fse)
909
+ for nunm,i in enumerate(fse):
910
+ fs.append(f"{Fore.light_yellow}{num}/{Fore.light_cyan}{num+1} of {Fore.light_red}{ct_fse} -> {Fore.light_magenta}{i.field_name}{Style.reset}")
911
+ fs='\n'.join(fs)
912
+ field_search=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Search field?",helpText=f"searches EntryDataExtras field_names:\n{fs}",data="string")
913
+ if field_search in [None]:
914
+ return
915
+ elif field_search in ['d',]:
916
+ field_search=''
917
+ query=session.query(EntryDataExtras).filter(EntryDataExtras.field_name.icontains(field_search))
918
+ results_ede=query.group_by(EntryDataExtras.field_name,EntryDataExtras.field_type).all()
919
+ if len(results_ede) < 1:
961
920
  continue
962
921
  break
963
922
  except Exception as e:
964
923
  print(e)
965
- break
966
- except Exception as e:
967
- print(e)
968
- if field == None:
969
- return
970
- field_name=field.field_name
971
- field_type=field.field_type
972
- field_value=Prompt.__init2__(self,func=FormBuilderMkText,ptext="What do you wish to store as the value?",helpText=field_type,data=field_type)
973
- if field_value in [None,]:
974
- return
975
-
976
- print(field_name,field_type,field_value)
977
- extra=EntryDataExtras(field_name=field_name,field_type=field_type,field_value=field_value,EntryId=product.EntryId)
978
- session.add(extra)
979
- session.commit()
980
- session.refresh(extra)
981
- print(extra)
982
- anotherField=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Add another field to this product[y/n]?",helpText="yes/no/boolean",data="boolean")
983
- if anotherField in [None,]:
984
- return
985
- elif anotherField in ['d',True]:
986
- continue
987
- else:
924
+ field=None
925
+ msg_ede=[]
926
+ for num,i in enumerate(results_ede):
927
+ if num%2==0:
928
+ color=Fore.cyan
929
+ elif num%3==0:
930
+ color=Fore.light_cyan
931
+ elif num%4==0:
932
+ color=Fore.light_steel_blue
933
+ elif num%5==0:
934
+ color=Fore.light_green
935
+ elif num%6==0:
936
+ color=Fore.turquoise_4
937
+ elif num%7==0:
938
+ color=Fore.deep_sky_blue_3a
939
+ elif num%8==0:
940
+ color=Fore.spring_green_3a
941
+ elif num%9==0:
942
+ color=Fore.dark_cyan
943
+ else:
944
+ color=Fore.light_blue
945
+ msg_ede.append(f"{Fore.cyan}{num}/{Fore.light_yellow}{num+1} of {Fore.light_red}{ct}{Fore.grey_50} -> {color}{i.field_name}{Style.reset}:{i.field_type} ede_id={i.ede_id} doe={i.doe}")
946
+ msg_ede='\n'.join(msg_ede)
947
+ while True:
948
+ try:
949
+ print(msg_ede)
950
+ index=Prompt.__init2__(None,func=FormBuilderMkText,ptext="which index do you wish to use?",helpText=msg_ede,data="integer")
951
+ if index in [None,]:
952
+ return
953
+ if not isinstance(index,int):
954
+ print(f"{Fore.light_red}Index must be an {Fore.light_cyan}integer{Style.reset}")
955
+ continue
956
+ try:
957
+ print(index)
958
+ if index <= len(results_ede)-1:
959
+ field=results_ede[index]
960
+ else:
961
+ print(f"index is not within 0-{len(results_ede)-1}")
962
+ continue
963
+ break
964
+ except Exception as e:
965
+ print(e)
966
+ break
967
+ except Exception as e:
968
+ print(e)
969
+ if field == None:
970
+ return
971
+ field_name=field.field_name
972
+ field_type=field.field_type
973
+ field_value=Prompt.__init2__(self,func=FormBuilderMkText,ptext="What do you wish to store as the value?",helpText=field_type,data=field_type)
974
+ if field_value in [None,]:
975
+ return
976
+
977
+ print(field_name,field_type,field_value)
978
+ extra=EntryDataExtras(field_name=field_name,field_type=field_type,field_value=field_value,EntryId=product.EntryId)
979
+ session.add(extra)
980
+ session.commit()
981
+ session.refresh(extra)
982
+ print(extra)
983
+ anotherField=Prompt.__init2__(None,func=FormBuilderMkText,ptext="Add another field to this product[y/n]?",helpText="yes/no/boolean",data="boolean")
984
+ if anotherField in [None,]:
985
+ return
986
+ elif anotherField in ['d',True]:
987
+ continue
988
+ else:
989
+ break
990
+ if barcode != None:
988
991
  break
989
- if barcode != None:
990
- break
992
+ except Exception as e:
993
+ print(e)
994
+
991
995
 
992
996
  def sch_c2e(self,barcode=None):
993
997
  with Session(ENGINE) as session:
radboy/TasksMode/Tasks.py CHANGED
@@ -35,7 +35,7 @@ from radboy.InListRestore.ILR import *
35
35
  from radboy.Compare.Compare import *
36
36
  from radboy.Unified.Unified2 import Unified2
37
37
  from copy import copy
38
- from decimal import Decimal
38
+ from decimal import Decimal,getcontext
39
39
  from radboy.GDOWN.GDOWN import *
40
40
  from radboy.Unified.clearalll import clear_all
41
41
 
@@ -289,20 +289,23 @@ class TasksMode:
289
289
  return text
290
290
 
291
291
  def pricing(self):
292
+ prec=int(detectGetOrSet("Price/Tax/CRV Calculator Precision",4,setValue=False,literal=True))
293
+ getcontext().prec=prec
292
294
  while True:
293
295
  try:
294
- default_taxrate=float(detectGetOrSet("Tax Rate",0.0925,setValue=False,literal=True))
295
- default_price=float(detectGetOrSet("pricing default price",1,setValue=False,literal=True))
296
- default_bottle_qty=float(detectGetOrSet("pricing default bottle_qty",1,setValue=False,literal=True))
297
- default_bottle_size=float(detectGetOrSet("pricing default bottle_size",16.9,setValue=False,literal=True))
298
- default_purchased_qty=float(detectGetOrSet("pricing default purchased_qty",1,setValue=False,literal=True))
296
+ default_taxrate=float(Decimal(detectGetOrSet("Tax Rate",0.0925,setValue=False,literal=True)))
297
+ default_price=float(Decimal(detectGetOrSet("pricing default price",1,setValue=False,literal=True)))
298
+ default_bottle_qty=float(Decimal(detectGetOrSet("pricing default bottle_qty",1,setValue=False,literal=True)))
299
+ default_bottle_size=float(Decimal(detectGetOrSet("pricing default bottle_size",16.9,setValue=False,literal=True)))
300
+ default_purchased_qty=float(Decimal(detectGetOrSet("pricing default purchased_qty",1,setValue=False,literal=True)))
299
301
  defaults_msg=f"""
300
302
  {Fore.orange_red_1}Default Settings [changeable under sysset]{Style.reset}
301
303
  {Fore.light_sea_green}default_taxrate=={Fore.turquoise_4}{default_taxrate},
302
304
  {Fore.grey_70}default_price=={Fore.light_yellow}{default_price},
303
305
  {Fore.light_sea_green}default_bottle_qty=={Fore.turquoise_4}{default_bottle_qty},
304
306
  {Fore.grey_70}default_bottle_size=={Fore.light_yellow}{default_bottle_size},
305
- {Fore.light_sea_green}default_purchased_qty=={Fore.turquoise_4}{default_purchased_qty}{Style.reset}"""
307
+ {Fore.light_sea_green}default_purchased_qty=={Fore.turquoise_4}{default_purchased_qty}
308
+ {Fore.grey_70}Price/Tax/CRV Calculator Precision=={Fore.light_yellow}{prec}{Style.reset}"""
306
309
 
307
310
  def beverage_PTCRV_base():
308
311
  result=None
@@ -334,9 +337,9 @@ class TasksMode:
334
337
  bottle_qty=default_bottle_qty
335
338
 
336
339
  if xxx.magnitude < 24:
337
- crv=0.05*bottle_qty
340
+ crv=float(Decimal(0.05)*Decimal(bottle_qty))
338
341
  else:
339
- crv=0.10*bottle_qty
342
+ crv=float(Decimal(0.10)*Decimal(bottle_qty))
340
343
 
341
344
  tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
342
345
  if tax_rate is None:
@@ -350,10 +353,11 @@ class TasksMode:
350
353
  elif purchased_qty in ['d',]:
351
354
  purchased_qty=default_purchased_qty
352
355
 
353
- price=(price*purchased_qty)+crv
354
- tax=price*tax_rate
356
+ price=(Decimal(price)*Decimal(purchased_qty))+Decimal(crv)
357
+ tax=price*Decimal(tax_rate)
355
358
 
356
- result=round(price+tax,3)
359
+
360
+ result=round(float(Decimal(price)+tax),prec)
357
361
  return result
358
362
 
359
363
  def tax_with_crv():
@@ -386,9 +390,9 @@ class TasksMode:
386
390
  bottle_qty=default_bottle_qty
387
391
 
388
392
  if xxx.magnitude < 24:
389
- crv=0.05*bottle_qty
393
+ crv=Decimal(0.05)*Decimal(bottle_qty)
390
394
  else:
391
- crv=0.10*bottle_qty
395
+ crv=Decimal(0.10)*Decimal(bottle_qty)
392
396
 
393
397
  tax_rate=Prompt.__init2__(None,func=FormBuilderMkText,ptext=f"Tax Rate (0.01==1%(Default={default_taxrate})):",helpText="A float or integer",data="float")
394
398
  if tax_rate is None:
@@ -402,10 +406,10 @@ class TasksMode:
402
406
  elif purchased_qty in ['d',]:
403
407
  purchased_qty=default_purchased_qty
404
408
 
405
- price=(price*purchased_qty)+crv
406
- tax=price*tax_rate
409
+ price=Decimal(Decimal(price)*Decimal(purchased_qty))+crv
410
+ tax=price*Decimal(tax_rate)
407
411
 
408
- result=round(tax,3)
412
+ result=round(float(tax),prec)
409
413
  return result
410
414
 
411
415
  def crv_total():
@@ -431,12 +435,12 @@ class TasksMode:
431
435
  bottle_qty=default_bottle_qty
432
436
 
433
437
  if xxx.magnitude < 24:
434
- crv=0.05*bottle_qty
438
+ crv=Decimal(0.05)*Decimal(bottle_qty)
435
439
  else:
436
- crv=0.10*bottle_qty
440
+ crv=Decimal(0.10)*Decimal(bottle_qty)
437
441
 
438
442
 
439
- result=round(crv,3)
443
+ result=round(float(crv),prec)
440
444
  return result
441
445
 
442
446
  def price_tax():
@@ -461,10 +465,10 @@ class TasksMode:
461
465
  elif tax_rate == 'd':
462
466
  tax_rate=default_taxrate
463
467
 
464
- price=price*bottle_qty
465
- tax=price*tax_rate
468
+ price=Decimal(price)*Decimal(bottle_qty)
469
+ tax=price*Decimal(tax_rate)
466
470
 
467
- result=round(price+tax,3)
471
+ result=round(float(price+tax),3)
468
472
  return result
469
473
 
470
474
  def tax_no_crv():
@@ -489,10 +493,10 @@ class TasksMode:
489
493
  elif tax_rate == 'd':
490
494
  tax_rate=default_taxrate
491
495
 
492
- price=price*bottle_qty
493
- tax=price*tax_rate
496
+ price=Decimal(price)*Decimal(bottle_qty)
497
+ tax=price*Decimal(tax_rate)
494
498
 
495
- result=round(tax,3)
499
+ result=round(float(tax),prec)
496
500
  return result
497
501
 
498
502
  def tax_rate_from_priceAndTax():
@@ -512,9 +516,9 @@ class TasksMode:
512
516
  taxed=0
513
517
 
514
518
 
515
- tax_rate=taxed/price
519
+ tax_rate=Decimal(taxed)/Decimal(price)
516
520
 
517
- result=round(tax_rate,3)
521
+ result=round(float(tax_rate),prec)
518
522
  return result
519
523
 
520
524
  def tax_rate_from_oldPriceAndNewPrice():
@@ -532,10 +536,11 @@ class TasksMode:
532
536
  elif new_price in ['','d']:
533
537
  new_price=default_price
534
538
 
535
- taxed=round(new_price-old_price,3)
536
- tax_rate=round(taxed/old_price,3)
539
+ taxed=Decimal(new_price)-Decimal(old_price)
540
+ tax_rate=taxed/Decimal(old_price)
541
+ tax_rate=round(float(tax_rate),prec)
537
542
 
538
- result=round(tax_rate,3)
543
+ result=tax_rate
539
544
  return result
540
545
 
541
546
  while True:
@@ -562,7 +567,7 @@ class TasksMode:
562
567
  },
563
568
  '4':{
564
569
  'cmds':['tax','tax no crv','tax 0 crv','4'],
565
- 'desc':f'{Fore.light_yellow}tax+crv{Fore.medium_violet_red} asking questions like price and qty to get total crv{Style.reset}',
570
+ 'desc':f'{Fore.light_yellow}tax w/o crv{Fore.medium_violet_red} asking questions like price and qty to get total tax without crv{Style.reset}',
566
571
  'exec':tax_no_crv
567
572
  },
568
573
  '5':{
radboy/__init__.py CHANGED
@@ -1 +1 @@
1
- VERSION='0.0.351'
1
+ VERSION='0.0.353'
Binary file
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: radboy
3
- Version: 0.0.351
3
+ Version: 0.0.353
4
4
  Summary: A small example package
5
5
  Author: Carl Joseph Hirner III
6
6
  Author-email: Carl Hirner III <k.j.hirner.wisdom@gmail.com>
@@ -5,7 +5,7 @@ radboy/Holidays.txt,sha256=y-JZPihh5iaWKxMIHNXD39yVuVmf1vMs4FdNDcg0f1Y,3114
5
5
  radboy/InventoryGlossary.txt,sha256=018-Yqca6DFb10jPdkUY-5qhkRlQN1k3rxoTaERQ-LA,91008
6
6
  radboy/RecordMyCodes.py,sha256=XXy-o5Z_yOgrgHNju4iqM3h7xhRBkNIoHG1qePtBnGY,41316
7
7
  radboy/Run.py,sha256=JUoCTHnzQBv7n8PB2_i93ANdAC_iW__RkAge8esCnk4,76
8
- radboy/__init__.py,sha256=Rof_lEJXvW8euhOheSDBrewoLgLoNWnKLl-UI5eEBRY,17
8
+ radboy/__init__.py,sha256=LdCBGH3p2BCb5qYCX-X_2EsCoDDPLdyDmN7dczhG_nk,17
9
9
  radboy/api_key,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  radboy/case-export-2024-05-14-13-10-00.672971.xlsx,sha256=Wd592d_VLFmfUI9KKKSVjNwjV91euc1T7ATyvwvUhlg,5431
11
11
  radboy/case-export-2024-05-14-13-13-22.540614.xlsx,sha256=OnGrhmScHfGp_mVaWW-LNMsqrQgyZDpiU3wV-2s3U5Q,5556
@@ -90,7 +90,7 @@ radboy/DB/SMLabelImporter.py,sha256=eUoBDxVUUEKGL2g_PwkASM67ZB7FmXtSnn4bCagskhY,
90
90
  radboy/DB/__init__.py,sha256=JiigA9B7GalP7YuRdcwyGDu5PDSBahoi0lLjtScxlN8,49
91
91
  radboy/DB/blankDataFile.py,sha256=YX_05Usi71UpDkZN9UTMYwUipbTndTAtEgqzBEga0kE,9285
92
92
  radboy/DB/config.py,sha256=bvu43dUl1_yO3Zq3gsLuenGUgJSiS3S9Cs6ppFEvZbg,239
93
- radboy/DB/db.py,sha256=bTY303S1dqV5cv2JAlddtaVDMmjT5CTJTQi9KjVcUsk,228153
93
+ radboy/DB/db.py,sha256=FuCvGyUuqaWZeh2UAIQqgGXxO8cq1D1E5lBmxYmyKOI,228386
94
94
  radboy/DB/glossary_db.py,sha256=1_qxeEpjjEtpWB_eDjsgJisimLv7OBm75MuqM-Lt6zg,28218
95
95
  radboy/DB/masterLookup.py,sha256=DBaM2uscG3_X5dek49wjdnOzhrjWhKgvOEz_umdz0mY,4566
96
96
  radboy/DB/msg.txt,sha256=YxWed6A6tuP1djJ5QPS2Rz3ING4TKKf8kUiCCPtzHXE,7937
@@ -125,7 +125,7 @@ radboy/DB/__pycache__/config.cpython-312.pyc,sha256=Qo7E6MHrF6yqvKgepNFyCoekZXiv
125
125
  radboy/DB/__pycache__/config.cpython-313.pyc,sha256=_8wCIg_3jhyJjxnExD2Sm6aY-uZTw036p7Ki5znL7dc,376
126
126
  radboy/DB/__pycache__/db.cpython-311.pyc,sha256=rNgigyBd0D-cg1JxKAS8t0B_k0IEJivgVlRaZE10Xis,210105
127
127
  radboy/DB/__pycache__/db.cpython-312.pyc,sha256=ANDJPC0RoavbmSKFxG15vC7B4rEGyVt7xRJt7XGY3OA,334609
128
- radboy/DB/__pycache__/db.cpython-313.pyc,sha256=phmHMqSUXsdVI60Lu8o4MTHP0ERzY1xU3RUIoTxZIL8,359887
128
+ radboy/DB/__pycache__/db.cpython-313.pyc,sha256=Y8TFajotRXIsYOWn-G6FN9Az3kOlZ60P9rFmGBEjvTM,360066
129
129
  radboy/DB/__pycache__/glossary_db.cpython-312.pyc,sha256=8UL-29cKqtKovx0BANm6kzKKteef1BW_2qF3wumzst4,36023
130
130
  radboy/DB/__pycache__/glossary_db.cpython-313.pyc,sha256=Ke9bkvllGv5CK0JdT9DRvQ3MOdrXxoYv7TVLNkqLux0,36582
131
131
  radboy/DB/__pycache__/masterLookup.cpython-312.pyc,sha256=bQiOkmMwwHgcO18tYSWGQ-YUff4GQlKVhBMp1GoWAqY,6324
@@ -144,10 +144,10 @@ radboy/DayLog/__pycache__/DayLogger.cpython-313.pyc,sha256=UC2v9eX_1UZNgIA9baQzr
144
144
  radboy/DayLog/__pycache__/__init__.cpython-311.pyc,sha256=Z5Y4DdVF77LZf6-Of92MDGFdi-IXik1ASQd4AdLNNfQ,231
145
145
  radboy/DayLog/__pycache__/__init__.cpython-312.pyc,sha256=lP_GHzSPt5JTrT1jLWiRMFGPmSdJYBn4eRV__OxgJ6s,269
146
146
  radboy/DayLog/__pycache__/__init__.cpython-313.pyc,sha256=UQw5v4r7yismC9qcqP0dEme6h-lawbOA5pXYpkqUwFk,148
147
- radboy/EntryExtras/Extras.py,sha256=CzRiM3lbooG27QaqV_r2v56OtxpgbSKqEnB_x77yNXE,66339
147
+ radboy/EntryExtras/Extras.py,sha256=4z1hp3CZpia-4Y6cbmv1iyzUHUyv3MnVqlZWGmNNKVw,66933
148
148
  radboy/EntryExtras/__init__.py,sha256=K76Ku7o2DwTZU-Ya2mifH856KAcxb8MXdSaQMQLhu84,902
149
149
  radboy/EntryExtras/__pycache__/Extras.cpython-312.pyc,sha256=eHkeyKblMtG37lDhl38OEGQbvvKxXMriKK49kj2mg8o,34768
150
- radboy/EntryExtras/__pycache__/Extras.cpython-313.pyc,sha256=kVsCdqeYlNOhGlnNUEPRwkTbnL8JKQeaT1OeJKn5Mmw,85985
150
+ radboy/EntryExtras/__pycache__/Extras.cpython-313.pyc,sha256=V7jYgyWJwgUr7FIDKnmlX7WFXNtig19rJKjnm_dLUJw,86179
151
151
  radboy/EntryExtras/__pycache__/__init__.cpython-312.pyc,sha256=0bBwhp_9PYvL-Nm_J0gsYf9yfKAFJMiMdpc6XzZrPzU,829
152
152
  radboy/EntryExtras/__pycache__/__init__.cpython-313.pyc,sha256=PqXXfBeREZI2pZc22BayKH7daLXbO7p3NozaXpnA3cQ,829
153
153
  radboy/EntryExtras/__pycache__/db.cpython-312.pyc,sha256=Qcqix5yi9h7fbsmGhJOWYdLHbHMTWixwolRRQYg8ISk,1781
@@ -330,7 +330,7 @@ radboy/SystemSettings/__pycache__/__init__.cpython-312.pyc,sha256=aIzp4Po0t8EhSA
330
330
  radboy/SystemSettings/__pycache__/__init__.cpython-313.pyc,sha256=QFDuoidxMWsGVLsy5lN-rDs6TP8nKJ4yyCyiamNOhwo,156
331
331
  radboy/TasksMode/ReFormula.py,sha256=REDRJYub-OEOE6g14oRQOLOQwv8pHqVJy4NQk3CCM90,2255
332
332
  radboy/TasksMode/SetEntryNEU.py,sha256=3nUNDUNyxq4zeMtmUQ7aS1o23P7KhDIMdUPNqPnYbRk,17343
333
- radboy/TasksMode/Tasks.py,sha256=DNPPnCth3tmV8dsvAdJrAp2187DRT1gMjxs78HWyhHg,300766
333
+ radboy/TasksMode/Tasks.py,sha256=xk4l-8Kgc_sGmHLqxcAOATwB5wKAlnL9HzAho3c81gU,301434
334
334
  radboy/TasksMode/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
335
335
  radboy/TasksMode/__pycache__/ReFormula.cpython-311.pyc,sha256=QEG3PwVw-8HTd_Mf9XbVcxU56F1fC9yBqWXYPLC39DU,4865
336
336
  radboy/TasksMode/__pycache__/ReFormula.cpython-312.pyc,sha256=aX7BWm2PPjCTnxsbGUitR-2h9hq4AjaBiHMrUXvIl0Y,3967
@@ -339,7 +339,7 @@ radboy/TasksMode/__pycache__/SetEntryNEU.cpython-312.pyc,sha256=pCdFj61aPKkHL6Sv
339
339
  radboy/TasksMode/__pycache__/SetEntryNEU.cpython-313.pyc,sha256=leIelDzPrZE_YgKs0B99osmhyENYtYgi3ErgS2XqSPs,20088
340
340
  radboy/TasksMode/__pycache__/Tasks.cpython-311.pyc,sha256=6QOTJnLiXSKdF81hkhy3vyrz49PPhS20s5_0X52g3Hw,131120
341
341
  radboy/TasksMode/__pycache__/Tasks.cpython-312.pyc,sha256=hyJwdaYaaRLdcrNxgg36diJ5iijX5_3I0UAORsj-6LU,310295
342
- radboy/TasksMode/__pycache__/Tasks.cpython-313.pyc,sha256=e2FO5tj68YvLyDMr7RHHzwBHOfHcq0Sm945tHHk1HcE,366197
342
+ radboy/TasksMode/__pycache__/Tasks.cpython-313.pyc,sha256=VWyCbr0kLi4SUdXbnKyEb3rjqAPIF1HnGynaP6lA_js,368151
343
343
  radboy/TasksMode/__pycache__/__init__.cpython-311.pyc,sha256=PKV1JbihEacm639b53bZozRQvcllSkjGP3q8STVMxF4,234
344
344
  radboy/TasksMode/__pycache__/__init__.cpython-312.pyc,sha256=ERgnEvRMiGSecWp1BpNzLdSq_SdKw7GvFWUvUM7bLVw,272
345
345
  radboy/TasksMode/__pycache__/__init__.cpython-313.pyc,sha256=lvsTxukyvGKB3C0rdF9dQi_bvVh6ceDVINfwcuIsd0s,151
@@ -386,7 +386,7 @@ radboy/__pycache__/Run.cpython-311.pyc,sha256=G_UEfMtkLRjR6ZpGA_BJzGenuaCcP469Y9
386
386
  radboy/__pycache__/Run.cpython-312.pyc,sha256=v4xolc3mHyla991XhpYBUbBHYT0bnJ1gE-lkFoQ4GFA,241
387
387
  radboy/__pycache__/__init__.cpython-311.pyc,sha256=R-DVbUioMOW-Fnaq7FpT5F1a5p0q3b_RW-HpLRArCAY,242
388
388
  radboy/__pycache__/__init__.cpython-312.pyc,sha256=FsFzLXOlTK8_7ixoPZzakkR8Wibt-DvXLFh-oG2QlPw,164
389
- radboy/__pycache__/__init__.cpython-313.pyc,sha256=WIgbGJm5sXuP4aKVCW7jPse4lWNgq3QO6tVTbP3-Nf4,165
389
+ radboy/__pycache__/__init__.cpython-313.pyc,sha256=5JsvuWJgAz8ewLdAFGFfUpIAKFGeYk10lRbL323TZ18,165
390
390
  radboy/__pycache__/__init__.cpython-39.pyc,sha256=D48T6x6FUeKPfubo0sdS_ZUut3FmBvPMP7qT6rYBZzU,275
391
391
  radboy/__pycache__/possibleCode.cpython-311.pyc,sha256=zFiHyzqD8gUnIWu4vtyMYIBposiRQqaRXfcT_fOl4rU,20882
392
392
  radboy/__pycache__/possibleCode.cpython-312.pyc,sha256=tk_CO-AcsO3YZj5j6vEsw3g37UmEzWc5YgeWEoJEUg4,27922
@@ -411,7 +411,7 @@ radboy/tkGui/Images/__pycache__/__init__.cpython-311.pyc,sha256=tXBYpqbOlZ24B1BI
411
411
  radboy/tkGui/__pycache__/BeginnersLuck.cpython-311.pyc,sha256=xLQOnV1wuqHGaub16mPX0dDMGU9ryCeLtNz5e517_GE,3004
412
412
  radboy/tkGui/__pycache__/Review.cpython-311.pyc,sha256=wKq24iM6Xe2OampgZ7-8U6Nvmgs2y-qWOrGwtWhc75k,4047
413
413
  radboy/tkGui/__pycache__/__init__.cpython-311.pyc,sha256=BX7DBn5qbvKTvlrKOP5gzTBPBTeTgSMjBW6EMl7N8e0,230
414
- radboy-0.0.351.dist-info/METADATA,sha256=tpw5FHvJbCi971RFYzmO7rw07wPIpvx2EAuF3dpfKZA,794
415
- radboy-0.0.351.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
416
- radboy-0.0.351.dist-info/top_level.txt,sha256=mlM0RWMUxGo1YHnlLmYrHOgGdK4XNRpr7nMFD5lR56c,7
417
- radboy-0.0.351.dist-info/RECORD,,
414
+ radboy-0.0.353.dist-info/METADATA,sha256=0PwJMjTphoDVaGw0VrhMcGqVBne_siIcf9rBPMatjzA,794
415
+ radboy-0.0.353.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
416
+ radboy-0.0.353.dist-info/top_level.txt,sha256=mlM0RWMUxGo1YHnlLmYrHOgGdK4XNRpr7nMFD5lR56c,7
417
+ radboy-0.0.353.dist-info/RECORD,,