By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
World of SoftwareWorld of SoftwareWorld of Software
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Search
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
Reading: This Lightweight Tool Flags Breaking Changes Before You Ship | HackerNoon
Share
Sign In
Notification Show More
Font ResizerAa
World of SoftwareWorld of Software
Font ResizerAa
  • Software
  • Mobile
  • Computing
  • Gadget
  • Gaming
  • Videos
Search
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Have an existing account? Sign In
Follow US
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
World of Software > Computing > This Lightweight Tool Flags Breaking Changes Before You Ship | HackerNoon
Computing

This Lightweight Tool Flags Breaking Changes Before You Ship | HackerNoon

News Room
Last updated: 2025/06/10 at 11:42 PM
News Room Published 10 June 2025
Share
SHARE

In modern Go projects, it’s too easy for accidental API changes or subtle documentation edits to sneak through pull requests or release processes unnoticed.

relimpact is a lightweight CLI tool that helps you understand what really changed between two Git refs — with clean, structured, human-friendly reports.

Use it in CI pipelines, release PRs, or locally before tagging new versions.


✨ Features

  • 🔍 API Diff — Track breaking public API changes (structs, interfaces, functions, constants, variables).
  • 📝 Docs Diff — Section-aware Markdown diff to highlight meaningful content changes.
  • 🗂️ Other Files Diff — Group file changes by extension (.sh, .sql, .json, etc.) to surface migrations and auxiliary files.
  • 🚀 Designed for Release PR reviews — Quickly see the real impact of changes.
  • 🖋️ Markdown Reports — Ready to paste into GitHub Releases, Slack, or changelogs.
  • ⚙️ Works in GitHub Actions, GitLab CI, or locally — Integrates easily.
  • 🔒 No server required — Pure CLI tool.

🚀 Quickstart

Run on a GitHub PR:

relimpact --old=v1.0.0 --new=HEAD > release-impact.md

Example Output:

CHANGELOGCHANGELOG

⚙️ GitHub Action Integration

name: Release Impact on PR

on:
  pull_request:
    branches: [ master ]
    types: [ opened, synchronize, reopened ]

jobs:
  release-impact:
    name: Generate Release Impact Report
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Determine previous tag
        id: prevtag
        run: |
          git fetch --tags
          TAG_LIST=$(git tag --sort=-version:refname)
          PREV_TAG=$(echo "$TAG_LIST" | head -n2 | tail -n1)
          echo "Previous tag: $PREV_TAG"
          # Fallback to first tag if no previous
          if [ -z "$PREV_TAG" ]; then
            PREV_TAG=$(echo "$TAG_LIST" | head -n1)
            echo "Fallback to first tag: $PREV_TAG"
          fi
          echo "prev_tag=$PREV_TAG" >> $GITHUB_OUTPUT

      - name: Determine new ref
        id: newref
        run: |
          if [ "${{ github.event_name }}" = "pull_request" ]; then
            echo "new_ref=${{ github.event.pull_request.head.sha }}" >> $GITHUB_OUTPUT
          else
            echo "new_ref=HEAD" >> $GITHUB_OUTPUT
          fi

      - uses: hashmap-kz/relimpact-action@main
        with:
          old-ref: ${{ steps.prevtag.outputs.prev_tag }}
          new-ref: ${{ steps.newref.outputs.new_ref }}
          output: release-impact.md

      - name: Upload Release Impact Report
        uses: actions/upload-artifact@v4
        with:
          name: release-impact-${{ github.run_id }}-${{ github.run_attempt }}
          path: release-impact.md

📦 Installation

Homebrew

brew tap hashmap-kz/homebrew-tap
brew install relimpact

Manual Download

👉 Download latest release


🧠 How It Works

1️⃣ Go Source API Changes

  • Uses Go type system & AST parsing:
    • Detects breaking changes: method signatures, removed fields, new/removed types, etc.
    • Ignores formatting & comment noise.
    • Based on golang.org/x/tools/go/packages.

2️⃣ Markdown Docs Changes

  • Section-aware diff of .md files:
    • Headings added/removed.
    • Links and images changes.
    • Section word count diffs.
    • Based on goldmark parser.

3️⃣ Other Files Changes

  • Groups changes by file type:
    • .sql, .sh, .json, .yaml, .conf, etc.
    • Uses git diff --name-status.

Why Use It?

Most release PRs include:

✅ API changes
✅ Doc updates
✅ Migration scripts
✅ Other important config tweaks

But raw git diffis noisy and hard to review.
relimpact gives you a release-ready summary, focusing on what’s important.


📜 License

MIT License. See LICENSE.


👉 Try it today: https://github.com/hashmap-kz/relimpact


If you found this useful, leave a ⭐ on GitHub — it helps others discover the project!

Happy releasing 🚀

Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Share This Article
Facebook Twitter Email Print
Share
What do you think?
Love0
Sad0
Happy0
Sleepy0
Angry0
Dead0
Wink0
Previous Article OpenAI’s newest reasoning model o3-pro surpasses rivals on multiple benchmarks, but it’s not very fast – News
Next Article Apple’s macOS 26 ‘Tahoe’ Goes Translucent, While iPadOS Adds Preview and Journal Apps
Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

248.1k Like
69.1k Follow
134k Pin
54.3k Follow

Latest News

Pixel phones may finally get native flashlight brightness controls, years after Samsung and Apple
News
Meta cracks down on nudify apps after being exposed
News
Photos in iOS 26 brings back tabs and generates Spatial Photos
News
How to Use AI to Automate Tasks |
Computing

You Might also Like

Computing

How to Use AI to Automate Tasks |

33 Min Read
Computing

Build Smarter Models with Keras Functional API | HackerNoon

12 Min Read
Computing

Non-Human Identities: How to Address the Expanding Security Risk

7 Min Read
Computing

Zero-Click AI Vulnerability Exposes Microsoft 365 Copilot Data Without User Interaction

9 Min Read
//

World of Software is your one-stop website for the latest tech news and updates, follow us now to get the news that matters to you.

Quick Link

  • Privacy Policy
  • Terms of use
  • Advertise
  • Contact

Topics

  • Computing
  • Software
  • Press Release
  • Trending

Sign Up for Our Newsletter

Subscribe to our newsletter to get our newest articles instantly!

World of SoftwareWorld of Software
Follow US
Copyright © All Rights Reserved. World of Software.
Welcome Back!

Sign in to your account

Lost your password?