Skip to content

Bumped version to 4.1.0 and added NEWS.#1230

Merged
xuyao0127 merged 1 commit intomainfrom
dev/yao/4.1.0
Jan 9, 2026
Merged

Bumped version to 4.1.0 and added NEWS.#1230
xuyao0127 merged 1 commit intomainfrom
dev/yao/4.1.0

Conversation

@xuyao0127
Copy link
Copy Markdown
Collaborator

@xuyao0127 xuyao0127 commented Jan 6, 2026

Preparing for 4.1.0 release.

Summary by CodeRabbit

  • New Features
    • Introduced PathTranslator plugin enabling virtualized path management and translation for improved application compatibility.
    • Added --disable-prgname-prefix configuration option providing control over DMTCP prefix visibility in process command field displays.
    • Implemented support for SOCK_SEQPACKET socket type, expanding communication protocol capabilities.

✏️ Tip: You can customize this high-level summary in your review settings.

@xuyao0127 xuyao0127 requested review from gc00 and karya0 January 6, 2026 21:29
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Jan 6, 2026

Warning

Rate limit exceeded

@xuyao0127 has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 17 minutes and 32 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 6727383 and 6787195.

📒 Files selected for processing (4)
  • NEWS
  • VERSION
  • configure
  • configure.ac
📝 Walkthrough

Walkthrough

This release updates the project version from 4.0.0 to 4.1.0, including new release notes documenting features like PathTranslator plugin and SOCK_SEQPACKET support. The build system is upgraded from GNU Autoconf 2.71 to 2.72, with corresponding configuration regeneration and minor prgname-prefix handling adjustments.

Changes

Cohort / File(s) Summary
Release Documentation
NEWS, VERSION
Added 4.1.0 release notes with new features (PathTranslator plugin, --disable-prgname-prefix option, SOCK_SEQPACKET support); bumped version string from 4.0.0 to 4.1.0.
Build System
configure.ac, configure
Upgraded autoconf from 2.71 to 2.72; reformatted AC_INIT invocation; regenerated configure output with updated version metadata and generated messages; minor control-flow adjustment to prgname-prefix enablement logic.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

🐰 A new version hops into view,
Four-point-one, fresh and bright and true,
PathTranslator joins the crew,
Autoconf upgraded, options grew,
Release notes written—hooray! 🎉

