Message 171808 - Python tracker (original) (raw)

I've updated logging as discussed in this issue, except for the removal of the two calls to eval() in logging.config. I propose to resolve that as follows:

  1. Add the Evaluator implemented in the Gist I linked to to ast.py.

  2. Expose a function 'ast.lookup_eval(source, context, allow_import)' which basically just does a

    return Evaluator(context, allow_import).evaluate(source, '')

  3. Add docs and tests to ast.rst and test_ast.py.

  4. Update logging.config to call ast.lookup_eval() instead of eval().

Please comment if you see any problems with this, otherwise I will go ahead and implement this change within the next week or so.