Changelog¶
Version 2.3.0¶
New Feature: Added support for providing test data as an object instead of multiple method arguments. Please refer to the documentation for more details.
Breaking Changes: ✓ None
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Version 2.2.6¶
Bugfix: Deprecation warnings for Pytest 8.x and Python 3.10 support introduced in Version 2.2.5 missed the “smaller as” sign.
Breaking Changes: ✓ None
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Version 2.2.5¶
Issue 13: Adding deprecation warnings for Pytest 8.x and Python 3.10 support to the code. The check_*_version methods will now raise a DeprecationWarning when Pytest 8.x or Python 3.10 are detected.
Breaking Changes: ✓ None
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Version 2.2.3¶
Documentation fixes.
Breaking Changes: ✓ None
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Version 2.2.2¶
This is only a maintenance release that changes some details on our build and test pipeline, as well as the documentation about it. There are no functional changes.
Breaking Changes: ✓ None
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Version 2.2.0¶
Breaking Changes: ✓ None
New Feature:
This version introduces a new feature, which allows to provide all columns of your test data in a single dictionary instead of using several method arguments. Sometimes, you have plenty of columns, which makes your test method definition cumbersome and is polluting the namespace.
This release allows you to optionally set the name of the dictionary, which is then passed as a single argument to your test method. All other configurations, like casting and renaming, also work here. The setting can be used per test method.
To avoid breaking existing tests, the default behaviour is still using several method arguments.
You can find an example in the documentation.
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Version 2.1.1¶
This is only a maintenance release to make builds smaller. No functional changes.
Breaking Changes: ✓ None
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Version 2.1.0¶
Breaking Changes: ✓ None
New Feature:
This version adds two new features, both are disabled by default to avoid breaking changes and keeping up backward compatibility:
Skip test if the CSV data source file is missing
Skip test if the CSV data file exists, but does not contain test data
Both features are activated globally by a command line flag, or for specific tests by setting an parameter in the decorator. Refer to the documentation for details.
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Version 2.0.0¶
This release does not contain any new features, but it increases the major version number, as it includes breaking changes and announces some deprecations. Also, the project’s build system was migrated from poetry to uv, which had some impact on the project’s structure and dependencies, and the build pipeline.
Breaking Changes:
Python 3.9 is no longer supported
Pytest older than 8.3 is no longer supported
Deprecation Notice:
One of the next versions will drop Pytest 8.x support
One of the next versions will drop Python 3.10 support
Changes:
Updating project for Python 3.14, 3.15 and Pytest 9
Some dependency updates
Updated documentation to reflect all the changes
Under the hood:
Migrated from
poetrytouvDropped
blackin favor ofuv formatNew CI/CD pipeline
Version 1.3.0¶
Breaking Changes: ✓ None
New Feature:
Issue #10: Re-using ID columns as data columns
Changes:
Mainentance: Updated
pyproject.tomlfor more current versions ofpoetryMaintenance: Dependency versions
Version 1.2.0¶
Breaking Changes:
Pytest >= 8.3 is required (was >= 7.4 before)
Changes:
Maintenance: Dependency versions
Maintenance: Support for Python 3.12 and 3.13
Maintenance: CI Configuration cleanup
Maintenance: Code Formatting
Version 1.1.0¶
Special Announcement:
This is the last version that supports Python 3.8
Breaking Changes:
Pytest >= 7.4 is required (was >= 7.1 before)
Changes:
Maintenance: Dependency versions
Maintenance: Support for Python 3.11
Maintenance: CI Configuration cleanup
Maintenance: Project Configuration cleanup (supported versions etc.)
Changed Pytest plugin hook
Tests: Changed version interpretation tests, as the standard lib has a better interpretation now
Coding conventions: Black and isort updated, changed things accordingly
Version 1.0.0¶
Breaking Changes: ✓ None
Changes:
Cleanup of codebase for the big step of going to version 1.0
Project marked as “stable”
Some minor documentation changes
Dependencies updated
Fine-tuning of the tox/test configuration for running on CI
Version 0.4.0¶
Breaking Changes: ✓ None
Changes:
Structured Documentation (see source folder
docs/), it is an important milestone to version 1.0; published under: docs.codebau.dev/pytest-plugins/pytest-csv-paramsDocumentation widely extended with a lot of extra information
A more detailed changelog as part of this documentation
Some source code / API documentation
README.mdreduced in favor of the structured documentation
Version 0.3.0¶
Breaking Changes:
Column names are now tested for reserved names. If you used reserved names in the past, this might break your tests, despite the fact, that you are greater trouble already.
Changes:
Much better handling of column names (headers) in CSV files:
Invalid characters are replaced by a
_Names are checked if they are reserved keywords or builtin names
A new parameter
header_renamesto the decorator@csv_paramsallows you to bring your CSV column names to clean variable namesSee
README.mdfor further details
Version 0.2.2¶
Breaking Changes: ✓ None
Changes:
Library updates
For Developers: Added a few extra tests for base functionality of pytest that is used in this plugin.
Version 0.2.0¶
Breaking Changes:
The order of the parameters for the decorator
@csv_paramschanged to realize the new shorthand form of the decorator (see below). If you used the decorator with keyword parameters only (like it is written in the documentation), you are fine.
Changes
New shorthand form for the decorator
@csv_params. This is very handy when you have CSV files with no ID column and column names that match the test functions parameters names. Together with the command line parameter introduced in version 0.1.0 you can create very short decorators. SeeREADME.mdfor details.For Developers: Mypy has been added to the test chain for typing analysis
Version 0.1.0¶
Breaking Changes: ✓ None
Changes:
A new command line argument
--csv-params-base-dirallows you to set a base dir for all relative CSV files. This is great when you have a central storage for your test data. SeeREADME.mdfor more details.Some documentation fixes
Some changes to the tox configuration in order to report coverage correctly
Version 0.0.4¶
Breaking Changes: ✓ None
Changes:
Minor documentation bugfixes
Version 0.0.3¶
Breaking Changes: ✓ None
Changes:
Initial Public Release
Delivered the
@csv_paramsdecorator