Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/setup-python dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
151 lines
4.3 KiB
YAML
151 lines
4.3 KiB
YAML
name: Release
|
||
|
||
permissions:
|
||
contents: read
|
||
|
||
on:
|
||
push:
|
||
tags:
|
||
- 'v*'
|
||
|
||
jobs:
|
||
create-release:
|
||
runs-on: ubuntu-latest
|
||
permissions:
|
||
contents: write
|
||
|
||
steps:
|
||
- uses: actions/checkout@v5
|
||
|
||
- name: Set up Python 3.10
|
||
uses: actions/setup-python@v6
|
||
with:
|
||
python-version: '3.10'
|
||
|
||
- name: Install dependencies
|
||
run: |
|
||
python -m pip install --upgrade pip
|
||
pip install -r requirements-dev.txt
|
||
|
||
- name: Run full test suite
|
||
run: |
|
||
python -c "
|
||
import sys
|
||
import os
|
||
sys.path.insert(0, os.getcwd())
|
||
|
||
# Run comprehensive tests before release
|
||
from kikotools.base import ComfyAssetsBaseNode
|
||
from kikotools.tools.resolution_calculator.logic import extract_dimensions, calculate_scaled_dimensions
|
||
from kikotools.tools.resolution_calculator.node import ResolutionCalculatorNode
|
||
import torch
|
||
|
||
print('Running pre-release validation...')
|
||
|
||
# Test all major functionality
|
||
node = ResolutionCalculatorNode()
|
||
|
||
# Test various scenarios
|
||
test_cases = [
|
||
(torch.randn(1, 512, 512, 3), 2.0),
|
||
(torch.randn(1, 1024, 1024, 3), 1.5),
|
||
(torch.randn(1, 1216, 832, 3), 1.53), # User scenario
|
||
]
|
||
|
||
for i, (image, scale) in enumerate(test_cases):
|
||
width, height = node.calculate_resolution(scale, image=image)
|
||
print(f'✓ Test case {i+1}: {image.shape[2]}×{image.shape[1]} → {width}×{height} (scale: {scale})')
|
||
assert width % 8 == 0 and height % 8 == 0
|
||
|
||
print('🎉 All pre-release tests passed!')
|
||
"
|
||
|
||
- name: Extract version from tag
|
||
id: get_version
|
||
run: echo "version=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
|
||
|
||
- name: Create release notes
|
||
id: release_notes
|
||
run: |
|
||
cat > release_notes.md << 'EOF'
|
||
## ComfyUI-KikoTools ${{ steps.get_version.outputs.version }}
|
||
|
||
### 🎉 What's New
|
||
|
||
#### Resolution Calculator Tool
|
||
- **Smart Input Handling**: Works with both IMAGE and LATENT tensors
|
||
- **Model Optimized**: Specific optimizations for SDXL and FLUX models
|
||
- **Constraint Enforcement**: Automatically ensures dimensions divisible by 8
|
||
- **Flexible Scaling**: Supports scale factors from 1.0x to 8.0x
|
||
|
||
### 📦 Installation
|
||
|
||
#### ComfyUI Manager
|
||
1. Search for "ComfyUI-KikoTools"
|
||
2. Click Install
|
||
3. Restart ComfyUI
|
||
|
||
#### Manual Installation
|
||
```bash
|
||
cd ComfyUI/custom_nodes/
|
||
git clone https://github.com/ComfyAssets/ComfyUI-KikoTools.git
|
||
cd ComfyUI-KikoTools
|
||
pip install -r requirements-dev.txt
|
||
```
|
||
|
||
### 🚀 Quick Start
|
||
|
||
Look for **ComfyAssets** nodes in your ComfyUI node browser!
|
||
|
||
### 📊 Technical Details
|
||
|
||
- **Nodes**: 1 (Resolution Calculator)
|
||
- **Test Coverage**: 100%
|
||
- **Python Support**: 3.8+
|
||
- **ComfyUI Compatibility**: Latest
|
||
|
||
### 🐛 Bug Reports
|
||
|
||
Found an issue? Please report it [here](https://github.com/ComfyAssets/ComfyUI-KikoTools/issues).
|
||
|
||
---
|
||
|
||
**Full Changelog**: https://github.com/ComfyAssets/ComfyUI-KikoTools/compare/v0.0.0...${{ steps.get_version.outputs.version }}
|
||
EOF
|
||
|
||
- name: Create GitHub Release
|
||
uses: softprops/action-gh-release@v2
|
||
with:
|
||
tag_name: ${{ steps.get_version.outputs.version }}
|
||
name: ComfyUI-KikoTools ${{ steps.get_version.outputs.version }}
|
||
body_path: release_notes.md
|
||
draft: false
|
||
prerelease: false
|
||
files: |
|
||
README.md
|
||
LICENSE
|
||
requirements-dev.txt
|
||
examples/workflows/*.json
|
||
env:
|
||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||
|
||
notify-community:
|
||
runs-on: ubuntu-latest
|
||
needs: create-release
|
||
if: success()
|
||
|
||
steps:
|
||
- name: Community notification placeholder
|
||
run: |
|
||
echo "🎉 Release ${{ needs.create-release.outputs.version }} created!"
|
||
echo "Consider posting to:"
|
||
echo "- ComfyUI Discord"
|
||
echo "- Reddit r/ComfyUI"
|
||
echo "- ComfyUI-Manager database"
|
||
echo ""
|
||
echo "Release includes:"
|
||
echo "- Resolution Calculator tool"
|
||
echo "- Complete documentation"
|
||
echo "- Example workflows"
|
||
echo "- 100% test coverage"
|