PKDevTools 0.13.20250211.223__cp312-cp312-win_amd64.whl → 0.13.20250212.225__cp312-cp312-win_amd64.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/DBManager.py +29 -7
  2. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/UserSubscriptions.py +26 -26
  3. PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/__init__.py +1 -0
  4. {PKDevTools-0.13.20250211.223.dist-info → PKDevTools-0.13.20250212.225.dist-info}/METADATA +2 -2
  5. PKDevTools-0.13.20250212.225.dist-info/RECORD +44 -0
  6. PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/__init__.py +0 -1
  7. PKDevTools-0.13.20250211.223.dist-info/RECORD +0 -44
  8. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/LICENSE.txt +0 -0
  9. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/README.txt +0 -0
  10. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/__init__.py +0 -0
  11. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/Archiver.py +0 -0
  12. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/ColorText.py +0 -0
  13. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/Committer.py +0 -0
  14. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/CookieHelper.py +0 -0
  15. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/Environment.py +0 -0
  16. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/Fetcher.py +0 -0
  17. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/FunctionTimeouts.py +0 -0
  18. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/GmailReader.py +0 -0
  19. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/MarketHours.py +0 -0
  20. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/MenuOptions.py +0 -0
  21. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/NSEMarketStatus.py +0 -0
  22. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/OutputControls.py +0 -0
  23. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/PKDateUtilities.py +0 -0
  24. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/PKGitFolderDownloader.py +0 -0
  25. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/PKJoinableQueue.py +0 -0
  26. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/PKMultiProcessorClient.py +0 -0
  27. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/PKPickler.py +0 -0
  28. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/PKTimer.py +0 -0
  29. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/Pikey.py +0 -0
  30. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/Singleton.py +0 -0
  31. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/SuppressOutput.py +0 -0
  32. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/System.py +0 -0
  33. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/Telegram.py +0 -0
  34. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/Utils.py +0 -0
  35. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/WorkflowManager.py +0 -0
  36. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/githubutilities.py +0 -0
  37. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/log.py +0 -0
  38. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/multiprocessing_logging.py +0 -0
  39. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/squash.py +0 -0
  40. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/classes/updater.py +0 -0
  41. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/release.md +0 -0
  42. {PKDevTools-0.13.20250211.223.data → PKDevTools-0.13.20250212.225.data}/purelib/PKDevTools/requirements.txt +0 -0
  43. {PKDevTools-0.13.20250211.223.dist-info → PKDevTools-0.13.20250212.225.dist-info}/LICENSE +0 -0
  44. {PKDevTools-0.13.20250211.223.dist-info → PKDevTools-0.13.20250212.225.dist-info}/WHEEL +0 -0
  45. {PKDevTools-0.13.20250211.223.dist-info → PKDevTools-0.13.20250212.225.dist-info}/entry_points.txt +0 -0
  46. {PKDevTools-0.13.20250211.223.dist-info → PKDevTools-0.13.20250212.225.dist-info}/top_level.txt +0 -0
@@ -86,9 +86,10 @@ class PKUser:
86
86
  user.lastotp= row[8]
87
87
  return user
88
88
 
89
- def userFromAlertsRecord(row):
90
- user = PKUser()
91
- user.userid= row[0]
89
+ def userFromAlertsRecord(row,user=None):
90
+ if user is None:
91
+ user = PKUser()
92
+ user.userid= row[0]
92
93
  user.balance= row[1]
93
94
  user.scannerJobs = []
94
95
  for job in row[2].split(";"):
@@ -172,6 +173,7 @@ class DBManager:
172
173
  def getOTP(self,userID,username=None,name=None,retry=False,validityIntervalInSeconds=86400):
173
174
  try:
174
175
  otpValue = 0
176
+ user = None
175
177
  dbUsers = self.getUserByID(int(userID))
176
178
  if len(dbUsers) > 0:
177
179
  dbUser = dbUsers[0]
@@ -211,7 +213,8 @@ class DBManager:
211
213
  print(f"Could not get/update (getOTP) OTP for user: {user.userid}\n{e}")
212
214
  default_logger().debug(e, exc_info=True)
213
215
  pass
