PKDevTools 0.13.20250208.215__cp312-cp312-manylinux2014_x86_64.whl → 0.13.20250208.216__cp312-cp312-manylinux2014_x86_64.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.
Files changed (46) hide show
  1. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/DBManager.py +87 -0
  2. PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/__init__.py +1 -0
  3. {PKDevTools-0.13.20250208.215.dist-info → PKDevTools-0.13.20250208.216.dist-info}/METADATA +2 -2
  4. PKDevTools-0.13.20250208.216.dist-info/RECORD +44 -0
  5. PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/__init__.py +0 -1
  6. PKDevTools-0.13.20250208.215.dist-info/RECORD +0 -44
  7. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/LICENSE.txt +0 -0
  8. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/README.txt +0 -0
  9. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/__init__.py +0 -0
  10. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/Archiver.py +0 -0
  11. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/ColorText.py +0 -0
  12. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/Committer.py +0 -0
  13. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/CookieHelper.py +0 -0
  14. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/Environment.py +0 -0
  15. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/Fetcher.py +0 -0
  16. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/FunctionTimeouts.py +0 -0
  17. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/GmailReader.py +0 -0
  18. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/MarketHours.py +0 -0
  19. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/MenuOptions.py +0 -0
  20. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/NSEMarketStatus.py +0 -0
  21. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/OutputControls.py +0 -0
  22. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/PKDateUtilities.py +0 -0
  23. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/PKGitFolderDownloader.py +0 -0
  24. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/PKJoinableQueue.py +0 -0
  25. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/PKMultiProcessorClient.py +0 -0
  26. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/PKPickler.py +0 -0
  27. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/PKTimer.py +0 -0
  28. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/Pikey.py +0 -0
  29. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/Singleton.py +0 -0
  30. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/SuppressOutput.py +0 -0
  31. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/System.py +0 -0
  32. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/Telegram.py +0 -0
  33. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/UserSubscriptions.py +0 -0
  34. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/Utils.py +0 -0
  35. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/WorkflowManager.py +0 -0
  36. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/githubutilities.py +0 -0
  37. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/log.py +0 -0
  38. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/multiprocessing_logging.py +0 -0
  39. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/squash.py +0 -0
  40. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/classes/updater.py +0 -0
  41. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/release.md +0 -0
  42. {PKDevTools-0.13.20250208.215.data → PKDevTools-0.13.20250208.216.data}/purelib/PKDevTools/requirements.txt +0 -0
  43. {PKDevTools-0.13.20250208.215.dist-info → PKDevTools-0.13.20250208.216.dist-info}/LICENSE +0 -0
  44. {PKDevTools-0.13.20250208.215.dist-info → PKDevTools-0.13.20250208.216.dist-info}/WHEEL +0 -0
  45. {PKDevTools-0.13.20250208.215.dist-info → PKDevTools-0.13.20250208.216.dist-info}/entry_points.txt +0 -0
  46. {PKDevTools-0.13.20250208.215.dist-info → PKDevTools-0.13.20250208.216.dist-info}/top_level.txt +0 -0
@@ -45,6 +45,21 @@ class PKUserModel(Enum):
45
45
  subscriptionmodel = 7
46
46
  lastotp = 8
47
47
 
48
+ class PKScannerJob:
49
+ scannerId=''
50
+ userIds=[]
51
+
52
+ def scannerJobFromRecord(row):
53
+ scanner = PKScannerJob()
54
+ scanner.scannerId= row[0]
55
+ scanner.userIds = []
56
+ for user in row[1].split(";"):
57
+ scanner.userIds.append(user)
58
+ if len(scanner.userIds) > 0:
59
+ # Only unique values
60
+ scanner.userIds = list(set(scanner.userIds))
61
+ return scanner
62
+
48
63
  class PKUser:
49
64
  userid=0
50
65
  username=""
@@ -55,6 +70,8 @@ class PKUser:
55
70
  totptoken=""
56
71
  subscriptionmodel=""
57
72
  lastotp=""
73
+ balance = 0
74
+ scannerJobs = []
58
75
 
59
76
  def userFromDBRecord(row):
60
77
  user = PKUser()
@@ -68,6 +85,18 @@ class PKUser:
68
85
  user.subscriptionmodel= row[7]
69
86
  user.lastotp= row[8]
70
87
  return user
