Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-sphinx-inline-tabs for 
openSUSE:Factory checked in at 2026-01-07 16:02:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-sphinx-inline-tabs (Old)
 and      /work/SRC/openSUSE:Factory/.python-sphinx-inline-tabs.new.1928 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-sphinx-inline-tabs"

Wed Jan  7 16:02:06 2026 rev:4 rq:1325686 version:2025.12.21.14

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-sphinx-inline-tabs/python-sphinx-inline-tabs.changes
      2023-05-15 16:54:40.224288987 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-sphinx-inline-tabs.new.1928/python-sphinx-inline-tabs.changes
    2026-01-07 16:02:47.914573158 +0100
@@ -1,0 +2,8 @@
+Mon Jan  5 13:41:40 UTC 2026 - Markéta Machová <[email protected]>
+
+- Update to 2025.12.21.14:
+  * Docutils 0.22 compatibility
+  * Modernise project metadata
+  * Add basic tests for HTML markup
+
+-------------------------------------------------------------------

Old:
----
  sphinx_inline_tabs-2023.4.21.tar.gz

New:
----
  sphinx_inline_tabs-2025.12.21.14.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-sphinx-inline-tabs.spec ++++++
--- /var/tmp/diff_new_pack.lUBUdU/_old  2026-01-07 16:02:48.662604292 +0100
+++ /var/tmp/diff_new_pack.lUBUdU/_new  2026-01-07 16:02:48.666604458 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-sphinx-inline-tabs
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,10 +16,8 @@
 #
 
 
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%global skip_python2 1
 Name:           python-sphinx-inline-tabs
-Version:        2023.4.21
+Version:        2025.12.21.14
 Release:        0
 Summary:        Add inline tabbed content to your Sphinx documentation
 License:        MIT
@@ -40,7 +38,7 @@
 Add inline tabbed content to your Sphinx documentation.
 
 %prep
-%setup -q -n sphinx_inline_tabs-%{version}
+%autosetup -p1 -n sphinx_inline_tabs-%{version}
 
 %build
 %pyproject_wheel
@@ -49,6 +47,10 @@
 %pyproject_install
 %python_expand %fdupes %{buildroot}%{$python_sitelib}
 
+%check
+# there are tests, but they test older Sphinx and older docutils than we have
+# https://github.com/pradyunsg/sphinx-inline-tabs/issues/55
+
 %files %{python_files}
 %doc README.md
 %license LICENSE

++++++ sphinx_inline_tabs-2023.4.21.tar.gz -> 
sphinx_inline_tabs-2025.12.21.14.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sphinx_inline_tabs-2023.4.21/.pre-commit-config.yaml 
new/sphinx_inline_tabs-2025.12.21.14/.pre-commit-config.yaml
--- old/sphinx_inline_tabs-2023.4.21/.pre-commit-config.yaml    2023-03-29 
00:48:54.163109300 +0200
+++ new/sphinx_inline_tabs-2025.12.21.14/.pre-commit-config.yaml        
2025-12-21 14:28:48.888907200 +0100
@@ -1,6 +1,6 @@
 repos:
   - repo: https://github.com/psf/black
-    rev: 23.1.0
+    rev: 23.7.0
     hooks:
       - id: black
 
@@ -10,7 +10,7 @@
       - id: isort
 
   - repo: https://github.com/PyCQA/flake8
-    rev: 6.0.0
+    rev: 6.1.0
     hooks:
       - id: flake8
 
@@ -31,14 +31,15 @@
     rev: 6.3.0
     hooks:
       - id: pydocstyle
-        exclude: noxfile\.py|docs/conf\.py
+        exclude: noxfile\.py|docs/conf\.py|tests/docsets/.+
 
   - repo: https://github.com/asottile/blacken-docs
-    rev: 1.13.0
+    rev: 1.15.0
     hooks:
       - id: blacken-docs
 
   - repo: https://github.com/pre-commit/mirrors-prettier
