-
Notifications
You must be signed in to change notification settings - Fork 409
Code reorganization #2829
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Code reorganization #2829
Conversation
This PR seems to change the location of all the headers, meaning:
Is there a strong motivation for this reorg, as the downsides seem extreme compared to the upgrade to folder tidiness? Or perhaps this wasn't meant to go into production? |
@jtramm - Yeah this just caused me a bit of a headache. Now I have software with old style xtensor includes. If I check in a change to move to the new ones, I'll break builds of my software on platforms that have the older version of xtensor installed. In order to continue building, I expect I'll need to do some sort of
Which doesn't feel great. Or I guess I can write my own wrapper headers that do that. Typically, if I was undertaking this sort of a reorg in a project I manage, I'd go about it by leaving the old headers around for a few cycles with a deprecation warning and having them include the relocated headers. That way old code isn't broken but new code gets nudged into converting to the new style. On the other hand, the major version here is 0, so, fair to do this I guess, from a purely semver perspective. |
Oh, wait, I actually can't even do that, because the header defining |
Yeah, not sure why this MR needed to be done. Just wanted to upgrade to 0.26.0 for compatibility with newer clang versions and now everything is broken. |
Brings xtensor-python up to date with latest xtensor release (0.26.0), where xtensor-stack/xtensor#2829 reorganized the include directory. --------- Co-authored-by: Daniel Jacobs <[email protected]> Co-authored-by: Johan Mabille <[email protected]>
It's pretty wild this was merged without any response to the concerns above. Obviously you can do what you want, but wow, this is a major breaking change that isn't documented anywhere! The changelog just says "Code reorganization" which is not helpful at all. |
Checklist
Description