Comment 4 for bug 1844368

Revision history for this message
Tim Burke (1-tim-z) wrote :

We already swap out some stuff [1] and register new config loaders [2] with paste. I think we can work around this entirely within Swift.

I share Dmitriy's concern about existing, running clusters, though -- we've allowed interpolation (if only out of ignorance), so the safest assumption is that somebody has deployed a system that uses it. I don't want to break them, so using raw=True doesn't seem right.

At the same time, it looks like py3's ConfigParser most-closely maps to py2's SafeConfigParser, and the more-forgiving interpolation from py2's ConfigParser is just gone.

I think what I proposed at https://review.opendev.org/#/c/685455/ should be a recent work-around?

Sorry; at least as it stands now, it does mean that any configs written out with the "1%%" workaround are going to break on upgrade, though.

[1] https://github.com/openstack/swift/blob/2.22.0/swift/common/wsgi.py#L72
[2] https://github.com/openstack/swift/blob/2.22.0/swift/common/wsgi.py#L101-L102