"tests/python/vscode:/vscode.git/clone" did not exist on "2df85862a51711b49abd95b8797900a6511599d3"
update_version.py 1.54 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
"""
This is the global script that set the version information of DGL-LifeSci.
This script runs and update all the locations that related to versions
List of affected files:
- app-root/python/dgllife/__init__.py
- app-root/conda/dgllife/meta.yaml
"""
import os
import re

Mufei Li's avatar
Mufei Li committed
11
__version__ = "0.2.2"
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
print(__version__)

# Implementations
def update(file_name, pattern, repl):
    update = []
    hit_counter = 0
    need_update = False
    for l in open(file_name):
        result = re.findall(pattern, l)
        if result:
            assert len(result) == 1
            hit_counter += 1
            if result[0] != repl:
                l = re.sub(pattern, repl, l)
                need_update = True
                print("%s: %s->%s" % (file_name, result[0], repl))
            else:
                print("%s: version is already %s" % (file_name, repl))

        update.append(l)
    if hit_counter != 1:
        raise RuntimeError("Cannot find version in %s" % file_name)

    if need_update:
        with open(file_name, "w") as output_file:
            for l in update:
                output_file.write(l)

def main():
    curr_dir = os.path.dirname(os.path.abspath(os.path.expanduser(__file__)))
    proj_root = os.path.abspath(os.path.join(curr_dir, ".."))
    # python path
    update(os.path.join(proj_root, "python/dgllife/libinfo.py"),
           r"(?<=__version__ = \")[.0-9a-z]+", __version__)
    # conda
    update(os.path.join(proj_root, "conda/dgllife/meta.yaml"),
           "(?<=version: \")[.0-9a-z]+", __version__)

if __name__ == '__main__':
    main()