mudssky_utils 1.0.0

A comprehensive Rust utility library providing common functionality for everyday programming tasks
Documentation
name: Release

on:
  push:
    branches:
      - main
permissions:
  contents: write      # 必须:允许 semantic-release 推送 commit 和 tag
  issues: write        # 推荐:允许 semantic-release 在失败时创建 issue
  pull-requests: read  # 推荐:允许 commit-analyzer 分析 PR
env:
  CARGO_TERM_COLOR: always

jobs:
  release:
    name: Release
    runs-on: ubuntu-latest
    if: github.ref == 'refs/heads/main'
    environment: release  # Optional: for enhanced security
    steps:
    - name: Checkout
      uses: actions/checkout@v4
      with:
        fetch-depth: 0
        token: ${{ secrets.GITHUB_TOKEN }}
    
    - name: Install Rust
      uses: dtolnay/rust-toolchain@stable
    
    - name: Setup Rust cache
      uses: Swatinem/rust-cache@v2
      with:
        cache-on-failure: true
    
    - name: Run tests
      run: cargo test --all-features
    
    - name: Set up pnpm
      uses: pnpm/action-setup@v4
    - name: Setup Node.js
      uses: actions/setup-node@v4
      with:
        node-version: '22'
        cache: 'pnpm'
    - name: install deps
      run: pnpm i --frozen-lockfile
    - name: Release
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
      run: pnpm semantic-release