Skip to content

Comments

Release 1.13.0#418

Open
oschwald wants to merge 9 commits intomainfrom
greg/eng-4241-release
Open

Release 1.13.0#418
oschwald wants to merge 9 commits intomainfrom
greg/eng-4241-release

Conversation

@oschwald
Copy link
Member

  • Set release date and bump copyright year
  • Remove File::Slurp dependency from release scripts
  • Bumped version to 1.13.0

oschwald and others added 3 commits February 24, 2026 14:29
Replace File::Slurp-based version extraction with bash regex
(grep + BASH_REMATCH) in release.sh and ppa-release.sh. Keep
perl -pi -e for portable in-place substitution.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@gemini-code-assist
Copy link

Summary of Changes

Hello @oschwald, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request prepares the repository for the 1.13.0 release. It includes updates to the project version across various build and configuration files, advances the copyright year to 2026, and refactors release scripts to remove a Perl dependency, streamlining the release process.

Highlights

  • Version Update: The project version has been updated to 1.13.0 across configuration files like CMakeLists.txt and configure.ac, and reflected in Changes.md.
  • Copyright Year Bump: The copyright year has been advanced to 2026 in NOTICE, README.md, and documentation files.
  • Release Script Refactoring: Dependencies on File::Slurp have been removed from release scripts (dev-bin/ppa-release.sh, dev-bin/release.sh), replaced with standard shell commands and perl -pi for version extraction and updates.
  • Changelog Update: The Changes.md file now includes the release date for version 1.13.0.
Changelog
  • CMakeLists.txt
    • Updated project version from 1.12.2 to 1.13.0.
  • Changes.md
    • Added release date '2026-02-24' to version 1.13.0 entry.
  • NOTICE
    • Updated copyright year from 2025 to 2026.
  • README.md
    • Updated copyright year from 2025 to 2026.
  • configure.ac
    • Updated project version from 1.12.2 to 1.13.0.
  • dev-bin/ppa-release.sh
    • Replaced Perl script for version extraction with a bash regex.
    • Removed File::Slurp::Tiny and DateTime Perl module dependencies.
  • dev-bin/release.sh
    • Replaced Perl script for old_version extraction with grep and bash regex.
    • Simplified version replacement logic using perl -pi instead of File::Slurp.
  • doc/libmaxminddb.md
    • Updated copyright year from 2025 to 2026.
  • doc/mmdblookup.md
    • Updated copyright year from 2025 to 2026.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request prepares for the 1.13.0 release by updating version numbers, copyright years, and the changelog. The release scripts have also been updated to remove a dependency on the Perl File::Slurp module, replacing it with standard shell commands. My review focuses on ensuring the new shell script implementations are robust and retain the functionality of the code they replace.

Comment on lines +9 to +14
changelog_header=$(head -n 3 Changes.md)
if [[ ! $changelog_header =~ ^##\ ([0-9]+\.[0-9]+\.[0-9]+)\ -\ ([0-9]{4}-[0-9]{2}-[0-9]{2}) ]]; then
echo "Could not find version in Changes.md!"
exit 1
fi
VERSION="${BASH_REMATCH[1]}"

Choose a reason for hiding this comment

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

medium

This change removes the check that ensures the release date in Changes.md is today. This was present in the previous Perl implementation and is a useful safeguard. Additionally, the version parsing regex has a few issues: it doesn't handle pre-release versions, and it uses . which matches any character instead of a literal dot (\.). Using head -n 1 is also more direct than head -n 3. I suggest restoring the date check and using a more robust and correct regex for consistency and safety.

Suggested change
changelog_header=$(head -n 3 Changes.md)
if [[ ! $changelog_header =~ ^##\ ([0-9]+\.[0-9]+\.[0-9]+)\ -\ ([0-9]{4}-[0-9]{2}-[0-9]{2}) ]]; then
echo "Could not find version in Changes.md!"
exit 1
fi
VERSION="${BASH_REMATCH[1]}"
changelog_header=$(head -n 1 Changes.md)
if [[ ! $changelog_header =~ ^##\ ([0-9]+\\.[0-9]+\\.[0-9]+(?:-[a-zA-Z0-9.-]*)?)\ -\ ([0-9]{4}-[0-9]{2}-[0-9]{2}) ]]; then
echo "Could not find version and date in Changes.md header!"
exit 1
fi
VERSION="${BASH_REMATCH[1]}"
DATE="${BASH_REMATCH[2]}"
if [[ "$DATE" != "$(date +"%Y-%m-%d")" ]]; then
echo "Release date ($DATE) in Changes.md is not today!"
exit 1
fi

EOF
)
ac_init=$(grep AC_INIT configure.ac)
if [[ ! $ac_init =~ \[([0-9]+\.[0-9]+\.[0-9]+)\] ]]; then

Choose a reason for hiding this comment

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

medium

The regex for extracting the old version from configure.ac has a couple of issues: it doesn't account for pre-release tags (e.g., 1.13.0-alpha.1), and it uses . which matches any character instead of a literal dot (\.). To make the script more robust and consistent with how the new version is parsed from Changes.md, consider updating the regex.

Suggested change
if [[ ! $ac_init =~ \[([0-9]+\.[0-9]+\.[0-9]+)\] ]]; then
if [[ ! $ac_init =~ \["([0-9]+\\.[0-9]+\\.[0-9]+(?:-[a-zA-Z0-9.-]*)?)"\] ]]; then

oschwald and others added 6 commits February 24, 2026 14:43
The submodule was pointing to commit 29cab1f on a feature branch
that has since been squash-merged and deleted, making it
unreachable from any remote ref. This caused git-buildpackage to
fail when creating the orig tarball since a fresh clone cannot
fetch that commit.

Point to current main (327e23a) which includes the equivalent
squash-merged content.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant