44import re
55import subprocess
66import sys
7- from distutils .version import StrictVersion
7+
8+ from packaging .version import Version
89
910PROJECT_DIRECTORY = os .path .join (os .path .dirname (__file__ ), ".." )
1011
1112
1213def main (argv ):
1314 source_dir = argv [1 ]
14- old_version = StrictVersion (argv [2 ])
15+ old_version = Version (argv [2 ])
1516 dot_at = 1
1617 if len (argv ) > 3 :
1718 dot_at = int (argv [3 ])
18- old_version_tuple = old_version .version
19+ old_version_tuple = old_version .release
1920 new_version_tuple = list (old_version_tuple )
2021 for i in range (len (new_version_tuple )):
2122 if i < dot_at :
@@ -27,7 +28,7 @@ def main(argv):
2728 new_version = "." .join (map (str , new_version_tuple ))
2829
2930 history_path = os .path .join (PROJECT_DIRECTORY , "HISTORY.rst" )
30- with open (history_path , "r" ) as f :
31+ with open (history_path ) as f :
3132 history = f .read ()
3233
3334 def extend (from_str , line ):
@@ -47,21 +48,12 @@ def extend(from_str, line):
4748 f .write (history )
4849
4950 source_mod_path = os .path .join (PROJECT_DIRECTORY , source_dir , "__init__.py" )
50- with open (source_mod_path , "r" ) as f :
51+ with open (source_mod_path ) as f :
5152 mod = f .read ()
52- mod = re .sub (" __version__ = ' [\d\.]+'" , "__version__ = '%s .dev0'" % new_version , mod , 1 )
53+ mod = re .sub (r' __version__ = " [\d\.]+"' , f "__version__ = '{ new_version } .dev0'" , mod , 1 )
5354 with open (source_mod_path , "w" ) as f :
5455 mod = f .write (mod )
55- shell (
56- [
57- "git" ,
58- "commit" ,
59- "-m" ,
60- "Starting work on %s" % new_version ,
61- "HISTORY.rst" ,
62- "%s/__init__.py" % source_dir ,
63- ]
64- )
56+ shell (["git" , "commit" , "-m" , f"Starting work on { new_version } " , "HISTORY.rst" , f"{ source_dir } /__init__.py" ])
6557
6658
6759def shell (cmds , ** kwds ):
0 commit comments