3434import os
3535import re
3636import sys
37- import warnings
3837from collections import OrderedDict
3938from subprocess import PIPE , STDOUT , Popen
4039from typing import Any , Dict
4342PY2 = sys .version_info [0 ] == 2
4443
4544if PY2 :
46- import ConfigParser as configparser
45+ import ConfigParser as configparser # pylint: disable=import-error
4746else :
4847 import configparser # type: ignore
4948
50- __version__ = '2.0.1 '
49+ __version__ = '3.0 '
5150
5251CONFIG_FILENAMES = ['verchew.ini' , '.verchew.ini' , '.verchewrc' , '.verchew' ]
5352
@@ -197,21 +196,7 @@ def parse_config(path):
197196 data [section ][name ] = value
198197
199198 for name in data :
200- if 'versions' in data [name ]:
201- warnings .warn (
202- "'versions' is deprecated, use 'version' instead" , DeprecationWarning
203- )
204- version = data [name ].pop ('versions' ) or ""
205- else :
206- version = data [name ].get ('version' ) or ""
207-
208- if ' | ' in version :
209- warnings .warn (
210- "'|' is deprecated, use '||' to separate multiple versions" ,
211- DeprecationWarning ,
212- )
213- version = version .replace (' | ' , ' || ' )
214-
199+ version = data [name ].get ('version' ) or ""
215200 data [name ]['version' ] = version
216201 data [name ]['patterns' ] = [v .strip () for v in version .split ('||' )]
217202
@@ -227,7 +212,7 @@ def check_dependencies(config):
227212
228213 for pattern in settings ['patterns' ]:
229214 if match_version (pattern , output ):
230- show (_ ("~" ) + " MATCHED: {0}" .format (pattern ))
215+ show (_ ("~" ) + " MATCHED: {0}" .format (pattern or "<anything>" ))
231216 success .append (_ ("~" ))
232217 break
233218 else :
@@ -237,9 +222,14 @@ def check_dependencies(config):
237222 else :
238223 if QUIET :
239224 print (
240- "Unmatched {0} version: {1}" .format (name , settings ['version' ])
225+ "Unmatched {0} version: {1}" .format (
226+ name , settings ['version' ] or "<anything>"
227+ )
241228 )
242- show (_ ("x" ) + " EXPECTED: {0}" .format (settings ['version' ]))
229+ show (
230+ _ ("x" )
231+ + " EXPECTED: {0}" .format (settings ['version' ] or "<anything>" )
232+ )
243233 success .append (_ ("x" ))
244234 if settings .get ('message' ):
245235 show (_ ("*" ) + " MESSAGE: {0}" .format (settings ['message' ]))
@@ -266,6 +256,9 @@ def get_version(program, argument=None):
266256
267257
268258def match_version (pattern , output ):
259+ if "not found" in output :
260+ return False
261+
269262 regex = pattern .replace ('.' , r'\.' ) + r'(\b|/)'
270263
271264 log .debug ("Matching %s: %s" , regex , output )
0 commit comments