# HG changeset patch # User Jeff Hammel # Date 1307596663 25200 # Node ID 12de7b1bf303c321bbd4f976fb837f08bcd4b779 # Parent 43cb882c3b72d6817b538f058153dec17120a2c5 stub interpolation of wrapper options diff -r 43cb882c3b72 -r 12de7b1bf303 pyloader/factory.py --- a/pyloader/factory.py Wed Jun 08 21:58:18 2011 -0700 +++ b/pyloader/factory.py Wed Jun 08 22:17:43 2011 -0700 @@ -105,6 +105,7 @@ config = {} interpolated = set() seen = set() + object_string = '%(object)s' # create a hash of section names names = {} @@ -126,13 +127,28 @@ wrapper, _path = path.split(':', 1) # TODO: could interpolate wrapper if wrapper in names: + + # TODO: will be correct for + # [foo:bar:%(here)s/objects.py:MyClass] + # but not for + # [foo:bar:fleem] + # in the latter case, just use fleem + wrapped_name = section + if wrapper not in config: wrapper_section = names[wrapper] if wrapper_section in seen: pass # TODO create_section(wrapper_section, iniconfig[wrapper_section]) - wrapper_options = config[wrapper] + wrapper_options = config[wrapper].copy() + # TODO interpolate wrapper_options + if 'args' in wrapper_options: + args = wrapper_options['args'][:] + wrapper_options['args'] = args + if 'kwargs' in wrapper_options: + kwargs = wrapper_options['kwargs'].copy() + wrapper_options['kwargs'] = kwargs path = _path # make a dict for the section