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
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,27 @@ 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).

## [0.9.0] - 2026-02-02

### Added

- **Precompiled NIF Binaries** - Users no longer need Rust, cmake, or pkg-config installed. First compile drops from 5-10 minutes to seconds using prebuilt NIF downloads for 6 targets (2 macOS, 4 Linux). Force local compilation if required with `ECTO_LIBSQL_BUILD=true`. (Thanks [@ricardo-valero](https://github.com/ricardo-valero) for [PR #70](https://github.com/ocean/ecto_libsql/pull/70)!)
- **GitHub Actions Release Workflow** - Automated NIF builds on tag push for all supported targets using `philss/rustler-precompiled-action`, with version validation against `mix.exs`

### Fixed

- **`Repo.exists?` Generates Valid SQL** - Fixed empty SELECT clause generating invalid SQL (`SELECT FROM "users"` instead of `SELECT 1 FROM "users"`), causing syntax errors. (Thanks [@ricardo-valero](https://github.com/ricardo-valero) for [PR #69](https://github.com/ocean/ecto_libsql/pull/69)!)
- **NIF Cross-Compilation Workflow** - Fixed multiple issues preventing successful cross-compilation in GitHub Actions:
- Fixed Cargo workspace target directory mismatch — build output goes to the workspace root `target/` directory, not the crate subdirectory
- Moved `.cargo/config.toml` to workspace root so musl `-crt-static` rustflags are found when building from workspace root
- Added `Cross.toml` for `RUSTLER_NIF_VERSION` environment passthrough to cross containers
- Consolidated macOS runners to macos-15 (Apple Silicon) for both architectures

### Changed

- **Dependency Updates** - Bumped `actions/checkout` to v6, `actions/upload-artifact` to v6, updated Cargo and Credo dependencies
- **Workspace Configuration** - Added root-level `Cargo.toml` workspace with release LTO profile

## [0.8.9] - 2026-01-28

### Fixed
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion mix.exs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
defmodule EctoLibSql.MixProject do
use Mix.Project

@version "0.8.9"
@version "0.9.0"
@source_url "https://github.com/ocean/ecto_libsql"
@dev? String.ends_with?(@version, "-dev")
@force_build? System.get_env("ECTO_LIBSQL_BUILD") in ["1", "true"]
Expand Down
2 changes: 1 addition & 1 deletion native/ecto_libsql/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "ecto_libsql"
version = "0.8.9"
version = "0.9.0"
authors = []
edition = "2021"
description = "Rust NIF (Native Implemented Function) for EctoLibSql - High-performance Ecto adapter for LibSQL/Turso databases"
Expand Down