ic-sql-migrate 0.0.5

A lightweight database migration library for Internet Computer (ICP) canisters with SQLite and Turso support.
Documentation
# Changelog

All notable changes to this 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).

## [Unreleased]

## [0.0.5] - 2025-10-17

### Added
- Data seeding system using Rust functions with automatic discovery and tracking
- `Builder` for compile-time configuration of migrations and seeds directories

### Changed
- Renamed `include!()` macro to `include_migrations!()` for clarity
- Renamed `sqlite::up()` to `sqlite::migrate()` for consistency
- Renamed `turso::up()` to `turso::migrate()` for consistency
- Replaced `list()` build script function with `Builder::new().build()`

## [0.0.4] - 2025-09-17

### Changed
- Improved documentation
- Removed `bundled` and `wasm32-wasi-vfs` features to `rusqlite` dependency
- Removed unneeded `tokio` dependency

## [0.0.3] - 2025-09-10

### Added
- Added `bundled` and `wasm32-wasi-vfs` features to `rusqlite` dependency

## [0.0.2] - 2025-09-04

### Added
- Turso database support via `turso` feature flag
- Async migration execution for Turso connections
- Compile-time feature validation (requires exactly one database feature)
- Comprehensive documentation for ICP canister integration
- Example canister demonstrating Turso usage

### Changed
- Refactored error handling to use generic `Database` error variant
- Database features (`sqlite` and `turso`) are now mutually exclusive
- Improved documentation to focus on ICP canister usage patterns
- Updated examples to show proper canister lifecycle integration

### Fixed
- Error type compatibility between different database backends

## [0.0.1] - 2024-08-31

### Added
- Initial release with SQLite support via `ic-rusqlite`
- Compile-time migration embedding via `include!()` macro
- Build script support with `list()` function
- Automatic migration tracking with `_migrations` table
- Transactional migration execution
- Example ICP canister with SQLite migrations