Skip to content

Releases: snkrheadz/gocyclo-analysis-reports

Apply Branding (v0.1.1)

21 Jun 08:54
9756623
Compare
Choose a tag to compare

Apply Branding (v0.1.1)

This release includes the following updates:

  • Added branding with a new icon and color to enhance the visual appearance of the action in the GitHub Marketplace.

No functional changes have been made in this release. The update solely focuses on improving the user interface and presentation.

First Release (v0.1.0)

21 Jun 07:42
09f1c6c
Compare
Choose a tag to compare

First Release (v0.1.0)

This is the initial release of the gocyclo Analysis Reports GitHub Action. This action provides comprehensive cyclomatic complexity analysis for Go projects using the gocyclo tool.

Features:

  • Cyclomatic Complexity Analysis: Analyze Go functions for cyclomatic complexity to identify potentially complex and high-risk areas in your codebase.
  • Detailed Reports: Generates detailed reports on the cyclomatic complexity of your Go code, helping you maintain high code quality.
  • Customizable Inputs:
    • ignore_pattern: Specify patterns to ignore certain files during analysis.
    • over: Show functions with complexity greater than a specified value and return an exit code if such functions are found.
    • top: Display the top N most complex functions in your codebase.
  • Easy Integration: Integrate seamlessly into your CI/CD pipeline to continuously monitor code complexity.

Usage Example:

Here’s how you can use this action in your GitHub Actions workflow:

name: Analyze Go Code with gocyclo

on:
  pull_request:
    paths:
      - "**/*.go"

# Permissions for marocchino/sticky-pull-request-comment@v2
permissions:
  pull-requests: write

jobs:
  gocyclo_analysis:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/[email protected]

      - name: Run gocyclo Analysis
        uses: snkrheadz/gocyclo-analysis-reports@v1
        id: gocyclo_analysis
        with:
          ignore_pattern: '_test|_mock|mock_|.pb.go|proto'
          over: '20'
          top: '10'
      - name: Post Results
        uses: marocchino/sticky-pull-request-comment@v2
        with:
          recreate: true
          header: gocyclo Report
          message: |
            ${{ env.gocyclo_report }}

This release marks the beginning of providing Go developers with the tools they need to ensure their code remains maintainable and easy to understand. We welcome feedback and contributions to further enhance the functionality of this action.