- Update to 6.1.0:
* Add support for lexing nested fenced codeblocks in markdown. * Add support for tilde-delimited codeblocks in markdown. * Fix bug with the end offset of codeblocks in markdown. * Support pytest 8 and above, due to yet another breaking change in an API Sybil relies on. * Remove use of deprecated py.path.local. * Fix lexing of ReST directives and directives-in-comments where the directives were not separated by at least one newline. * Official support for Python 3.12 with Python 3.7 now being the minimum supported version. * sybil.parsers.rest.lexers.DirectiveLexer and sybil.parsers.myst.lexers.DirectiveLexer directives now have their options extracted as part of the lexing process. * Added support for MyST single-line html-style comment directives. * Fixed parsing of MyST directive options with no leading whitespace. * Fixed parsing of Markdown and MyST fenced codeblocks at the end of documents with no trailing newline. * Rework document evaluators to be more flexible and structured. * :ref:`skip <skip-parser>` has been reworked to check validity of operations and allow a reason to be provided for an unconditional skip so it can be highlighted as a skipped test in test runner output. The skip parsers are also now lexer-based. * Make Region.evaluator optional, removing the need for the separate LexedRegion class. * Fix bug in traceback trimming on the latest release of pytest. * Fixed bug in the repr of LexedRegion instances where a lexeme was None. * Fixed lexing of ReST directives, such as :rst:dir:`code-block`, where they occurred at the end of a docstring. * Ensure the sybil.Document.namespace in which doctests are OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-sybil?expand=0&rev=36
This commit is contained in:
parent
019627b665
commit
03c5560bbe
@ -1,43 +0,0 @@
|
|||||||
From df0d221c1d9da1454a5ef7fd72675d8d43b96eb0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Chris Withers <chris@simplistix.co.uk>
|
|
||||||
Date: Tue, 4 Jul 2023 18:54:22 +0100
|
|
||||||
Subject: [PATCH] Deal with more pytest internals changing
|
|
||||||
|
|
||||||
---
|
|
||||||
.circleci/config.yml | 3 ++-
|
|
||||||
sybil/integration/pytest.py | 22 +++++++++++++++++-----
|
|
||||||
2 files changed, 19 insertions(+), 6 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/sybil/integration/pytest.py b/sybil/integration/pytest.py
|
|
||||||
index b32062d..8529771 100644
|
|
||||||
--- a/sybil/integration/pytest.py
|
|
||||||
+++ b/sybil/integration/pytest.py
|
|
||||||
@@ -78,11 +78,23 @@ def setup(self):
|
|
||||||
def runtest(self):
|
|
||||||
self.example.evaluate()
|
|
||||||
|
|
||||||
- def _prunetraceback(self, excinfo):
|
|
||||||
- tb = excinfo.traceback.cut(path=example_module_path)
|
|
||||||
- tb = tb[1]
|
|
||||||
- if getattr(tb, '_rawentry', None) is not None:
|
|
||||||
- excinfo.traceback = Traceback(tb._rawentry, excinfo)
|
|
||||||
+ if PYTEST_VERSION >= (7, 4, 0):
|
|
||||||
+
|
|
||||||
+ def _traceback_filter(self, excinfo: ExceptionInfo[BaseException]) -> Traceback:
|
|
||||||
+ traceback = excinfo.traceback
|
|
||||||
+ tb = traceback.cut(path=example_module_path)
|
|
||||||
+ tb = tb[1]
|
|
||||||
+ if getattr(tb, '_rawentry', None) is not None:
|
|
||||||
+ traceback = Traceback(tb._rawentry)
|
|
||||||
+ return traceback
|
|
||||||
+
|
|
||||||
+ else:
|
|
||||||
+
|
|
||||||
+ def _prunetraceback(self, excinfo):
|
|
||||||
+ tb = excinfo.traceback.cut(path=example_module_path)
|
|
||||||
+ tb = tb[1]
|
|
||||||
+ if getattr(tb, '_rawentry', None) is not None:
|
|
||||||
+ excinfo.traceback = Traceback(tb._rawentry, excinfo)
|
|
||||||
|
|
||||||
def repr_failure(
|
|
||||||
self,
|
|
@ -1,3 +1,51 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 8 04:19:03 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
|
||||||
|
|
||||||
|
- Update to 6.1.0:
|
||||||
|
* Add support for lexing nested fenced codeblocks in markdown.
|
||||||
|
* Add support for tilde-delimited codeblocks in markdown.
|
||||||
|
* Fix bug with the end offset of codeblocks in markdown.
|
||||||
|
* Support pytest 8 and above, due to yet another breaking change in an API
|
||||||
|
Sybil relies on.
|
||||||
|
* Remove use of deprecated py.path.local.
|
||||||
|
* Fix lexing of ReST directives and directives-in-comments where the
|
||||||
|
directives were not separated by at least one newline.
|
||||||
|
* Official support for Python 3.12 with Python 3.7 now being the minimum
|
||||||
|
supported version.
|
||||||
|
* sybil.parsers.rest.lexers.DirectiveLexer and
|
||||||
|
sybil.parsers.myst.lexers.DirectiveLexer directives now have their
|
||||||
|
options extracted as part of the lexing process.
|
||||||
|
* Added support for MyST single-line html-style comment directives.
|
||||||
|
* Fixed parsing of MyST directive options with no leading whitespace.
|
||||||
|
* Fixed parsing of Markdown and MyST fenced codeblocks at the end of
|
||||||
|
documents with no trailing newline.
|
||||||
|
* Rework document evaluators to be more flexible and structured.
|
||||||
|
* :ref:`skip <skip-parser>` has been reworked to check validity of operations
|
||||||
|
and allow a reason to be provided for an unconditional skip so it can be
|
||||||
|
highlighted as a skipped test in test runner output. The skip parsers
|
||||||
|
are also now lexer-based.
|
||||||
|
* Make Region.evaluator optional, removing the need for the separate
|
||||||
|
LexedRegion class.
|
||||||
|
* Fix bug in traceback trimming on the latest release of pytest.
|
||||||
|
* Fixed bug in the repr of LexedRegion instances where a lexeme was None.
|
||||||
|
* Fixed lexing of ReST directives, such as :rst:dir:`code-block`, where they
|
||||||
|
occurred at the end of a docstring.
|
||||||
|
* Ensure the sybil.Document.namespace in which doctests are
|
||||||
|
evaluated always has a __name__. This is required by an implementation
|
||||||
|
detail of typing.runtime_checkable.
|
||||||
|
* Fix a bug that prevent r-prefixed docstrings from being correctly parsed
|
||||||
|
from .py files.
|
||||||
|
* The sybil.Document.namespace can now be cleared in both ReST and MyST.
|
||||||
|
* Support for Python 3.6 has been dropped.
|
||||||
|
* Support for pytest versions earlier than 7.1 has been dropped.
|
||||||
|
* Switch :func:`sybil.parsers.myst.SkipParser` to use the correct comment
|
||||||
|
character.
|
||||||
|
* Warn about ReST and MyST doctest parsers and overlapping blocks.
|
||||||
|
* Restructure to support lexing source languages such as ReST and MyST
|
||||||
|
while testing examples in target languages such as Python, doctest and bash.
|
||||||
|
* Add support for MyST examples.
|
||||||
|
- Drop patch pytest74.patch, included upstream.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Jan 16 15:22:42 UTC 2024 - Markéta Machová <mmachova@suse.com>
|
Tue Jan 16 15:22:42 UTC 2024 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package python-sybil
|
# spec file for package python-sybil
|
||||||
#
|
#
|
||||||
# Copyright (c) 2023 SUSE LLC
|
# Copyright (c) 2024 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -18,17 +18,19 @@
|
|||||||
|
|
||||||
%{?sle15_python_module_pythons}
|
%{?sle15_python_module_pythons}
|
||||||
Name: python-sybil
|
Name: python-sybil
|
||||||
Version: 3.0.1
|
Version: 6.1.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Automated testing of examples in documentation
|
Summary: Automated testing of examples in documentation
|
||||||
License: MIT
|
License: MIT
|
||||||
URL: https://github.com/cjw296/sybil
|
URL: https://github.com/simplistix/sybil
|
||||||
Source: https://files.pythonhosted.org/packages/source/s/sybil/sybil-%{version}.tar.gz
|
Source: https://github.com/simplistix/sybil/archive/refs/tags/%{version}.tar.gz#/sybil-%{version}.tar.gz
|
||||||
#PATCH-FIX-UPSTREAM https://github.com/simplistix/sybil/commit/df0d221c1d9da1454a5ef7fd72675d8d43b96eb0 Deal with more pytest internals changing
|
BuildRequires: %{python_module PyYAML}
|
||||||
Patch: pytest74.patch
|
BuildRequires: %{python_module base >= 3.7}
|
||||||
BuildRequires: %{python_module pip}
|
BuildRequires: %{python_module pip}
|
||||||
BuildRequires: %{python_module pytest >= 6.2}
|
BuildRequires: %{python_module pytest >= 7.1}
|
||||||
|
BuildRequires: %{python_module seedir}
|
||||||
BuildRequires: %{python_module setuptools}
|
BuildRequires: %{python_module setuptools}
|
||||||
|
BuildRequires: %{python_module testfixtures}
|
||||||
BuildRequires: %{python_module wheel}
|
BuildRequires: %{python_module wheel}
|
||||||
%if 0%{?sle_version} && 0%{?sle_version} <= 150400
|
%if 0%{?sle_version} && 0%{?sle_version} <= 150400
|
||||||
BuildRequires: %{python_module dataclasses}
|
BuildRequires: %{python_module dataclasses}
|
||||||
@ -45,9 +47,8 @@ them from the documentation source and evaluating the parsed examples as part
|
|||||||
of the normal test run. Integration is provided for the main Python test runners.
|
of the normal test run. Integration is provided for the main Python test runners.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n sybil-%{version}
|
%autosetup -p1 -n sybil-%{version}
|
||||||
sed -i '/pytest-cov/ d' setup.py
|
sed -i '/pytest-cov/ d' setup.py
|
||||||
%autopatch -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%pyproject_wheel
|
%pyproject_wheel
|
||||||
@ -63,6 +64,6 @@ sed -i '/pytest-cov/ d' setup.py
|
|||||||
%doc README.rst docs/changes.rst
|
%doc README.rst docs/changes.rst
|
||||||
%license docs/license.rst
|
%license docs/license.rst
|
||||||
%{python_sitelib}/sybil
|
%{python_sitelib}/sybil
|
||||||
%{python_sitelib}/sybil-%{version}*-info
|
%{python_sitelib}/sybil-%{version}.dist-info
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
BIN
sybil-3.0.1.tar.gz
(Stored with Git LFS)
BIN
sybil-3.0.1.tar.gz
(Stored with Git LFS)
Binary file not shown.
3
sybil-6.1.0.tar.gz
Normal file
3
sybil-6.1.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:6a50c5ee9cc289f8c1055aa4f922c9ed9c3d8529ec002b70dbc73fd1906d094a
|
||||||
|
size 70823
|
Loading…
x
Reference in New Issue
Block a user