Skip to content

Commit ca80bbb

Browse files
committed
update dependency update script
1 parent 7349738 commit ca80bbb

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

scripts/update_dependencies.py

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
#!/usr/bin/env python3
22

3-
import toml
43
import sys
54
import os
5+
import re
66

77
# Dependencies that use the first version number (opentelemetry-python)
88
PYTHON_CORE_DEPS = [
@@ -79,24 +79,29 @@ def main():
7979

8080
try:
8181
with open(pyproject_path, 'r') as f:
82-
data = toml.load(f)
82+
content = f.read()
8383

84-
deps = data.get('project', {}).get('dependencies', [])
8584
updated = False
8685

87-
for i, dep in enumerate(deps):
88-
dep_name = dep.split('==')[0].strip()
89-
90-
if dep_name in PYTHON_CORE_DEPS:
91-
deps[i] = f'{dep_name} == {otel_python_version}'
86+
# Update Python core dependencies
87+
for dep in PYTHON_CORE_DEPS:
88+
pattern = rf'"{re.escape(dep)} == [^"]*"'
89+
replacement = f'"{dep} == {otel_python_version}"'
90+
if re.search(pattern, content):
91+
content = re.sub(pattern, replacement, content)
9292
updated = True
93-
elif dep_name in CONTRIB_DEPS:
94-
deps[i] = f'{dep_name} == {otel_contrib_version}'
93+
94+
# Update contrib dependencies
95+
for dep in CONTRIB_DEPS:
96+
pattern = rf'"{re.escape(dep)} == [^"]*"'
97+
replacement = f'"{dep} == {otel_contrib_version}"'
98+
if re.search(pattern, content):
99+
content = re.sub(pattern, replacement, content)
95100
updated = True
96101

97102
if updated:
98103
with open(pyproject_path, 'w') as f:
99-
toml.dump(data, f)
104+
f.write(content)
100105
print(f'Dependencies updated to Python {otel_python_version} / Contrib {otel_contrib_version}')
101106
else:
102107
print('No OpenTelemetry dependencies found to update')

0 commit comments

Comments
 (0)