pith:LXLO7LG7
How Do Developers Use Migration Guides? A Case Study of Log4j
Developers most frequently reference the full migration guide in pull request descriptions and use it for maintenance tasks beyond initial updates.
arxiv:2604.24072 v2 · 2026-04-27 · cs.SE
Add to your LaTeX paper
\usepackage{pith}
\pithnumber{LXLO7LG7GPRDAZDGCYBCTTQQNM}
Prints a linked badge after your title and injects PDF metadata. Compiles on arXiv. Learn more · Embed verified badge
Record completeness
Claims
Pull request authors most frequently reference the migration guide in the pull request description, and that most references (82.81%) link to the entire guide rather than specific sections. Developers use migration guides not only during major version updates but also during subsequent maintenance tasks.
That the presence of a reference to the migration guide in a pull request description reliably indicates that the developer actually read and followed the guide, and that the sampled Log4j projects and PRs generalize to other libraries and developer populations.
Developers reference the full Log4j migration guide in 82.81% of pull request descriptions and use it for both major updates and subsequent maintenance tasks.
Receipt and verification
| First computed | 2026-05-20T01:05:14.305837Z |
|---|---|
| Builder | pith-number-builder-2026-05-17-v1 |
| Signature | Pith Ed25519
(pith-v1-2026-05) · public key |
| Schema | pith-number/v1.0 |
Canonical hash
5dd6efacdf33e2306466160229ce106b27cb703dba183dd8ad3f094815a8e742
Aliases
· · · · ·Agent API
Verify this Pith Number yourself
curl -sH 'Accept: application/ld+json' https://pith.science/pith/LXLO7LG7GPRDAZDGCYBCTTQQNM \
| jq -c '.canonical_record' \
| python3 -c "import sys,json,hashlib; b=json.dumps(json.loads(sys.stdin.read()), sort_keys=True, separators=(',',':'), ensure_ascii=False).encode(); print(hashlib.sha256(b).hexdigest())"
# expect: 5dd6efacdf33e2306466160229ce106b27cb703dba183dd8ad3f094815a8e742
Canonical record JSON
{
"metadata": {
"abstract_canon_sha256": "76f6f450c32495bc746aa75dd72f07911cceb9020f0450dfd7da332ec7dac04b",
"cross_cats_sorted": [],
"license": "http://creativecommons.org/licenses/by/4.0/",
"primary_cat": "cs.SE",
"submitted_at": "2026-04-27T05:59:28Z",
"title_canon_sha256": "066cde3fdbcb11f9c12cbd7820c83b24dbeae16e6fbf59f80370a5690b34f70d"
},
"schema_version": "1.0",
"source": {
"id": "2604.24072",
"kind": "arxiv",
"version": 2
}
}