Pre-merge checks

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: version bump to 4.1.0 and addition of NEWS release notes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Fix all issues with AI Agents
In @NEWS:
- Around line 6-13: Replace the grammatical error "Some importance changes are:"
with "Some important changes are:" and change "virtualized path" to "virtualized
paths" in the release notes summary so the phrasing reads correctly and
consistently (ensure the bullet "* New PathTranslator plugin for virtualized
paths." is updated accordingly).
📜 Review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f0aca5b and 6727383.

📒 Files selected for processing (4)
  • NEWS
  • VERSION
  • configure
  • configure.ac
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build
🔇 Additional comments (5)
VERSION (1)

1-1: LGTM! Clean version bump to 4.1.0.

The version string update is correct and aligns with the release preparation objectives.

configure.ac (1)

1-1: Cosmetic reformatting of AC_INIT.

The brackets around the tr -d '\n' < VERSION command have been removed. Both forms are valid m4 syntax, so this is purely a style change with no functional impact.

configure (3)

3-3: Version bump and Autoconf upgrade are applied consistently

All updated literals now report DMTCP 4.1.0 and GNU Autoconf 2.72 across the script (header banner, PACKAGE_* metadata, help/version output, config.log preamble, VERSION variable, and both config.status stanzas). I don’t see any remaining 4.0.0/2.71 stragglers in these touched regions.

Also applies to: 606-607, 1420-1420, 1491-1491, 1653-1653, 2048-2049, 3740-3740, 9188-9193, 9261-9261, 13075-13082


1539-1543: --disable-prgname-prefix help text aligns with behavior

The reworded help correctly describes that the DMTCP: prefix is enabled by default, can be disabled via --disable-prgname-prefix, and alternatively via DMTCP_DISABLE_PRGNAME_PREFIX during dmtcp_launch. This matches the intended semantics and looks good.


8083-8095: use_prgname_prefix default/override logic is correct

The new stanza sets use_prgname_prefix from enable_prgname_prefix when the user passed --[en|dis]able-prgname-prefix, and otherwise defaults it to yes. This yields default-on behavior with --disable-prgname-prefix correctly turning off ENABLE_PRGNAME_PREFIX, matching the help text and NEWS entry.

AC_INIT([DMTCP],[m4_esyscmd(tr -d '\n' < VERSION)],[[email protected]],[dmtcp],[https://dmtcp.sourceforge.io/ ; https://github.com/dmtcp/dmtcp])

AC_PREREQ([2.71])
AC_PREREQ([2.72])
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check if any 2.72-specific features are mentioned in configure.ac
# and verify documentation of build requirements

echo "=== Checking for autoconf 2.72 feature usage ==="
rg -n "2\.72|autoconf.*2\.7[2-9]" configure.ac || echo "No matches found"

echo -e "\n=== Checking build requirement documentation ==="
fd -t f "README|INSTALL|BUILDING|CONTRIBUTING" -x cat {} 2>/dev/null || echo "No matching files found"

echo -e "\n=== Checking if NEWS mentions autoconf requirement ==="
fd -t f "NEWS|CHANGELOG" -x cat {} 2>/dev/null || echo "No matching files found"

echo -e "\n=== Listing all files in root directory ==="
ls -la | head -30

echo -e "\n=== Checking entire configure.ac content ==="
cat configure.ac

Repository: dmtcp/dmtcp

Length of output: 50370


🏁 Script executed:

#!/bin/bash

# Check the full configure.ac file, particularly around the AC_PREREQ line
echo "=== Full configure.ac file ==="
cat configure.ac | head -50

echo -e "\n=== Looking for any autoconf-specific comments or version-dependent code ==="
grep -n "2\.7[0-9]\|PREREQ\|autoconf\|version" configure.ac | head -20

# Check git history for this change if available
echo -e "\n=== Git log for configure.ac (last 5 commits) ==="
git log --oneline -n 5 -- configure.ac 2>/dev/null || echo "Git history not available"

echo -e "\n=== Git diff for recent configure.ac changes ==="
git log -p -n 2 -- configure.ac 2>/dev/null | head -100 || echo "Git diff not available"

# Check autoconf NEWS/CHANGELOG for differences between 2.71 and 2.72
echo -e "\n=== Searching web for autoconf 2.71 vs 2.72 differences ==="
# This will help understand what changed in autoconf 2.72

Repository: dmtcp/dmtcp

Length of output: 2895


🏁 Script executed:

#!/bin/bash

# Check the context around line 811 in configure.ac
echo "=== Context around line 811 (automake-2.71 bug comment) ==="
sed -n '805,825p' configure.ac

echo -e "\n=== Checking if AC_PREREQ was recently changed from 2.71 ==="
git log -p --follow -- configure.ac 2>/dev/null | grep -A 5 -B 5 "AC_PREREQ" | head -40

echo -e "\n=== Checking commit that bumped version to 4.1.0 ==="
git show 6727383 --stat 2>/dev/null | head -20

echo -e "\n=== Full details of the version bump commit ==="
git show 6727383 2>/dev/null | head -100

Repository: dmtcp/dmtcp

Length of output: 4281


🏁 Script executed:

#!/bin/bash

# Search entire git history for AC_PREREQ changes
echo "=== Full git history of AC_PREREQ line ==="
git log -p -- configure.ac 2>/dev/null | grep -A 3 -B 3 "AC_PREREQ" | head -60

echo -e "\n=== Checking if 2.72 was in initial commit ==="
git log --all --oneline -- configure.ac 2>/dev/null | tail -5

echo -e "\n=== Checking current git branch ==="
git branch 2>/dev/null

echo -e "\n=== Check if configure.ac has AC_PREREQ in previous version tags ==="
git tag --list | grep -E "4\.[0-9]|3\.[0-9]" 2>/dev/null | sort -V | tail -5

# Check autoconf documentation for what changed in 2.72
echo -e "\n=== Checking if autoconf 2.72 introduced any breaking changes ==="
# Look for any 2.72-specific syntax used
grep -n "m4_esyscmd\|AS_VAR\|AS_FUNC\|AC_LANG_PROGRAM" configure.ac | head -10

Repository: dmtcp/dmtcp

Length of output: 933


🌐 Web query:

autoconf 2.72 release notes changes from 2.71

💡 Result:

Summary of notable changes in Autoconf 2.72 (vs 2.71):

  • Mostly bug fixes and maintenance with 171 commits since 2.71. [1]. (lists.gnu.org)
  • Added support for the upcoming C2024/C23 (including recognizing #elifdef and #elifndef) and related test-program changes; configure scripts no longer support pre‑1989 (K&R‑only) C compilers. [1][2]. (lists.gnu.org)
  • New mechanism to enable 64‑bit time_t on 32‑bit platforms (--enable-year2038). [1]. (lists.gnu.org)
  • Requirement changes: Autoconf developers now need Perl ≥ 5.10; Autoconf users need GNU M4 ≥ 1.4.8 (1.4.16+ recommended). [1]. (lists.gnu.org)
  • Some m4sh diversion numbers were renumbered; AC_FUNC_GETGROUPS and AC_TYPE_GETGROUPS no longer run test programs. [4]. (gnu.googlesource.com)

For the full NEWS/release text and detailed list of bug fixes and changes, see the official release announcement and NEWS. [1][2]. (lists.gnu.org)

Sources: [1] GNU autoconf announcement (2.72 release); [2] autoconf NEWS/Manual (2.72). (lists.gnu.org)

Citations:


Reconsider the autoconf 2.72 requirement for the 4.1.0 release.

The AC_PREREQ bump to 2.72 appears to be unnecessary. Autoconf 2.72's primary changes (C2024/C23 support, 64-bit time_t mechanism) are not used by DMTCP, which targets C11/C++14. The requirement is undocumented in README.md, INSTALL.md, and the NEWS file. No evidence exists that 2.71 is incompatible with the current configure.ac. This bump likely results from autoconf script regeneration rather than actual dependency on 2.72 features.

Copy link
Copy Markdown
Contributor

@gc00 gc00 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@xuyao0127 xuyao0127 merged commit f3d4be0 into main Jan 9, 2026
2 checks passed
@xuyao0127 xuyao0127 deleted the dev/yao/4.1.0 branch January 9, 2026 20:15
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.

2 participants