Skip to content

GitHub Bot: Automatic release generation for dependency-only changes - #303

Open
konard wants to merge 3 commits into
mainfrom
issue-98-b1d93110
Open

GitHub Bot: Automatic release generation for dependency-only changes#303
konard wants to merge 3 commits into
mainfrom
issue-98-b1d93110

Conversation

@konard

@konard konard commented Sep 13, 2025

Copy link
Copy Markdown
Member

Summary

Implements automatic release generation when GitHub Bot detects that commits contain only dependency library updates, addressing issue #98.

Changes

  • New CommitTracker: Monitors commits on the main branch across all organization repositories
  • New DependencyOnlyReleaseTrigger: Detects dependabot commits that only modify dependency files and automatically creates releases
  • Updated Program.cs: Integrated the new tracker into the bot's main execution loop

Features

Automatic Detection

  • Identifies commits from dependabot (user ID 49699333)
  • Validates that only dependency files were modified
  • Supports multiple dependency file types:
    • C#: .csproj, packages.config, .sln
    • Node.js: package.json, package-lock.json, yarn.lock
    • Python: requirements.txt, Pipfile, Pipfile.lock, pyproject.toml
    • Rust: Cargo.toml, Cargo.lock
    • Go: go.mod, go.sum
    • Ruby: Gemfile, Gemfile.lock

Release Management

  • Generates descriptive release tags: deps-YYYY.MM.DD-shortsha
  • Creates meaningful release names: Dependency Updates - YYYY-MM-DD
  • Includes commit information and links in release body
  • Prevents duplicate releases through processed commit tracking
  • Uses commit SHA as target for release tagging

Test Plan

  • Verify bot compiles without errors ✅
  • Test trigger logic with sample dependabot commits
  • Validate file type detection for different dependency formats
  • Ensure duplicate prevention works correctly
  • Test release creation with proper tagging and descriptions

🤖 Generated with Claude Code


Resolves #98

Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #98
@konard konard self-assigned this Sep 13, 2025
Implements GitHub Bot feature to automatically create releases when commits contain only dependency updates.

Features:
- New CommitTracker to monitor commits on main branch
- DependencyOnlyReleaseTrigger detects dependabot commits affecting only dependency files
- Automatic release creation with descriptive tags (deps-YYYY.MM.DD-shortsha)
- Support for multiple dependency file types (C#, Node.js, Python, Rust, Go, Ruby)
- Duplicate prevention through processed commit tracking

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@konard konard changed the title [WIP] GitHub Bot: Automatic release generation if the only change is the change of any dependent library GitHub Bot: Automatic release generation for dependency-only changes Sep 13, 2025
@konard
konard marked this pull request as ready for review September 13, 2025 07:50
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.

GitHub Bot: Automatic release generation if the only change is the change of any dependent library

1 participant