-    rev: v3.0.0-alpha.6
+    rev: v3.0.1
     hooks:
       - id: prettier
+        exclude: tests/test_.+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sphinx_inline_tabs-2023.4.21/.readthedocs.yml 
new/sphinx_inline_tabs-2025.12.21.14/.readthedocs.yml
--- old/sphinx_inline_tabs-2023.4.21/.readthedocs.yml   2021-08-17 
10:19:55.068378000 +0200
+++ new/sphinx_inline_tabs-2025.12.21.14/.readthedocs.yml       2025-12-21 
14:28:48.889382100 +0100
@@ -1,14 +1,15 @@
 version: 2
 
 build:
-  image: latest
+  os: ubuntu-24.04
+  tools:
+    python: "3.8"
 
 formats: [pdf]
 sphinx:
   configuration: docs/conf.py
 
 python:
-  version: 3.8
   install:
     - method: pip
       path: .
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sphinx_inline_tabs-2023.4.21/PKG-INFO 
new/sphinx_inline_tabs-2025.12.21.14/PKG-INFO
--- old/sphinx_inline_tabs-2023.4.21/PKG-INFO   1970-01-01 01:00:00.000000000 
+0100
+++ new/sphinx_inline_tabs-2025.12.21.14/PKG-INFO       1970-01-01 
01:00:00.000000000 +0100
@@ -1,18 +1,20 @@
-Metadata-Version: 2.1
+Metadata-Version: 2.4
 Name: sphinx_inline_tabs
-Version: 2023.4.21
+Version: 2025.12.21.14
 Summary: Add inline tabbed content to your Sphinx documentation.
-Home-page: https://github.com/pradyunsg/sphinx-inline-tabs
-Author: Pradyun Gedam
-Author-email: [email protected]
+Author-email: Pradyun Gedam <[email protected]>
 Requires-Python: >=3.8
 Description-Content-Type: text/markdown
-Requires-Dist: sphinx >= 3
+License-Expression: MIT
+License-File: LICENSE
+Requires-Dist: sphinx>=3
 Requires-Dist: myst-parser ; extra == "doc"
 Requires-Dist: furo ; extra == "doc"
 Requires-Dist: pytest ; extra == "test"
 Requires-Dist: pytest-cov ; extra == "test"
 Requires-Dist: pytest-xdist ; extra == "test"
+Project-URL: Documentation, https://sphinx-inline-tabs.readthedocs.io
+Project-URL: Homepage, https://github.com/pradyunsg/sphinx-inline-tabs
 Provides-Extra: doc
 Provides-Extra: test
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sphinx_inline_tabs-2023.4.21/pyproject.toml 
new/sphinx_inline_tabs-2025.12.21.14/pyproject.toml
--- old/sphinx_inline_tabs-2023.4.21/pyproject.toml     2021-08-17 
10:19:55.069514300 +0200
+++ new/sphinx_inline_tabs-2025.12.21.14/pyproject.toml 2025-12-21 
14:28:48.889827300 +0100
@@ -1,20 +1,25 @@
 [build-system]
-requires = ["flit_core >=2,<4"]
+requires = ["flit_core>=3.11,<4"]
 build-backend = "flit_core.buildapi"
 
-[tool.flit.metadata]
-module = "sphinx_inline_tabs"
-author = "Pradyun Gedam"
-author-email = "[email protected]"
-home-page = "https://github.com/pradyunsg/sphinx-inline-tabs";
-description-file = "README.md"
+[project]
+name = "sphinx_inline_tabs"
+license = "MIT"
+license-files = ["LICENSE"]
+readme = "README.md"
+authors = [{name = "Pradyun Gedam", email = "[email protected]"}]
 requires-python = ">=3.8"
-requires = ["sphinx >= 3"]
+dependencies = ["sphinx>=3"]
+dynamic = ["version", "description"]
 
