12 Commits

Author SHA1 Message Date
Volodymyr Yavdoshenko f18ab518e4 fix: v1.0.2 (#9) 2026-01-17 09:19:09 +02:00
Volodymyr Yavdoshenko acd1d3f559 feat: add benchmark ci workflow (#8) 2026-01-17 08:44:07 +02:00
Volodymyr Yavdoshenko 6cac408b7c doc: readme was updated (#7) 2026-01-17 08:32:42 +02:00
Volodymyr Yavdoshenko e02448acda fix: tuning for release build (#6) 2026-01-17 08:15:10 +02:00
Volodymyr Yavdoshenko 20c9d2db54 fix: added lto optimisation for release build (#5)
Closes: https://github.com/vyavdoshenko/red/issues/4
2026-01-17 07:56:02 +02:00
Volodymyr Yavdoshenko dc70dbe5e9 Merge pull request #3 from vyavdoshenko/bobik/v1.0.1
fix: v1.0.1
2026-01-10 22:26:28 +02:00
Volodymyr Yavdoshenko 94f57920e6 Merge branch 'main' into bobik/v1.0.1 2026-01-10 22:23:45 +02:00
Volodymyr Yavdoshenko 1e5e34ecd1 fix: v1.0.1 2026-01-10 22:21:09 +02:00
Volodymyr Yavdoshenko cad429927b Merge pull request #2 from vyavdoshenko/bobik/crate_io_integration
fix: add crate.io integration
2026-01-10 22:13:54 +02:00
Volodymyr Yavdoshenko 26c76a5cec fix: add crate.io integration 2026-01-10 22:10:29 +02:00
Volodymyr Yavdoshenko c3d1756b9f Merge pull request #1 from vyavdoshenko/bobik/ci_update
fix: ci update
2026-01-10 21:52:31 +02:00
Volodymyr Yavdoshenko eca3f383eb fix: ci update 2026-01-10 21:46:45 +02:00
5 changed files with 78 additions and 4 deletions
+30
View File
@@ -0,0 +1,30 @@
name: Benchmark
on:
push:
branches: [ main ]
workflow_dispatch:
jobs:
benchmark:
name: Run benchmarks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
- name: Build release
working-directory: ./red
run: cargo build --release --verbose
- name: Install hyperfine
run: cargo install hyperfine
- name: Run benchmarks
working-directory: ./red
env:
TERM: xterm-256color
FORCE_COLOR: "1"
run: bash scripts/benchmark.sh
+14
View File
@@ -7,6 +7,20 @@ on:
branches: [ main ]
jobs:
format:
name: Check formatting
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- name: Check formatting
run: python3 red/scripts/format_rust.py --check
ubuntu:
runs-on: ubuntu-latest
steps:
+6
View File
@@ -2,6 +2,7 @@
An experimental drop-in replacement for GNU sed, written in Rust.
[![Crates.io](https://img.shields.io/crates/v/red-sed.svg)](https://crates.io/crates/red-sed)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Rust](https://img.shields.io/badge/Rust-1.70+-orange.svg?logo=rust)](https://www.rust-lang.org/)
[![CI](https://github.com/vyavdoshenko/red/actions/workflows/ci.yml/badge.svg)](https://github.com/vyavdoshenko/red/actions/workflows/ci.yml)
@@ -144,6 +145,11 @@ Pre-built binaries are available on the [Releases](https://github.com/vyavdoshen
### Install
**From crates.io:**
```bash
cargo install red-sed
```
**Linux:**
```bash
curl -LO https://github.com/vyavdoshenko/red/releases/latest/download/red-linux-x86_64-musl.tar.gz
+2 -2
View File
@@ -469,8 +469,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
[[package]]
name = "red"
version = "1.0.0"
name = "red-sed"
version = "1.0.2"
dependencies = [
"anyhow",
"assert_cmd",
+26 -2
View File
@@ -1,7 +1,21 @@
[package]
name = "red"
version = "1.0.0"
name = "red-sed"
version = "1.0.2"
edition = "2021"
description = "An experimental drop-in replacement for GNU sed, written in Rust"
license = "MIT"
readme = "../README.md"
repository = "https://github.com/vyavdoshenko/red"
keywords = ["sed", "text-processing", "cli", "unix"]
categories = ["command-line-utilities", "text-processing"]
[lib]
name = "red"
path = "src/lib.rs"
[[bin]]
name = "red"
path = "src/main.rs"
[features]
default = []
@@ -27,3 +41,13 @@ assert_cmd = "2.0"
predicates = "3.1"
tempfile = "3.10"
assert_fs = "1.1"
[profile.release]
opt-level = 3
debug = "none"
strip = "symbols"
debug-assertions = false
lto = "fat"
panic = "abort"
incremental = false
codegen-units = 1