> Skip> I'll see what I can come up with and submit a patch. > > Okay, this seems too simple. ;-) There's no need to compile the message and > module arguments to filterwarnings. Just store them as strings and call > re.match() later with the appropriate args. That takes care of that one. I > think use of the -W command line flag is infrequent enough that it doesn't > really matter that _processoptions, _setoption and -getcategory might get > called at startup. Most of the time sys.warnoptions will be an empty list, > so _setoption and _getcategory won't be called. OK. Please report old and new startup times! > Aside: Why are message and module names given on the command line treated as > literal strings while message and module names which are passed directly to > filterwarnings() treated as regular expressions? If they were treated as > regular expressions, the calls to re.escape() could be removed and > _setoptions wouldn't use re either. Um, I don't remember. It would seem to be useful, wouldn't it? The only reason I can come up with is that for dotted names, the dot would have to be escaped on the command line, and escaping something on the command line is painful because \ is also a shell escape character, so you'd have to escape the escape. --Guido van Rossum (home page: http://www.python.org/~guido/)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4