dayhoff-tools 1.1.20__tar.gz → 1.1.22__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 (32) hide show
  1. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/PKG-INFO +1 -1
  2. dayhoff_tools-1.1.22/dayhoff_tools/__init__.py +10 -0
  3. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/cli/utility_commands.py +7 -13
  4. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/deployment/processors.py +4 -0
  5. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/deployment/swarm.py +5 -0
  6. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/pyproject.toml +1 -1
  7. dayhoff_tools-1.1.20/dayhoff_tools/cli/__init__.py +0 -0
  8. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/README.md +0 -0
  9. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/chemistry/standardizer.py +0 -0
  10. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/chemistry/utils.py +0 -0
  11. {dayhoff_tools-1.1.20/dayhoff_tools → dayhoff_tools-1.1.22/dayhoff_tools/cli}/__init__.py +0 -0
  12. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/cli/cloud_commands.py +0 -0
  13. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/cli/main.py +0 -0
  14. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/cli/swarm_commands.py +0 -0
  15. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/deployment/base.py +0 -0
  16. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/deployment/deploy_aws.py +0 -0
  17. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/deployment/deploy_gcp.py +0 -0
  18. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/deployment/deploy_utils.py +0 -0
  19. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/deployment/job_runner.py +0 -0
  20. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/embedders.py +0 -0
  21. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/fasta.py +0 -0
  22. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/file_ops.py +0 -0
  23. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/h5.py +0 -0
  24. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/intake/gcp.py +0 -0
  25. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/intake/gtdb.py +0 -0
  26. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/intake/kegg.py +0 -0
  27. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/intake/mmseqs.py +0 -0
  28. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/intake/structure.py +0 -0
  29. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/intake/uniprot.py +0 -0
  30. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/logs.py +0 -0
  31. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/sqlite.py +0 -0
  32. {dayhoff_tools-1.1.20 → dayhoff_tools-1.1.22}/dayhoff_tools/warehouse.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: dayhoff-tools
3
- Version: 1.1.20
3
+ Version: 1.1.22
4
4
  Summary: Common tools for all the repos at Dayhoff Labs
5
5
  Author: Daniel Martin-Alarcon
6
6
  Author-email: dma@dayhofflabs.com
@@ -0,0 +1,10 @@
1
+ import importlib.metadata
2
+
3
+ try:
4
+ # The package name here should match the 'name' field in your pyproject.toml
5
+ __version__ = importlib.metadata.version("dayhoff-tools")
6
+ except importlib.metadata.PackageNotFoundError:
7
+ # This is a fallback for when the package might not be installed (e.g., running from source
8
+ # without installation, or during development). You can set it to None, "unknown",
9
+ # or handle it as you see fit.
10
+ __version__ = "unknown"
@@ -465,16 +465,7 @@ def install_dependencies(
465
465
  print(f"Running command: {BLUE}{' '.join(pip_install_cmd)}{RESET}")
466
466
  subprocess.run(pip_install_cmd, check=True)
467
467
 
468
- # Step 2b: Sync other dependency groups (e.g., dev)
469
- # We use --no-install-project here because the project itself was just installed.
470
- # --all-groups will ensure other groups like 'dev' are synced.
471
- print("Syncing other dependency groups (e.g., dev)...")
472
- sync_cmd = ["uv", "sync", "--all-groups", "--no-install-project"]
473
- print(f"Running command: {BLUE}{' '.join(sync_cmd)}{RESET}")
474
- subprocess.run(sync_cmd, check=True)
475
- print(
476
- "Project installed with 'full' extras and other dependency groups synced successfully."
477
- )
468
+ print("Project installed with 'full' extras successfully.")
478
469
  else:
479
470
  # Original behavior: Sync environment without installing the project
480
471
  print(
@@ -582,13 +573,16 @@ def update_dependencies(
582
573
  print(f"Updating {pyproject_path} version constraint...")
583
574
  try:
584
575
  content = pyproject_path.read_text()
576
+ package_name_re = re.escape(
577
+ "dayhoff-tools"
578
+ ) # Use the actual package name
585
579
  pattern = re.compile(
586
- "^(\s*['\"])dayhoff-tools(?:[><=~^][^'\"\[,]*)?(['\"].*)$", # Match rest of line
580
+ rf"^(\\s*['\"])({package_name_re})(\\[[^\\]]+\\])?(?:[^'\"[\,\\s]*)?(['\"].*)$",
587
581
  re.MULTILINE,
588
582
  )
589
- package_name = "dayhoff-tools"
583
+ # package_name variable is still 'dayhoff-tools'
590
584
  new_constraint_text = f">={locked_version}"
591
- replacement_string = f"\g<1>{package_name}{new_constraint_text}\g<2>"
585
+ replacement_string = rf"\\g<1>\\g<2>\\g<3>{new_constraint_text}\\g<4>"
592
586
  new_content, num_replacements = pattern.subn(
593
587
  replacement_string, content
594
588
  )
@@ -175,6 +175,10 @@ class MMSeqsProfileProcessor(Processor):
175
175
  else:
176
176
  self.mmseqs_args = default_mmseqs_args
177
177
 
178
+ # Log dayhoff-tools version
179
+ from dayhoff_tools import __version__
180
+
181
+ logger.info(f"dayhoff-tools version: {__version__}")
178
182
  logger.info(
179
183
  f"MMSeqsProfileProcessor initialized with query: {self.query_fasta_path}"
180
184
  )
@@ -439,6 +439,11 @@ class Operator:
439
439
  - For AWS spot instances, uses IMDSv2 to check instance-action metadata
440
440
  - For GCP preemptible VMs, checks both maintenance-event and preempted metadata
441
441
  """
442
+ logger.info(
443
+ "DEBUG: _check_for_termination has been temporarily disabled for testing."
444
+ )
445
+ return # DEBUG: Temporarily disable to test if this is causing premature shutdown
446
+
442
447
  while not _shutdown_requested.is_set():
443
448
  try:
444
449
  # Check AWS spot termination using IMDSv2 (token-based auth)
@@ -5,7 +5,7 @@ build-backend = "poetry.core.masonry.api"
5
5
 
6
6
  [project]
7
7
  name = "dayhoff-tools"
8
- version = "1.1.20"
8
+ version = "1.1.22"
9
9
  description = "Common tools for all the repos at Dayhoff Labs"
10
10
  authors = [
11
11
  {name = "Daniel Martin-Alarcon", email = "dma@dayhofflabs.com"}
File without changes
File without changes