Fix for compilation with Boost 1.60 -- major Python ImageCache overhaul #1300
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #1299
I don't know why it worked before or why it's broken now, but the just-release Boost 1.60 refused to build OIIO, and all the problems were in the ImageCache bindings. And they were weird, and in retrospect some of the calls would probably not ever have worked. So after a big refactor, we are building against Boost 1.60 and passing all tests. Luckily, the Python bindings for ImageCache are all but undocumented, and I suspect unused, so this late-stage overhaul should probably not hurt anyone. And I assure you, what we have before was very, very broken.
Along the way I noticed that ImageCache and TextureSystem both have their getattribute() methods curiously not marked as const! Sorry, that needs to be fixed. I need to backport all this to 1.6, and this would ordinarily break the "don't change API in a release branch", but in this case I think it needs to be done, and since 1.6 was only just considered released, I think the number of people inconvenienced will be minimal.