88
+
89
+ def userFromAlertsRecord(row):
90
+ user = PKUser()
91
+ user.userid= row[0]
92
+ user.balance= row[1]
93
+ user.scannerJobs = []
94
+ for job in row[2].split(";"):
95
+ user.scannerJobs.append(str(job).upper())
96
+ if len(user.scannerJobs) > 0:
97
+ # Only unique values
98
+ user.scannerJobs = list(set(user.scannerJobs))
99
+ return user
71
100
 
72
101
  class DBManager:
73
102
 
@@ -323,3 +352,61 @@ class DBManager:
323
352
  self.conn.close()
324
353
  self.conn = None
325
354
  return users
355
+
356
+ def alertsForUser(self,userID:int):
357
+ try:
358
+ users = []
359
+ cursor = self.connection()
360
+ records = cursor.execute(f"SELECT * FROM alertsubscriptions where userId={self.sanitisedIntValue(userID)}")
361
+ for row in records.rows:
362
+ users.append(PKUser.userFromAlertsRecord(row))
363
+ # cursor.close()
364
+ if len(records.columns) > 0 and len(records.rows) <= 0:
365
+ default_logger().debug(f"Users not found!")
366
+ except Exception as e: # pragma: no cover
367
+ print(f"Could not get alertsForUser\n{e}")
368
+ default_logger().debug(e, exc_info=True)
369
+ pass
370
+ finally:
371
+ if self.conn is not None:
372
+ self.conn.close()
373
+ self.conn = None
374
+ return users[0] if len(users) > 0 else None
375
+
376
+ def scannerJobsWithActiveUsers(self):
377
+ try:
378
+ scanners = []
379
+ cursor = self.connection()
380
+ records = cursor.execute(f"SELECT * FROM scannerjobs where users != ''")
381
+ for row in records.rows:
382
+ scanners.append(PKScannerJob.scannerJobFromRecord(row))
383
+ if len(records.columns) > 0 and len(records.rows) <= 0:
384
+ default_logger().debug(f"Scanners not found!")
385
+ except Exception as e: # pragma: no cover
386
+ print(f"Could not get scannerJobsWithActiveUsers\n{e}")
387
+ default_logger().debug(e, exc_info=True)
388
+ pass
389
+ finally:
390
+ if self.conn is not None:
391
+ self.conn.close()
392
+ self.conn = None
393
+ return scanners
394
+
395
+ def usersForScannerJobId(self,scannerJobId:str):
396
+ try:
397
+ scanners = []
398
+ cursor = self.connection()
399
+ records = cursor.execute(f"SELECT * FROM scannerjobs where scannerId = {self.sanitisedStrValue(str(scannerJobId).upper())}")
400
+ for row in records.rows:
401
+ scanners.append(PKScannerJob.scannerJobFromRecord(row))
402
+ if len(records.columns) > 0 and len(records.rows) <= 0:
403
+ default_logger().debug(f"Scanners not found!")
404
+ except Exception as e: # pragma: no cover
405
+ print(f"Could not get scannerJobsWithActiveUsers\n{e}")
406
+ default_logger().debug(e, exc_info=True)
407
+ pass
408
+ finally:
409
+ if self.conn is not None:
410
+ self.conn.close()
411
+ self.conn = None
412
+ return scanners[0].userIds if len(scanners) > 0 else []
@@ -0,0 +1 @@
1
+ VERSION='0.13.20250208.216'
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: PKDevTools
3
- Version: 0.13.20250208.215
3
+ Version: 0.13.20250208.216
4
4
  Summary: A general day-to-day toolset for PKScreener repos
5
5
  Home-page: https://github.com/pkjmesra/PKDevTools
6
- Download-URL: https://github.com/pkjmesra/PKDevTools/archive/v0.13.20250208.215.zip
6
+ Download-URL: https://github.com/pkjmesra/PKDevTools/archive/v0.13.20250208.216.zip
7
7
  Author: pkjmesra
8
8
  Author-email: pkjmesra@gmail.com
9
9
  License: OSI Approved (MIT)