214
- return otpValue, subscriptionModel, subscriptionValidity
216
+ alertUser = self.alertsForUser(userID,user=user)
217
+ return otpValue, subscriptionModel, subscriptionValidity, alertUser
215
218
 
216
219
  def getUserByID(self,userID):
217
220
  try:
@@ -333,6 +336,9 @@ class DBManager:
333
336
  self.conn = None
334
337
 
335
338
  def getUsers(self):
339
+ """
340
+ Returns all active PKUser instances in the database or an empty list if none is found.
341
+ """
336
342
  try:
337
343
  users = []
338
344
  cursor = self.connection() #.cursor()
@@ -353,13 +359,17 @@ class DBManager:
353
359
  self.conn = None
354
360
  return users
355
361
 
356
- def alertsForUser(self,userID:int):
362
+ def alertsForUser(self,userID:int,user:PKUser=None):
363
+ """
364
+ Returns a PKUser instance with user's updated balance for daily alerts
365
+ and relevant subscribed scannerJobs for a given userID or None.
366
+ """
357
367
  try:
358
368
  users = []
359
369
  cursor = self.connection()
360
- records = cursor.execute(f"SELECT * FROM alertsubscriptions where userId={self.sanitisedIntValue(userID)}")
370
+ records = cursor.execute(f"SELECT * FROM alertsubscriptions where userId={self.sanitisedIntValue(userID if user is None else user.userid)}")
361
371
  for row in records.rows:
362
- users.append(PKUser.userFromAlertsRecord(row))
372
+ users.append(PKUser.userFromAlertsRecord(row,user=user))
363
373
  # cursor.close()
364
374
  if len(records.columns) > 0 and len(records.rows) <= 0:
365
375
  default_logger().debug(f"Users not found!")
@@ -374,6 +384,10 @@ class DBManager:
374
384
  return users[0] if len(users) > 0 else None
375
385
 
376
386
  def scannerJobsWithActiveUsers(self):
387
+ """
388
+ Returns all such PKScannerJob instances with (scannerIDs and subscribed userIds)
389
+ where there's at least one subscribed user.
390
+ """
377
391
  try:
378
392
  scanners = []
379
393
  cursor = self.connection()
@@ -393,6 +407,10 @@ class DBManager:
393
407
  return scanners
394
408
 
395
409
  def usersForScannerJobId(self,scannerJobId:str):
410
+ """
411
+ Returns userIds that are subscribed to a given scannerJobId or an
412
+ empty list if that scannerJobId is not found.
413
+ """
396
414
  try:
397
415
  scanners = []
398
416
  cursor = self.connection()
@@ -412,6 +430,10 @@ class DBManager:
412
430
  return scanners[0].userIds if len(scanners) > 0 else []
413
431
 
414
432
  def updateAlertSubscriptionModel(self,userID,charge:float,scanId:str):
433
+ """
434
+ Updates alertsubscriptions with balance update as well as scanner jobs
435
+ for a given user in the same table
436
+ """
415
437
  try:
416
438
  success = False
