Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
b761672
feat(cli): make init command interactive
Jun 21, 2025
b423eac
feat: add Terraform and CloudFormation templates for ML infrastructur…
Jul 9, 2025
e738ebb
feat: add model watermarking module skeleton (closes #273)
Jul 14, 2025
bccbdbd
feat: add secure multi-party computation module skeleton (closes #269)
Jul 14, 2025
e937218
feat: add data lake integration module skeleton (closes #265)
Jul 15, 2025
b3b1135
feat: add livestock management module skeleton (closes #261)
Jul 15, 2025
ea03c39
feat: add space mission planning module and CLI command (closes #259)
Aug 4, 2025
83fdbdd
feat: Add comprehensive few-shot learning support (Issue #237)
Aug 13, 2025
770e1e4
feat: Add comprehensive experiment tracking and model versioning syst…
Aug 14, 2025
7550db2
feat: Add basic synthetic data generation (Issue #285)
Sep 10, 2025
3a5f10b
feat: Add Automated Model Retraining (Issue #339)
Sep 30, 2025
4540184
feat: Enhanced A/B testing framework and backward compatibility
Oct 5, 2025
152531a
feat: Advanced Ensemble Framework and Model Compression
Oct 5, 2025
be0d869
feat: Model Explainability Dashboard
Oct 5, 2025
a4cca16
feat: Federated Learning Framework
Oct 7, 2025
5d27448
feat: Model Comparison Leaderboard
Oct 7, 2025
6dfa72c
feat: Time Series Anomaly Detection
Oct 7, 2025
52c92f0
feat: Add Support for Quantum Machine Learning
Oct 17, 2025
0779342
feat: Implement Model Export to PMML Format
Oct 17, 2025
8f4dfdc
feat: Optimize memory usage for large datasets
Oct 17, 2025
3d3e05e
feat: Add --dry-run flag to the fit command
Oct 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 72 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
name: Feature Request
about: Suggest an idea for this project
title: 'Implement Automated Release Process'
labels: 'enhancement, ci-cd'
assignees: ''
---

## Description
Implement an automated release process using GitHub Actions to streamline the package release workflow. This will ensure consistent and reliable releases while reducing manual intervention.

## Current Behavior
- Manual version bumping
- Manual changelog updates
- Manual PyPI publishing
- No automated release validation

## Proposed Solution
Implement a GitHub Actions workflow that will:

1. **Version Management**
- Automatically detect version changes in pyproject.toml
- Support semantic versioning (major, minor, patch)
- Create version tags automatically

2. **Changelog Generation**
- Automatically generate CHANGELOG.md entries from commit messages
- Categorize changes (features, fixes, breaking changes)
- Link to relevant PRs and issues

3. **Release Process**
- Create GitHub releases automatically
- Build and publish to PyPI
- Generate release notes
- Validate package installation

4. **Quality Checks**
- Run tests before release
- Check code quality
- Verify documentation
- Validate package metadata

## Implementation Steps
1. Create GitHub Actions workflow file
2. Set up version detection and bumping
3. Implement changelog generation
4. Configure PyPI publishing
5. Add release validation steps
6. Document the release process

## Required Changes
- Create `.github/workflows/release.yml`
- Update `pyproject.toml` for version management
- Add release documentation
- Configure PyPI secrets in repository

## Acceptance Criteria
- [ ] Automated version bumping works correctly
- [ ] Changelog is generated automatically
- [ ] Releases are created on GitHub
- [ ] Package is published to PyPI
- [ ] All quality checks pass
- [ ] Documentation is updated
- [ ] Process is documented for contributors

## Additional Context
This automation will help maintain consistent releases and reduce the chance of human error in the release process.

## Dependencies
- GitHub Actions
- PyPI account and token
- Poetry for package management
66 changes: 66 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Release

on:
push:
tags:
- 'v*'

jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.9'

- name: Install Poetry
uses: snok/install-poetry@v1
with:
version: latest
virtualenvs-create: true
virtualenvs-in-project: true

- name: Load cached venv
id: cached-poetry-dependencies
uses: actions/cache@v3
with:
path: .venv
key: venv-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }}

- name: Install dependencies
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
run: poetry install --no-interaction --no-root

- name: Run tests
run: |
poetry run pytest tests/

- name: Build package
run: poetry build

- name: Create Release
id: create_release
uses: softprops/action-gh-release@v1
with:
generate_release_notes: true
files: |
dist/*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Publish to PyPI
run: |
poetry publish --no-interaction
env:
POETRY_PYPI_TOKEN_PYPI: ${{ secrets.PYPI_API_TOKEN }}

- name: Verify Installation
run: |
VERSION=${GITHUB_REF#refs/tags/v}
pip install --no-cache-dir igel==$VERSION
python -c "import igel; print(igel.__version__)"
Loading