@@ -0,0 +1,44 @@
1
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/LICENSE.txt,sha256=5kDneOnQ4s9IktVsbcPcs6o0GhW7Rw_ySDac6TA2Cw4,1065
2
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/README.txt,sha256=xw2oGRJ1M9lmJqEYw3VBh7ZjlNx7hIZw6fcDzC0shu8,4233
3
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/__init__.py,sha256=QyaxuW4OGDxF6KXLC5avvZyLhfMt9KnKAb4m9j1XUls,1152
4
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/release.md,sha256=NcfNPeUU9uaz8mRiRZRqPWkSpwoHVShdrXJqOJdKbnQ,1729
5
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/requirements.txt,sha256=Ob-LG6adhp05gxoZty8PWnWxqLS5L1ZUi88lf07HvUI,361
6
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/Archiver.py,sha256=0D2wMp3a913QOsPXc0K_frtvpldDU7uIsP8DRAvaIQ0,6301
7
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/ColorText.py,sha256=sIsXd75jMtA44mdZQd6EO1MdFYQaH2IYukLEH9fZuEw,8585
8
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/Committer.py,sha256=cHsIe9DonzQULOZwrXGuodatFSDNm5UiQafjVlWn-BE,4536
9
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/CookieHelper.py,sha256=PxW1_VanZ7AY7o7jMYxISBj9yhs69L0Sd8wvXYCRXAo,6212
10
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/DBManager.py,sha256=dUP2TkHZAs_UIUVgn_VTaZ_F_rvGJtaZPDTv4fmRaas,18545
11
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/Environment.py,sha256=hvQwkjz9QunX0-3Dcuw5E76fjaejmHvrmiAOME9TqE4,1978
12
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/Fetcher.py,sha256=W-yCSSujFie58lYAZ4HVo1gZey9R3Qpe3JL16F-eo9I,9011
13
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/FunctionTimeouts.py,sha256=xbxp-txDqiQOzVjazbrEPITMGvUIXQ0HqfFh8vYr4WU,2541
14
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/GmailReader.py,sha256=6iOTXNzOBqXPeGwNnq853N1zOaHIcAY0EozisjhSOTE,6856
15
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/MarketHours.py,sha256=2aRzd8JfCmxc3UryvrpUS7DvHuctpz_U-E0nv72gEaY,2159
16
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/MenuOptions.py,sha256=MC_OblDzSMCENVEZCQQX4whmY3vQAhE2oBZOL69JzyA,11606
17
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/NSEMarketStatus.py,sha256=DQ9VZ9Pl17rYnvK6x4M8s9LIPxGf9RUuUtmn2eBu5JE,5411
18
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/OutputControls.py,sha256=cXI8l2ZIJAZbTbVbG7wu7iNgMBFfs51XapCS27lNjmU,3472
19
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/PKDateUtilities.py,sha256=QIjCGyTMkax5mv0qGC9gjLxaz4zTFX2oRqDhXAbQ8Gk,17873
20
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/PKGitFolderDownloader.py,sha256=RM7ZQCERKl_ttlAoo5Nt9FKuWWUirQxCxL1thZ12_hE,2936
21
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/PKJoinableQueue.py,sha256=8eWkWiOaqGCAegV30-bgpPsfmhVVpuxLHdyrJNY3_OY,5122
22
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/PKMultiProcessorClient.py,sha256=Y5t_f14z6ygzPUHDH6YJIqLrm9s7TFk5ayLxK8MeTgw,13214
23
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/PKPickler.py,sha256=M2F2_Z7XAmo7qfzOEiVLq3RzpldfU8Y-MfMPrMZbNGU,14082
24
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/PKTimer.py,sha256=Y0jmvrXKLkwNH3j5qIwpL_th-Nf26oCHnxsZ7_AuV8U,3345
25
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/Pikey.py,sha256=wDiOUIRSxYOIO7GGUw1eGrbDuVvJ-YAU6_dfQWRp2Fk,2744
26
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/Singleton.py,sha256=tBIFCgVKqs5-K6w_wx0FNNT5aks1QmOLjE_xTMHbb10,4432
27
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/SuppressOutput.py,sha256=yAsdxsVJCbVi-irsxa_ClY7JutbRU_eAEMhw4NW4QdE,1951
28
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/System.py,sha256=tMNnGUQdhUjkysJ2b9EI8dy8iXdaHkshRXpeKZlyPf8,4005
29
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/Telegram.py,sha256=ZK3b1vBnSN7AYRhaMCNAcJuCmMSfFpLGlU3fPn7YEyk,15150
30
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/UserSubscriptions.py,sha256=MX2NR8kNZIkno2DUcJa00N3dPSkSNXruOGmxm9YvZmw,9075
31
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/Utils.py,sha256=P_kJnTgMK6fA6SwIvNLThvHxYVcazhD5Zo5WL_kpC3Y,24264
32
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/WorkflowManager.py,sha256=rDamQR0fF-YSzOQTjMJnksJ6dxKs-PazW6fVFlAQ_Sk,9759
33
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/__init__.py,sha256=hIOwlhKMKFVPaBUMorrx3hW45ztwFGMQOJYsZqm2wD8,28
34
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/githubutilities.py,sha256=UNSJzx8Ybn_x6zaSk497KQsMyDX7MYnQjjV-F0KP_Z0,3650
35
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/log.py,sha256=r-KBSGYXJ67Uzw51cNisB3x3uB5mlQWSOO_E6c_m1F8,15616
36
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/multiprocessing_logging.py,sha256=8W4fHL1Kstp2FIML6N6ghT--8HE4bmak3sZ1fsWF52U,7212
37
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/squash.py,sha256=iZ4MsOW_evD4VoWjO9pEHd2gWeswthM7uWSgVRpFvDw,2782
38
+ PKDevTools-0.13.20250208.216.data/purelib/PKDevTools/classes/updater.py,sha256=NQ46ulqswdXkjljFwPiwufgGoCZB-Fc7DdYYh9LyS-0,4709
39
+ PKDevTools-0.13.20250208.216.dist-info/LICENSE,sha256=5kDneOnQ4s9IktVsbcPcs6o0GhW7Rw_ySDac6TA2Cw4,1065
40
+ PKDevTools-0.13.20250208.216.dist-info/METADATA,sha256=90TjdDkVviN3RPpH9se_6oppQbjF8InJLABEp_twpNI,5981
41
+ PKDevTools-0.13.20250208.216.dist-info/WHEEL,sha256=aDUArjEbIuDQzblE24IvdIsBzRhJEjiXmuNUYQ-gpaA,104
42
+ PKDevTools-0.13.20250208.216.dist-info/entry_points.txt,sha256=itdAnPuy8DO45uGuAEms0UJcoa2nGJVAUwm7NIL4-Yw,353
43
+ PKDevTools-0.13.20250208.216.dist-info/top_level.txt,sha256=WTig-LzPiEcyuyhbNRhJz1mX_RB-fojodPK48k3NmPg,11
44
+ PKDevTools-0.13.20250208.216.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- VERSION='0.13.20250208.215'
@@ -1,44 +0,0 @@
1
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/LICENSE.txt,sha256=5kDneOnQ4s9IktVsbcPcs6o0GhW7Rw_ySDac6TA2Cw4,1065
2
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/README.txt,sha256=xw2oGRJ1M9lmJqEYw3VBh7ZjlNx7hIZw6fcDzC0shu8,4233
3
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/__init__.py,sha256=QyaxuW4OGDxF6KXLC5avvZyLhfMt9KnKAb4m9j1XUls,1152
4
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/release.md,sha256=NcfNPeUU9uaz8mRiRZRqPWkSpwoHVShdrXJqOJdKbnQ,1729
5
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/requirements.txt,sha256=Ob-LG6adhp05gxoZty8PWnWxqLS5L1ZUi88lf07HvUI,361
6
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/Archiver.py,sha256=0D2wMp3a913QOsPXc0K_frtvpldDU7uIsP8DRAvaIQ0,6301
7
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/ColorText.py,sha256=sIsXd75jMtA44mdZQd6EO1MdFYQaH2IYukLEH9fZuEw,8585
8
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/Committer.py,sha256=cHsIe9DonzQULOZwrXGuodatFSDNm5UiQafjVlWn-BE,4536
9
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/CookieHelper.py,sha256=PxW1_VanZ7AY7o7jMYxISBj9yhs69L0Sd8wvXYCRXAo,6212
10
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/DBManager.py,sha256=c9tLfLq9RdvntghvI1MxyN981qHzvNrTFDm31QuurFk,15187
11
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/Environment.py,sha256=hvQwkjz9QunX0-3Dcuw5E76fjaejmHvrmiAOME9TqE4,1978
12
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/Fetcher.py,sha256=W-yCSSujFie58lYAZ4HVo1gZey9R3Qpe3JL16F-eo9I,9011
13
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/FunctionTimeouts.py,sha256=xbxp-txDqiQOzVjazbrEPITMGvUIXQ0HqfFh8vYr4WU,2541
14
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/GmailReader.py,sha256=6iOTXNzOBqXPeGwNnq853N1zOaHIcAY0EozisjhSOTE,6856
15
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/MarketHours.py,sha256=2aRzd8JfCmxc3UryvrpUS7DvHuctpz_U-E0nv72gEaY,2159
16
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/MenuOptions.py,sha256=MC_OblDzSMCENVEZCQQX4whmY3vQAhE2oBZOL69JzyA,11606
17
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/NSEMarketStatus.py,sha256=DQ9VZ9Pl17rYnvK6x4M8s9LIPxGf9RUuUtmn2eBu5JE,5411
18
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/OutputControls.py,sha256=cXI8l2ZIJAZbTbVbG7wu7iNgMBFfs51XapCS27lNjmU,3472
19
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/PKDateUtilities.py,sha256=QIjCGyTMkax5mv0qGC9gjLxaz4zTFX2oRqDhXAbQ8Gk,17873
20
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/PKGitFolderDownloader.py,sha256=RM7ZQCERKl_ttlAoo5Nt9FKuWWUirQxCxL1thZ12_hE,2936
21
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/PKJoinableQueue.py,sha256=8eWkWiOaqGCAegV30-bgpPsfmhVVpuxLHdyrJNY3_OY,5122
22
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/PKMultiProcessorClient.py,sha256=Y5t_f14z6ygzPUHDH6YJIqLrm9s7TFk5ayLxK8MeTgw,13214
23
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/PKPickler.py,sha256=M2F2_Z7XAmo7qfzOEiVLq3RzpldfU8Y-MfMPrMZbNGU,14082
24
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/PKTimer.py,sha256=Y0jmvrXKLkwNH3j5qIwpL_th-Nf26oCHnxsZ7_AuV8U,3345
25
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/Pikey.py,sha256=wDiOUIRSxYOIO7GGUw1eGrbDuVvJ-YAU6_dfQWRp2Fk,2744
26
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/Singleton.py,sha256=tBIFCgVKqs5-K6w_wx0FNNT5aks1QmOLjE_xTMHbb10,4432
27
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/SuppressOutput.py,sha256=yAsdxsVJCbVi-irsxa_ClY7JutbRU_eAEMhw4NW4QdE,1951
28
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/System.py,sha256=tMNnGUQdhUjkysJ2b9EI8dy8iXdaHkshRXpeKZlyPf8,4005
29
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/Telegram.py,sha256=ZK3b1vBnSN7AYRhaMCNAcJuCmMSfFpLGlU3fPn7YEyk,15150
30
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/UserSubscriptions.py,sha256=MX2NR8kNZIkno2DUcJa00N3dPSkSNXruOGmxm9YvZmw,9075
31
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/Utils.py,sha256=P_kJnTgMK6fA6SwIvNLThvHxYVcazhD5Zo5WL_kpC3Y,24264
32
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/WorkflowManager.py,sha256=rDamQR0fF-YSzOQTjMJnksJ6dxKs-PazW6fVFlAQ_Sk,9759
33
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/__init__.py,sha256=QWEbMCI_4zfmEKriNTxsQNggGWeb0hykF3_EOYh16lc,28
34
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/githubutilities.py,sha256=UNSJzx8Ybn_x6zaSk497KQsMyDX7MYnQjjV-F0KP_Z0,3650
35
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/log.py,sha256=r-KBSGYXJ67Uzw51cNisB3x3uB5mlQWSOO_E6c_m1F8,15616
36
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/multiprocessing_logging.py,sha256=8W4fHL1Kstp2FIML6N6ghT--8HE4bmak3sZ1fsWF52U,7212
37
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/squash.py,sha256=iZ4MsOW_evD4VoWjO9pEHd2gWeswthM7uWSgVRpFvDw,2782
38
- PKDevTools-0.13.20250208.215.data/purelib/PKDevTools/classes/updater.py,sha256=NQ46ulqswdXkjljFwPiwufgGoCZB-Fc7DdYYh9LyS-0,4709
39
- PKDevTools-0.13.20250208.215.dist-info/LICENSE,sha256=5kDneOnQ4s9IktVsbcPcs6o0GhW7Rw_ySDac6TA2Cw4,1065
40
- PKDevTools-0.13.20250208.215.dist-info/METADATA,sha256=lkWTRGGD02un_axEcQl200HOHmxASwyvCHbXJDuZNKM,5981
41
- PKDevTools-0.13.20250208.215.dist-info/WHEEL,sha256=aDUArjEbIuDQzblE24IvdIsBzRhJEjiXmuNUYQ-gpaA,104
42
- PKDevTools-0.13.20250208.215.dist-info/entry_points.txt,sha256=itdAnPuy8DO45uGuAEms0UJcoa2nGJVAUwm7NIL4-Yw,353
43
- PKDevTools-0.13.20250208.215.dist-info/top_level.txt,sha256=WTig-LzPiEcyuyhbNRhJz1mX_RB-fojodPK48k3NmPg,11
44
- PKDevTools-0.13.20250208.215.dist-info/RECORD,,