Skip to content

Commit 1cc73bf

Browse files
authored
Merge pull request #547 from igerber/release/3.5.3
Release v3.5.3
2 parents 35f56f6 + 4aa589b commit 1cc73bf

6 files changed

Lines changed: 8 additions & 7 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8-
## [Unreleased]
8+
## [3.5.3] - 2026-06-25
99

1010
### Added
1111
- **`generate_synthetic_control_data()` data generator + a capstone `SyntheticControl` tutorial.** New public generator (`diff_diff/prep_dgp.py`, exported from `diff_diff`) builds a **single-treated-unit** factor-model panel for synthetic-control demos and tests: one treated unit whose latent factor loadings and baseline are an exact convex combination of a few donors (so the noiseless trajectory lies in the donor convex hull and a synthetic control reproduces it closely — the observed fit is approximate under added noise), persistent AR(1) factors, predictor covariates that each proxy a distinct factor, a common calendar time effect, and a known `"ramp"` or `"constant"` treatment effect emitted as `true_effect`. Tutorial **`docs/tutorials/25_synthetic_control_policy.ipynb`** walks the whole `SyntheticControl` surface end-to-end on a policy-evaluation story (one state adopts a clean-energy standard), structured around **two inference philosophies**: cross-unit permutation (`in_space_placebo` + Firpo–Possebom `confidence_set`, with `leave_one_out` / `in_time_placebo` robustness) versus over-time conformal (CWZ `conformal_test` / `conformal_confidence_intervals` / `conformal_average_effect`), with the per-period conformal band as the climax. A `tests/test_t25_synthetic_control_policy_drift.py` drift guard re-derives every quoted number from the generator.
@@ -1609,6 +1609,7 @@ for the full feature history leading to this release.
16091609
[2.1.2]: https://github.com/igerber/diff-diff/compare/v2.1.1...v2.1.2
16101610
[2.1.1]: https://github.com/igerber/diff-diff/compare/v2.1.0...v2.1.1
16111611
[2.1.0]: https://github.com/igerber/diff-diff/compare/v2.0.3...v2.1.0
1612+
[3.5.3]: https://github.com/igerber/diff-diff/compare/v3.5.2...v3.5.3
16121613
[3.5.2]: https://github.com/igerber/diff-diff/compare/v3.5.1...v3.5.2
16131614
[3.5.1]: https://github.com/igerber/diff-diff/compare/v3.5.0...v3.5.1
16141615
[3.5.0]: https://github.com/igerber/diff-diff/compare/v3.4.2...v3.5.0

CITATION.cff

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ authors:
77
family-names: Gerber
88
orcid: "https://orcid.org/0009-0009-3275-5591"
99
license: MIT
10-
version: "3.5.2"
11-
date-released: "2026-06-08"
10+
version: "3.5.3"
11+
date-released: "2026-06-25"
1212
doi: "10.5281/zenodo.19646175"
1313
url: "https://github.com/igerber/diff-diff"
1414
repository-code: "https://github.com/igerber/diff-diff"

diff_diff/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@
299299
DCDH = ChaisemartinDHaultfoeuille
300300
HAD = HeterogeneousAdoptionDiD
301301

302-
__version__ = "3.5.2"
302+
__version__ = "3.5.3"
303303
__all__ = [
304304
# Estimators
305305
"DifferenceInDifferences",

diff_diff/guides/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: 3.5.2
5+
- Version: 3.5.3
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 = "3.5.2"
7+
version = "3.5.3"
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 = "3.5.2"
3+
version = "3.5.3"
44
edition = "2021"
55
rust-version = "1.85"
66
description = "Rust backend for diff-diff DiD library"

0 commit comments

Comments
 (0)