Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
820 changes: 41 additions & 779 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

43 changes: 43 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Python
__pycache__/
*.py[cod]
*$py.class
*.egg-info/
*.egg
dist/
build/
.eggs/
*.whl

# Runtime directories
cache/
sessions/
downloads/

# Config and logs
config.json
*.log
download_log.txt
speedtest_result.json

# Environment
.env
.venv/
env/
venv/

# IDE
.vscode/
.idea/
*.swp
*.swo

# OS
.DS_Store
Thumbs.db

# Testing
.coverage
htmlcov/
.pytest_cache/
.mypy_cache/
21 changes: 18 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,24 @@ Please review our [Code of Conduct](CODE_OF_CONDUCT.md) before contributing.
## Development Setup

1. Fork the repository.
2. Create a branch for your feature or bug fix.
3. Commit your changes with clear messages.
4. Push to your fork and create a pull request.
2. Clone and install in development mode:
```bash
git clone https://github.com/YOUR_USERNAME/Snatch.git
cd Snatch
pip install -e ".[dev,all]"
```
3. Run the test suite:
```bash
python -m pytest tests/ -v
```
4. Format your code:
```bash
black snatch/ tests/
isort --profile black snatch/ tests/
```
5. Create a branch for your feature or bug fix.
6. Commit your changes with clear messages.
7. Push to your fork and create a pull request.

## Communication

Expand Down
2 changes: 1 addition & 1 deletion Documentation/API_REFERENCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -440,7 +440,7 @@ AudioProcessor(config: Dict[str, Any])

### EnhancedAudioProcessor

Enhanced processor with AI-based improvements, professional presets, and advanced algorithms introduced in v1.8.0.
Enhanced processor with AI-based improvements, professional presets, and advanced algorithms.

#### Constructor

Expand Down
2 changes: 1 addition & 1 deletion Documentation/AUDIO_ENHANCEMENT_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Overview

Snatch v1.8.0 introduces a comprehensive audio enhancement system that leverages AI-powered algorithms to improve audio quality, reduce noise, and optimize audio content for different use cases. This guide covers all aspects of the audio enhancement features.
Snatch includes a comprehensive audio enhancement system that leverages AI-powered algorithms to improve audio quality, reduce noise, and optimize audio content for different use cases. This guide covers all aspects of the audio enhancement features.

## Table of Contents

Expand Down
39 changes: 39 additions & 0 deletions Documentation/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,45 @@ All notable changes to the Snatch project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [2.0.0] - 2026-03-04

### 🏗️ Package Restructuring

- **BREAKING**: Renamed `modules/` package to `snatch/` for standard Python naming
- **BREAKING**: Moved `Theme/` directory into `snatch/theme/` sub-package with fixed relative imports
- **BREAKING**: Removed `Snatch.py` entry point; use `snatch` command or `python -m snatch.cli`
- **BREAKING**: Raised minimum Python version to 3.10+
- **NEW**: Modern `pyproject.toml` packaging with optional dependency groups (`[audio]`, `[p2p]`, `[video]`, `[dev]`)
- **NEW**: Console entry point `snatch` available globally after `pip install`
- **NEW**: pytest-based test suite with fixtures for config, cache, CLI, and utilities

### 🔧 Code Consolidation

- **MERGED**: `config_helpers.py` into `config.py` (4 config modules → 2)
- **MERGED**: `advanced_config.py` into `config_manager.py`
- **FIXED**: Single source of truth for version (`constants.py` → `2.0.0`)
- **FIXED**: Duplicate `"organize"` key in `PROCESS_PREFIXES`
- **FIXED**: `DEFAULT_TIMEOUT` conflict between `defaults.py` and `constants.py`
- **FIXED**: Broken Theme relative imports (`from .manager` → `from ..manager`)

### 🧹 Cleanup

- **REMOVED**: `setupfiles/` directory (stale v1.7.0 requirements, pip freeze dump)
- **REMOVED**: Empty placeholder files (`cyberpunk_interactive.py`, `working_interactive.py`)
- **REMOVED**: Stale documentation summaries (FIXES_README, FIXES_SUMMARY, etc.)
- **REMOVED**: All `__pycache__/` from git tracking
- **SIMPLIFIED**: `setup.py` reduced to 2-line shim (config in `pyproject.toml`)
- **CLEANED**: `requirements.txt` removed transitive dependencies

### 📦 CI/CD

- **REWRITTEN**: GitHub Actions pipeline for `snatch/` package structure
- **UPDATED**: Python matrix to 3.10, 3.12
- **FIXED**: Test job uses `pip install -e ".[dev,all]"` and `pytest`
- **REMOVED**: `fix-code-issues` job that patched nonexistent `Snatch.py`

---

## [1.8.0] - 2025-05-31

### 🎵 Major New Features
Expand Down
180 changes: 0 additions & 180 deletions Documentation/CONFIGURATION_IMPLEMENTATION_SUMMARY.md

This file was deleted.

Loading