Skip to content

Release 0.5.0-alpha.0#14

Merged
JerilynFranz merged 9 commits intomainfrom
Documentation-Updates
Nov 30, 2025
Merged

Release 0.5.0-alpha.0#14
JerilynFranz merged 9 commits intomainfrom
Documentation-Updates

Conversation

@JerilynFranz
Copy link
Copy Markdown
Owner

This pull request introduces the 0.5.0-alpha-0 release of SimpleBench, focusing on improved support for parameterized benchmarks, enhanced customization of report outputs, and expanded documentation and examples. It also updates documentation structure and minor development environment settings.

Key highlights:

  • Adds new features for customizing CSV and Rich Table reports.
  • Introduces and documents explicit parameter support for benchmarks.
  • Expands documentation and tutorials, including new example scripts.
  • Updates documentation navigation and versioning.

Most important changes:

Feature enhancements:

  • Extended CSVReporter and RichTableReporter to allow customization of output columns using options.
  • Added checked support for explicit parameters in benchmark functions, improving parameterized benchmark handling.

Documentation and examples:

  • Added new example scripts for parameterized and multidimensional benchmarks: minimal_parameterized_benchmark.py and multidimensional_parameterized_benchmark.py. [1] [2]
  • Completed documentation for parameterized benchmarks and updated tutorial links and navigation to include "Basic Benchmark" and "Parameterized Benchmark" sections. [1] [2] [3] [4]

Documentation structure and versioning:

  • Updated documentation version references from 0.4.0-alpha.0 to 0.4.1-alpha.0 throughout HTML and navigation. [1] [2] [3] [4] [5] [6]
  • Added module documentation for new reporter options fields. [1] [2]

Development environment:

  • Minor change to .vscode/settings.json to set the Python testing working directory, ensuring consistent test discovery. [1] [2]

Internal code and docs:

  • Updated import in simplebench.case to include get_type_hints for improved type checking.

These changes collectively improve usability, documentation, and reporting flexibility for SimpleBench users.

JerilynFranz and others added 9 commits November 29, 2025 18:17
- Added CSVField and RichTableField enums to define available fields for CSV and Rich Table reporters.
- Updated CSVOptions and RichTableOptions to utilize the new field enums for better type safety and clarity.
- Modified CSVReporter and RichTableReporter to dynamically generate headers and rows based on the specified fields.
- Enhanced error handling in options classes to validate field types and values.
- Improved documentation for options parameters and their expected types.
- Expanded the explanation of the benchmark function to clarify the use of parameters as keyword arguments.
- Added detailed examples for `kwarg_variations` and `variation_cols`, illustrating how to define them and the resulting combinations in benchmark tests.
- Clarified the purpose of the `use_field_for_n` parameter and its optional nature, including its default behavior.
- Improved formatting and readability in both HTML and reStructuredText documentation.
…update related documentation

Added validation of kwargs_variations against benchmarked function signature
- Changed parameter name from 'bench' to '_bench' in my_benchmark_action function across multiple files for consistency.
- Updated documentation to reflect the new parameter name and clarify action function signature requirements.
- Adjusted return type references in documentation to point to the correct Results class.
- Enhanced error handling in the Case class to manage exceptions during type hint resolution.
- Minor formatting improvements in tutorial and example sections for better readability.
- Updated the tutorial on parameterized benchmarks to include a new section on multi-dimensional parameters.
- Added a minimal example of a multi-dimensional parameterized benchmark in both HTML and reStructuredText formats.
- Changed the description in the minimal parameterized benchmark example to reflect its parameterized nature.
- Introduced a new Python script for multi-dimensional parameterized benchmarking with detailed output expectations.
- Included expected output for the new benchmark example to aid users in understanding the results.
@JerilynFranz JerilynFranz merged commit 4094b82 into main Nov 30, 2025
JerilynFranz added a commit that referenced this pull request Nov 30, 2025
Merge pull request #14 from JerilynFranz/Documentation-Updates
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant