datatailr 0.1.48__tar.gz → 0.1.49__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.

Potentially problematic release.


This version of datatailr might be problematic. Click here for more details.

Files changed (39) hide show
  1. {datatailr-0.1.48/src/datatailr.egg-info → datatailr-0.1.49}/PKG-INFO +1 -1
  2. {datatailr-0.1.48 → datatailr-0.1.49}/pyproject.toml +1 -1
  3. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/scheduler/arguments_cache.py +2 -3
  4. {datatailr-0.1.48 → datatailr-0.1.49/src/datatailr.egg-info}/PKG-INFO +1 -1
  5. {datatailr-0.1.48 → datatailr-0.1.49}/src/sbin/datatailr_run.py +10 -1
  6. {datatailr-0.1.48 → datatailr-0.1.49}/src/sbin/datatailr_run_app.py +7 -3
  7. {datatailr-0.1.48 → datatailr-0.1.49}/LICENSE +0 -0
  8. {datatailr-0.1.48 → datatailr-0.1.49}/README.md +0 -0
  9. {datatailr-0.1.48 → datatailr-0.1.49}/setup.cfg +0 -0
  10. {datatailr-0.1.48 → datatailr-0.1.49}/setup.py +0 -0
  11. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/__init__.py +0 -0
  12. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/acl.py +0 -0
  13. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/blob.py +0 -0
  14. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/build/__init__.py +0 -0
  15. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/build/image.py +0 -0
  16. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/dt_json.py +0 -0
  17. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/errors.py +0 -0
  18. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/excel.py +0 -0
  19. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/group.py +0 -0
  20. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/logging.py +0 -0
  21. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/scheduler/__init__.py +0 -0
  22. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/scheduler/base.py +0 -0
  23. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/scheduler/batch.py +0 -0
  24. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/scheduler/batch_decorator.py +0 -0
  25. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/scheduler/constants.py +0 -0
  26. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/scheduler/schedule.py +0 -0
  27. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/scheduler/utils.py +0 -0
  28. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/user.py +0 -0
  29. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/utils.py +0 -0
  30. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/version.py +0 -0
  31. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr/wrapper.py +0 -0
  32. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr.egg-info/SOURCES.txt +0 -0
  33. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr.egg-info/dependency_links.txt +0 -0
  34. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr.egg-info/entry_points.txt +0 -0
  35. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr.egg-info/requires.txt +0 -0
  36. {datatailr-0.1.48 → datatailr-0.1.49}/src/datatailr.egg-info/top_level.txt +0 -0
  37. {datatailr-0.1.48 → datatailr-0.1.49}/src/sbin/datatailr_run_batch.py +0 -0
  38. {datatailr-0.1.48 → datatailr-0.1.49}/src/sbin/datatailr_run_excel.py +0 -0
  39. {datatailr-0.1.48 → datatailr-0.1.49}/src/sbin/datatailr_run_service.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: datatailr
3
- Version: 0.1.48
3
+ Version: 0.1.49
4
4
  Summary: Ready-to-Use Platform That Drives Business Insights
5
5
  Author-email: Datatailr <info@datatailr.com>
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "datatailr"
7
- version = "0.1.48"
7
+ version = "0.1.49"
8
8
  description = "Ready-to-Use Platform That Drives Business Insights"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -115,11 +115,10 @@ class ArgumentsCache:
115
115
  :param job: Name of the job.
116
116
  :param result: Result of the batch job.
117
117
  """
118
- path = f"/tmp/datatailr/batch/results/{batch_run_id}/{job}.pkl"
118
+ path = f"/tmp/datatailr/batch/results/{batch_run_id}_{job}.pkl"
119
119
  if self.use_persistent_cache and isinstance(job, str):
120
120
  self._add_to_persistent_cache(path, result)
121
121
  else:
122
- os.makedirs(os.path.dirname(path), exist_ok=True)
123
122
  with open(path, "wb") as f:
124
123
  pickle.dump(result, f)
125
124
 
@@ -131,7 +130,7 @@ class ArgumentsCache:
131
130
  :param job: Name of the job.
132
131
  :return: Result of the batch job.
133
132
  """
134
- path = f"/tmp/datatailr/batch/results/{batch_run_id}/{job}.pkl"
133
+ path = f"/tmp/datatailr/batch/results/{batch_run_id}_{job}.pkl"
135
134
  if self.use_persistent_cache and isinstance(job, str):
136
135
  return self._get_from_persistent_cache(path)
137
136
  else:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: datatailr
3
- Version: 0.1.48
3
+ Version: 0.1.49
4
4
  Summary: Ready-to-Use Platform That Drives Business Insights
5
5
  Author-email: Datatailr <info@datatailr.com>
6
6
  License-Expression: MIT
@@ -85,11 +85,20 @@ def run_command_as_user(command: str | list, user: str, env_vars: dict):
85
85
  """
86
86
  Run a command as a specific user with the given environment variables.
87
87
  """
88
+ if os.path.isfile("/etc/python-site-location"):
89
+ with open("/etc/python-site-location") as f:
90
+ python_site = f.read().rstrip()
91
+ else:
92
+ # make this empty string once file creation is merged into build/Dockerfile
93
+ python_site = (
94
+ "/opt/cpython-3.12.11-linux-x86_64-gnu/lib/python3.12/site-packages"
95
+ )
96
+
88
97
  if isinstance(command, list):
89
98
  command = " ".join(command)
90
99
  env_vars = {
91
100
  "PATH": get_env_var("PATH", ""),
92
- "PYTHONPATH": get_env_var("PYTHONPATH", ""),
101
+ "PYTHONPATH": get_env_var("PYTHONPATH", "") + ":" + python_site,
93
102
  } | env_vars
94
103
 
95
104
  env_kv = [f"{k}={v}" for k, v in env_vars.items()]
@@ -13,7 +13,8 @@
13
13
  import os
14
14
  import sys
15
15
  import runpy
16
- from importlib.resources import files
16
+ import inspect
17
+ import importlib
17
18
 
18
19
  from datatailr.logging import DatatailrLogger
19
20
 
@@ -29,9 +30,12 @@ def run():
29
30
  "Environment variable 'DATATAILR_ENTRYPOINT' is not in the format 'module_name:file_name'."
30
31
  )
31
32
 
32
- module_name, file_name = entrypoint.split(":")
33
+ module_name, func_name = entrypoint.split(":")
33
34
 
34
- script = files(module_name).joinpath(file_name)
35
+ # consider using ast
36
+ module = importlib.import_module(module_name)
37
+ function = getattr(module, func_name)
38
+ script = inspect.getfile(function)
35
39
  sys.argv = ["streamlit", "run", str(script), *sys.argv[1:]]
36
40
  logger.info(f"Running entrypoint: {entrypoint}")
37
41
  runpy.run_module("streamlit", run_name="__main__")
File without changes
File without changes
File without changes
File without changes