Skip to content

Latest commit

 

History

History
345 lines (216 loc) · 9.4 KB

CHANGELOG.rst

File metadata and controls

345 lines (216 loc) · 9.4 KB

Changes

9.0.0 (12 Nov 2024)

8.0.1 (30 Oct 2024)

  • Better error message when skip arguments are malformed.
  • Remove unused constant that caused problems with development releases of pytest.

8.0.0 (20 Sep 2024)

  • Drop Python 3.8 support.
  • Internal code tidying.

Thanks to Adam Dangoor for the work on these!

7.1.1 (16 Sep 2024)

7.1.0 (16 Sep 2024)

  • Introduce a pytest extra, such that you can install Sybil in a way that ensures compatible versions of Sybil and pytest are used.
  • Fix a :class:`DeprecationWarning` on Python 3.13.

Thanks to Adam Dangoor for this fix.

7.0.0 (12 Sep 2024)

  • Drop Python 3.7 support.
  • Drop support for pytest versions less than 8.
  • :class:`Sybil` now takes a name which is used in any test identifiers it produces.
  • Add support for :rst:dir:`code` and :rst:dir:`sourcecode` directives in both ReST and MyST.
  • Fix bug in the pytest integration that prevented multiple :class:`Sybil` instances from parsing the same file.
  • Fix bug where escaped quotes were not correctly unescaped in regions extracted from docstrings.
  • Restructure usage documentation, splitting out :doc:`integration` and :doc:`parsers` documents and introducing a :doc:`concepts` glossary.

6.1.1 (9 May 2024)

  • Fix lexing of indented blocks where embedded blank lines would be erroneously removed.

6.1.0 (22 Apr 2024)

  • 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.

6.0.3 (31 Jan 2024)

  • Support pytest 8 and above, due to yet another breaking change in an API Sybil relies on.

Thanks to Adam Dangoor for the fix.

6.0.2 (23 Nov 2023)

  • Remove use of deprecated py.path.local.

6.0.1 (22 Nov 2023)

  • Fix lexing of ReST directives and directives-in-comments where the directives were not separated by at least one newline.

6.0.0 (21 Nov 2023)

  • The public interface is now fully typed and checked with mypy.
  • Official support for Python 3.12 with Python 3.7 now being the minimum supported version.
  • :doc:`Markdown <markdown>` is now supported separately to :doc:`MyST <myst>`.
  • :any:`ReST <sybil.parsers.rest.lexers.DirectiveLexer>` and :any:`MyST <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 :attr:`Region.evaluator` optional, removing the need for the separate LexedRegion class.

Huge thanks to Adam Dangoor for all his work on typing!

5.0.3 (14 Jul 2023)

  • Fix bug in traceback trimming on the latest release of pytest.

5.0.2 (19 May 2023)

5.0.1 (9 May 2023)

  • Fix a bug that prevent r-prefixed docstrings from being correctly parsed from .py files.

5.0.0 (26 Mar 2023)

4.0.1 (8 Feb 2023)

4.0.0 (25 Dec 2022)

3.0.1 (25 Feb 2022)

  • Continue with the ever shifting sands of pytest APIs, this time appeasing warnings from pytest 7 that when fixed break compatibility with pytest 6.

3.0.0 (26 Oct 2021)

Thanks to Stefan Behnel for his work on :ref:`codeblock-parser` parsing!

2.0.1 (29 Nov 2020)

2.0.0 (17 Nov 2020)

  • Drop support for nose.
  • Handle encoded data returned by doctest execution on Python 2.

1.4.0 (5 Aug 2020)

  • Support nested directories of source files rather than just one directory.
  • Support multiple patterns of files to include.

1.3.1 (29 Jul 2020)

  • Support pytest 6.

1.3.0 (28 Mar 2020)

  • Treat all documentation source files as being utf-8 encoded. This can be overridden by passing an encoding when instantiating a :class:`~sybil.Sybil`.

1.2.2 (20 Feb 2020)

  • Improvements to FIX_BYTE_UNICODE_REPR for multiple strings on a single line.
  • Better handling of files with Windows line endings on Linux under Python 2.

1.2.1 (21 Jan 2020)

  • Fixes for pytest 3.1.0.

1.2.0 (28 Apr 2019)

1.1.0 (25 Apr 2019)

1.0.9 (1 Aug 2018)

  • Fix for pytest 3.7+.

1.0.8 (6 Apr 2018)

  • Changes only to unit tests to support fixes in the latest release of pytest.

1.0.7 (25 January 2018)

1.0.6 (30 November 2017)

  • Fix compatibility with pytest 3.3+.

Thanks to Bruno Oliveira for this fix!

1.0.5 (6 June 2017)

  • Fix ordering issue that would cause some tests to fail when run on systems using tmpfs.

1.0.4 (5 June 2017)

1.0.3 (2 June 2017)

1.0.2 (1 June 2017)

1.0.1 (30 May 2017)

  • Fix bug where unicode and byte literals weren't corrected in doctest tracebacks, even when FIX_BYTE_UNICODE_REPR was specified.

1.0.0 (26 May 2017)

  • Initial release