-[tool.flit.metadata.requires-extra]
+[project.optional-dependencies]
 test = [
   "pytest",
   "pytest-cov",
   "pytest-xdist",
 ]
 doc = ["myst-parser", "furo"]
+
+[project.urls]
+Homepage = "https://github.com/pradyunsg/sphinx-inline-tabs";
+Documentation = "https://sphinx-inline-tabs.readthedocs.io";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/src/sphinx_inline_tabs/__init__.py 
new/sphinx_inline_tabs-2025.12.21.14/src/sphinx_inline_tabs/__init__.py
--- old/sphinx_inline_tabs-2023.4.21/src/sphinx_inline_tabs/__init__.py 
2023-04-21 22:25:10.071886800 +0200
+++ new/sphinx_inline_tabs-2025.12.21.14/src/sphinx_inline_tabs/__init__.py     
2025-12-21 14:30:25.915319000 +0100
@@ -2,21 +2,24 @@
 
 import os
 
-__version__ = "2023.04.21"
+from sphinx.application import Sphinx
+
+__version__ = "2025.12.21.14"
 __all__ = ["setup"]
 
 
-def setup(app):
+def setup(app: Sphinx):
     """Entry point for sphinx theming."""
     app.require_sphinx("3.0")
 
     # We do imports from Sphinx, after validating the Sphinx version
-    from ._impl import TabDirective, TabHtmlTransform, _TabInput, _TabLabel
+    from ._impl import TabContainer, TabDirective, TabHtmlTransform, TabInput, 
TabLabel
 
     app.add_directive("tab", TabDirective)
     app.add_post_transform(TabHtmlTransform)
-    app.add_node(_TabInput, html=(_TabInput.visit, _TabInput.depart))
-    app.add_node(_TabLabel, html=(_TabLabel.visit, _TabLabel.depart))
+    app.add_node(TabInput, html=(TabInput.visit, TabInput.depart))
+    app.add_node(TabLabel, html=(TabLabel.visit, TabLabel.depart))
+    app.add_node(TabContainer, xml=(lambda _, __: None, lambda _, __: None))
 
     # Include our static assets
     static_dir = os.path.join(os.path.dirname(__file__), "static")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/src/sphinx_inline_tabs/_impl.py 
new/sphinx_inline_tabs-2025.12.21.14/src/sphinx_inline_tabs/_impl.py
--- old/sphinx_inline_tabs-2023.4.21/src/sphinx_inline_tabs/_impl.py    
2023-03-29 00:47:44.824484600 +0200
+++ new/sphinx_inline_tabs-2025.12.21.14/src/sphinx_inline_tabs/_impl.py        
2025-12-21 14:28:48.890517000 +0100
@@ -23,25 +23,33 @@
         attributes.pop("classes")
         attributes.pop("names")
         attributes.pop("dupnames")
-        attributes.pop("backrefs")
+        attributes.pop("backrefs", None)
+
+        if node._endtag:
+            text = translator.starttag(node, node._tagname, **attributes)
+        else:
+            text = translator.emptytag(node, node._tagname, **attributes)
 
-        text = translator.starttag(node, node.tagname, **attributes)
         translator.body.append(text.strip())
 
     @staticmethod
     def depart(translator, node):
-        if node.endtag:
-            translator.body.append(f"</{node.tagname}>")
+        if node._endtag:
+            translator.body.append(f"</{node._tagname}>")
+
+
+class TabInput(_GeneralHTMLTagElement):
+    """Represents a radio button for a tab."""
 
+    _tagname = "input"
+    _endtag = False
 
-class _TabInput(_GeneralHTMLTagElement):
-    tagname = "input"
-    endtag = False
 
+class TabLabel(_GeneralHTMLTagElement):
+    """Represents a label that holds the title for a tab."""
 
-class _TabLabel(_GeneralHTMLTagElement):
-    tagname = "label"
-    endtag = True
+    _tagname = "label"
+    _endtag = True
 
 
 class TabDirective(SphinxDirective):
