datatailr 0.1.71__tar.gz → 0.1.72__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 (41) hide show
  1. {datatailr-0.1.71/src/datatailr.egg-info → datatailr-0.1.72}/PKG-INFO +1 -1
  2. {datatailr-0.1.71 → datatailr-0.1.72}/pyproject.toml +1 -1
  3. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/scheduler/batch.py +22 -6
  4. {datatailr-0.1.71 → datatailr-0.1.72/src/datatailr.egg-info}/PKG-INFO +1 -1
  5. {datatailr-0.1.71 → datatailr-0.1.72}/src/sbin/datatailr_run.py +2 -5
  6. {datatailr-0.1.71 → datatailr-0.1.72}/LICENSE +0 -0
  7. {datatailr-0.1.71 → datatailr-0.1.72}/README.md +0 -0
  8. {datatailr-0.1.71 → datatailr-0.1.72}/setup.cfg +0 -0
  9. {datatailr-0.1.71 → datatailr-0.1.72}/setup.py +0 -0
  10. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/__init__.py +0 -0
  11. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/acl.py +0 -0
  12. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/blob.py +0 -0
  13. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/build/__init__.py +0 -0
  14. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/build/image.py +0 -0
  15. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/dt_json.py +0 -0
  16. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/errors.py +0 -0
  17. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/excel/__init__.py +0 -0
  18. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/excel/addin.py +0 -0
  19. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/group.py +0 -0
  20. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/logging.py +0 -0
  21. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/scheduler/__init__.py +0 -0
  22. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/scheduler/arguments_cache.py +0 -0
  23. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/scheduler/base.py +0 -0
  24. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/scheduler/batch_decorator.py +0 -0
  25. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/scheduler/constants.py +0 -0
  26. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/scheduler/schedule.py +0 -0
  27. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/scheduler/utils.py +0 -0
  28. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/tag.py +0 -0
  29. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/user.py +0 -0
  30. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/utils.py +0 -0
  31. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/version.py +0 -0
  32. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr/wrapper.py +0 -0
  33. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr.egg-info/SOURCES.txt +0 -0
  34. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr.egg-info/dependency_links.txt +0 -0
  35. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr.egg-info/entry_points.txt +0 -0
  36. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr.egg-info/requires.txt +0 -0
  37. {datatailr-0.1.71 → datatailr-0.1.72}/src/datatailr.egg-info/top_level.txt +0 -0
  38. {datatailr-0.1.71 → datatailr-0.1.72}/src/sbin/datatailr_run_app.py +0 -0
  39. {datatailr-0.1.71 → datatailr-0.1.72}/src/sbin/datatailr_run_batch.py +0 -0
  40. {datatailr-0.1.71 → datatailr-0.1.72}/src/sbin/datatailr_run_excel.py +0 -0
  41. {datatailr-0.1.71 → datatailr-0.1.72}/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.71
3
+ Version: 0.1.72
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.71"
7
+ version = "0.1.72"
8
8
  description = "Ready-to-Use Platform That Drives Business Insights"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -294,7 +294,7 @@ class BatchJob:
294
294
  env = {
295
295
  "DATATAILR_BATCH_ID": str(self.dag.id),
296
296
  "DATATAILR_JOB_ID": str(self.__id),
297
- "DATATAILR_JOB_NAME": self.name,
297
+ "DATATAILR_JOB_NAME": f"{self.dag.name}[{self.__id}]",
298
298
  }
299
299
  self.entrypoint(env=env)
300
300
  else:
@@ -479,10 +479,26 @@ class Batch(Job):
479
479
 
480
480
  def prepare_args(self) -> None:
481
481
  def arg_name(arg: Union[BatchJob, str]) -> str:
482
- return arg.name if isinstance(arg, BatchJob) else arg
482
+ return f"{self.name}[{arg.id}]" if isinstance(arg, BatchJob) else arg
483
+
484
+ def adjust_mapping(mapping: Dict[str, str]) -> Dict[str, str]:
485
+ result = {}
486
+ for k, v in mapping.items():
487
+ if isinstance(v, BatchJob):
488
+ result[k] = f"{self.name}[{v.id}]"
489
+ elif isinstance(v, str):
490
+ job = self.get_job_by_name(v)
491
+ if job is not None:
492
+ result[k] = f"{self.name}[{job.id}]"
493
+ else:
494
+ result[k] = v
495
+ else:
496
+ raise TypeError(
497
+ f"Unsupported type in argument mapping: {type(v)} for key {k}"
498
+ )
499
+ return result
483
500
 
484
501
  def merged(dst: dict[str, str], src: dict[str, str]) -> dict[str, str]:
485
- # copy so we don't mutate the original mapping
486
502
  out = dict(dst)
487
503
  seen_vals = set(out.values())
488
504
  for k, v in src.items():
@@ -492,12 +508,12 @@ class Batch(Job):
492
508
  return out
493
509
 
494
510
  args = {
495
- j.name: merged(
496
- j.argument_mapping, {k: arg_name(v) for k, v in j.args.items()}
511
+ f"{self.name}[{j.id}]": merged(
512
+ adjust_mapping(j.argument_mapping),
513
+ {j.argument_mapping.get(k, k): arg_name(v) for k, v in j.args.items()},
497
514
  )
498
515
  for j in self.__jobs
499
516
  }
500
-
501
517
  __ARGUMENTS_CACHE__.add_arguments(self.id, args)
502
518
 
503
519
  def save(self) -> Tuple[bool, str]:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: datatailr
3
- Version: 0.1.71
3
+ Version: 0.1.72
4
4
  Summary: Ready-to-Use Platform That Drives Business Insights
5
5
  Author-email: Datatailr <info@datatailr.com>
6
6
  License-Expression: MIT
@@ -93,11 +93,8 @@ def create_user_and_group() -> Tuple[str, str]:
93
93
  | stat.S_IXGRP
94
94
  )
95
95
 
96
- if os.path.exists(f"/home/{user}"):
97
- os.chmod(f"/home/{user}", permissions)
98
-
99
- if os.path.exists(f"/home/{user}/tmp/.dt"):
100
- os.chmod(f"/home/{user}/tmp/.dt", permissions)
96
+ os.makedirs(f"/home/{user}/tmp/.dt", exist_ok=True)
97
+ os.chmod(f"/home/{user}/tmp/.dt", permissions)
101
98
 
102
99
  return user, group
103
100
 
File without changes
File without changes
File without changes
File without changes