Skip to content

Dvi caching #10268

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

Closed
wants to merge 7 commits into from
Closed

Dvi caching #10268

wants to merge 7 commits into from

Conversation

jkseppan
Copy link
Member

@jkseppan jkseppan commented Jan 19, 2018

PR Summary

On top of #10236 and #10238, this adds caching of pre-parsed dvi files, removing the need to parse them again on a later date. This should improve the speed of the pdf and svg backends when text.usetex is enabled and some of the strings have been rendered in the past, e.g. when redoing the same plot as before or changing only some of the strings.

PR Checklist

  • Has Pytest style unit tests
  • Code is PEP 8 compliant
  • New features are documented, with examples if plot related
  • Documentation is sphinx and numpydoc compliant
  • Added an entry to doc/users/next_whats_new/ if major new feature (follow instructions in README.rst there)
  • Documented in doc/api/api_changes.rst if API changed in a backward-incompatible way

And allow batching them. This commit does not yet use the batching
but makes it possible.
- synchronous=normal (fewer disk writes, still safe in WAL mode)
- foreign key enforcement
- log sql statements at debug level
- use sqlite3.Row (enables accessing columns by name)
This should improve performance if there is a significant startup
cost to running kpsewhich, as reported by some users in matplotlib#4880.
Expose the scale attribute, allow overriding the widths, add
some convenience methods.
Along with methods to add and query the tables.
Rename the Dvi class to _DviReader and use it only for storing
the files into the cache. The new Dvi class reads from the cache,
after calling _DviReader to insert the file into it.
@jkseppan
Copy link
Member Author

jkseppan commented Oct 6, 2018

Closing as abandoned.

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.

2 participants