wizata-dsapi 1.2.26__tar.gz → 1.2.28__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 (54) hide show
  1. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/PKG-INFO +1 -1
  2. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/dataframe_toolkit.py +4 -4
  3. wizata_dsapi-1.2.28/wizata_dsapi/version.py +1 -0
  4. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/wizata_dsapi_client.py +21 -0
  5. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi.egg-info/PKG-INFO +1 -1
  6. wizata_dsapi-1.2.26/wizata_dsapi/version.py +0 -1
  7. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/LICENSE.txt +0 -0
  8. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/README.rst +0 -0
  9. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/setup.cfg +0 -0
  10. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/setup.py +0 -0
  11. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/__init__.py +0 -0
  12. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/api_config.py +0 -0
  13. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/api_dto.py +0 -0
  14. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/api_interface.py +0 -0
  15. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/bucket.py +0 -0
  16. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/business_label.py +0 -0
  17. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/context.py +0 -0
  18. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/datapoint.py +0 -0
  19. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/datastore.py +0 -0
  20. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/ds_dataframe.py +0 -0
  21. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/dsapi_json_encoder.py +0 -0
  22. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/evaluation.py +0 -0
  23. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/execution.py +0 -0
  24. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/experiment.py +0 -0
  25. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/group_system.py +0 -0
  26. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/ilogger.py +0 -0
  27. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/insight.py +0 -0
  28. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/mlmodel.py +0 -0
  29. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/model_toolkit.py +0 -0
  30. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/models/__init__.py +0 -0
  31. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/models/common.py +0 -0
  32. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/paged_query_result.py +0 -0
  33. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/pipeline.py +0 -0
  34. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/pipeline_image.py +0 -0
  35. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/plot.py +0 -0
  36. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/plots/__init__.py +0 -0
  37. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/plots/common.py +0 -0
  38. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/request.py +0 -0
  39. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/script.py +0 -0
  40. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/scripts/__init__.py +0 -0
  41. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/scripts/common.py +0 -0
  42. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/solution_component.py +0 -0
  43. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/streamlit_utils.py +0 -0
  44. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/template.py +0 -0
  45. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/trigger.py +0 -0
  46. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/twin.py +0 -0
  47. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/twinregistration.py +0 -0
  48. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/wizard_function.py +0 -0
  49. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/wizard_request.py +0 -0
  50. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi/words.py +0 -0
  51. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi.egg-info/SOURCES.txt +0 -0
  52. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi.egg-info/dependency_links.txt +0 -0
  53. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi.egg-info/requires.txt +0 -0
  54. {wizata_dsapi-1.2.26 → wizata_dsapi-1.2.28}/wizata_dsapi.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wizata_dsapi
3
- Version: 1.2.26
3
+ Version: 1.2.28
4
4
  Summary: Wizata Data Science Toolkit
5
5
  Author: Wizata S.A.
6
6
  Author-email: info@wizata.com
@@ -148,7 +148,7 @@ def df_from_dict(df_dict: dict) -> pandas.DataFrame:
148
148
  raise ValueError('if using a multi-line dataframe please provide a Timestamp column')
149
149
 
150
150
  if "Timestamp" not in df_dict:
151
- df_dict["Timestamp"] = [datetime.utcnow()]
151
+ df_dict["Timestamp"] = [datetime.now(timezone.utc)]
152
152
  else:
153
153
  timestamp_col = []
154
154
  for timestamp_ms in df_dict["Timestamp"]:
@@ -208,7 +208,7 @@ def verify_relative_datetime(formatted_string: str) -> bool:
208
208
  def generate_epoch(formatted_string: str, now=None):
209
209
  """
210
210
  generate an epoch based on a formatted string (e.g. now+6h) - see documentation.
211
- * now = datetime.utcnow() can be override
211
+ * now = datetime.now(timezone.utc) can be override
212
212
  * units = 'y' = 365d, 'M'=30d , 'w'=7d , 'd'=24h , 'h'=60m, 'm'=60s , 's'=1000'ms'
213
213
  * operators = '+' or '-'
214
214
  :param formatted_string: formatted epoch representation using relative time.
@@ -216,7 +216,7 @@ def generate_epoch(formatted_string: str, now=None):
216
216
  :return: epoch in ms.
217
217
  """
218
218
  if now is None:
219
- now = datetime.utcnow()
219
+ now = datetime.now(timezone.utc)
220
220
 
221
221
  pattern = r'^now([+-]\d+([yMwdHhms]{1,2}))?$'
222
222
  match = re.match(pattern, formatted_string)
@@ -274,5 +274,5 @@ def generate_unique_key() -> str:
274
274
  - 11 char for 'animal_'
275
275
  - 3 car for number XXX
276
276
  """
277
- return f"{datetime.now().strftime('%y%m%d')}_{random.choice(colors).lower()}_" \
277
+ return f"{datetime.now(timezone.utc).strftime('%y%m%d')}_{random.choice(colors).lower()}_" \
278
278
  f"{random.choice(animals).lower()}_{random.randint(1, 999)}"
@@ -0,0 +1 @@
1
+ __version__ = "1.2.28"
@@ -15,6 +15,7 @@ import os
15
15
  import types
16
16
  import wizata_dsapi
17
17
  import urllib.parse
18
+ import base64
18
19
 
19
20
  import string
20
21
  import random
@@ -221,6 +222,26 @@ class WizataDSAPIClient(ApiInterface):
221
222
  self._process_request(method='GET', route='whoami/')
222
223
  return self.roles, self.twins
223
224
 
225
+ def who_am_i(self):
226
+ """
227
+ decrypt current JWT token used to get information about current user.
228
+ :return:
229
+ """
230
+ token = self.__token()
231
+ if token is None:
232
+ return {}
233
+ parts = token.split('.')
234
+ if len(parts) != 3:
235
+ return None # not a JWT
236
+ _, payload_b64, _ = parts
237
+ def _b64url_decode(input_str: str) -> bytes:
238
+ rem = len(input_str) % 4
239
+ if rem:
240
+ input_str += '=' * (4 - rem)
241
+ return base64.urlsafe_b64decode(input_str.encode('utf-8'))
242
+ payload_json = json.loads(_b64url_decode(payload_b64).decode('utf-8'))
243
+ return payload_json
244
+
224
245
  def _process_request(self,
225
246
  method: str,
226
247
  route: str,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wizata-dsapi
3
- Version: 1.2.26
3
+ Version: 1.2.28
4
4
  Summary: Wizata Data Science Toolkit
5
5
  Author: Wizata S.A.
6
6
  Author-email: info@wizata.com
@@ -1 +0,0 @@
1
- __version__ = "1.2.26"
File without changes
File without changes
File without changes
File without changes