- Weekly scheduled testing, to catch breaking changes in unpinned dependencies
- docutils version pin to allow use of verison 0.18.x
- sphinx version pinning - only the latest version of sphinx will now be fully supported, but previous versions will work if sphinx dependencies (i.e. jinja2) are managed correctly. This is inline with the approach at sphinx
- tests that were specific to older versions of sphinx and pygments
- jinja2 version pinning, as this is now pinned in latest version of sphinx
- Testing for sphinx 5
- Tesing for python 3.10
- Fixed parsing of MyST content, where first line was being stripped
- Typos in documentation
- Failing regression tests
- Testing to use an up-to-date pytest version
- Testing for python 3.6 and sphinx versions 2 and 4 (see #164). Note that the package will likely continue to work fine with these, but this won't be assured by tests
- Inserting CSS at the start of the static path list, so that it can be overwritten
- Assume light theme is the default, even when browser setting prefers dark. Necessary when most sphinx themes don't set
data-theme
.
- Testing for Python 3.9 and a few pygments versions
- Dark theme selectors
- Bumped docutils dependency to 0.17
- Remaining string formatting to use f-strings
- π Added default value for
exports
in JavaScript. Removes error thatexports
is not defined on page
- π Use of
sphinx
HTML assets policy to decide whether include assets
- π Added new sphinx config
sphinx_tabs_disable_css_loading
option to disable css from loading
- π Update for compatibility with Sphinx 4
- π Tabs with nested content becoming hidden on click
- π Added new sphinx config option
sphinx_tabs_disable_tab_closing
to allow new tab closing functionality to be disabled globally (better backwards compatibility with sphinx-tabs<2)
- Nested parsing of tab labels, to support use of reST roles within label text
- Parsing tabs with unsupported builders, including for pdf
- Test for successful pdf building using
rinohtype
β»οΈ Refactor to reduce JS/CSS payload size and improve accessibility:
- Removed semantic-ui assets
- Removed unused 'sphinx_tabs_nowarn' sphinx option
- JS/CSS assets are now copied across by sphinx when builing, rather than being copied by the extension
- Changed tab HTML to use tab roles
- Changed tab label colour, to increase contrast with background
- Added ARIA labels for tabs and panels
- Added tabindex attributes to allow users to focus and switch tabs using a keyboard
- Added a margin below images inside tab content
β¨ New features:
- Selecting an open tab now closes the tabs panel
- The last selected group tab persists between pages (if the browser supports session storage)
β»οΈ Major refactor of tabs, group-tabs and code-tabs (thanks to @foster999):
- Removes hard-coded reStructuredText for group and code tabs, so that this works with other parsers (inc
MyST Markdown
) - group-tab directive now subclasses
TabDirective
to remove duplicated run code - likewise,
code-tab
now subclassesgroup-tab
TabDirective
andTabsDirective
now subclassSphinxDirective
for easier access to directiveenv
π§ͺ testing infrastructure has now fully moved from unittest to pytest
β¨ New features:
- Can now pass
code-tabs
with a second argument (allowing whitespace) to provide an alternative tab label code-tabs
can now use custom lexers, which are added to the sphinx app inconf.py
π FIX: Remove app.add_javascript
use for sphinx v2
sphinx-tabs
has now moved to the EBP organisation π
- Python < 3.5 and Sphinx < 2 support dropped
- Lots of code and CI restructuring (see EBP Migration (#76))
- Replace
add_javascript
byadd_js
for sphinx>=3 (removes warning!), thanks to @Daltz333
- Marked the extension as parallel safe (#46)
- Fix bug in Internet Explorer (#33)
- Drop support for Python 3.4 (as lxml no longer supports it)
- Support for Sphinx 2
- Update to Semantic UI 2.4.1
- Fix oversize tabs in Sphinx 2 (#38)
- Various bug fixes
- Fix group tabs behaviour (#31)
- Fix copying of tab assets (JS and CSS) when module is installed as a python egg
- Make tabs wrap on narrow screens (#30)
- Add support for nested tabs (#29)
- Add support for :linenos: to code tabs (#22)
- Improve fallback for non-HTML builders (#19)
- Add spelling builder to list of builders (#20)
- Fix naming a tab as a number (#24)
- Fix css files not being removed when tabs are not used on a page
- Now require sphinx>=1.4
- Fix issues with script and css includes on readthedocs (#17)
- Don't emit an additional error in the copy assets handler if the build process fails
- Add sphinx_tabs_nowarn option to disable warning about incompatible builder. Useful when running sphinx-build with the -W flag
- Fix broken javascript file inclusion
- Insert CSS and JS files after custom ones add in conf.py
- Add support for dirhtml builder
- Allow multiple group tabs with the same name (the ordering of the tabs is used to determine the group ids)
- Use b64 encoding of group id for group tabs to avoid illegal character in CSS class
- Fix issue with multiple words in tab titles
- Add support for markup in tab titles
- Fix graphical glitches caused by illegal characters in group tab ids
- Fix possible exception when adding/removing CSS/JS files from the context
- Initial version