-
Notifications
You must be signed in to change notification settings - Fork 192
/
find_version.py
35 lines (26 loc) · 1.09 KB
/
find_version.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import sys
import os
import re
project_root = os.path.dirname(__file__)
version_depthai_core_path = project_root + "/" + "depthai-core/CMakeLists.txt"
version_depthai_python_path = project_root + "/" + "CMakeLists.txt"
cmake_lists_txt_version_pattern = r'project[\s]*\([^Vv]*version[\s]+((\"(?P<ver1>\S*)\"|(?P<ver2>\S*)\s))'
def get_version_from_cmake_lists(path):
with open(path, 'r') as file:
content = file.read()
match = re.search(cmake_lists_txt_version_pattern, content, flags=re.IGNORECASE)
ver1 = match.group('ver1')
ver2 = match.group('ver2')
version = ver1
if ver1 == None:
version = ver2
return version
def get_package_version():
version_core = '0.0.0'
version_revision = '0'
version_core = get_version_from_cmake_lists(version_depthai_core_path)
version_revision = get_version_from_cmake_lists(version_depthai_python_path)
package_version = version_core + '.' + version_revision
return package_version
def get_package_dev_version(commit_hash):
return get_package_version() + ".dev0+" + commit_hash