Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

[project]
name = "deployml-core"
version = "0.0.1"
version = "0.0.42"
description = "Infra for academia"
authors = [
{name = "Drew Hoang", email = "codentell@gmail.com"},
Expand Down
12 changes: 12 additions & 0 deletions src/deployml/cli/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -460,6 +460,18 @@ def get_version():
from importlib.metadata import version
return version("deployml-core")
except Exception:
try:
result = subprocess.run(
["git", "describe", "--tags", "--abbrev=0"],
capture_output=True,
text=True,
cwd=Path(__file__).parent.parent.parent.parent
)
if result.returncode == 0:
git_version = result.stdout.strip().lstrip("v")
return git_version
except Exception:
pass
return "version unknown"

cli = typer.Typer(invoke_without_command=True)
Expand Down
16 changes: 13 additions & 3 deletions src/deployml/diagnostics/doctor.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,14 @@
from typing import Dict, List, Optional, Tuple
import json
import importlib
import pkg_resources
try:
from importlib.metadata import version as get_package_version_metadata
except ImportError:
# Fallback for Python < 3.8
try:
from importlib_metadata import version as get_package_version_metadata
except ImportError:
get_package_version_metadata = None
from dataclasses import dataclass
from enum import Enum
import re
Expand Down Expand Up @@ -190,8 +197,11 @@ def _check_optional_packages(self):
def _get_package_version(self, package_name: str) -> Optional[str]:
"""Get version of installed package"""
try:
return pkg_resources.get_distribution(package_name).version
except:
if get_package_version_metadata:
return get_package_version_metadata(package_name)
else:
return None
except Exception:
return None

def _check_docker(self):
Expand Down