417
439
  result = self.connection().execute("""
@@ -29,13 +29,13 @@ from PKDevTools.classes.PKDateUtilities import PKDateUtilities
29
29
 
30
30
  class PKSubscriptionModel(Enum):
31
31
  No_Subscription = 0
32
- One_Regular_Scan_Unlimited_Alerts_One_Day = 31
33
- One_Piped_Scan_Unlimited_Alerts_One_Day = 40
34
- All_Scans_One_Day = 130
35
- All_Scans_One_Week = 600
36
- All_Scans_One_Month = 2000
37
- All_Scans_Six_Months = 11000
38
- All_Scans_One_Year = 22000
32
+ One_Reg_Scan_Alerts_1_Day = 31
33
+ One_Piped_Scan_Alerts_1_Day = 40
34
+ All_Scans_1_Day = 130
35
+ All_Scans_1_Week = 600
36
+ All_Scans_1_Month = 2000
37
+ All_Scans_6_Months = 11000
38
+ All_Scans_1_Year = 22000
39
39
 
40
40
  class PKUserSusbscriptions:
41
41
 
@@ -126,15 +126,15 @@ class PKUserSusbscriptions:
126
126
  # the subscription validity has not been updated so far
127
127
  # Update validity of subscription
128
128
  n = 1
129
- if user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_One_Day.value):
129
+ if user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_1_Day.value):
130
130
  n = 1
131
- elif user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_One_Week.value):
131
+ elif user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_1_Week.value):
132
132
  n = 6
133
- elif user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_One_Month.value):
133
+ elif user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_1_Month.value):
134
134
  n = 29
135
- elif user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_Six_Months.value):
135
+ elif user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_6_Months.value):
136
136
  n = 179
137
- elif user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_One_Year.value):
137
+ elif user.subscriptionmodel == str(PKSubscriptionModel.All_Scans_1_Year.value):
138
138
  n = 364
139
139
  user.otpvaliduntil = PKDateUtilities.YmdStringFromDate(PKDateUtilities.currentDateTime(),n=n)
140
140
  created, fileKey = dbManager.refreshOTPForUser(user)
@@ -170,24 +170,24 @@ class PKUserSusbscriptions:
170
170
  def subscriptionKeyValuePairs(self):
171
171
  return {
172
172
  f"{PKSubscriptionModel.No_Subscription.name}":f"{str(PKSubscriptionModel.No_Subscription.value)}",
173
- f"{PKSubscriptionModel.One_Regular_Scan_Unlimited_Alerts_One_Day.name}":f"{str(PKSubscriptionModel.One_Regular_Scan_Unlimited_Alerts_One_Day.value)}",
174
- f"{PKSubscriptionModel.One_Piped_Scan_Unlimited_Alerts_One_Day.name}":f"{str(PKSubscriptionModel.One_Piped_Scan_Unlimited_Alerts_One_Day.value)}",
175
- f"{PKSubscriptionModel.All_Scans_One_Day.name}":f"{str(PKSubscriptionModel.All_Scans_One_Day.value)}",
176
- f"{PKSubscriptionModel.All_Scans_One_Week.name}":f"{str(PKSubscriptionModel.All_Scans_One_Week.value)}",
177
- f"{PKSubscriptionModel.All_Scans_One_Month.name}":f"{str(PKSubscriptionModel.All_Scans_One_Month.value)}",
178
- f"{PKSubscriptionModel.All_Scans_Six_Months.name}":f"{str(PKSubscriptionModel.All_Scans_Six_Months.value)}",
179
- f"{PKSubscriptionModel.All_Scans_One_Year.name}":f"{str(PKSubscriptionModel.All_Scans_One_Year.value)}"
173
+ f"{PKSubscriptionModel.One_Reg_Scan_Alerts_1_Day.name}":f"{str(PKSubscriptionModel.One_Reg_Scan_Alerts_1_Day.value)}",
174
+ f"{PKSubscriptionModel.One_Piped_Scan_Alerts_1_Day.name}":f"{str(PKSubscriptionModel.One_Piped_Scan_Alerts_1_Day.value)}",
175
+ f"{PKSubscriptionModel.All_Scans_1_Day.name}":f"{str(PKSubscriptionModel.All_Scans_1_Day.value)}",
176
+ f"{PKSubscriptionModel.All_Scans_1_Week.name}":f"{str(PKSubscriptionModel.All_Scans_1_Week.value)}",
177
+ f"{PKSubscriptionModel.All_Scans_1_Month.name}":f"{str(PKSubscriptionModel.All_Scans_1_Month.value)}",
178
+ f"{PKSubscriptionModel.All_Scans_6_Months.name}":f"{str(PKSubscriptionModel.All_Scans_6_Months.value)}",
179
+ f"{PKSubscriptionModel.All_Scans_1_Year.name}":f"{str(PKSubscriptionModel.All_Scans_1_Year.value)}"
180
180
  }
181
181
 
182
182
  @property
183
183
  def subscriptionValueKeyPairs(self):
184
184
  return {
185
185
  f"{PKSubscriptionModel.No_Subscription.value}":f"{str(PKSubscriptionModel.No_Subscription.name)}",
186
- f"{PKSubscriptionModel.One_Regular_Scan_Unlimited_Alerts_One_Day.value}":f"{str(PKSubscriptionModel.One_Regular_Scan_Unlimited_Alerts_One_Day.name)}",
187
- f"{PKSubscriptionModel.One_Piped_Scan_Unlimited_Alerts_One_Day.value}":f"{str(PKSubscriptionModel.One_Piped_Scan_Unlimited_Alerts_One_Day.name)}",
188
- f"{PKSubscriptionModel.All_Scans_One_Day.value}":f"{str(PKSubscriptionModel.All_Scans_One_Day.name)}",
189
- f"{PKSubscriptionModel.All_Scans_One_Week.value}":f"{str(PKSubscriptionModel.All_Scans_One_Week.name)}",
190
- f"{PKSubscriptionModel.All_Scans_One_Month.value}":f"{str(PKSubscriptionModel.All_Scans_One_Month.name)}",
191
- f"{PKSubscriptionModel.All_Scans_Six_Months.value}":f"{str(PKSubscriptionModel.All_Scans_Six_Months.name)}",
192
- f"{PKSubscriptionModel.All_Scans_One_Year.value}":f"{str(PKSubscriptionModel.All_Scans_One_Year.name)}"
186
+ f"{PKSubscriptionModel.One_Reg_Scan_Alerts_1_Day.value}":f"{str(PKSubscriptionModel.One_Reg_Scan_Alerts_1_Day.name)}",
187
+ f"{PKSubscriptionModel.One_Piped_Scan_Alerts_1_Day.value}":f"{str(PKSubscriptionModel.One_Piped_Scan_Alerts_1_Day.name)}",
188
+ f"{PKSubscriptionModel.All_Scans_1_Day.value}":f"{str(PKSubscriptionModel.All_Scans_1_Day.name)}",
189
+ f"{PKSubscriptionModel.All_Scans_1_Week.value}":f"{str(PKSubscriptionModel.All_Scans_1_Week.name)}",
190
+ f"{PKSubscriptionModel.All_Scans_1_Month.value}":f"{str(PKSubscriptionModel.All_Scans_1_Month.name)}",
191
+ f"{PKSubscriptionModel.All_Scans_6_Months.value}":f"{str(PKSubscriptionModel.All_Scans_6_Months.name)}",
192
+ f"{PKSubscriptionModel.All_Scans_1_Year.value}":f"{str(PKSubscriptionModel.All_Scans_1_Year.name)}"
193
193
  }
@@ -0,0 +1 @@
1
+ VERSION='0.13.20250212.225'
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: PKDevTools
3
- Version: 0.13.20250211.223
3
+ Version: 0.13.20250212.225
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.20250211.223.zip
6
+ Download-URL: https://github.com/pkjmesra/PKDevTools/archive/v0.13.20250212.225.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.20250212.225.data/purelib/PKDevTools/LICENSE.txt,sha256=wrl88eUZgDW6osq1UZIU4s4uZCgqGcLa46dS_sMVLik,1086
2
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/README.txt,sha256=9wsN1KwyM_gfEN7__AHy6iS-OMjN7dId3E2egalqIpw,4290
3
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/__init__.py,sha256=IFxLtOl_ylBuZt4nqrHkgZg4uuyeuLjHRaBgTuZey8U,1176
4
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/release.md,sha256=FfltoyIaP9mdbGYgPFnZyuI_rSjkuKn4NoyO4jNCqtI,1767
5
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/requirements.txt,sha256=771vBujug-uuZ5EiZhV9PHLtckaeDaMERaEGZPYzglY,384
6
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/Archiver.py,sha256=lT-ybDUYRBQ26WkCy53yf5f2iV6RJEtaiB9Lu8Lb0Og,6469
7
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/ColorText.py,sha256=UDqA229ujXwGDB1PkkMT-ZTu6VIWgZyIaq4XXPjFmsI,8789
8
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/Committer.py,sha256=L3sYt6a09T7sxapeFhAErVTe93HDZ8vbxsZREadsGJ8,4629
9
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/CookieHelper.py,sha256=b781bqVWVgIot9n-KhJja31Qrcwow4iVqpxeav30f4k,6376
10
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/DBManager.py,sha256=l0QB2Zadp-BcbimAK6TLqS4LtnMPCMQprlKa3zc9Zos,25233
11
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/Environment.py,sha256=xhKosR8odmENok7rZ8CwmSp_fn0d6RhnZY2bHUxlS1U,2030
12
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/Fetcher.py,sha256=LCBaakl5LcktasnO7rvrVY4AEOIl6fzeWPZPjkER2lo,9202
13
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/FunctionTimeouts.py,sha256=1HyzFWasJ2Rvhj8TJvGq3IcAg5naU3Fe-70LLRMkrfQ,2608
14
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/GmailReader.py,sha256=zRvLxIAbWPJ_UBeK4rHVmzgywY_4WDSAUpzSFLrLvJo,6978
15
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/MarketHours.py,sha256=8hpCEEAC3fMseURaaYkVGMm3Nbju3L_tdTOsMZsY7kg,2216
16
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/MenuOptions.py,sha256=4t60fcsvwM7-Yr-_xtH3eiu_ll4Rrb1ScafMt3BHQNU,11963
17
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/NSEMarketStatus.py,sha256=WTo9e3la8nAXt5EGfAIZWvMyHLCsiad7YZTKaNuzE7o,5549
18
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/OutputControls.py,sha256=CbeDN9Vq-N_0sMCpkn5LrqWEvITBLmwuUPaXb7SSXtU,3554
19
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/PKDateUtilities.py,sha256=W4qF_Rr3f6ad5qbdfRu0MY4b2ScBkE1TzKtLn1Gw7MU,18263
20
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/PKGitFolderDownloader.py,sha256=470KcaCH1jTyJnTt3RmPhKrgHFOcYx42uPFL-NHM3AM,2988
21
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/PKJoinableQueue.py,sha256=WTfeqKh82_DcnSFYvkmx9WjM-RMeXBEmSmeYkD8e58E,5243
22
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/PKMultiProcessorClient.py,sha256=tUeZ7vQzs2SX7WbGfOGlq-SOLgKq2CZyeLPlsFbF6QI,13505
23
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/PKPickler.py,sha256=AkvQKQY-aowtu_TqAUg_7m_bTSxt7NvGYN4CkJymvmg,14369
24
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/PKTimer.py,sha256=tdJhODrs8zzxb12tc4BGzxGgY9xRWXNqtjYBD2PNOts,3433
25
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/Pikey.py,sha256=jgm9xLfRk4DCPLO5MgEui76IrMiPGUl2XvsnxO0qmJc,2813
26
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/Singleton.py,sha256=dbFRNdaVceUp7gb7Or7Xa2u3Id8H1Ce8-DyOG32zS-Q,4556
27
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/SuppressOutput.py,sha256=gjgByErulUjsZ1JVgkSNFmXC9qdkg4V0YrhT1tFmJuE,2004
28
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/System.py,sha256=UBM7A86NQhlRInCItb0mFs4plFE7ewXOXLn4KUtMiNg,4092
29
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/Telegram.py,sha256=AGR7LQCLGRId8S16bN6JA_YrYtjHJqpG6w4KvOVhHiw,15877
30
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/UserSubscriptions.py,sha256=1WOnVVnTm3of3kHAlYrAF_WGRqhXfe3pZu7cn2FbmGs,10800
31
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/Utils.py,sha256=7a19Gb1SPGPQxa6bhNW-DncvDpEVTdrCuDttAjV4uc8,24543
32
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/WorkflowManager.py,sha256=UdNZ_iGXLxO1K13Dv7do4w6ecyAoxaPlBLETFuXyGbc,9984
33
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/__init__.py,sha256=_bf6Nrili7HQ58pm31FmPx2WrxxofHv0EiUDWKO8zhQ,28
34
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/githubutilities.py,sha256=yRkJX2W3i3yCpFEUjEBGrk_2UX4vbscBvoJJoLDaD_k,3738
35
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/log.py,sha256=aDA5bd8L2bKAGLZzTFCD2gvXq6MbfceEkE-t_J89V40,16136
36
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/multiprocessing_logging.py,sha256=Lrzn9w4lsOWwUN7Z4lHoXkD7f8DNR8Za2S4zzAvUqvo,7430
37
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/squash.py,sha256=tNNLO2BuieZm9AlKzVYesY7p2yCUeJX1rtkZxbnlGRg,2864
38
+ PKDevTools-0.13.20250212.225.data/purelib/PKDevTools/classes/updater.py,sha256=yuHsGBVI-mm9_YrdCCRoKZ8HGro370UszM4s0zwZMC8,4846
39
+ PKDevTools-0.13.20250212.225.dist-info/LICENSE,sha256=wrl88eUZgDW6osq1UZIU4s4uZCgqGcLa46dS_sMVLik,1086
40
+ PKDevTools-0.13.20250212.225.dist-info/METADATA,sha256=FihdLg6KDxFm9K6cBZWdcYLwoUorCattUB7bRZjGOQs,6095
41
+ PKDevTools-0.13.20250212.225.dist-info/WHEEL,sha256=cRmSBGD-cl98KkuHMNqv9Ac9L9_VqTvcBYwpIvxN0cg,101
42
+ PKDevTools-0.13.20250212.225.dist-info/entry_points.txt,sha256=itdAnPuy8DO45uGuAEms0UJcoa2nGJVAUwm7NIL4-Yw,353
43
+ PKDevTools-0.13.20250212.225.dist-info/top_level.txt,sha256=WTig-LzPiEcyuyhbNRhJz1mX_RB-fojodPK48k3NmPg,11
44
+ PKDevTools-0.13.20250212.225.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- VERSION='0.13.20250211.223'
@@ -1,44 +0,0 @@
1
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/LICENSE.txt,sha256=wrl88eUZgDW6osq1UZIU4s4uZCgqGcLa46dS_sMVLik,1086
2
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/README.txt,sha256=9wsN1KwyM_gfEN7__AHy6iS-OMjN7dId3E2egalqIpw,4290
3
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/__init__.py,sha256=IFxLtOl_ylBuZt4nqrHkgZg4uuyeuLjHRaBgTuZey8U,1176
4
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/release.md,sha256=FfltoyIaP9mdbGYgPFnZyuI_rSjkuKn4NoyO4jNCqtI,1767
5
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/requirements.txt,sha256=771vBujug-uuZ5EiZhV9PHLtckaeDaMERaEGZPYzglY,384
6
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/Archiver.py,sha256=lT-ybDUYRBQ26WkCy53yf5f2iV6RJEtaiB9Lu8Lb0Og,6469
7
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/ColorText.py,sha256=UDqA229ujXwGDB1PkkMT-ZTu6VIWgZyIaq4XXPjFmsI,8789
8
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/Committer.py,sha256=L3sYt6a09T7sxapeFhAErVTe93HDZ8vbxsZREadsGJ8,4629
9
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/CookieHelper.py,sha256=b781bqVWVgIot9n-KhJja31Qrcwow4iVqpxeav30f4k,6376
10
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/DBManager.py,sha256=INQq6PMPdKjgBQskFG4sxIShGqWhZBb4Rly_lru-q7o,24256
11
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/Environment.py,sha256=xhKosR8odmENok7rZ8CwmSp_fn0d6RhnZY2bHUxlS1U,2030
12
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/Fetcher.py,sha256=LCBaakl5LcktasnO7rvrVY4AEOIl6fzeWPZPjkER2lo,9202
13
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/FunctionTimeouts.py,sha256=1HyzFWasJ2Rvhj8TJvGq3IcAg5naU3Fe-70LLRMkrfQ,2608
14
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/GmailReader.py,sha256=zRvLxIAbWPJ_UBeK4rHVmzgywY_4WDSAUpzSFLrLvJo,6978
15
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/MarketHours.py,sha256=8hpCEEAC3fMseURaaYkVGMm3Nbju3L_tdTOsMZsY7kg,2216
16
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/MenuOptions.py,sha256=4t60fcsvwM7-Yr-_xtH3eiu_ll4Rrb1ScafMt3BHQNU,11963
17
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/NSEMarketStatus.py,sha256=WTo9e3la8nAXt5EGfAIZWvMyHLCsiad7YZTKaNuzE7o,5549
18
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/OutputControls.py,sha256=CbeDN9Vq-N_0sMCpkn5LrqWEvITBLmwuUPaXb7SSXtU,3554
19
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/PKDateUtilities.py,sha256=W4qF_Rr3f6ad5qbdfRu0MY4b2ScBkE1TzKtLn1Gw7MU,18263
20
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/PKGitFolderDownloader.py,sha256=470KcaCH1jTyJnTt3RmPhKrgHFOcYx42uPFL-NHM3AM,2988
21
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/PKJoinableQueue.py,sha256=WTfeqKh82_DcnSFYvkmx9WjM-RMeXBEmSmeYkD8e58E,5243
22
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/PKMultiProcessorClient.py,sha256=tUeZ7vQzs2SX7WbGfOGlq-SOLgKq2CZyeLPlsFbF6QI,13505
23
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/PKPickler.py,sha256=AkvQKQY-aowtu_TqAUg_7m_bTSxt7NvGYN4CkJymvmg,14369
24
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/PKTimer.py,sha256=tdJhODrs8zzxb12tc4BGzxGgY9xRWXNqtjYBD2PNOts,3433
25
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/Pikey.py,sha256=jgm9xLfRk4DCPLO5MgEui76IrMiPGUl2XvsnxO0qmJc,2813
26
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/Singleton.py,sha256=dbFRNdaVceUp7gb7Or7Xa2u3Id8H1Ce8-DyOG32zS-Q,4556
27
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/SuppressOutput.py,sha256=gjgByErulUjsZ1JVgkSNFmXC9qdkg4V0YrhT1tFmJuE,2004
28
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/System.py,sha256=UBM7A86NQhlRInCItb0mFs4plFE7ewXOXLn4KUtMiNg,4092
29
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/Telegram.py,sha256=AGR7LQCLGRId8S16bN6JA_YrYtjHJqpG6w4KvOVhHiw,15877
30
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/UserSubscriptions.py,sha256=l_GhN9V1Z40ie1TAmRYR9Ce-00ZZSja8cVrs1AlbHwg,11000
31
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/Utils.py,sha256=7a19Gb1SPGPQxa6bhNW-DncvDpEVTdrCuDttAjV4uc8,24543
32
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/WorkflowManager.py,sha256=UdNZ_iGXLxO1K13Dv7do4w6ecyAoxaPlBLETFuXyGbc,9984
33
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/__init__.py,sha256=MMN-e0dgrdznzr-jTRiW4mqqvBIQmo_Rmv2hy-ETZi0,28
34
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/githubutilities.py,sha256=yRkJX2W3i3yCpFEUjEBGrk_2UX4vbscBvoJJoLDaD_k,3738
35
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/log.py,sha256=aDA5bd8L2bKAGLZzTFCD2gvXq6MbfceEkE-t_J89V40,16136
36
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/multiprocessing_logging.py,sha256=Lrzn9w4lsOWwUN7Z4lHoXkD7f8DNR8Za2S4zzAvUqvo,7430
37
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/squash.py,sha256=tNNLO2BuieZm9AlKzVYesY7p2yCUeJX1rtkZxbnlGRg,2864
38
- PKDevTools-0.13.20250211.223.data/purelib/PKDevTools/classes/updater.py,sha256=yuHsGBVI-mm9_YrdCCRoKZ8HGro370UszM4s0zwZMC8,4846
39
- PKDevTools-0.13.20250211.223.dist-info/LICENSE,sha256=wrl88eUZgDW6osq1UZIU4s4uZCgqGcLa46dS_sMVLik,1086
40
- PKDevTools-0.13.20250211.223.dist-info/METADATA,sha256=MTPZ6-2tvgs_2tafJ25IP05EsxytHU-JdSBtaCtrCAg,6095
41
- PKDevTools-0.13.20250211.223.dist-info/WHEEL,sha256=cRmSBGD-cl98KkuHMNqv9Ac9L9_VqTvcBYwpIvxN0cg,101
42
- PKDevTools-0.13.20250211.223.dist-info/entry_points.txt,sha256=itdAnPuy8DO45uGuAEms0UJcoa2nGJVAUwm7NIL4-Yw,353
43
- PKDevTools-0.13.20250211.223.dist-info/top_level.txt,sha256=WTig-LzPiEcyuyhbNRhJz1mX_RB-fojodPK48k3NmPg,11
44
- PKDevTools-0.13.20250211.223.dist-info/RECORD,,