Skip to content

Commit a2193cd

Browse files
igerberclaude
andcommitted
Bump version to 2.8.2
Adds CHANGELOG entry covering EPV diagnostics for propensity score logit, safer fallback defaults, and survey-weighted propensity fixes. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent e1cd6f5 commit a2193cd

5 files changed

Lines changed: 24 additions & 4 deletions

File tree

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [2.8.2] - 2026-04-02
11+
12+
### Added
13+
- **EPV diagnostics for propensity score logit** — events-per-variable (EPV) checks with Peduzzi convention (predictors excluding intercept) for CallawaySantAnna IPW/DR, TripleDifference IPW/DR, and StaggeredTripleDifference
14+
- `diagnose_propensity()` method on CS/TripleDiff/StaggeredDDD results for post-fit propensity score assessment
15+
- EPV summary block in TripleDifference `summary()` output
16+
- `logit_strict` parameter for propensity score estimation — warns on low EPV (default) or raises error (`strict=True`)
17+
18+
### Changed
19+
- Default propensity score fallback behavior: safer defaults with method-specific warning messages
20+
- EPV denominator uses predictor count excluding intercept (Peduzzi et al. 1996 convention)
21+
22+
### Fixed
23+
- Fix TripleDifference survey-weighted fallback propensity score
24+
- Fix NaN cache poisoning in propensity score estimation
25+
- Fix `epv_summary` column schema on empty results
26+
- Fix SDDD EPV: use min-EPV across comparison cohorts with cache diagnostic propagation
27+
- Fix `diagnose_propensity` `np.inf` handling
28+
1029
## [2.8.1] - 2026-04-01
1130

1231
### Added
@@ -1065,6 +1084,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
10651084
- `to_dict()` and `to_dataframe()` export methods
10661085
- `is_significant` and `significance_stars` properties
10671086

1087+
[2.8.2]: https://github.com/igerber/diff-diff/compare/v2.8.1...v2.8.2
10681088
[2.8.1]: https://github.com/igerber/diff-diff/compare/v2.8.0...v2.8.1
10691089
[2.8.0]: https://github.com/igerber/diff-diff/compare/v2.7.6...v2.8.0
10701090
[2.7.6]: https://github.com/igerber/diff-diff/compare/v2.7.5...v2.7.6

diff_diff/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@
210210
Bacon = BaconDecomposition
211211
EDiD = EfficientDiD
212212

213-
__version__ = "2.8.1"
213+
__version__ = "2.8.2"
214214
__all__ = [
215215
# Estimators
216216
"DifferenceInDifferences",

docs/llms-full.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
> A Python library for Difference-in-Differences causal inference analysis. Provides sklearn-like estimators with statsmodels-style output for econometric analysis.
44

5-
- Version: 2.8.1
5+
- Version: 2.8.2
66
- Repository: https://github.com/igerber/diff-diff
77
- License: MIT
88
- Dependencies: numpy, pandas, scipy (no statsmodels dependency)

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "maturin"
44

55
[project]
66
name = "diff-diff"
7-
version = "2.8.1"
7+
version = "2.8.2"
88
description = "Difference-in-Differences causal inference with sklearn-like API. Callaway-Sant'Anna, Synthetic DiD, Honest DiD, event studies, parallel trends."
99
readme = "README.md"
1010
license = "MIT"

rust/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "diff_diff_rust"
3-
version = "2.8.1"
3+
version = "2.8.2"
44
edition = "2021"
55
description = "Rust backend for diff-diff DiD library"
66
license = "MIT"

0 commit comments

Comments
 (0)