Pyflakes can't be sure that `locals` refers to the builtin locals function which returns the locals of the scope it is used in. It could have been overridden with another object which behaves differently.
Pyflakes could probably track the name and determine if it has been overridden in a sensible way, but there's no way for it to tell if the intended use is for the name to be injected externally somehow. -- You received this bug notification because you are a member of Divmod- dev, which is the registrant for Pyflakes. https://bugs.launchpad.net/bugs/872503 Title: Pyflakes is unable to recognize string substitution as a use Status in Pyflakes: New Bug description: See attached program for a trivial example of a common idiom: "my special string %(with_a_variable)s"%locals() I wouldn't expect pyflakes to know how to deal with an arbitrary dictionary in the right hand position, but the use of locals() means that certain variables are actually used! To manage notifications about this bug go to: https://bugs.launchpad.net/pyflakes/+bug/872503/+subscriptions -- Mailing list: https://launchpad.net/~divmod-dev Post to : [email protected] Unsubscribe : https://launchpad.net/~divmod-dev More help : https://help.launchpad.net/ListHelp

