-
-
Notifications
You must be signed in to change notification settings - Fork 5.4k
DOC: Document the toolchain and its roadmap. #9500
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks Paul, very nice overview. The developer guide could be a good place for this, or it could be included as a separate page in the refguide next to the roadmap. I don't have a strong preference.
doc/source/dev/toolchain.rst
Outdated
C Language Standards | ||
-------------------- | ||
[*NOTE: I'm unaware of any official SciPy decisions on the support of C standards. | ||
This table shows what it could look like.*] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's no official decision anywhere. It has been C89 forever, because that was the only option given the Windows situation.
It's tricky to make such decisions in advance (roadmap style). The thing is that we're evaluating such things by the impact on users and developers. Which is usually a case-by-case thing. E.g. when we decided to not ship without SSE2 support anymore, we just needed data on how many users as % of total user base was still running on older hardware without SSE2 support.
That said, document what we would like to see is very useful - let's just not call it a decision.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#9915 (comment) has a suggestion on C++ standard as well
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added a C++ standard statement, and some brief language to the effect that these are less "official" decisions and more "guidelines," especially for future adoptions of more modern standards
Okay, now that I've just worked on gh-9537 I do have a preference: in the refguide makes the most sense to me. |
I referred to the content in this PR a couple of times already, it is really useful. I suggest to move it to the refguide and merge it; we can then more easily incorporate new content as soon as it comes up. |
@rgommers Now that you've referenced it, I'll have to spend some time this weekend thinking about it and finish it... |
I tried to take care of some of the low-hanging reviewer requested fixes here to breathe a little life into this nice doc improvement. Tried to replace some of the "NOTE" sections where we weren't sure with just general guidance language. Paul can always adjust my commit as appropriate. So, the todo is basically just:
For other improvements, it seems like Ralf may be just happy to have this ready to update, so perhaps we don't have to be super picky once the relocation is done? |
taking the milestone off, that was just a reminder - this isn't really related to a release, we just point to the online devdocs/latest version anyway |
Thanks @tylerjereddy and @rgommers for the comments. Yes, I do have some local unpushed changes, but I'm incorporating Tyler's changes. |
It should show up somewhere in http://scipy.github.io/devdocs/#developer-s-guide. I would suggest calling this "Toolchain Roadmap and putting it right below "Detailed SciPy Roadmap" |
so it would go in |
Added some documentation for the toolchain needed to build/test/document SciPy. In particular, document the roadmap for the Python and C language standards, with a little rationale.
Rebased on master, file moved to new location, updated and reformatted. Suitable for re-reviewing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great. Only a number of local comments left. The whole doc reads well.
Fixed some version numbers. Added additional references. Reformatted to stay under 80 characters per line (where possible). Updated the BLAS/LAPACK description.
Looks great, time to merge this. Thanks a lot Paul! |
=============== ======== ========================================== | ||
mpmath Recent http://mpmath.org/ | ||
scikit-umfpack Recent https://pypi.org/project/scikit-umfpack/ | ||
=============== ======== ========================================== |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rgommers should I add scikit-sparse?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably a good idea. Actually, could you run it by the mailing list first? We didn't have any discussion on this. My impression is that it should be fine, however for an indirect GPL dependency it's always good to have a few more eyes ....
Added some documentation for the toolchain needed to build/test/document
SciPy. In particular, document the roadmap for the Python and C language
standards, with a little rationale.
It is WIP for several reasons:
It spite of the above caveats, it contains information I would have found useful when starting work on SciPy. So the PR is here to complement the roadmap gh-9489 and SciPy-dev py2.7/3.x discussions.