Skip to content

DOC: Add a release mode tag #20730

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

Merged
merged 7 commits into from
Sep 30, 2021
Merged

Conversation

QuLogic
Copy link
Member

@QuLogic QuLogic commented Jul 24, 2021

PR Summary

This adds a release mode tag, which encapsulates all the things we disabled for CircleCI, as well as other things we'd put in tagged release docs. It disables these by default, so local development will be quicker as well. And then it re-enables release mode when building devdocs.

This covers image compression, HiDPI images, the theme navigation, analytics, and plot directive formats.

PR Checklist

  • [n/a] Has pytest style unit tests (and pytest passes).
  • Is Flake 8 compliant (run flake8 on changed files to check).
  • [n/a] New features are documented, with examples if plot related.
  • Documentation is sphinx and numpydoc compliant (the docs should build without error).
  • Conforms to Matplotlib style conventions (install flake8-docstrings and run flake8 --docstring-convention=all).
  • [n/a] New features have an entry in doc/users/next_whats_new/ (follow instructions in README.rst there).
  • [n/a] API changes documented in doc/api/next_api_changes/ (follow instructions in README.rst there).

@QuLogic QuLogic added this to the v3.5.0 milestone Jul 24, 2021
@jklymak
Copy link
Member

jklymak commented Jul 24, 2021

Seems good, but can we document the tag in the developer guide so folks can build the full-res version?

@timhoffm
Copy link
Member

timhoffm commented Jul 25, 2021

I have a slight preference that default should be a full build and a "dev mode" tag should be used for the reduced version. This may also have the advantage that we could later add additional variants (e.g. maybe it may make sense to have different settings for CI and lokal builds). There can only be one release build but possibly different shortcut variations.

@QuLogic
Copy link
Member Author

QuLogic commented Jul 29, 2021

I suppose we could expand it, but I think the fast build is the one most developers would like by default. Most of the addons don't affect things for test builds (except maybe 2x images if you have a hidpi screen?)

@jklymak
Copy link
Member

jklymak commented Jul 29, 2021

I think there is a compelling argument to keep the HiDpi, as it does affect how the docs appear. I also think it is not a huge slowdown, if at all. (Perhaps a sad testament to how efficient we are otherwise if more than twice the i/o doesn't affect doc build speeds very much, or a happy testament to disk caching)

@timhoffm
Copy link
Member

timhoffm commented Jul 29, 2021

Perhaps a sad testament to how efficient we are otherwise

OT: It would be quite beneficial if somebody could dig into why the docs build takes so long. I started once but didn't have time to follow up. From my observation, more than have the time is spent in sphinx gallery, which may or may not be surprising because we have lots of examples. Part of that may fall back on us because the gallery has to generate several hundreds of figures, and we know we're quite slow with figure creation.

But it would be really helpful to see where the time goes and be able to speed up doc builds by that. (One a tangent, I'd also like to speed up incremental doc builds so that I can check faster what I'm writing.)

Could we e.g. get a small dev grant for someone to speedup or doc builds (maybe also by improving sphinx / sphinx-gallery)? IMHO that would be a significant improvement for the development process.

@timhoffm
Copy link
Member

I'm ok with sticking to the release mode tag. Agreed that we should keep HiDPI if it's not a significant performance impact.

@jklymak
Copy link
Member

jklymak commented Sep 23, 2021

Bumped to draft for now...

@timhoffm timhoffm merged commit 4f196f0 into matplotlib:master Sep 30, 2021
meeseeksmachine pushed a commit to meeseeksmachine/matplotlib that referenced this pull request Sep 30, 2021
@QuLogic QuLogic deleted the doc-release-mode branch September 30, 2021 06:36
QuLogic added a commit that referenced this pull request Sep 30, 2021
…730-on-v3.5.x

Backport PR #20730 on branch v3.5.x (DOC: Add a release mode tag)
tacaswell pushed a commit to tacaswell/matplotlib that referenced this pull request Oct 12, 2021
tacaswell pushed a commit that referenced this pull request Oct 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants