-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
Update Sphinx with C++11 literals fix and add fmt::literals API docs #207
Conversation
Update Sphinx with C++11 literals fix and add fmt::literals API docs
Thanks for another great PR. Nice that Sphinx has accepted your implementation of UDL support so quickly. I was going to explain how to use a specific version of Sphinx, but I see you've figured out this already. |
It's a lucky coincidence that Sphinx's C++ domain is being actively developed right now, so the PR got merged right away. Heads up: Looks like the Sphinx version on Travis wasn't updated, so the auto-uploaded docs look a bit weird. |
Yeah, I'm looking into it right now. |
Looks like pip does something crazy here: it installs version 1.3.1 of sphinx when installing dependencies for version 1.4a0.dev-20151014:
(from https://travis-ci.org/cppformat/cppformat/jobs/85336329) I'll try upgrading pip on Travis because the version used there is pretty old. |
From the log you linked:
It installs both uppercase Sorry about all this trouble. Between the macro stringification and this, It seems like every commit I make shakes out some crazy bug somewhere. |
Good catch. This could be the problem.
No problems, it's good to shake out the obscure bugs every now and then =. The documentation build script did have some issues which I'm fixing in the process. Upgrading pip turned out to be a bit of a pain though. |
Are you sure that this if LooseVersion(pip.__version__) < LooseVersion('1.5.4'):
check_call(['pip', 'install', '--upgrade', 'pip']) I don't see it in the log.
even older 1.0, so technically it should still be lower than 1.5.4 but maybe the |
You are right, it isn't. The |
Anyway, pip is up-to-date now. Now
|
Reported to sphinx-doc/sphinx#2086. |
The documentation build has been fixed. Two minor issues though:
|
Missing anchors for
|
Right, I will look into the issue with UDLs in Breathe when time permits. For the second it's probably make sense to open an issue in Sphinx if they don't have one already. Anyway, I've opened #213 so that this is not forgotten as this PR has been closed. |
I thought I was close before so I had another look at Breathe and I found the issue. I made a quick fix and it works, but it doesn't follow the factory pattern like the rest of the code so it looks like a bit of a hack. I'm not very good with factories. I'm not sure what would be the proper solution within that framework, so I'll leave it to you for a proper fix. The comments in the commit point to the cause of the issue: it's just that the It fixes the UDL issue and also resolves all those |
I can't say that I fully understand all the factory business in Breathe myself, so I opened a PR. Hopefully @michaeljones can guide us there. |
And thanks for taking time to debug this and providing the fix, @dean0x7d. |
Sphinx 1.3.1 can't parse user-defined literals. This updates the doc build script to the (currently) latest state on the Sphinx master branch which has the fix.
As for the
fmt::literals
API docs, the examples do most of the explaining. They mirror thefmt::format
andfmt::args
examples right above them. The description text just points to the equivalent function. I really couldn't think of anything to write in the description that would be clearer than the example.