@@ -162,12 +170,12 @@
             title, content = node.children
 
             # <input>, for storing state in radio boxes.
-            input_node = _TabInput(
+            input_node = TabInput(
                 type="radio", ids=[tab_id], name=tab_set_name, 
classes=["tab-input"]
             )
 
             # <label>
-            label_node = _TabLabel(
+            label_node = TabLabel(
                 "", *title.children, **{"for": tab_id}, classes=["tab-label"]
             )
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sphinx_inline_tabs-2023.4.21/tests/conftest.py 
new/sphinx_inline_tabs-2025.12.21.14/tests/conftest.py
--- old/sphinx_inline_tabs-2023.4.21/tests/conftest.py  1970-01-01 
01:00:00.000000000 +0100
+++ new/sphinx_inline_tabs-2025.12.21.14/tests/conftest.py      2023-07-09 
16:55:39.630362500 +0200
@@ -0,0 +1,3 @@
+"""Configuration for pytest."""
+
+pytest_plugins = "sphinx.testing.fixtures"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/basic/conf.py 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/basic/conf.py
--- old/sphinx_inline_tabs-2023.4.21/tests/docsets/basic/conf.py        
1970-01-01 01:00:00.000000000 +0100
+++ new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/basic/conf.py    
2023-07-09 15:56:55.432146800 +0200
@@ -0,0 +1,4 @@
+extensions = [
+    "myst_parser",
+    "sphinx_inline_tabs",
+]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/basic/index.rst 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/basic/index.rst
--- old/sphinx_inline_tabs-2023.4.21/tests/docsets/basic/index.rst      
1970-01-01 01:00:00.000000000 +0100
+++ new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/basic/index.rst  
2023-07-09 14:59:58.467199600 +0200
@@ -0,0 +1,6 @@
+Heading
+=======
+
+.. toctree::
+    markdown
+    restructuredtext
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/basic/markdown.md 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/basic/markdown.md
--- old/sphinx_inline_tabs-2023.4.21/tests/docsets/basic/markdown.md    
1970-01-01 01:00:00.000000000 +0100
+++ new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/basic/markdown.md        
2023-07-09 15:56:35.906697500 +0200
@@ -0,0 +1,9 @@
+# Markdown
+
+```{tab} Tab 1
+This is tab 1
+```
+
+```{tab} Tab 2
+This is tab 2
+```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/basic/restructuredtext.rst 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/basic/restructuredtext.rst
--- old/sphinx_inline_tabs-2023.4.21/tests/docsets/basic/restructuredtext.rst   
1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/basic/restructuredtext.rst   
    2023-07-09 15:56:38.669077900 +0200
@@ -0,0 +1,10 @@
+reStructuredText
+================
+
+.. tab:: Tab 1
+
+    This is tab 1
+
+.. tab:: Tab 2
+
+      This is tab 2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/multiple/conf.py 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/multiple/conf.py
--- old/sphinx_inline_tabs-2023.4.21/tests/docsets/multiple/conf.py     
1970-01-01 01:00:00.000000000 +0100
+++ new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/multiple/conf.py 
2023-07-09 15:57:22.512615700 +0200
@@ -0,0 +1,4 @@
+extensions = [
+    "myst_parser",
+    "sphinx_inline_tabs",
+]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/multiple/index.rst 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/multiple/index.rst
--- old/sphinx_inline_tabs-2023.4.21/tests/docsets/multiple/index.rst   
1970-01-01 01:00:00.000000000 +0100
+++ new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/multiple/index.rst       
2023-07-09 15:57:22.513634000 +0200
@@ -0,0 +1,6 @@
+Heading
+=======
+
+.. toctree::
+    markdown
+    restructuredtext
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/multiple/markdown.md 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/multiple/markdown.md
--- old/sphinx_inline_tabs-2023.4.21/tests/docsets/multiple/markdown.md 
1970-01-01 01:00:00.000000000 +0100
+++ new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/multiple/markdown.md     
2023-07-09 15:57:49.191341000 +0200
@@ -0,0 +1,19 @@
+# Markdown
+
+```{tab} Tab 1
+This is tab 1
+```
+
+```{tab} Tab 2
+This is tab 2
+```
+
+This is some separator content.
+
+```{tab} Tab 1
+This is tab 1
+```
+
+```{tab} Tab 2
+This is tab 2
+```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/multiple/restructuredtext.rst 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/multiple/restructuredtext.rst
--- 
old/sphinx_inline_tabs-2023.4.21/tests/docsets/multiple/restructuredtext.rst    
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/docsets/multiple/restructuredtext.rst
    2023-07-09 15:58:00.334071900 +0200
@@ -0,0 +1,20 @@
+reStructuredText
+================
+
+.. tab:: Tab 1
+
+    This is tab 1
+
+.. tab:: Tab 2
+
+      This is tab 2
+
+This is some separator content.
+
+.. tab:: Tab 1
+
+    This is tab 1
+
+.. tab:: Tab 2
+
+      This is tab 2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_basic_html_markdown_.html
 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_basic_html_markdown_.html
--- 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_basic_html_markdown_.html
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_basic_html_markdown_.html
        2023-07-09 16:55:11.500547200 +0200
@@ -0,0 +1,30 @@
+<div class="body" role="main">
+  <section id="markdown">
+    <h1>
+      Markdown
+      <a class="headerlink" href="#markdown" title="Permalink to this heading">
+        ¶
+      </a>
+    </h1>
+    <div class="tab-set docutils">
+      <input checked="True" class="tab-input" id="tab-set--0-input--1" 
name="tab-set--0" type="radio"/>
+      <label class="tab-label" for="tab-set--0-input--1">
+        Tab 1
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 1
+        </p>
+      </div>
+      <input class="tab-input" id="tab-set--0-input--2" name="tab-set--0" 
type="radio"/>
+      <label class="tab-label" for="tab-set--0-input--2">
+        Tab 2
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 2
+        </p>
+      </div>
+    </div>
+  </section>
+</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_basic_html_restructuredtext_.html
 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_basic_html_restructuredtext_.html
--- 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_basic_html_restructuredtext_.html
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_basic_html_restructuredtext_.html
        2023-07-09 16:55:11.624540000 +0200
@@ -0,0 +1,30 @@
+<div class="body" role="main">
+  <section id="restructuredtext">
+    <h1>
+      reStructuredText
+      <a class="headerlink" href="#restructuredtext" title="Permalink to this 
heading">
+        ¶
+      </a>
+    </h1>
+    <div class="tab-set docutils">
+      <input checked="True" class="tab-input" id="tab-set--0-input--1" 
name="tab-set--0" type="radio"/>
+      <label class="tab-label" for="tab-set--0-input--1">
+        Tab 1
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 1
+        </p>
+      </div>
+      <input class="tab-input" id="tab-set--0-input--2" name="tab-set--0" 
type="radio"/>
+      <label class="tab-label" for="tab-set--0-input--2">
+        Tab 2
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 2
+        </p>
+      </div>
+    </div>
+  </section>
+</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_basic_xml_markdown_.xml
 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_basic_xml_markdown_.xml
--- 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_basic_xml_markdown_.xml
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_basic_xml_markdown_.xml
  2023-07-09 17:06:37.487752400 +0200
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE document PUBLIC "+//IDN docutils.sourceforge.net//DTD Docutils 
Generic//EN//XML" "http://docutils.sourceforge.net/docs/ref/docutils.dtd";>
+<!-- Generated by Docutils 0.20.1 -->
+<document 
source="/Users/pradyunsg/Developer/github/sphinx-inline-tabs/tests/docsets/basic/markdown.md"
 xmlns:c="https://www.sphinx-doc.org/"; 
xmlns:changeset="https://www.sphinx-doc.org/"; 
xmlns:citation="https://www.sphinx-doc.org/"; 
xmlns:cpp="https://www.sphinx-doc.org/"; 
xmlns:index="https://www.sphinx-doc.org/"; 
xmlns:js="https://www.sphinx-doc.org/"; xmlns:math="https://www.sphinx-doc.org/"; 
xmlns:py="https://www.sphinx-doc.org/"; xmlns:rst="https://www.sphinx-doc.org/"; 
xmlns:std="https://www.sphinx-doc.org/";>
+    <section ids="markdown" names="markdown">
+        <title>Markdown</title>
+        <label>Tab 1</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 1</paragraph>
+        </container>
+        <label>Tab 2</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 2</paragraph>
+        </container>
+    </section>
+</document>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_basic_xml_restructuredtext_.xml
 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_basic_xml_restructuredtext_.xml
--- 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_basic_xml_restructuredtext_.xml
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_basic_xml_restructuredtext_.xml
  2023-07-09 17:06:22.347443800 +0200
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE document PUBLIC "+//IDN docutils.sourceforge.net//DTD Docutils 
Generic//EN//XML" "http://docutils.sourceforge.net/docs/ref/docutils.dtd";>
+<!-- Generated by Docutils 0.20.1 -->
+<document 
source="/Users/pradyunsg/Developer/github/sphinx-inline-tabs/tests/docsets/basic/restructuredtext.rst"
 xmlns:c="https://www.sphinx-doc.org/"; 
xmlns:changeset="https://www.sphinx-doc.org/"; 
xmlns:citation="https://www.sphinx-doc.org/"; 
xmlns:cpp="https://www.sphinx-doc.org/"; 
xmlns:index="https://www.sphinx-doc.org/"; 
xmlns:js="https://www.sphinx-doc.org/"; xmlns:math="https://www.sphinx-doc.org/"; 
xmlns:py="https://www.sphinx-doc.org/"; xmlns:rst="https://www.sphinx-doc.org/"; 
xmlns:std="https://www.sphinx-doc.org/";>
+    <section ids="restructuredtext" names="restructuredtext">
+        <title>reStructuredText</title>
+        <label>Tab 1</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 1</paragraph>
+        </container>
+        <label>Tab 2</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 2</paragraph>
+        </container>
+    </section>
+</document>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_multiple_html_markdown_.html
 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_multiple_html_markdown_.html
--- 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_multiple_html_markdown_.html
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_multiple_html_markdown_.html
     2023-07-09 16:55:11.101700800 +0200
@@ -0,0 +1,53 @@
+<div class="body" role="main">
+  <section id="markdown">
+    <h1>
+      Markdown
+      <a class="headerlink" href="#markdown" title="Permalink to this heading">
+        ¶
+      </a>
+    </h1>
+    <div class="tab-set docutils">
+      <input checked="True" class="tab-input" id="tab-set--0-input--1" 
name="tab-set--0" type="radio"/>
+      <label class="tab-label" for="tab-set--0-input--1">
+        Tab 1
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 1
+        </p>
+      </div>
+      <input class="tab-input" id="tab-set--0-input--2" name="tab-set--0" 
type="radio"/>
+      <label class="tab-label" for="tab-set--0-input--2">
+        Tab 2
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 2
+        </p>
+      </div>
+    </div>
+    <p>
+      This is some separator content.
+    </p>
+    <div class="tab-set docutils">
+      <input checked="True" class="tab-input" id="tab-set--1-input--1" 
name="tab-set--1" type="radio"/>
+      <label class="tab-label" for="tab-set--1-input--1">
+        Tab 1
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 1
+        </p>
+      </div>
+      <input class="tab-input" id="tab-set--1-input--2" name="tab-set--1" 
type="radio"/>
+      <label class="tab-label" for="tab-set--1-input--2">
+        Tab 2
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 2
+        </p>
+      </div>
+    </div>
+  </section>
+</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_multiple_html_restructuredtext_.html
 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_multiple_html_restructuredtext_.html
--- 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_multiple_html_restructuredtext_.html
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_multiple_html_restructuredtext_.html
     2023-07-09 16:55:11.293501600 +0200
@@ -0,0 +1,53 @@
+<div class="body" role="main">
+  <section id="restructuredtext">
+    <h1>
+      reStructuredText
+      <a class="headerlink" href="#restructuredtext" title="Permalink to this 
heading">
+        ¶
+      </a>
+    </h1>
+    <div class="tab-set docutils">
+      <input checked="True" class="tab-input" id="tab-set--0-input--1" 
name="tab-set--0" type="radio"/>
+      <label class="tab-label" for="tab-set--0-input--1">
+        Tab 1
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 1
+        </p>
+      </div>
+      <input class="tab-input" id="tab-set--0-input--2" name="tab-set--0" 
type="radio"/>
+      <label class="tab-label" for="tab-set--0-input--2">
+        Tab 2
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 2
+        </p>
+      </div>
+    </div>
+    <p>
+      This is some separator content.
+    </p>
+    <div class="tab-set docutils">
+      <input checked="True" class="tab-input" id="tab-set--1-input--1" 
name="tab-set--1" type="radio"/>
+      <label class="tab-label" for="tab-set--1-input--1">
+        Tab 1
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 1
+        </p>
+      </div>
+      <input class="tab-input" id="tab-set--1-input--2" name="tab-set--1" 
type="radio"/>
+      <label class="tab-label" for="tab-set--1-input--2">
+        Tab 2
+      </label>
+      <div class="tab-content docutils">
+        <p>
+          This is tab 2
+        </p>
+      </div>
+    </div>
+  </section>
+</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_multiple_xml_markdown_.xml
 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_multiple_xml_markdown_.xml
--- 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_multiple_xml_markdown_.xml
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_multiple_xml_markdown_.xml
       2023-07-09 17:06:25.563500600 +0200
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE document PUBLIC "+//IDN docutils.sourceforge.net//DTD Docutils 
Generic//EN//XML" "http://docutils.sourceforge.net/docs/ref/docutils.dtd";>
+<!-- Generated by Docutils 0.20.1 -->
+<document 
source="/Users/pradyunsg/Developer/github/sphinx-inline-tabs/tests/docsets/multiple/markdown.md"
 xmlns:c="https://www.sphinx-doc.org/"; 
xmlns:changeset="https://www.sphinx-doc.org/"; 
xmlns:citation="https://www.sphinx-doc.org/"; 
xmlns:cpp="https://www.sphinx-doc.org/"; 
xmlns:index="https://www.sphinx-doc.org/"; 
xmlns:js="https://www.sphinx-doc.org/"; xmlns:math="https://www.sphinx-doc.org/"; 
xmlns:py="https://www.sphinx-doc.org/"; xmlns:rst="https://www.sphinx-doc.org/"; 
xmlns:std="https://www.sphinx-doc.org/";>
+    <section ids="markdown" names="markdown">
+        <title>Markdown</title>
+        <label>Tab 1</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 1</paragraph>
+        </container>
+        <label>Tab 2</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 2</paragraph>
+        </container>
+        <paragraph>This is some separator content.</paragraph>
+        <label>Tab 1</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 1</paragraph>
+        </container>
+        <label>Tab 2</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 2</paragraph>
+        </container>
+    </section>
+</document>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_multiple_xml_restructuredtext_.xml
 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_multiple_xml_restructuredtext_.xml
--- 
old/sphinx_inline_tabs-2023.4.21/tests/test_markup/test_markup_multiple_xml_restructuredtext_.xml
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup/test_markup_multiple_xml_restructuredtext_.xml
       2023-07-09 17:06:28.039943000 +0200
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE document PUBLIC "+//IDN docutils.sourceforge.net//DTD Docutils 
Generic//EN//XML" "http://docutils.sourceforge.net/docs/ref/docutils.dtd";>
+<!-- Generated by Docutils 0.20.1 -->
+<document 
source="/Users/pradyunsg/Developer/github/sphinx-inline-tabs/tests/docsets/multiple/restructuredtext.rst"
 xmlns:c="https://www.sphinx-doc.org/"; 
xmlns:changeset="https://www.sphinx-doc.org/"; 
xmlns:citation="https://www.sphinx-doc.org/"; 
xmlns:cpp="https://www.sphinx-doc.org/"; 
xmlns:index="https://www.sphinx-doc.org/"; 
xmlns:js="https://www.sphinx-doc.org/"; xmlns:math="https://www.sphinx-doc.org/"; 
xmlns:py="https://www.sphinx-doc.org/"; xmlns:rst="https://www.sphinx-doc.org/"; 
xmlns:std="https://www.sphinx-doc.org/";>
+    <section ids="restructuredtext" names="restructuredtext">
+        <title>reStructuredText</title>
+        <label>Tab 1</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 1</paragraph>
+        </container>
+        <label>Tab 2</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 2</paragraph>
+        </container>
+        <paragraph>This is some separator content.</paragraph>
+        <label>Tab 1</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 1</paragraph>
+        </container>
+        <label>Tab 2</label>
+        <container classes="tab-content" is_div="True">
+            <paragraph>This is tab 2</paragraph>
+        </container>
+    </section>
+</document>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/sphinx_inline_tabs-2023.4.21/tests/test_markup.py 
new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup.py
--- old/sphinx_inline_tabs-2023.4.21/tests/test_markup.py       1970-01-01 
01:00:00.000000000 +0100
+++ new/sphinx_inline_tabs-2025.12.21.14/tests/test_markup.py   2023-07-09 
16:40:45.657500300 +0200
@@ -0,0 +1,52 @@
+"""Tests to ensure that the generated markup is correct.
+"""
+
+from pathlib import Path
+
+import bs4
+import pytest
+from pytest_regressions.file_regression import FileRegressionFixture
+from sphinx.testing.path import path as sphinx_path
+from sphinx.testing.util import SphinxTestApp
+
+DOCSET_ROOT = Path(__file__).parent / "docsets"
+INPUT_FILES = {
+    "markdown": "markdown.md",
+    "restructuredtext": "restructuredtext.rst",
+}
+
+
+def only_role_main(html: str) -> str:
+    """Return the content of the main role."""
+    soup = bs4.BeautifulSoup(html, "html.parser")
+    node = soup.find(attrs={"role": "main"})
+    assert node
+    return node.prettify(formatter=bs4.formatter.HTMLFormatter(indent=2))
+
+
[email protected]("format", ["markdown", "restructuredtext"])
[email protected]("builder", ["html", "xml"])
[email protected]("docset", DOCSET_ROOT.glob("*"), ids=lambda path: 
path.name)
+def test_markup(
+    format: str,
+    builder: str,
+    docset: Path,
+    file_regression: FileRegressionFixture,
+    tmpdir: str,
+) -> None:
+    # GIVEN
+    srcdir = sphinx_path(docset)
+    builddir = sphinx_path(tmpdir)
+    app = SphinxTestApp(srcdir=srcdir, builddir=builddir, buildername=builder)
+
+    infile = Path(app.srcdir) / INPUT_FILES[format]
+    outfile = Path(app.outdir) / f"{format}.{builder}"
+
+    # WHEN
+    app.build(filenames=[str(infile)])
+
+    # THEN
+    content = outfile.read_text()
+    if builder == "html":
+        content = only_role_main(content)
+    file_regression.check(content, extension=f".{builder}")

Reply via email to