Dr. Abdulmalek
deploy: OmniFile AI Processor v4.3.0
900df0b
name: Release Semantic Versioning
on:
push:
tags:
- 'v*'
jobs:
release:
name: "Create GitHub Release"
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Extract version from tag
id: version
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- name: Generate changelog from commits
id: changelog
run: |
PREV_TAG=$(git describe --tags --abbrev=0 HEAD^ 2>/dev/null || echo "")
if [ -n "$PREV_TAG" ]; then
CHANGES=$(git log ${PREV_TAG}..HEAD --pretty=format:"- %s (%h)" --no-merges)
else
CHANGES=$(git log --pretty=format:"- %s (%h)" --no-merges -20)
fi
{
echo "changelog<<EOF"
echo "$CHANGES"
echo "EOF"
} >> "$GITHUB_OUTPUT"
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ github.ref_name }}
name: "OmniFile Processor v${{ steps.version.outputs.VERSION }}"
body: |
## OmniFile AI Processor v${{ steps.version.outputs.VERSION }}
### Changes
${{ steps.changelog.outputs.changelog }}
### Installation
```bash
# Lightweight (core only):
pip install -r requirements-core.txt
# + OCR engines:
pip install -r requirements-core.txt -r requirements-ocr.txt
# Full stack (all features):
pip install -r requirements-full.txt
```
### Quick Start
```bash
streamlit run app.py # Streamlit UI (6 tabs)
python -m src.gradio_ui # Gradio UI (7 tabs)
python main.py # CLI interface
```
---
**Author:** Dr Abdulmalek Tamer Al-husseini
**Location:** Homs, Syria
**Email:** Abdulmalek.husseini@gmail.com
draft: false
prerelease: ${{ contains(steps.version.outputs.VERSION, 'rc') || contains(steps.version.outputs.VERSION, 'beta') }}
generate_release_notes: true