diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 9e4a2561..40e6c001 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -19,8 +19,8 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] - sphinx: ["~=8.0"] # temporary limit, bring it back to newest sphinx once we are sphinx9 compatible + python-version: ["3.11", "3.12", "3.13", "3.14"] + sphinx: [""] # Newest Sphinx myst-parser: [""] # Newest MyST Parser (any) include: # Just check the other platforms once @@ -28,29 +28,35 @@ jobs: python-version: "3.13" sphinx: "~=8.0" myst-parser: "~=4.0" - pillow: "==11.0.0" + pillow: "==12.0.0" - os: macos-latest python-version: "3.13" sphinx: "~=8.0" myst-parser: "~=4.0" - pillow: "==11.0.0" + pillow: "==12.0.0" - os: ubuntu-latest python-version: "3.13" sphinx: "~=8.0" myst-parser: "~=4.0" - pillow: "==11.0.0" + pillow: "==12.0.0" + # Oldest known-compatible dependencies + - os: ubuntu-latest + python-version: "3.10" + sphinx: "==5.0.0" + myst-parser: "==1.0.0" + pillow: "==12.0.0" # Mid-range dependencies - os: ubuntu-latest python-version: "3.11" sphinx: "==7.0.0" myst-parser: "==3.0.0" - pillow: "==11.0.0" + pillow: "==12.0.0" # Newest known-compatible dependencies - os: ubuntu-latest - python-version: "3.13" - sphinx: "~=8.0" - myst-parser: "==4.0.0" - pillow: "==11.0.0" + python-version: "3.14" + sphinx: "~=9.0" + myst-parser: "~=5.0" + pillow: "==12.0.0" runs-on: ${{ matrix.os }} @@ -68,45 +74,16 @@ jobs: pip install --upgrade "Sphinx${{ matrix.sphinx }}" "myst-parser${{ matrix.myst-parser }}" "pillow${{ matrix.pillow }}" -e .[testing] pip freeze - - name: Run pytest - run: pytest --durations=10 - - coverage: - needs: [tests] - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v6 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v6 - with: - python-version: "3.11" - cache: pip - - name: Install dependencies - run: | - pip install -e .[testing] - pip freeze + # SSH to the GHA runner, in case we need to regenerate test outputs + #- name: Setup ssh session + # uses: Warpbuilds/action-debugger@v1.3 - name: Run pytest - run: pytest --durations=10 --cov=myst_nb --cov-report=xml --cov-report=term-missing - - - name: Create cov - run: coverage xml - # for some reason the tests/conftest.py::check_nbs fixture breaks pytest-cov's cov-report outputting - # this is why we run `coverage xml` afterwards (required by codecov) - - # TEMPORARY FIX: Disable codecov until we can get it working again - - name: Upload to Codecov - uses: codecov/codecov-action@v5 - if: false - with: - name: myst-nb-pytests - flags: pytests - files: ./coverage.xml + run: pytest --durations=10 publish: - name: Publish to PyPi + name: Publish to PyPI needs: [tests] if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags') runs-on: ubuntu-latest diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6310070a..b85f5e4f 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -6,7 +6,8 @@ exclude: > \.vscode/settings\.json| tests/commonmark/commonmark\.json| .*\.xml| - tests/.*\.txt + tests/.*\.txt| + tests/.*\.ipynb )$ ci: diff --git a/myst_nb/sphinx_ext.py b/myst_nb/sphinx_ext.py index 1a61ef78..9a7b7996 100644 --- a/myst_nb/sphinx_ext.py +++ b/myst_nb/sphinx_ext.py @@ -7,7 +7,6 @@ from importlib import resources as import_resources import os from pathlib import Path -import sys from types import ModuleType from typing import Any, Iterator, cast @@ -194,14 +193,10 @@ def _get_file_hash(path: Path): @contextlib.contextmanager def _import_resources_path(package: ModuleType, resource: str) -> Iterator[Path]: - if sys.version_info < (3, 9): - with import_resources.path(package, resource) as path: - yield path - else: - with import_resources.as_file( - import_resources.files(package).joinpath(resource) - ) as path: - yield path + with import_resources.as_file( + import_resources.files(package).joinpath(resource) + ) as path: + yield path def add_css(app: Sphinx): diff --git a/pyproject.toml b/pyproject.toml index c0ac0ea4..ca4ea4af 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,4 +1,4 @@ - [build-system] +[build-system] requires = ["flit_core >=3.11,<4"] build-backend = "flit_core.buildapi" @@ -20,6 +20,7 @@ classifiers = [ "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules", @@ -42,7 +43,7 @@ dependencies = [ "myst-parser>=1.0.0", "nbformat>=5.0", "pyyaml", - "sphinx>=5,<9", # If we get bugs for older versions, just pin this higher + "sphinx>=5", # If we get bugs for older versions, just pin this higher "typing-extensions", # ipykernel is not a requirement of the library, # but is a common requirement for users (registers the python3 kernel) @@ -96,7 +97,7 @@ testing = [ "ipywidgets>=8", "jupytext>=1.11.2", # Matplotlib outputs are sensitive to the matplotlib version - "matplotlib==3.10.*", + "matplotlib==3.10.7", "nbdime", "numpy", "pandas", @@ -174,12 +175,14 @@ filterwarnings = [ 'ignore:datetime.datetime.utcnow\(\) is deprecated:DeprecationWarning:jupyter_cache', # From matplotlib’s dependencies 'ignore::DeprecationWarning:pyparsing', # imports deprecated `sre_constants` - # From myst-parser on Sphinx 9 - 'ignore:.*MystReferenceResolver.app.*:DeprecationWarning', + # From myst-parser on Sphinx 9 we hit RemovedInSphinx11Warning + 'ignore:.*MystReferenceResolver.app.*', # Upstream myst-parser still hits env.app deprecations under Sphinx 9 'ignore:.*env\\.app.*:DeprecationWarning:myst_parser', # Windows issues, some may need to be fixed in MyST-NB, others are upstream 'ignore:Proactor event loop does not implement add_reader:RuntimeWarning:zmq', + # We deal with this pending deprecation later + 'ignore:Argument "writer_name" will be removed in Docutils 2.0:PendingDeprecationWarning' ] markers = [ diff --git a/tests/conftest.py b/tests/conftest.py index 30184da3..f2bdb3b7 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -16,6 +16,7 @@ from nbdime.prettyprint import pretty_print_diff import nbformat as nbf import pytest +import docutils import sphinx from sphinx import version_info as sphinx_version_info from sphinx.util.console import nocolor @@ -304,6 +305,7 @@ class FileRegression: r"original_uri=\"[^\"]*\"\s", # TODO: Remove when support for Sphinx<8 is dropped, re.escape(' translated="True"'), + re.escape(' translated="1"'), re.escape(" translation_progress=\"{'total': 4, 'translated': 2}\""), ) @@ -316,4 +318,10 @@ def check(self, data, **kwargs): def _strip_ignores(self, data): for ig in self.ignores: data = re.sub(ig, "", data) + + if docutils.__version_info__ < (0, 22): + data = data.replace('linenos="False"', 'linenos="0"') + data = data.replace('nowrap="False"', 'nowrap="0"') + data = data.replace('linenos="True"', 'linenos="1"') + data = data.replace('internal="True"', 'internal="1"') return data diff --git a/tests/test_eval/test_sphinx.txt b/tests/test_eval/test_sphinx.txt index 0f630937..34d39dc9 100644 --- a/tests/test_eval/test_sphinx.txt +++ b/tests/test_eval/test_sphinx.txt @@ -4,17 +4,17 @@ Inline evaluation - + a = 1 Evaluated inline variable: 1 - + 1 - + import base64 from IPython.display import Image string = "iVBORw0KGgoAAAANSUhEUgAAAHQAAAB0CAYAAABUmhYnAAAEd0lEQVR4Xu2c0ZLjIAwEk///6GzVvZlspWtWksNRnVcwiGmNwHaS5+v1ej38HKPAU6DHsPy3EIGexVOgh/EUqEBPU+Cw9biHCvQwBQ5bjg4V6GEKHLYcHSrQwxQ4bDk6VKCHKXDYcnSoQA9T4LDllB36fD5vlWR9fUvz0+ve9fp0/O7FU7w0n0CXhBSoDiXTRO06FBKKBLLkLvlGgkTp+UvndPzu/ul46Xq7x2/fQ8kR0wtOBaL+1J6uZ+3fPb5Aw0PRtxOWEkigAr3mCJUMuk9cM45uG3ZvJwel8dN4byW8+r1cgWYPVgRaLIlpwqWCT1cgHbr8skOgYUqkgtHwVYfQKZTiTW8rdCgQFWjtt2Pjty3TGdztOB0aHlosuVcHpglJ+h3nUFow7bE6dDOHCjRN2fBty917qEAF+jEHaI+bTlhK0Nsf/aUBpXtYdXy6noDS9dTePf74oYgWRO3dC6b57k6o7vUJFAh3Cz6dMAIV6FWB9FCQlry1f/ejQXLgt9eX6tXu0DSAtL9APysm0OYHI2mCUgVKxxOoQNOcubc/7XnF5yj3LuYPs5Ud+oc5Ry8R6GEpK1CBjlaMuwcvl1xyBC2I8im9T0xva6pPbtL1V+MjPQW6KEQJRAlAggs0vK2oCibQ4g9+LbnXb96THlQBvl5y0yclqYNQAKgAVGIJQHWPpfjf4uv+bUsagECvClCCkL46VIdecyQtKZRhlKGW3OG3LekeQ0DSBOk+1VLCdbdTAqfzlUuuQFPJe/fM9kORQAV6UYBKJslF11NJS0s8xZO2U3zpeO0lNw2g2+HV8dLbKJov1aMKWKDFfyITKKRsegqmjE7H06FpTRHoRwUoQUnu9pJLh4z0EFMdjwRI46ESWwVC8VK7QMN/TRHookDqCB1Knry261AdmmXMdG86xabzd49H83fP1+5QWkB3e7sg4eu06nra46++4K4uqHp9uyACrSKpXS/Q5kMRnUJruN6vnr7Po/VMn9KrepX3UBKgGmD1UVw6P61HoKmi0F+HfhZIhy766NDhU2F66CEgzQXjQRUjjb8aX7tDaYFpwKkgAi0SSAUXaO0Pjkk/HUoKFQ9p0wm/hjcONC2B6W3B24KKv1ZLx0vzgfQoFsyHQJe3LQINHUEZrUNre6wO1aHLw+AvO5QOHdReLbE0/vSeedyhKBWUDh00XpoAAg2/EkIAqD0FlPYXqEDp3Pix/b8/FKUOIMem7fR6j8Yr0fvlYoEWK4JAw0dplOE6dLnrqH5JrCp4NcMFejPQ6h7RnTAUT/eTKkpYiidtH99D04C6bwvS+QX65W8sUMkVaKgAlcRwuLfuNL5Ah/fQKkC6Pi2JKXB6NEjxUTslKF1P7e17KE1YbRfoZwUFuuijQ4v/l5s6VocOOzQFYv9ZBcoldzY8R08VEGiq2Ob9Bbo5oDQ8gaaKbd5foJsDSsMTaKrY5v0FujmgNDyBpopt3l+gmwNKwxNoqtjm/QW6OaA0PIGmim3eX6CbA0rDE2iq2Ob9Bbo5oDS8H8eCMw7yCzx+AAAAAElFTkSuQmCC" diff --git a/tests/test_execute/test_allow_errors_auto.ipynb b/tests/test_execute/test_allow_errors_auto.ipynb index 216c4567..42a41b44 100644 --- a/tests/test_execute/test_allow_errors_auto.ipynb +++ b/tests/test_execute/test_allow_errors_auto.ipynb @@ -47,10 +47,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.13.11" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_allow_errors_cache.ipynb b/tests/test_execute/test_allow_errors_cache.ipynb index 216c4567..42a41b44 100644 --- a/tests/test_execute/test_allow_errors_cache.ipynb +++ b/tests/test_execute/test_allow_errors_cache.ipynb @@ -47,10 +47,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.13.11" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_basic_failing_auto.ipynb b/tests/test_execute/test_basic_failing_auto.ipynb index 216c4567..42a41b44 100644 --- a/tests/test_execute/test_basic_failing_auto.ipynb +++ b/tests/test_execute/test_basic_failing_auto.ipynb @@ -47,10 +47,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.13.11" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_basic_failing_cache.ipynb b/tests/test_execute/test_basic_failing_cache.ipynb index 216c4567..42a41b44 100644 --- a/tests/test_execute/test_basic_failing_cache.ipynb +++ b/tests/test_execute/test_basic_failing_cache.ipynb @@ -47,10 +47,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.13.11" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_basic_failing_inline.ipynb b/tests/test_execute/test_basic_failing_inline.ipynb index 216c4567..42a41b44 100644 --- a/tests/test_execute/test_basic_failing_inline.ipynb +++ b/tests/test_execute/test_basic_failing_inline.ipynb @@ -47,10 +47,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.13.11" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_basic_unrun_auto.ipynb b/tests/test_execute/test_basic_unrun_auto.ipynb index 659122c8..493dc282 100644 --- a/tests/test_execute/test_basic_unrun_auto.ipynb +++ b/tests/test_execute/test_basic_unrun_auto.ipynb @@ -44,10 +44,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_basic_unrun_cache.ipynb b/tests/test_execute/test_basic_unrun_cache.ipynb index 659122c8..493dc282 100644 --- a/tests/test_execute/test_basic_unrun_cache.ipynb +++ b/tests/test_execute/test_basic_unrun_cache.ipynb @@ -44,10 +44,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_basic_unrun_inline.ipynb b/tests/test_execute/test_basic_unrun_inline.ipynb index 659122c8..493dc282 100644 --- a/tests/test_execute/test_basic_unrun_inline.ipynb +++ b/tests/test_execute/test_basic_unrun_inline.ipynb @@ -44,10 +44,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_complex_outputs_unrun_auto.ipynb b/tests/test_execute/test_complex_outputs_unrun_auto.ipynb index df89f6a7..bcc7a382 100644 --- a/tests/test_execute/test_complex_outputs_unrun_auto.ipynb +++ b/tests/test_execute/test_complex_outputs_unrun_auto.ipynb @@ -405,7 +405,7 @@ "outputs": [ { "data": { - "image/png": "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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcMAAAAaCAYAAADLwDeNAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAASdAAAEnQB3mYfeAAACyhJREFUeJztnXmsHVUdxz8PCi0UaitBiIRVpIBoawVFKmsVWimUsoREUBBixASwyKJs+fJTFkGINVGEiNJSWw1RxLBUVCgWgkhYHoKILFIRsSBbWRUpzz/OXHrfvNnnzJ153vkmL/PunHN+v9+c8/ves8zvnDswNDREFMxsLeBESfMjM8TAzKIFFoSkgZD82cDDkh7zqadL/gHA65JurkJ+v8DMxgOv+pIX9gPfMLOPAu+W9Ksq9eRFUR560l0plwMdlfG55bI/9MIXfKIInwcSOsMLgEWSHsphwEeAXSRdlrVMXpjZAPAj4CRJL3mWvQNwqqRjfMrtN/TCD6qAmV0CXCXp/rpt6aAIDz3p7UkbVsXnlsv+0C98XitGyHRg3QIE3B+4IWeZXJA0BHwP+IZPucEI/AfAGT7l9ikq94OK8HXgUjNbu25DoBQPfaAnbVgFn1sue0df8DmyMwQuAK4ooHwLSX8vUC4XJN0N7GpmW3kUexTwlKSVHmX2K3riB74haRXwIHB0zaZ0UJSHPtCzNqyAzy2X/aIv+DyiMzSz/YBxkv6cR7GZbQL00vl+CpzlQ1CwVHM6brmmRQnU4Ae+8UPAzGxcnUYU5aEn3XW0oRc+t1z2i37ic9TM8Bjg1gJKZwE3FihXFMuBw81sfQ+y9gK2AG7xIKvf0Ws/8ApJdwHrAQfWbEpRHvpAHW3oi8970XLZJ/qGz2O6PwRrqzOB4wro/RhwVYFyRfEA7iH3BJaGE4OXvhcBuwH/wH25bAp8WdL0UPZDgQckvVWpxf2BXvtBFbgP5xNX16G8JA99oI42jOVzy+Va0Td8Ds8MdwImALmi6cxsHWC1pLfzlMsh/ytmNmRmn+nck/Rv4BEcQcL5dwFuA5YBHwLuBAw4Ezg7QsWeuAprUQJ1+EFFuBfnE3WhEA99oK42jONzy+X60G98HhP6PDm4/iunsk8At8clmtkKYMuY5GckbZoif+fgenfo/nPAdhH5LwGuk3RuoH8JcB2wXNKw5RMzWxfYAViSYP+huMqcCkwBNgQWSzoyxe7OmvvTwKW4L7f9gQ8CmwFv4kbEVwJXVuV0KfZtBMz1ZFddfjCsniWdUFLf34D3mNkmkp5JsakKFOWhD9TWhkTzualcPgd/vPECz1yGmnzBM5chI5/DneFmwfXlBMFR2A+4MCXPKmB+xP0sG7O/hguTfTR0/2XW2AyAmW0K7A7s3XX7TdwsOGokuWWQtipB/1k44rwKPAVsn8HmDuYE8h/ChXv/EzfKfRLYBDgYFzE4y8wOC0LNe4nDgO97sqsuP4A19XyNB30dX9gaqKMzLMpDH6izDYfxucFcvga/vPEF3zbV5Qs+udwpByl8DneG44E3Jf0nKnOwf2etiPX4SZJeTDHoJUnnpOSJhKQnY5JWEeoMcSNDGD7amAz8RVLUKGdScE364jkJR5zHcKPKZYkGD8dc4HncEtCBwA3dozMzOwO4CzgE57Q/zyHbB3Lb1UA/gDX1vNyDvo4vTMxZDgAzOxo3Et9b0q0FRCTy0Aca2oZhPjeVy8uBASrgc0nfKfQd00Bf8MllyMjncGf4NvEb8ScBPwn+Fnbd3wZ4vICBmWBme+Miwy6WdGooeQywOnRvIjDUuW9mG+LeL8SFB48Nrq/H2SDpHcKYWVbTMbMJwD7AkrgjoSStNLPLgPNwkXA97QzDS01pdjXRD0L1HPaHIuj4Ql3bK2J56ANNbMMAYT5PpJlcXk1MtGqdfM7LZWieL1TAZcjI53Bn+AowxszWlxR2qA/gppiz6aq04HOW0wnGmtmRuLDn14A/4tb90x54WnC9NyJtQmBzNwZxo7bTzWwx8C3cssG2ZvZ+SeEp+RvBdYMMz5AXs4F1gV+k5PtvcG1aBFyUXU30g6R6LqKv4wtvJOSpEkk89IEmtiGM5PMgo4/L0Ew+x9nUNF/wzWXIyOfw6LMzbZ0QzhgsS5wL7BtEGXWwo6Q/pRgDLhR6EW50Mh83KnjUzNKifNI6w2FTbUlP4EaPX8IFrLwCfBJ3EsEdETJe6JLlG3NxjfbruAxmNgb4XPCxMYdEx9nVUD9Iquci+jq+8HyKTVUhloc+0NA2hBCfRxuXoZl8TrKpgb7gm8uQkc/hzrDz8OH3cAAEI7GVwB7wzi8TvJZiCLg18Bm4hxmPi3S6HNgKWGpmUxLKTsO9IH0kIu29XTZ323m+pI0ljZN0hKQXJU2XtHGEjCdxo6V3ZXiOzAhOPJgJLA3CxuPwTVwo/Y2SbvJpQ0nE2tUkP0ip56L6Or5Q2TJRChJ56ANNasMujODzKOMyNJPPiTY1xRcq4jJk5POwZVJJj5nZSuDDwD0xZa7HTWVvxo3SfpukIJAbXpx/EDjOzF4FTmZNmPIwBI2yHXBHOALKzCbiKuK2NP0ptr1lZg8C25aRE4FP4abnscsqZnYi7vkfBj6bRWhKiHEUMoWNF7CrEX5AQj0X1YfzhRUZggfS2mNZxHuphZKOTpKZxkOPPtCUNvTC5zq5DPn5XIXvlLCpCb5QBZchI5/D7wwBrmXNFDYK1+N65JNwL2NPT1KQgstwD7JHTPoU3Ow1alllKm4vyh9K6O9gGc4BfOJgXBh45Lq7mR0PfAe35WKGpBei8kXgcSBtdNqNp3PkzWNXU/wgsZ4L6ptG9ijD+YyMUpuKCw9fCKwIpQ1mlHst8Tz05QNNaUPwx+eecxkK83k+1fhOEZua4AtVcBky8jmqM7wc+JmZDcTsR7kNt4FxMjA2w7JBEjqbisfHpHe+DKJOlJgJXJFzE2kcrgZOMLP1JJUOmjB3nNYBwC1yJ6eH0+cB38aNbmZIejarbEkzytoXh5x21e4HafVcRF8QZj4F9x4lFYr40d0gPH4OsKDg1gpI4KFHH6i9Dbvgi8895XKQZx4F+Fyh7xSxqVZfqILLgdzMfB4Rvi1pELcnJbKnDfai3ITbvDqYxdoE7Bpc/xqTHvmSNXjAWbjTKUpD0p245ahP+5CHq7uNiJjum9lXcU46iNtLlLkjrBJ57WqCH5BQzyX07QM8S4ZloiqRxkNPOprQhl753EsuQzP5XMSmBvhCFVyGHHyO28t0JvCFhHLXA0eQ4TRzM9shWCMO398K+G7w8ccxxafhloPCP246B/cLxj5P6DgN+LwnWXNxe8V+2X3TzM7Gvcy+Bzdae86TvlIoYVfdfhBZzyX1HQOc53GPUxmk8dAH6m5D8M/nyrkMzeRzSZvq9IUquAw5+By1TIqkJ8xsqZnNkjTiFyFwlXWfpKfSFACHAyeb2XLcGXGvAO/DnZ83LpB1cbiQmY0FdgQG1XUygpltAOwLHJ9Bd2ZIWm5m86L2L5nZQcBBwcfOGXgfN7MFwf/PSTolyDsQ5P29us7BM7OjcEcPrcYtSZwY8YJ8haQF4ZtVoqRddfpBZD2X0Wdmm+EiGhfSAGTgoQ/U1oZBmnc+V83lIK1xfPZgUy2+UAWXA7m5+BzZGQJIWmxmh8WkPW9mh2RRgHtxORkXGTcdt7b7Eu4A2EXAoph3kzsB6zByWWU34LSKRu5fBC40s2NDNk3F/Xp2N7YJ/sA10CnB/zsDmzPyDL2tg+vawLwY/b8DFuS0uSwK21WzH8TVcxl9FwDHenoP7QVJPPQkv842hOr4XCWXoZl8LmVTjb5QBZchJ58HhoZ6fS50s2Fm2wObS/pNwfLn4yKxtpHbNNyiAviuZzPbHRijruO6WoxutFweHaiinovwubLzD0crJD1MueCJucD9LXkqh+96vr3tCP+/0HJ51KCKes7N53Zm2KJFixYt+h7tzLBFixYtWvQ9/geIL+vM7+SokQAAAABJRU5ErkJggg==", "text/latex": [ "$\\displaystyle \\left(\\sqrt{5} i\\right)^{\\alpha} \\left(\\frac{1}{2} - \\frac{2 \\sqrt{5} i}{5}\\right) + \\left(- \\sqrt{5} i\\right)^{\\alpha} \\left(\\frac{1}{2} + \\frac{2 \\sqrt{5} i}{5}\\right)$" ], @@ -547,7 +547,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.12" }, "latex_envs": { "LaTeX_envs_menu_present": true, @@ -684,4 +684,4 @@ }, "nbformat": 4, "nbformat_minor": 4 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_complex_outputs_unrun_auto.xml b/tests/test_execute/test_complex_outputs_unrun_auto.xml index 31937b98..e36b6aeb 100644 --- a/tests/test_execute/test_complex_outputs_unrun_auto.xml +++ b/tests/test_execute/test_complex_outputs_unrun_auto.xml @@ -195,7 +195,7 @@ - + a = b+c The plotting code for a sympy equation (=@eqn:example_sympy). @@ -214,9 +214,9 @@ (√5⋅ⅈ) ⋅⎜─ - ──────⎟ + (-√5⋅ⅈ) ⋅⎜─ + ──────⎟ ⎝2 5 ⎠ ⎝2 5 ⎠ - + - + \displaystyle \left(\sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} - \frac{2 \sqrt{5} i}{5}\right) + \left(- \sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} + \frac{2 \sqrt{5} i}{5}\right)
diff --git a/tests/test_execute/test_complex_outputs_unrun_cache.ipynb b/tests/test_execute/test_complex_outputs_unrun_cache.ipynb index df89f6a7..bcc7a382 100644 --- a/tests/test_execute/test_complex_outputs_unrun_cache.ipynb +++ b/tests/test_execute/test_complex_outputs_unrun_cache.ipynb @@ -405,7 +405,7 @@ "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/latex": [ "$\\displaystyle \\left(\\sqrt{5} i\\right)^{\\alpha} \\left(\\frac{1}{2} - \\frac{2 \\sqrt{5} i}{5}\\right) + \\left(- \\sqrt{5} i\\right)^{\\alpha} \\left(\\frac{1}{2} + \\frac{2 \\sqrt{5} i}{5}\\right)$" ], @@ -547,7 +547,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.12" }, "latex_envs": { "LaTeX_envs_menu_present": true, @@ -684,4 +684,4 @@ }, "nbformat": 4, "nbformat_minor": 4 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_complex_outputs_unrun_cache.xml b/tests/test_execute/test_complex_outputs_unrun_cache.xml index 31937b98..e36b6aeb 100644 --- a/tests/test_execute/test_complex_outputs_unrun_cache.xml +++ b/tests/test_execute/test_complex_outputs_unrun_cache.xml @@ -195,7 +195,7 @@ <literal_block classes="output text_plain" language="myst-ansi" xml:space="preserve"> <IPython.core.display.Latex object> <container mime_type="text/latex"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> a = b+c <paragraph> The plotting code for a sympy equation (=@eqn:example_sympy). @@ -214,9 +214,9 @@ (√5⋅ⅈ) ⋅⎜─ - ──────⎟ + (-√5⋅ⅈ) ⋅⎜─ + ──────⎟ ⎝2 5 ⎠ ⎝2 5 ⎠ <container mime_type="image/png"> - <image candidates="{'*': '_build/jupyter_execute/e2dfbe330154316cfb6f3186e8f57fc4df8aee03b0303ed1345fc22cd51f66de.png'}" uri="_build/jupyter_execute/e2dfbe330154316cfb6f3186e8f57fc4df8aee03b0303ed1345fc22cd51f66de.png"> + <image candidates="{'*': '_build/jupyter_execute/c8709f293454a3bd1403356f37bbab536df1c4d65becfd4cdcf84adf951c6820.png'}" uri="_build/jupyter_execute/c8709f293454a3bd1403356f37bbab536df1c4d65becfd4cdcf84adf951c6820.png"> <container mime_type="text/latex"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> \displaystyle \left(\sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} - \frac{2 \sqrt{5} i}{5}\right) + \left(- \sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} + \frac{2 \sqrt{5} i}{5}\right) <section ids="interactive-outputs" names="interactive\ outputs"> <title> diff --git a/tests/test_execute/test_custom_convert_auto.ipynb b/tests/test_execute/test_custom_convert_auto.ipynb index 1b8be7b3..495e5134 100644 --- a/tests/test_execute/test_custom_convert_auto.ipynb +++ b/tests/test_execute/test_custom_convert_auto.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "raw", - "id": "28b0321f", + "id": "01cb5fd4", "metadata": {}, "source": [ "---\n", @@ -14,7 +14,7 @@ }, { "cell_type": "markdown", - "id": "58a3e81a", + "id": "77b6b8f6", "metadata": {}, "source": [ "# Custom Formats" @@ -23,7 +23,7 @@ { "cell_type": "code", "execution_count": 1, - "id": "be1f1414", + "id": "c71bb0d2", "metadata": { "echo": true }, @@ -37,7 +37,7 @@ { "cell_type": "code", "execution_count": 2, - "id": "64b71941", + "id": "6caa0f88", "metadata": { "fig.height": 5, "fig.width": 8, @@ -59,7 +59,7 @@ }, { "data": { - "image/png": "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", + "image/png": "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AQBAM+RxjEycOFHnzp3TnDlzVFpaqgEDBmjHjh2ui1SLiork5fXTm3RGjBih1atX64UXXtDs2bPVs2dPbdiwQX379m28RwEAAJosm3W9S1zRbFRVVcnhcCgjI+Oql8EAU3he4k7Dc/L2I0YAAIBRfFEeAAAwihgBAABGESMAAMAoYqSF4luTAQB3CmKkBamoqFBWVpaGDh2qqKgo0+MAgHF79uxRZGRknd/z4nQ61adPH/3zn/80MFnLQoy0AAcOHFBycrJCQkL0yiuvaPTo0froo49Mj4UW7L///a/r38XFxZozZ46ef/55/kcft93SpUuVkpJS5yet+vv7a9q0aVq8eLGByVoW3trbTJWWlionJ0dvvvmmysvL9fjjjyszM1OffPKJIiMjTY+HFur48eNKSEhQcXGxevbsqTVr1mjcuHGqrKyUl5eXKisrtX79etfXTQC3Wnh4uHbs2KHevXvXef/nn3+usWPHqqio6DZP1rJwZqQZSkhIUEREhD799FMtXbpU33zzjV577TXTYwGaNWuW+vXrpwMHDmjUqFF66KGHFB8fL6fTqYsXL2ratGlasGCB6THRgpSVlalNmzb13t+6dWudO3fuNk7UMnn8cfC4823fvl3PPvuspk+frp49e5oeB3D5+OOPtWfPHvXv319RUVHKysrSM8884/oKiRkzZmj48OGGp0RLEhoaqhMnTqhHjx513v/pp58qJCTkNk/V8nBmpBn64IMPVFFRoejoaA0bNkzLli3T+fPnTY8F6MKFCwoODpYkdejQQe3bt1enTp1c93fq1EkVFRWmxkML9Mtf/lJ//OMf9f33319133fffae5c+fqoYceMjBZy8I1I81YZWWl1q5dq+zsbB08eFA1NTVavHixnn76afn6+poeDy2Ql5eXysrKFBAQIEny9fXVp59+qu7du0v68ZR5ly5dVFNTY3JMtCBlZWUaNGiQWrVqpbS0NEVEREj68VqR5cuXq6amRkeOHHF9GSxuDWKkhSgoKNCbb76pt956S5cuXdKYMWO0adMm02OhhfHy8tL48eNdXz62efNmjR49Wu3bt5f04xeU7dixgxjBbVVYWKjp06dr586duvIn0WazKS4uTsuXL3fFMm4dYqSFqamp0ebNm5WdnU2M4LabPHnyDW23atWqWzwJcLWLFy/q5MmTsixLPXv2dHsJEbcWMQIAAIziAlYAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACj/g9tifv6kyRFaAAAAABJRU5ErkJggg==", "text/plain": [ "<Figure size 640x480 with 1 Axes>" ] @@ -95,9 +95,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.12" } }, "nbformat": 4, "nbformat_minor": 5 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_custom_convert_auto.xml b/tests/test_execute/test_custom_convert_auto.xml index 534b68e8..38935da1 100644 --- a/tests/test_execute/test_custom_convert_auto.xml +++ b/tests/test_execute/test_custom_convert_auto.xml @@ -19,4 +19,4 @@ <literal_block classes="output text_plain" language="myst-ansi" xml:space="preserve"> <Figure size 640x480 with 1 Axes> <container mime_type="image/png"> - <image candidates="{'*': '_build/jupyter_execute/c9eff9c3855d539f1d3367c7dc0ece914fa84c3badb7513a2e485c65ed57a262.png'}" uri="_build/jupyter_execute/c9eff9c3855d539f1d3367c7dc0ece914fa84c3badb7513a2e485c65ed57a262.png"> + <image candidates="{'*': '_build/jupyter_execute/9af310c61f9e96d898144e35f0dc3bf6757626c2072ad98732a4d71c1ec5ec59.png'}" uri="_build/jupyter_execute/9af310c61f9e96d898144e35f0dc3bf6757626c2072ad98732a4d71c1ec5ec59.png"> diff --git a/tests/test_execute/test_custom_convert_cache.ipynb b/tests/test_execute/test_custom_convert_cache.ipynb index 7e70aaa6..9d56496a 100644 --- a/tests/test_execute/test_custom_convert_cache.ipynb +++ b/tests/test_execute/test_custom_convert_cache.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "raw", - "id": "4a49bac4", + "id": "a19ab5d4", "metadata": {}, "source": [ "---\n", @@ -14,7 +14,7 @@ }, { "cell_type": "markdown", - "id": "df9ab2eb", + "id": "e3fef28d", "metadata": {}, "source": [ "# Custom Formats" @@ -23,7 +23,7 @@ { "cell_type": "code", "execution_count": 1, - "id": "65052f1a", + "id": "07d6dc8a", "metadata": { "echo": true }, @@ -37,7 +37,7 @@ { "cell_type": "code", "execution_count": 2, - "id": "d7e1dd06", + "id": "5273c524", "metadata": { "fig.height": 5, "fig.width": 8, @@ -59,7 +59,7 @@ }, { "data": { - "image/png": "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", + "image/png": "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AQBAM+RxjEycOFHnzp3TnDlzVFpaqgEDBmjHjh2ui1SLiork5fXTm3RGjBih1atX64UXXtDs2bPVs2dPbdiwQX379m28RwEAAJosm3W9S1zRbFRVVcnhcCgjI+Oql8EAU3he4k7Dc/L2I0YAAIBRfFEeAAAwihgBAABGESMAAMAoYqSF4luTAQB3CmKkBamoqFBWVpaGDh2qqKgo0+MAgHF79uxRZGRknd/z4nQ61adPH/3zn/80MFnLQoy0AAcOHFBycrJCQkL0yiuvaPTo0froo49Mj4UW7L///a/r38XFxZozZ46ef/55/kcft93SpUuVkpJS5yet+vv7a9q0aVq8eLGByVoW3trbTJWWlionJ0dvvvmmysvL9fjjjyszM1OffPKJIiMjTY+HFur48eNKSEhQcXGxevbsqTVr1mjcuHGqrKyUl5eXKisrtX79etfXTQC3Wnh4uHbs2KHevXvXef/nn3+usWPHqqio6DZP1rJwZqQZSkhIUEREhD799FMtXbpU33zzjV577TXTYwGaNWuW+vXrpwMHDmjUqFF66KGHFB8fL6fTqYsXL2ratGlasGCB6THRgpSVlalNmzb13t+6dWudO3fuNk7UMnn8cfC4823fvl3PPvuspk+frp49e5oeB3D5+OOPtWfPHvXv319RUVHKysrSM8884/oKiRkzZmj48OGGp0RLEhoaqhMnTqhHjx513v/pp58qJCTkNk/V8nBmpBn64IMPVFFRoejoaA0bNkzLli3T+fPnTY8F6MKFCwoODpYkdejQQe3bt1enTp1c93fq1EkVFRWmxkML9Mtf/lJ//OMf9f33319133fffae5c+fqoYceMjBZy8I1I81YZWWl1q5dq+zsbB08eFA1NTVavHixnn76afn6+poeDy2Ql5eXysrKFBAQIEny9fXVp59+qu7du0v68ZR5ly5dVFNTY3JMtCBlZWUaNGiQWrVqpbS0NEVEREj68VqR5cuXq6amRkeOHHF9GSxuDWKkhSgoKNCbb76pt956S5cuXdKYMWO0adMm02OhhfHy8tL48eNdXz62efNmjR49Wu3bt5f04xeU7dixgxjBbVVYWKjp06dr586duvIn0WazKS4uTsuXL3fFMm4dYqSFqamp0ebNm5WdnU2M4LabPHnyDW23atWqWzwJcLWLFy/q5MmTsixLPXv2dHsJEbcWMQIAAIziAlYAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACj/g9tifv6kyRFaAAAAABJRU5ErkJggg==", "text/plain": [ "<Figure size 640x480 with 1 Axes>" ] @@ -95,9 +95,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.12" } }, "nbformat": 4, "nbformat_minor": 5 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_custom_convert_cache.xml b/tests/test_execute/test_custom_convert_cache.xml index 534b68e8..38935da1 100644 --- a/tests/test_execute/test_custom_convert_cache.xml +++ b/tests/test_execute/test_custom_convert_cache.xml @@ -19,4 +19,4 @@ <literal_block classes="output text_plain" language="myst-ansi" xml:space="preserve"> <Figure size 640x480 with 1 Axes> <container mime_type="image/png"> - <image candidates="{'*': '_build/jupyter_execute/c9eff9c3855d539f1d3367c7dc0ece914fa84c3badb7513a2e485c65ed57a262.png'}" uri="_build/jupyter_execute/c9eff9c3855d539f1d3367c7dc0ece914fa84c3badb7513a2e485c65ed57a262.png"> + <image candidates="{'*': '_build/jupyter_execute/9af310c61f9e96d898144e35f0dc3bf6757626c2072ad98732a4d71c1ec5ec59.png'}" uri="_build/jupyter_execute/9af310c61f9e96d898144e35f0dc3bf6757626c2072ad98732a4d71c1ec5ec59.png"> diff --git a/tests/test_execute/test_custom_convert_multiple_extensions_auto.ipynb b/tests/test_execute/test_custom_convert_multiple_extensions_auto.ipynb index d2aff784..7c7df80d 100644 --- a/tests/test_execute/test_custom_convert_multiple_extensions_auto.ipynb +++ b/tests/test_execute/test_custom_convert_multiple_extensions_auto.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "raw", - "id": "d0aefb9b", + "id": "13d0726e", "metadata": {}, "source": [ "---\n", @@ -14,7 +14,7 @@ }, { "cell_type": "markdown", - "id": "c67b3701", + "id": "8ca3f821", "metadata": {}, "source": [ "# Custom Formats" @@ -23,7 +23,7 @@ { "cell_type": "code", "execution_count": 1, - "id": "ef881a36", + "id": "474022f9", "metadata": { "echo": true }, @@ -37,7 +37,7 @@ { "cell_type": "code", "execution_count": 2, - "id": "f7710843", + "id": "bb063562", "metadata": { "fig.height": 5, "fig.width": 8, @@ -59,7 +59,7 @@ }, { "data": { - "image/png": "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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiMAAAGvCAYAAACJsNWPAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAIt1JREFUeJzt3XtQ1XX+x/HXQeXgBVA3biKhjYbiBRVv2EyaoegSSbOVa9NApoxrYLns5Cxuq2mzc9zMS5sXYguZrXV0tfJ+SfG2Ba15K20nWi8BFaCuekAqaOH7+6Px1PkJ6kH0I/B8zHxnPN/z/fJ9H/bs8tzv+Z5zbJZlWQIAADDEy/QAAACgZSNGAACAUcQIAAAwihgBAABGESMAAMAoYgQAABhFjAAAAKOIEQAAYBQxAgAAjCJGABhls9n04osv3vbj5uTkyGaz6csvv7ztxwbgjhgBmoHjx4/r0UcfVXh4uHx8fBQaGqoxY8botddeMz1as7R69WotXbrU9BhAs0GMAE1cXl6eBg8erE8++UQpKSlatmyZpk6dKi8vL7366qumx2uWiBGgcbU2PQCAm/OnP/1J/v7++vjjj9WxY0e3+86ePWtmKADwAGdGgCbu1KlT6tOnz1UhIkmBgYFut1etWqXRo0crMDBQdrtdkZGRWrly5VX7devWTQ899JD27dunwYMHq23bturXr5/27dsnSXr33XfVr18/+fj4KDo6WkePHnXb/6mnnlKHDh10+vRpxcXFqX379urSpYvmz5+vG/mi8K+//lpPP/20goKCZLfb1adPH2VnZ9/Q78NmsyktLU1///vfFRER4ZrxwIEDN7T/ihUr1KdPH9ntdnXp0kWpqam6dOmS6/5Ro0Zp69atKiwslM1mk81mU7du3W7oZwOoG2dGgCYuPDxc+fn5OnHihPr27XvNbVeuXKk+ffro4YcfVuvWrbV582Y988wzqq2tVWpqqtu2J0+e1BNPPKFp06bpySef1CuvvKKEhARlZmZq9uzZeuaZZyRJDodDjz/+uAoKCuTl9dP/v6mpqdG4ceM0fPhwvfzyy9qxY4fmzp2r//3vf5o/f369M5aVlWn48OGuqAgICND27ds1ZcoUlZeXa+bMmdf9nezfv19r167Vs88+K7vdrhUrVmjcuHE6ePDgNX9HL774oubNm6fY2FhNnz5dBQUFWrlypT7++GN9+OGHatOmjf7whz/I6XTqq6++0pIlSyRJHTp0uO5MAK7BAtCkvf/++1arVq2sVq1aWTExMdasWbOsnTt3WtXV1Vdt++233161Li4uzrrnnnvc1oWHh1uSrLy8PNe6nTt3WpKstm3bWoWFha71r7/+uiXJ2rt3r2tdcnKyJcmaMWOGa11tba0VHx9veXt7W+fOnXOtl2TNnTvXdXvKlClWSEiIdf78ebeZfv3rX1v+/v51Poafk2RJsg4dOuRaV1hYaPn4+FiPPPKIa92qVassSdaZM2csy7Kss2fPWt7e3tbYsWOtmpoa13bLli2zJFnZ2dmudfHx8VZ4ePg15wBw43iZBmjixowZo/z8fD388MP65JNP9PLLLysuLk6hoaHatGmT27Zt27Z1/dvpdOr8+fMaOXKkTp8+LafT6bZtZGSkYmJiXLeHDRsmSRo9erTuvvvuq9afPn36qtnS0tJc/75ypqO6ulq7d++u87FYlqV33nlHCQkJsixL58+fdy1xcXFyOp06cuTIdX8nMTExio6Odt2+++67NWHCBO3cuVM1NTV17rN7925VV1dr5syZbmd4UlJS5Ofnp61bt173uAAahhgBmoEhQ4bo3Xff1cWLF3Xw4EFlZGSooqJCjz76qP7973+7tvvwww8VGxur9u3bq2PHjgoICNDs2bMl6aoY+XlwSJK/v78kKSwsrM71Fy9edFvv5eWle+65x23dvffeK0n1frbHuXPndOnSJWVlZSkgIMBtmTx5sqQbuyi3Z8+eV62799579e233+rcuXN17lNYWChJioiIcFvv7e2te+65x3U/gMbHNSNAM+Lt7a0hQ4ZoyJAhuvfeezV58mStW7dOc+fO1alTp/Tggw+qV69eWrx4scLCwuTt7a1t27ZpyZIlqq2tdftZrVq1qvMY9a23buDC1Ou5MsOTTz6p5OTkOrfp37//TR8HwJ2FGAGaqcGDB0uSSkpKJEmbN29WVVWVNm3a5HbWY+/evbfk+LW1tTp9+rTrbIgkffHFF5JU77tPAgIC5Ovrq5qaGsXGxjb42P/5z3+uWvfFF1+oXbt2CggIqHOf8PBwSVJBQYHbGZ3q6mqdOXPGbR6bzdbg2QBcjZdpgCZu7969dZ6V2LZtm6SfXna4ckbj59s6nU6tWrXqls22bNky178ty9KyZcvUpk0bPfjgg3Vu36pVK/3qV7/SO++8oxMnTlx1f30vsfx/+fn5bteWFBcXa+PGjRo7dmy9Z3ZiY2Pl7e2tv/zlL26/ozfffFNOp1Px8fGude3bt7/qZS0ADceZEaCJmzFjhr799ls98sgj6tWrl6qrq5WXl6e1a9eqW7durmstxo4dK29vbyUkJGjatGm6fPmy/vrXvyowMNB19qQx+fj4aMeOHUpOTtawYcO0fft2bd26VbNnz6737IQkLViwQHv37tWwYcOUkpKiyMhIXbhwQUeOHNHu3bt14cKF6x67b9++iouLc3trryTNmzev3n0CAgKUkZGhefPmady4cXr44YdVUFCgFStWaMiQIXryySdd20ZHR2vt2rVKT0/XkCFD1KFDByUkJHjw2wHgxuA7eQA0gu3bt1tPP/201atXL6tDhw6Wt7e31aNHD2vGjBlWWVmZ27abNm2y+vfvb/n4+FjdunWz/vznP1vZ2dlub3G1rB/f2hsfH3/VsSRZqampbuvOnDljSbIWLlzoWpecnGy1b9/eOnXqlDV27FirXbt2VlBQkDV37ly3t81e+Zk/f2uvZVlWWVmZlZqaaoWFhVlt2rSxgoODrQcffNDKysq67u/jyoxvv/221bNnT8tut1sDBw50e+uxZV391t4rli1bZvXq1ctq06aNFRQUZE2fPt26ePGi2zaXL1+2nnjiCatjx46WJN7mC9wkm2U1wlVnAPAzTz31lNavX6/Lly/f9mPbbDalpqa6vUQE4M7GNSMAAMAoYgQAABhFjAAAAKO4ZgQAABjFmREAAGAUMQIAAIxqEh96Vltbq2+++Ua+vr58DDMAAE2EZVmqqKhQly5d3L4N+/9rEjHyzTffXPVNoQAAoGkoLi5W165d672/ScSIr6+vpB8fjJ+fn+FpAADAjSgvL1dYWJjr73h9mkSMXHlpxs/PjxgBAKCJud4lFlzACgAAjCJGAACAUcQIAAAwihgBAABGESMAAMAoYgQAABhFjAAAAKOIEQAAYBQxAgAAjCJGAACAUR7FyMqVK9W/f3/Xx7LHxMRo+/bt19xn3bp16tWrl3x8fNSvXz9t27btpgYGAADNi0cx0rVrVy1YsECHDx/WoUOHNHr0aE2YMEGfffZZndvn5eVp0qRJmjJlio4eParExEQlJibqxIkTjTI8AABo+myWZVk38wM6d+6shQsXasqUKVfdN3HiRFVWVmrLli2udcOHD9eAAQOUmZl5w8coLy+Xv7+/nE4nX5QHAEATcaN/vxt8zUhNTY3WrFmjyspKxcTE1LlNfn6+YmNj3dbFxcUpPz+/oYcFAADNTGtPdzh+/LhiYmL0/fffq0OHDnrvvfcUGRlZ57alpaUKCgpyWxcUFKTS0tJrHqOqqkpVVVWu2+Xl5Z6OCQAAmgiPYyQiIkLHjh2T0+nU+vXrlZycrP3799cbJA3hcDg0b968Rvt5QEvV7fdbTY/QbHy5IN70CECz5fHLNN7e3urRo4eio6PlcDgUFRWlV199tc5tg4ODVVZW5raurKxMwcHB1zxGRkaGnE6naykuLvZ0TAAA0ETc9OeM1NbWur2k8nMxMTHKzc11W7dr1656rzG5wm63u94+fGUBAADNk0cv02RkZGj8+PG6++67VVFRodWrV2vfvn3auXOnJCkpKUmhoaFyOBySpOeee04jR47UokWLFB8frzVr1ujQoUPKyspq/EcCAACaJI9i5OzZs0pKSlJJSYn8/f3Vv39/7dy5U2PGjJEkFRUVycvrp5MtI0aM0OrVq/XCCy9o9uzZ6tmzpzZs2KC+ffs27qMAAABN1k1/zsjtwOeMAA3DBayNhwtYAc/d8s8ZAQAAaAzECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIzyKEYcDoeGDBkiX19fBQYGKjExUQUFBdfcJycnRzabzW3x8fG5qaEBAEDz4VGM7N+/X6mpqfroo4+0a9cu/fDDDxo7dqwqKyuvuZ+fn59KSkpcS2Fh4U0NDQAAmo/Wnmy8Y8cOt9s5OTkKDAzU4cOHdf/999e7n81mU3BwcMMmBAAAzdpNXTPidDolSZ07d77mdpcvX1Z4eLjCwsI0YcIEffbZZ9fcvqqqSuXl5W4LAABonhocI7W1tZo5c6buu+8+9e3bt97tIiIilJ2drY0bN+rtt99WbW2tRowYoa+++qrefRwOh/z9/V1LWFhYQ8cEAAB3OJtlWVZDdpw+fbq2b9+uDz74QF27dr3h/X744Qf17t1bkyZN0ksvvVTnNlVVVaqqqnLdLi8vV1hYmJxOp/z8/BoyLtAidfv9VtMjNBtfLog3PQLQ5JSXl8vf3/+6f789umbkirS0NG3ZskUHDhzwKEQkqU2bNho4cKBOnjxZ7zZ2u112u70howEAgCbGo5dpLMtSWlqa3nvvPe3Zs0fdu3f3+IA1NTU6fvy4QkJCPN4XAAA0Px6dGUlNTdXq1au1ceNG+fr6qrS0VJLk7++vtm3bSpKSkpIUGhoqh8MhSZo/f76GDx+uHj166NKlS1q4cKEKCws1derURn4oAACgKfIoRlauXClJGjVqlNv6VatW6amnnpIkFRUVycvrpxMuFy9eVEpKikpLS9WpUydFR0crLy9PkZGRNzc5AABoFhp8AevtdKMXwABwxwWsjYcLWAHP3ejfb76bBgAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwCiPYsThcGjIkCHy9fVVYGCgEhMTVVBQcN391q1bp169esnHx0f9+vXTtm3bGjwwAABoXjyKkf379ys1NVUfffSRdu3apR9++EFjx45VZWVlvfvk5eVp0qRJmjJlio4eParExEQlJibqxIkTNz08AABo+myWZVkN3fncuXMKDAzU/v37df/999e5zcSJE1VZWaktW7a41g0fPlwDBgxQZmbmDR2nvLxc/v7+cjqd8vPza+i4QIvT7fdbTY/QbHy5IN70CECTc6N/v2/qmhGn0ylJ6ty5c73b5OfnKzY21m1dXFyc8vPz692nqqpK5eXlbgsAAGieWjd0x9raWs2cOVP33Xef+vbtW+92paWlCgoKclsXFBSk0tLSevdxOByaN29eQ0cDANzBOGPXOJrT2boGnxlJTU3ViRMntGbNmsacR5KUkZEhp9PpWoqLixv9GAAA4M7QoDMjaWlp2rJliw4cOKCuXbtec9vg4GCVlZW5rSsrK1NwcHC9+9jtdtnt9oaMBgAAmhiPzoxYlqW0tDS999572rNnj7p3737dfWJiYpSbm+u2bteuXYqJifFsUgAA0Cx5dGYkNTVVq1ev1saNG+Xr6+u67sPf319t27aVJCUlJSk0NFQOh0OS9Nxzz2nkyJFatGiR4uPjtWbNGh06dEhZWVmN/FAAAEBT5NGZkZUrV8rpdGrUqFEKCQlxLWvXrnVtU1RUpJKSEtftESNGaPXq1crKylJUVJTWr1+vDRs2XPOiVwAA0HJ4dGbkRj6SZN++fVete+yxx/TYY495cigAANBC8N00AADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACjiBEAAGAUMQIAAIwiRgAAgFHECAAAMMrjGDlw4IASEhLUpUsX2Ww2bdiw4Zrb79u3Tzab7aqltLS0oTMDAIBmxOMYqaysVFRUlJYvX+7RfgUFBSopKXEtgYGBnh4aAAA0Q6093WH8+PEaP368xwcKDAxUx44dPd4PAAA0b7ftmpEBAwYoJCREY8aM0Ycffni7DgsAAO5wHp8Z8VRISIgyMzM1ePBgVVVV6Y033tCoUaP0r3/9S4MGDapzn6qqKlVVVblul5eX3+oxAQCAIbc8RiIiIhQREeG6PWLECJ06dUpLlizRW2+9Vec+DodD8+bNu9WjAQCAO4CRt/YOHTpUJ0+erPf+jIwMOZ1O11JcXHwbpwMAALfTLT8zUpdjx44pJCSk3vvtdrvsdvttnAgAAJjicYxcvnzZ7azGmTNndOzYMXXu3Fl33323MjIy9PXXX+tvf/ubJGnp0qXq3r27+vTpo++//15vvPGG9uzZo/fff7/xHgUAAGiyPI6RQ4cO6YEHHnDdTk9PlyQlJycrJydHJSUlKioqct1fXV2t3/3ud/r666/Vrl079e/fX7t373b7GQAAoOXyOEZGjRoly7LqvT8nJ8ft9qxZszRr1iyPBwMAAC0D300DAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABglMcxcuDAASUkJKhLly6y2WzasGHDdffZt2+fBg0aJLvdrh49eignJ6cBowIAgObI4xiprKxUVFSUli9ffkPbnzlzRvHx8XrggQd07NgxzZw5U1OnTtXOnTs9HhYAADQ/rT3dYfz48Ro/fvwNb5+Zmanu3btr0aJFkqTevXvrgw8+0JIlSxQXF+fp4QEAQDNzy68Zyc/PV2xsrNu6uLg45efn17tPVVWVysvL3RYAANA8eXxmxFOlpaUKCgpyWxcUFKTy8nJ99913atu27VX7OBwOzZs371aP1ui6/X6r6RGajS8XxJseAQBwm9yR76bJyMiQ0+l0LcXFxaZHAgAAt8gtPzMSHByssrIyt3VlZWXy8/Or86yIJNntdtnt9ls9GgAAuAPc8jMjMTExys3NdVu3a9cuxcTE3OpDAwCAJsDjGLl8+bKOHTumY8eOSfrxrbvHjh1TUVGRpB9fYklKSnJt/5vf/EanT5/WrFmz9Pnnn2vFihX6xz/+od/+9reN8wgAAECT5nGMHDp0SAMHDtTAgQMlSenp6Ro4cKDmzJkjSSopKXGFiSR1795dW7du1a5duxQVFaVFixbpjTfe4G29AABAUgOuGRk1apQsy6r3/ro+XXXUqFE6evSop4cCAAAtwB35bhoAANByECMAAMAoYgQAABhFjAAAAKOIEQAAYBQxAgAAjCJGAACAUcQIAAAwihgBAABGESMAAMAoYgQAABhFjAAAAKOIEQAAYBQxAgAAjCJGAACAUcQIAAAwihgBAABGESMAAMAoYgQAABhFjAAAAKOIEQAAYBQxAgAAjCJGAACAUcQIAAAwihgBAABGESMAAMAoYgQAABhFjAAAAKOIEQAAYBQxAgAAjCJGAACAUcQIAAAwihgBAABGESMAAMAoYgQAABhFjAAAAKOIEQAAYBQxAgAAjCJGAACAUcQIAAAwihgBAABGESMAAMAoYgQAABhFjAAAAKOIEQAAYBQxAgAAjCJGAACAUcQIAAAwqkExsnz5cnXr1k0+Pj4aNmyYDh48WO+2OTk5stlsbouPj0+DBwYAAM2LxzGydu1apaena+7cuTpy5IiioqIUFxens2fP1ruPn5+fSkpKXEthYeFNDQ0AAJoPj2Nk8eLFSklJ0eTJkxUZGanMzEy1a9dO2dnZ9e5js9kUHBzsWoKCgm5qaAAA0Hx4FCPV1dU6fPiwYmNjf/oBXl6KjY1Vfn5+vftdvnxZ4eHhCgsL04QJE/TZZ59d8zhVVVUqLy93WwAAQPPkUYycP39eNTU1V53ZCAoKUmlpaZ37REREKDs7Wxs3btTbb7+t2tpajRgxQl999VW9x3E4HPL393ctYWFhnowJAACakFv+bpqYmBglJSVpwIABGjlypN59910FBATo9ddfr3efjIwMOZ1O11JcXHyrxwQAAIa09mTju+66S61atVJZWZnb+rKyMgUHB9/Qz2jTpo0GDhyokydP1ruN3W6X3W73ZDQAANBEeXRmxNvbW9HR0crNzXWtq62tVW5urmJiYm7oZ9TU1Oj48eMKCQnxbFIAANAseXRmRJLS09OVnJyswYMHa+jQoVq6dKkqKys1efJkSVJSUpJCQ0PlcDgkSfPnz9fw4cPVo0cPXbp0SQsXLlRhYaGmTp3auI8EAAA0SR7HyMSJE3Xu3DnNmTNHpaWlGjBggHbs2OG6qLWoqEheXj+dcLl48aJSUlJUWlqqTp06KTo6Wnl5eYqMjGy8RwEAAJosj2NEktLS0pSWllbnffv27XO7vWTJEi1ZsqQhhwEAAC0A300DAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAo4gRAABgFDECAACMIkYAAIBRxAgAADCKGAEAAEYRIwAAwChiBAAAGEWMAAAAoxoUI8uXL1e3bt3k4+OjYcOG6eDBg9fcft26derVq5d8fHzUr18/bdu2rUHDAgCA5sfjGFm7dq3S09M1d+5cHTlyRFFRUYqLi9PZs2fr3D4vL0+TJk3SlClTdPToUSUmJioxMVEnTpy46eEBAEDT53GMLF68WCkpKZo8ebIiIyOVmZmpdu3aKTs7u87tX331VY0bN07PP/+8evfurZdeekmDBg3SsmXLbnp4AADQ9HkUI9XV1Tp8+LBiY2N/+gFeXoqNjVV+fn6d++Tn57ttL0lxcXH1bg8AAFqW1p5sfP78edXU1CgoKMhtfVBQkD7//PM69yktLa1z+9LS0nqPU1VVpaqqKtdtp9MpSSovL/dk3Nuutupb0yM0G3f6f9ZNBc/JxsNzsvHwvGwcTeE5eWVGy7KuuZ1HMXK7OBwOzZs376r1YWFhBqaBCf5LTU8AuOM5iTtNU3pOVlRUyN/fv977PYqRu+66S61atVJZWZnb+rKyMgUHB9e5T3BwsEfbS1JGRobS09Ndt2tra3XhwgX94he/kM1m82Rk/Ex5ebnCwsJUXFwsPz8/0+MAknhe4s7Dc7LxWJaliooKdenS5ZrbeRQj3t7eio6OVm5urhITEyX9GAq5ublKS0urc5+YmBjl5uZq5syZrnW7du1STExMvcex2+2y2+1u6zp27OjJqLgGPz8//guGOw7PS9xpeE42jmudEbnC45dp0tPTlZycrMGDB2vo0KFaunSpKisrNXnyZElSUlKSQkND5XA4JEnPPfecRo4cqUWLFik+Pl5r1qzRoUOHlJWV5emhAQBAM+RxjEycOFHnzp3TnDlzVFpaqgEDBmjHjh2ui1SLiork5fXTm3RGjBih1atX64UXXtDs2bPVs2dPbdiwQX379m28RwEAAJosm3W9S1zRbFRVVcnhcCgjI+Oql8EAU3he4k7Dc/L2I0YAAIBRfFEeAAAwihgBAABGESMAAMAoYqSF4luTAQB3CmKkBamoqFBWVpaGDh2qqKgo0+MAgHF79uxRZGRknd/z4nQ61adPH/3zn/80MFnLQoy0AAcOHFBycrJCQkL0yiuvaPTo0froo49Mj4UW7L///a/r38XFxZozZ46ef/55/kcft93SpUuVkpJS5yet+vv7a9q0aVq8eLGByVoW3trbTJWWlionJ0dvvvmmysvL9fjjjyszM1OffPKJIiMjTY+HFur48eNKSEhQcXGxevbsqTVr1mjcuHGqrKyUl5eXKisrtX79etfXTQC3Wnh4uHbs2KHevXvXef/nn3+usWPHqqio6DZP1rJwZqQZSkhIUEREhD799FMtXbpU33zzjV577TXTYwGaNWuW+vXrpwMHDmjUqFF66KGHFB8fL6fTqYsXL2ratGlasGCB6THRgpSVlalNmzb13t+6dWudO3fuNk7UMnn8cfC4823fvl3PPvuspk+frp49e5oeB3D5+OOPtWfPHvXv319RUVHKysrSM8884/oKiRkzZmj48OGGp0RLEhoaqhMnTqhHjx513v/pp58qJCTkNk/V8nBmpBn64IMPVFFRoejoaA0bNkzLli3T+fPnTY8F6MKFCwoODpYkdejQQe3bt1enTp1c93fq1EkVFRWmxkML9Mtf/lJ//OMf9f33319133fffae5c+fqoYceMjBZy8I1I81YZWWl1q5dq+zsbB08eFA1NTVavHixnn76afn6+poeDy2Ql5eXysrKFBAQIEny9fXVp59+qu7du0v68ZR5ly5dVFNTY3JMtCBlZWUaNGiQWrVqpbS0NEVEREj68VqR5cuXq6amRkeOHHF9GSxuDWKkhSgoKNCbb76pt956S5cuXdKYMWO0adMm02OhhfHy8tL48eNdXz62efNmjR49Wu3bt5f04xeU7dixgxjBbVVYWKjp06dr586duvIn0WazKS4uTsuXL3fFMm4dYqSFqamp0ebNm5WdnU2M4LabPHnyDW23atWqWzwJcLWLFy/q5MmTsixLPXv2dHsJEbcWMQIAAIziAlYAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACj/g9tifv6kyRFaAAAAABJRU5ErkJggg==", "text/plain": [ "<Figure size 640x480 with 1 Axes>" ] @@ -95,9 +95,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.8" + "version": "3.12.12" } }, "nbformat": 4, "nbformat_minor": 5 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_custom_convert_multiple_extensions_auto.xml b/tests/test_execute/test_custom_convert_multiple_extensions_auto.xml index 47bc0197..fe18cdc5 100644 --- a/tests/test_execute/test_custom_convert_multiple_extensions_auto.xml +++ b/tests/test_execute/test_custom_convert_multiple_extensions_auto.xml @@ -19,4 +19,4 @@ <literal_block classes="output text_plain" language="myst-ansi" xml:space="preserve"> <Figure size 640x480 with 1 Axes> <container mime_type="image/png"> - <image candidates="{'*': '_build/jupyter_execute/c9eff9c3855d539f1d3367c7dc0ece914fa84c3badb7513a2e485c65ed57a262.png'}" uri="_build/jupyter_execute/c9eff9c3855d539f1d3367c7dc0ece914fa84c3badb7513a2e485c65ed57a262.png"> + <image candidates="{'*': '_build/jupyter_execute/9af310c61f9e96d898144e35f0dc3bf6757626c2072ad98732a4d71c1ec5ec59.png'}" uri="_build/jupyter_execute/9af310c61f9e96d898144e35f0dc3bf6757626c2072ad98732a4d71c1ec5ec59.png"> diff --git a/tests/test_execute/test_custom_convert_multiple_extensions_cache.ipynb b/tests/test_execute/test_custom_convert_multiple_extensions_cache.ipynb index 8db720f6..41bfa6d1 100644 --- a/tests/test_execute/test_custom_convert_multiple_extensions_cache.ipynb +++ b/tests/test_execute/test_custom_convert_multiple_extensions_cache.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "raw", - "id": "e22c2f16", + "id": "76233962", "metadata": {}, "source": [ "---\n", @@ -14,7 +14,7 @@ }, { "cell_type": "markdown", - "id": "cb24d589", + "id": "8822bbed", "metadata": {}, "source": [ "# Custom Formats" @@ -23,7 +23,7 @@ { "cell_type": "code", "execution_count": 1, - "id": "d8eca9cd", + "id": "e4638ed2", "metadata": { "echo": true }, @@ -37,7 +37,7 @@ { "cell_type": "code", "execution_count": 2, - "id": "ba6eb697", + "id": "9cdca50e", "metadata": { "fig.height": 5, "fig.width": 8, @@ -59,7 +59,7 @@ }, { "data": { - "image/png": "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", + "image/png": "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AQBAM+RxjEycOFHnzp3TnDlzVFpaqgEDBmjHjh2ui1SLiork5fXTm3RGjBih1atX64UXXtDs2bPVs2dPbdiwQX379m28RwEAAJosm3W9S1zRbFRVVcnhcCgjI+Oql8EAU3he4k7Dc/L2I0YAAIBRfFEeAAAwihgBAABGESMAAMAoYqSF4luTAQB3CmKkBamoqFBWVpaGDh2qqKgo0+MAgHF79uxRZGRknd/z4nQ61adPH/3zn/80MFnLQoy0AAcOHFBycrJCQkL0yiuvaPTo0froo49Mj4UW7L///a/r38XFxZozZ46ef/55/kcft93SpUuVkpJS5yet+vv7a9q0aVq8eLGByVoW3trbTJWWlionJ0dvvvmmysvL9fjjjyszM1OffPKJIiMjTY+HFur48eNKSEhQcXGxevbsqTVr1mjcuHGqrKyUl5eXKisrtX79etfXTQC3Wnh4uHbs2KHevXvXef/nn3+usWPHqqio6DZP1rJwZqQZSkhIUEREhD799FMtXbpU33zzjV577TXTYwGaNWuW+vXrpwMHDmjUqFF66KGHFB8fL6fTqYsXL2ratGlasGCB6THRgpSVlalNmzb13t+6dWudO3fuNk7UMnn8cfC4823fvl3PPvuspk+frp49e5oeB3D5+OOPtWfPHvXv319RUVHKysrSM8884/oKiRkzZmj48OGGp0RLEhoaqhMnTqhHjx513v/pp58qJCTkNk/V8nBmpBn64IMPVFFRoejoaA0bNkzLli3T+fPnTY8F6MKFCwoODpYkdejQQe3bt1enTp1c93fq1EkVFRWmxkML9Mtf/lJ//OMf9f33319133fffae5c+fqoYceMjBZy8I1I81YZWWl1q5dq+zsbB08eFA1NTVavHixnn76afn6+poeDy2Ql5eXysrKFBAQIEny9fXVp59+qu7du0v68ZR5ly5dVFNTY3JMtCBlZWUaNGiQWrVqpbS0NEVEREj68VqR5cuXq6amRkeOHHF9GSxuDWKkhSgoKNCbb76pt956S5cuXdKYMWO0adMm02OhhfHy8tL48eNdXz62efNmjR49Wu3bt5f04xeU7dixgxjBbVVYWKjp06dr586duvIn0WazKS4uTsuXL3fFMm4dYqSFqamp0ebNm5WdnU2M4LabPHnyDW23atWqWzwJcLWLFy/q5MmTsixLPXv2dHsJEbcWMQIAAIziAlYAAGAUMQIAAIwiRgAAgFHECAAAMIoYAQAARhEjAADAKGIEAAAYRYwAAACj/g9tifv6kyRFaAAAAABJRU5ErkJggg==", "text/plain": [ "<Figure size 640x480 with 1 Axes>" ] @@ -95,9 +95,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.8" + "version": "3.12.12" } }, "nbformat": 4, "nbformat_minor": 5 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_custom_convert_multiple_extensions_cache.xml b/tests/test_execute/test_custom_convert_multiple_extensions_cache.xml index 47bc0197..fe18cdc5 100644 --- a/tests/test_execute/test_custom_convert_multiple_extensions_cache.xml +++ b/tests/test_execute/test_custom_convert_multiple_extensions_cache.xml @@ -19,4 +19,4 @@ <literal_block classes="output text_plain" language="myst-ansi" xml:space="preserve"> <Figure size 640x480 with 1 Axes> <container mime_type="image/png"> - <image candidates="{'*': '_build/jupyter_execute/c9eff9c3855d539f1d3367c7dc0ece914fa84c3badb7513a2e485c65ed57a262.png'}" uri="_build/jupyter_execute/c9eff9c3855d539f1d3367c7dc0ece914fa84c3badb7513a2e485c65ed57a262.png"> + <image candidates="{'*': '_build/jupyter_execute/9af310c61f9e96d898144e35f0dc3bf6757626c2072ad98732a4d71c1ec5ec59.png'}" uri="_build/jupyter_execute/9af310c61f9e96d898144e35f0dc3bf6757626c2072ad98732a4d71c1ec5ec59.png"> diff --git a/tests/test_execute/test_jupyter_cache_path.ipynb b/tests/test_execute/test_jupyter_cache_path.ipynb index 659122c8..493dc282 100644 --- a/tests/test_execute/test_jupyter_cache_path.ipynb +++ b/tests/test_execute/test_jupyter_cache_path.ipynb @@ -44,10 +44,10 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.12" }, "test_name": "notebook1" }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_execute/test_no_execute.ipynb b/tests/test_execute/test_no_execute.ipynb index d30db534..a2a3bf0c 100644 --- a/tests/test_execute/test_no_execute.ipynb +++ b/tests/test_execute/test_no_execute.ipynb @@ -42,4 +42,4 @@ }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file diff --git a/tests/test_glue/test_parser.txt b/tests/test_glue/test_parser.txt index d2b975b6..d23398ac 100644 --- a/tests/test_glue/test_parser.txt +++ b/tests/test_glue/test_parser.txt @@ -4,25 +4,25 @@ Glue Tests <container cell_index="1" cell_metadata="{}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> from myst_nb import glue <container cell_index="2" cell_metadata="{}" classes="cell" exec_count="2" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> glue("key_text1", "text1") glue("key_float", 3.14159) <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output text_plain" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output text_plain" language="myst-ansi" linenos="0" xml:space="preserve"> 'text1' - <literal_block classes="output text_plain" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output text_plain" language="myst-ansi" linenos="0" xml:space="preserve"> 3.14159 <container cell_index="3" cell_metadata="{}" classes="cell" exec_count="3" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> glue("key_undisplayed", "undisplayed", display=False) <container cell_index="4" cell_metadata="{'scrolled': True}" classes="cell" exec_count="4" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import pandas as pd df = pd.DataFrame({"header": [1, 2, 3]}) @@ -68,7 +68,7 @@ </div> <container cell_index="5" cell_metadata="{}" classes="cell" exec_count="5" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import matplotlib.pyplot as plt plt.plot([1, 2, 3]) @@ -149,7 +149,7 @@ Math <container cell_index="8" cell_metadata="{}" classes="cell" exec_count="6" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import sympy as sym f = sym.Function("f") @@ -158,8 +158,8 @@ f = y(n) - 2 * y(n - 1 / sym.pi) - 5 * y(n - 2) glue("sym_eq", sym.rsolve(f, y(n), [1, 4])) <container classes="cell_output" nb_element="cell_code_output"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> \displaystyle \left(\sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} - \frac{2 \sqrt{5} i}{5}\right) + \left(- \sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} + \frac{2 \sqrt{5} i}{5}\right) <target refid="equation-eq-sym"> - <math_block classes="pasted-math" docname="with_glue" ids="equation-eq-sym" label="eq-sym" nowrap="False" number="1" xml:space="preserve"> + <math_block classes="pasted-math" docname="with_glue" ids="equation-eq-sym" label="eq-sym" nowrap="0" number="1" xml:space="preserve"> \displaystyle \left(\sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} - \frac{2 \sqrt{5} i}{5}\right) + \left(- \sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} + \frac{2 \sqrt{5} i}{5}\right) diff --git a/tests/test_parser/test_complex_outputs.xml b/tests/test_parser/test_complex_outputs.xml index 13bdcc7f..d1348155 100644 --- a/tests/test_parser/test_complex_outputs.xml +++ b/tests/test_parser/test_complex_outputs.xml @@ -201,7 +201,7 @@ </table> </div> <container mime_type="text/latex"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> \begin{tabular}{lllrr} \toprule {} & a & b & c & d \\ @@ -227,7 +227,7 @@ <container classes="cell_output" nb_element="cell_code_output"> <container nb_element="mime_bundle"> <container mime_type="text/latex"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> a = b+c <container mime_type="text/plain"> <literal_block classes="output text_plain" language="myst-ansi" xml:space="preserve"> @@ -246,7 +246,7 @@ <container mime_type="image/png"> <image candidates="{'*': '_build/jupyter_execute/8c43e5c8cccf697754876b7fec1b0a9b731d7900bb585e775a5fa326b4de8c5a.png'}" uri="_build/jupyter_execute/8c43e5c8cccf697754876b7fec1b0a9b731d7900bb585e775a5fa326b4de8c5a.png"> <container mime_type="text/latex"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> \displaystyle \left(\sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} - \frac{2 \sqrt{5} i}{5}\right) + \left(- \sqrt{5} i\right)^{\alpha} \left(\frac{1}{2} + \frac{2 \sqrt{5} i}{5}\right) <container mime_type="text/plain"> <literal_block classes="output text_plain" language="myst-ansi" xml:space="preserve"> diff --git a/tests/test_render_outputs/test_basic_run.xml b/tests/test_render_outputs/test_basic_run.xml index 93ab5b60..a9c2fd21 100644 --- a/tests/test_render_outputs/test_basic_run.xml +++ b/tests/test_render_outputs/test_basic_run.xml @@ -6,9 +6,9 @@ some text <container cell_index="1" cell_metadata="{}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> a = 1 print(a) <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> 1 diff --git a/tests/test_render_outputs/test_complex_outputs.xml b/tests/test_render_outputs/test_complex_outputs.xml index 811508b2..a593c5bf 100644 --- a/tests/test_render_outputs/test_complex_outputs.xml +++ b/tests/test_render_outputs/test_complex_outputs.xml @@ -1,7 +1,7 @@ <document source="complex_outputs"> <container cell_index="0" cell_metadata="{'init_cell': True, 'slideshow': {'slide_type': 'skip'}}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import matplotlib.pyplot as plt import pandas as pd import sympy as sym @@ -89,13 +89,13 @@ Text Output <container cell_index="11" cell_metadata="{'ipub': {'text': {'format': {'backgroundcolor': '\\color{blue!10}'}}}}" classes="cell" exec_count="2" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> print(""" This is some printed text, with a nicely formatted output. """) <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> This is some printed text, with a nicely formatted output. @@ -105,7 +105,7 @@ Images and Figures <container cell_index="13" cell_metadata="{'ipub': {'figure': {'caption': 'A nice picture.', 'label': 'fig:example', 'placement': '!bh'}}}" classes="cell" exec_count="3" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> Image("example.jpg", height=400) <container classes="cell_output" nb_element="cell_code_output"> <image candidates="{'*': '_build/jupyter_execute/a4c9580c74dacf6f3316a3bd2e2a347933aa4463834dcf1bb8f20b4fcb476ae1.jpg'}" height="400" uri="_build/jupyter_execute/a4c9580c74dacf6f3316a3bd2e2a347933aa4463834dcf1bb8f20b4fcb476ae1.jpg"> @@ -118,7 +118,7 @@ The plotting code for a matplotlib figure (\cref{fig:example_mpl}). <container cell_index="17" cell_metadata="{'ipub': {'code': {'asfloat': True, 'caption': 'a', 'label': 'code:example_mpl', 'widefigure': False}, 'figure': {'caption': '', 'label': 'fig:example_mpl', 'widefigure': False}}}" classes="cell" exec_count="4" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> plt.scatter(np.random.rand(10), np.random.rand(10), label="data label") plt.ylabel(r"a y label with latex $\alpha$") plt.legend(); @@ -131,7 +131,7 @@ The plotting code for a pandas Dataframe table (\cref{tbl:example}). <container cell_index="20" cell_metadata="{'ipub': {'code': {'asfloat': True, 'caption': '', 'label': 'code:example_pd', 'placement': 'H', 'widefigure': False}, 'table': {'alternate': 'gray!20', 'caption': 'An example of a table created with pandas dataframe.', 'label': 'tbl:example', 'placement': 'H'}}}" classes="cell" exec_count="5" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> df = pd.DataFrame(np.random.rand(3, 4), columns=["a", "b", "c", "d"]) df.a = [r"$\delta$", "x", "y"] df.b = ["l", "m", "n"] @@ -193,16 +193,16 @@ Equations (with ipython or sympy) <container cell_index="22" cell_metadata="{'ipub': {'equation': {'label': 'eqn:example_ipy'}}}" classes="cell" exec_count="6" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> Latex("$$ a = b+c $$") <container classes="cell_output" nb_element="cell_code_output"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> a = b+c <paragraph> The plotting code for a sympy equation (=@eqn:example_sympy). <container cell_index="24" cell_metadata="{'ipub': {'code': {'asfloat': True, 'caption': '', 'label': 'code:example_sym', 'placement': 'H', 'widefigure': False}, 'equation': {'environment': 'equation', 'label': 'eqn:example_sympy'}}}" classes="cell" exec_count="7" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> y = sym.Function("y") n = sym.symbols(r"\alpha") f = y(n) - 2 * y(n - 1 / sym.pi) - 5 * y(n - 2) @@ -211,7 +211,7 @@ <image candidates="{'*': '_build/jupyter_execute/8c43e5c8cccf697754876b7fec1b0a9b731d7900bb585e775a5fa326b4de8c5a.png'}" uri="_build/jupyter_execute/8c43e5c8cccf697754876b7fec1b0a9b731d7900bb585e775a5fa326b4de8c5a.png"> <container cell_index="25" cell_metadata="{}" classes="cell" exec_count="7" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> from IPython.display import display, Markdown display(Markdown("**_some_ markdown**")) diff --git a/tests/test_render_outputs/test_complex_outputs_latex.xml b/tests/test_render_outputs/test_complex_outputs_latex.xml index d1c82738..136559de 100644 --- a/tests/test_render_outputs/test_complex_outputs_latex.xml +++ b/tests/test_render_outputs/test_complex_outputs_latex.xml @@ -1,7 +1,7 @@ <document source="complex_outputs"> <container cell_index="0" cell_metadata="{'init_cell': True, 'slideshow': {'slide_type': 'skip'}}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import matplotlib.pyplot as plt import pandas as pd import sympy as sym @@ -89,13 +89,13 @@ Text Output <container cell_index="11" cell_metadata="{'ipub': {'text': {'format': {'backgroundcolor': '\\color{blue!10}'}}}}" classes="cell" exec_count="2" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> print(""" This is some printed text, with a nicely formatted output. """) <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> This is some printed text, with a nicely formatted output. @@ -105,7 +105,7 @@ Images and Figures <container cell_index="13" cell_metadata="{'ipub': {'figure': {'caption': 'A nice picture.', 'label': 'fig:example', 'placement': '!bh'}}}" classes="cell" exec_count="3" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> Image("example.jpg", height=400) <container classes="cell_output" nb_element="cell_code_output"> <image candidates="{'*': '_build/jupyter_execute/a4c9580c74dacf6f3316a3bd2e2a347933aa4463834dcf1bb8f20b4fcb476ae1.jpg'}" height="400" uri="_build/jupyter_execute/a4c9580c74dacf6f3316a3bd2e2a347933aa4463834dcf1bb8f20b4fcb476ae1.jpg"> @@ -118,7 +118,7 @@ The plotting code for a matplotlib figure (\cref{fig:example_mpl}). <container cell_index="17" cell_metadata="{'ipub': {'code': {'asfloat': True, 'caption': 'a', 'label': 'code:example_mpl', 'widefigure': False}, 'figure': {'caption': '', 'label': 'fig:example_mpl', 'widefigure': False}}}" classes="cell" exec_count="4" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> plt.scatter(np.random.rand(10), np.random.rand(10), label="data label") plt.ylabel(r"a y label with latex $\alpha$") plt.legend(); @@ -131,14 +131,14 @@ The plotting code for a pandas Dataframe table (\cref{tbl:example}). <container cell_index="20" cell_metadata="{'ipub': {'code': {'asfloat': True, 'caption': '', 'label': 'code:example_pd', 'placement': 'H', 'widefigure': False}, 'table': {'alternate': 'gray!20', 'caption': 'An example of a table created with pandas dataframe.', 'label': 'tbl:example', 'placement': 'H'}}}" classes="cell" exec_count="5" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> df = pd.DataFrame(np.random.rand(3, 4), columns=["a", "b", "c", "d"]) df.a = [r"$\delta$", "x", "y"] df.b = ["l", "m", "n"] df.set_index(["a", "b"]) df.round(3) <container classes="cell_output" nb_element="cell_code_output"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> \begin{tabular}{lllrr} \toprule {} & a & b & c & d \\ @@ -153,16 +153,16 @@ Equations (with ipython or sympy) <container cell_index="22" cell_metadata="{'ipub': {'equation': {'label': 'eqn:example_ipy'}}}" classes="cell" exec_count="6" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> Latex("$$ a = b+c $$") <container classes="cell_output" nb_element="cell_code_output"> - <math_block classes="output text_latex" nowrap="False" number="True" xml:space="preserve"> + <math_block classes="output text_latex" nowrap="0" number="True" xml:space="preserve"> a = b+c <paragraph> The plotting code for a sympy equation (=@eqn:example_sympy). <container cell_index="24" cell_metadata="{'ipub': {'code': {'asfloat': True, 'caption': '', 'label': 'code:example_sym', 'placement': 'H', 'widefigure': False}, 'equation': {'environment': 'equation', 'label': 'eqn:example_sympy'}}}" classes="cell" exec_count="7" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> y = sym.Function("y") n = sym.symbols(r"\alpha") f = y(n) - 2 * y(n - 1 / sym.pi) - 5 * y(n - 2) @@ -171,7 +171,7 @@ <image candidates="{'*': '_build/jupyter_execute/8c43e5c8cccf697754876b7fec1b0a9b731d7900bb585e775a5fa326b4de8c5a.png'}" uri="_build/jupyter_execute/8c43e5c8cccf697754876b7fec1b0a9b731d7900bb585e775a5fa326b4de8c5a.png"> <container cell_index="25" cell_metadata="{}" classes="cell" exec_count="7" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> from IPython.display import display, Markdown display(Markdown("**_some_ markdown**")) diff --git a/tests/test_render_outputs/test_hide_cell_content.xml b/tests/test_render_outputs/test_hide_cell_content.xml index 66359142..4cd19273 100644 --- a/tests/test_render_outputs/test_hide_cell_content.xml +++ b/tests/test_render_outputs/test_hide_cell_content.xml @@ -5,32 +5,32 @@ <container cell_index="1" cell_metadata="{'tags': ['hide-input']}" classes="cell tag_hide-input" exec_count="1" hide_mode="input" nb_element="cell_code" prompt_hide="Hide code cell {type}" prompt_show="Show code cell {type}"> <HideCodeCellNode classes="above-input" prompt_hide="Hide code cell source" prompt_show="Show code cell source"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> print("hide-input") <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> hide-input <container cell_index="2" cell_metadata="{'tags': ['hide-output']}" classes="cell tag_hide-output" exec_count="2" hide_mode="output" nb_element="cell_code" prompt_hide="Hide code cell {type}" prompt_show="Show code cell {type}"> <container classes="cell_input above-output-prompt" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> print("hide-output") <HideCodeCellNode classes="below-input" prompt_hide="Hide code cell output" prompt_show="Show code cell output"> <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> hide-output <container cell_index="3" cell_metadata="{'tags': ['hide-cell']}" classes="cell tag_hide-cell" exec_count="4" hide_mode="all" nb_element="cell_code" prompt_hide="Hide code cell {type}" prompt_show="Show code cell {type}"> <HideCodeCellNode classes="above-input" prompt_hide="Hide code cell content" prompt_show="Show code cell content"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> print("hide-cell") <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> hide-cell <container cell_index="4" cell_metadata="{'tags': ['hide-cell'], 'mystnb': {'code_prompt_show': 'My show message', 'code_prompt_hide': 'My hide message'}}" classes="cell tag_hide-cell" exec_count="5" hide_mode="all" nb_element="cell_code" prompt_hide="My hide message" prompt_show="My show message"> <HideCodeCellNode classes="above-input" prompt_hide="My hide message" prompt_show="My show message"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> print("hide-cell custom message") <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> hide-cell custom message diff --git a/tests/test_render_outputs/test_merge_streams.xml b/tests/test_render_outputs/test_merge_streams.xml index d944e436..f0399b4f 100644 --- a/tests/test_render_outputs/test_merge_streams.xml +++ b/tests/test_render_outputs/test_merge_streams.xml @@ -1,7 +1,7 @@ <document source="merge_streams"> <container cell_index="0" cell_metadata="{}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import sys print("stdout1", file=sys.stdout) @@ -12,13 +12,13 @@ print("stderr3", file=sys.stderr) 1 <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> stdout1 stdout2 stdout3 - <literal_block classes="output stderr" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stderr" language="myst-ansi" linenos="0" xml:space="preserve"> stderr1 stderr2 stderr3 - <literal_block classes="output text_plain" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output text_plain" language="myst-ansi" linenos="0" xml:space="preserve"> 1 diff --git a/tests/test_render_outputs/test_merge_streams_parallel.xml b/tests/test_render_outputs/test_merge_streams_parallel.xml index 17254962..1bb52cfe 100644 --- a/tests/test_render_outputs/test_merge_streams_parallel.xml +++ b/tests/test_render_outputs/test_merge_streams_parallel.xml @@ -1,14 +1,14 @@ <document source="merge_streams_parallel"> <container cell_index="0" cell_metadata="{'execution': {'iopub.execute_input': '2024-09-19T21:44:29.809012Z', 'iopub.status.busy': '2024-09-19T21:44:29.808809Z', 'iopub.status.idle': '2024-09-19T21:44:29.978481Z', 'shell.execute_reply': '2024-09-19T21:44:29.977891Z'}}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> from concurrent.futures import ProcessPoolExecutor with ProcessPoolExecutor() as executor: for i in executor.map(print, [0] * 10): pass <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> 0 0 0 diff --git a/tests/test_render_outputs/test_metadata_figure.xml b/tests/test_render_outputs/test_metadata_figure.xml index 1ae8143d..74f40129 100644 --- a/tests/test_render_outputs/test_metadata_figure.xml +++ b/tests/test_render_outputs/test_metadata_figure.xml @@ -4,7 +4,7 @@ Formatting code outputs <container cell_index="1" cell_metadata="{'myst': {'figure': {'caption': 'Hey everyone its **party** time!\n', 'name': 'fun-fish'}}}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> from IPython.display import Image Image("fun-fish.png") @@ -18,6 +18,6 @@ time! <paragraph> Link: - <reference internal="True" refid="fun-fish"> + <reference internal="1" refid="fun-fish"> <inline classes="std std-ref"> swim to the fish diff --git a/tests/test_render_outputs/test_metadata_image.xml b/tests/test_render_outputs/test_metadata_image.xml index 33d586e3..1b773bae 100644 --- a/tests/test_render_outputs/test_metadata_image.xml +++ b/tests/test_render_outputs/test_metadata_image.xml @@ -4,7 +4,7 @@ Formatting code outputs <container cell_index="1" cell_metadata="{'myst': {'image': {'alt': 'fun-fish', 'classes': 'shadow bg-primary', 'width': '300px'}}}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> from IPython.display import Image Image("fun-fish.png") diff --git a/tests/test_render_outputs/test_metadata_image_output.xml b/tests/test_render_outputs/test_metadata_image_output.xml index bd398e43..d4e70ba7 100644 --- a/tests/test_render_outputs/test_metadata_image_output.xml +++ b/tests/test_render_outputs/test_metadata_image_output.xml @@ -4,7 +4,7 @@ Output metadata <container cell_index="1" cell_metadata="{'tags': ['skip-execution']}" classes="cell tag_skip-execution" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> # Outputs included with width/height in output metadata, # cell is not executed from IPython.display import Image @@ -14,7 +14,7 @@ <image candidates="{'*': '_build/jupyter_execute/a4c9580c74dacf6f3316a3bd2e2a347933aa4463834dcf1bb8f20b4fcb476ae1.jpg'}" height="100" uri="_build/jupyter_execute/a4c9580c74dacf6f3316a3bd2e2a347933aa4463834dcf1bb8f20b4fcb476ae1.jpg" width="500"> <container cell_index="2" cell_metadata="{}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> # No outputs, cell is executed, image should have original size (370, 254) from IPython.display import Image diff --git a/tests/test_render_outputs/test_metadata_multiple_image.xml b/tests/test_render_outputs/test_metadata_multiple_image.xml index 2c569e33..a25fb40d 100644 --- a/tests/test_render_outputs/test_metadata_multiple_image.xml +++ b/tests/test_render_outputs/test_metadata_multiple_image.xml @@ -6,7 +6,7 @@ This is a test case with multiple captioned and labelled images <container cell_index="1" cell_metadata="{'myst': {'figure': {'caption': 'Hey everyone its **party** time!\n', 'name': 'fun-fish'}, 'image': {'alt': 'fun-fish', 'classes': 'shadow bg-primary', 'width': '300px'}}}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> from IPython.display import Image Image("fun-fish.png") @@ -20,14 +20,14 @@ time! <paragraph> Link: - <reference internal="True" refid="fun-fish"> + <reference internal="1" refid="fun-fish"> <inline classes="std std-ref"> swim to the fish <paragraph> Adding another party fish image to test for multiple images <container cell_index="4" cell_metadata="{'myst': {'figure': {'caption': 'Hey everyone its **party** time again!\n', 'name': 'fun-fish2'}, 'image': {'alt': 'fun-fish2', 'classes': 'shadow bg-primary', 'width': '200px'}}}" classes="cell" exec_count="2" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> from IPython.display import Image Image("fun-fish.png") @@ -41,11 +41,11 @@ time again! <paragraph> Link: - <reference internal="True" refid="fun-fish"> + <reference internal="1" refid="fun-fish"> <inline classes="std std-ref"> swim to the fish <paragraph> Link: - <reference internal="True" refid="fun-fish2"> + <reference internal="1" refid="fun-fish2"> <inline classes="std std-ref"> swim to the fish again diff --git a/tests/test_render_outputs/test_scroll_outputs.xml b/tests/test_render_outputs/test_scroll_outputs.xml index 99d19a0c..6d8969f4 100644 --- a/tests/test_render_outputs/test_scroll_outputs.xml +++ b/tests/test_render_outputs/test_scroll_outputs.xml @@ -4,20 +4,20 @@ Scroll long outputs <container cell_index="1" cell_metadata="{}" classes="cell config_scroll_outputs" exec_count="2" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> for i in range(2): print("short output") <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> short output short output <container cell_index="2" cell_metadata="{}" classes="cell config_scroll_outputs" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> for i in range(100): print("long output") <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stream" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stream" language="myst-ansi" linenos="0" xml:space="preserve"> long output long output long output diff --git a/tests/test_render_outputs/test_stderr_remove.xml b/tests/test_render_outputs/test_stderr_remove.xml index 0ade48ad..f7eeefac 100644 --- a/tests/test_render_outputs/test_stderr_remove.xml +++ b/tests/test_render_outputs/test_stderr_remove.xml @@ -1,14 +1,14 @@ <document source="basic_stderr"> <container cell_index="0" cell_metadata="{}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import sys print("hallo", file=sys.stderr) <container classes="cell_output" nb_element="cell_code_output"> <container cell_index="1" cell_metadata="{'tags': ['remove-stderr']}" classes="cell tag_remove-stderr" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import sys print("hallo", file=sys.stderr) diff --git a/tests/test_render_outputs/test_stderr_tag.xml b/tests/test_render_outputs/test_stderr_tag.xml index 923ae5c4..0ed540bf 100644 --- a/tests/test_render_outputs/test_stderr_tag.xml +++ b/tests/test_render_outputs/test_stderr_tag.xml @@ -1,16 +1,16 @@ <document source="basic_stderr"> <container cell_index="0" cell_metadata="{}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import sys print("hallo", file=sys.stderr) <container classes="cell_output" nb_element="cell_code_output"> - <literal_block classes="output stderr" language="myst-ansi" linenos="False" xml:space="preserve"> + <literal_block classes="output stderr" language="myst-ansi" linenos="0" xml:space="preserve"> hallo <container cell_index="1" cell_metadata="{'tags': ['remove-stderr']}" classes="cell tag_remove-stderr" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> import sys print("hallo", file=sys.stderr) diff --git a/tests/test_render_outputs/test_unknown_mimetype.xml b/tests/test_render_outputs/test_unknown_mimetype.xml index 61d59ff2..06837614 100644 --- a/tests/test_render_outputs/test_unknown_mimetype.xml +++ b/tests/test_render_outputs/test_unknown_mimetype.xml @@ -1,7 +1,7 @@ <document source="unknown_mimetype"> <container cell_index="0" cell_metadata="{}" classes="cell" exec_count="1" nb_element="cell_code"> <container classes="cell_input" nb_element="cell_code_source"> - <literal_block language="ipython3" linenos="False" xml:space="preserve"> + <literal_block language="ipython3" linenos="0" xml:space="preserve"> a = 1 print(a) <container classes="cell_output" nb_element="cell_code_output"> diff --git a/tox.ini b/tox.ini index 42d442e8..f276f897 100644 --- a/tox.ini +++ b/tox.ini @@ -16,7 +16,7 @@ envlist = py313-sphinx8 [testenv] usedevelop = true -[testenv:py{310,311,312,313}-sphinx{5,6,7,8}] +[testenv:py{310,311,312,313,314}-sphinx{5,6,7,8}] extras = testing deps = sphinx5: sphinx>=5,<6