Skip to content

chore(cargo): unify cargo profiles#3924

Merged
rtyler merged 4 commits intodelta-io:mainfrom
fvaleye:feature/unify-and-improve-cargo-profile
Nov 11, 2025
Merged

chore(cargo): unify cargo profiles#3924
rtyler merged 4 commits intodelta-io:mainfrom
fvaleye:feature/unify-and-improve-cargo-profile

Conversation

@fvaleye
Copy link
Copy Markdown
Collaborator

@fvaleye fvaleye commented Nov 7, 2025

Description

This PR unifies and clarifies the Cargo profiles used across builds and environments.
Previously, configuration options were scattered across different build scripts and environment variables, resulting in inconsistency and inefficiency.

The new setup profile is used to improve clarity, reproducibility, and build efficiency across various use cases.

Profiles

Profile Purpose
dev Fast local development with full debug info (Cargo default)
test Test builds with reduced debug info to save disk and memory
release Production-ready builds with maximum performance (Cargo default)
bench Benchmarking builds for use with cargo bench and flamegraphs
profiling Performance profiling: release optimizations + debug info
ci Optimized for CI/CD: fast builds with near-release performance
python-release Builds Python wheels for PyPI: portable and reproducible

Building and test phasing time reduced in local and CI.

Rust

No functional changes — only adjustments to leverage the appropriate Cargo profile within CI workflows.

Python

  • The default build profile is now dev (instead of release).
  • Developers can still use the python-release profile when building production-ready Python wheels.

…n and Rust

Profiles for different use cases:
- dev: Fast local development with good debug experience (Cargo defaults)
- test: test builds with minimal debug info to save disk/RAM (custom)
- release: Production Rust crates - maximum performance (Cargo defaults)
- bench: For benchmarking with flamegraphs (cargo bench)
- profiling: For performance profiling with release opts + debug info
- ci: CI/CD optimized - fast builds, release-like performance
- python-release: Python wheel builds - portable, reproducible (PyPI releases)

Signed-off-by: Florian Valeye <florian.valeye@gmail.com>
@github-actions github-actions bot added the binding/python Issues for the Python package label Nov 7, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Nov 7, 2025

ACTION NEEDED

delta-rs follows the Conventional Commits specification for release automation.

The PR title and description are used as the merge commit message. Please update your PR title and description to match the specification.

@fvaleye fvaleye changed the title chore(cargo): unify cargo profiles with dev, ci and release chore(cargo): unify cargo profiles Nov 7, 2025
@fvaleye fvaleye changed the title chore(cargo): unify cargo profiles chore(cargo): unify cargo profiles Nov 7, 2025
@codecov
Copy link
Copy Markdown

codecov bot commented Nov 7, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.93%. Comparing base (ed2b359) to head (2f4f442).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3924      +/-   ##
==========================================
- Coverage   73.95%   73.93%   -0.03%     
==========================================
  Files         153      153              
  Lines       39477    39455      -22     
  Branches    39477    39455      -22     
==========================================
- Hits        29195    29170      -25     
- Misses       8958     8962       +4     
+ Partials     1324     1323       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@fvaleye fvaleye force-pushed the feature/unify-and-improve-cargo-profile branch 3 times, most recently from f0f7d85 to 2df391f Compare November 7, 2025 15:11
Signed-off-by: Florian Valeye <florian.valeye@gmail.com>
@fvaleye fvaleye force-pushed the feature/unify-and-improve-cargo-profile branch from 2df391f to 9f37f46 Compare November 7, 2025 15:17
@rtyler rtyler merged commit 864fbc0 into delta-io:main Nov 11, 2025
29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

binding/python Issues for the Python package

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants