From 966a20d549cf0f64fb229a0f6ab6ecb7c4366fe6 Mon Sep 17 00:00:00 2001 From: igerber Date: Mon, 16 Feb 2026 12:05:52 -0500 Subject: [PATCH] Bump version to 2.3.2 Update version numbers in __init__.py, pyproject.toml, and rust/Cargo.toml. Add CHANGELOG entry for v2.3.2 with Python 3.13 support, Sun-Abraham methodology fixes, and SyntheticDiD tutorial improvements. Co-Authored-By: Claude Opus 4.6 --- CHANGELOG.md | 19 +++++++++++++++++++ diff_diff/__init__.py | 2 +- pyproject.toml | 2 +- rust/Cargo.toml | 2 +- 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5429b75c..1745866e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,24 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.3.2] - 2026-02-16 + +### Added +- **Python 3.13 support** with upper version cap (`>=3.9,<3.14`) + +### Changed +- **Sun-Abraham methodology review** (PR #153) + - IW aggregation weights now use event-time observation counts (not group sizes) + - Normalize `np.inf` never-treated encoding before treatment group detection + - Add R benchmark scripts and methodology-aligned tests +- Use `rank_deficient_action` and `np.errstate` instead of broad `RuntimeWarning` filter in SDID tutorial + +### Fixed +- Sun-Abraham bootstrap NaN propagation for non-finite ATT estimates +- Sun-Abraham df_adjustment off-by-one in analytical SE computation +- CI pandas compatibility for SunAbraham bootstrap inference +- SyntheticDiD tutorial: eliminate pre-treatment fit warnings + ## [2.3.1] - 2026-02-15 ### Fixed @@ -701,6 +719,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - `to_dict()` and `to_dataframe()` export methods - `is_significant` and `significance_stars` properties +[2.3.2]: https://github.com/igerber/diff-diff/compare/v2.3.1...v2.3.2 [2.3.1]: https://github.com/igerber/diff-diff/compare/v2.3.0...v2.3.1 [2.3.0]: https://github.com/igerber/diff-diff/compare/v2.2.1...v2.3.0 [2.2.1]: https://github.com/igerber/diff-diff/compare/v2.2.0...v2.2.1 diff --git a/diff_diff/__init__.py b/diff_diff/__init__.py index 666ddd5d..b2a305fb 100644 --- a/diff_diff/__init__.py +++ b/diff_diff/__init__.py @@ -142,7 +142,7 @@ load_mpdta, ) -__version__ = "2.3.1" +__version__ = "2.3.2" __all__ = [ # Estimators "DifferenceInDifferences", diff --git a/pyproject.toml b/pyproject.toml index 44ca1451..67c22abf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "diff-diff" -version = "2.3.1" +version = "2.3.2" description = "A library for Difference-in-Differences causal inference analysis" readme = "README.md" license = "MIT" diff --git a/rust/Cargo.toml b/rust/Cargo.toml index 8b36862f..450777cf 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "diff_diff_rust" -version = "2.3.1" +version = "2.3.2" edition = "2021" description = "Rust backend for diff-diff DiD library" license = "MIT"