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
15 changes: 0 additions & 15 deletions .github/workflows/check_flake.yml

This file was deleted.

87 changes: 54 additions & 33 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -1,54 +1,75 @@
# This workflow run when something is pushed on main and it does
# normal checks like in the normal PRs
# Run before merging a pull request and after changes reach main

name: CI

# Jobs on pull request
name: CI on main
on:
workflow_dispatch:
pull_request:
push:
branches:
- main

permissions:
contents: read

jobs:
format:
name: format rust files
name: Format rust files
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: Setup Rust toolchain and cache
uses: actions-rust-lang/setup-rust-toolchain@v1.4.4
- name: format files
run: cargo fmt --all --check
- uses: actions/checkout@v7.0.1
- uses: actions-rust-lang/setup-rust-toolchain@v1.17.0
with:
components: rustfmt
- run: cargo fmt --all --check

lint:
name: lint all rust files
name: Lint all rust files
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: Setup Rust toolchain and cache
uses: actions-rust-lang/setup-rust-toolchain@v1.4.4
- name: Clippy
run: |
cargo clippy \
--all-targets \
--no-deps \
--workspace \
- uses: actions/checkout@v7.0.1
- uses: actions-rust-lang/setup-rust-toolchain@v1.17.0
with:
components: clippy
- run: >-
cargo clippy --workspace --all-targets --all-features --no-deps --
-D warnings -D rustdoc::broken_intra_doc_links
-W clippy::explicit_iter_loop -W clippy::explicit_into_iter_loop
-W clippy::semicolon_if_nothing_returned -W clippy::doc_markdown
-W clippy::manual_let_else

test:
name: test rust files
name: Test (${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: windows-latest
- os: ubuntu-latest
os:
- ubuntu-latest
- windows-latest
- macos-latest
steps:
- uses: actions/checkout@v7.0.1
- uses: actions-rust-lang/setup-rust-toolchain@v1.17.0
- run: cargo test --workspace --all-features
- run: cargo test --workspace --all-features --bench file-format-bench
- run: git diff --exit-code -- benches/example.nu

runs-on: ${{ matrix.os }}
msrv:
name: Check MSRV
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7.0.1
- uses: actions-rust-lang/setup-rust-toolchain@v1.17.0
with:
toolchain: "1.98"
- run: cargo check --workspace --all-targets --all-features

check-flake:
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: Setup Rust toolchain and cache
uses: actions-rust-lang/setup-rust-toolchain@v1.4.4
- name: run tests
run: cargo test --workspace
- uses: actions/checkout@v7.0.1
- uses: cachix/install-nix-action@v31
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- run: nix build .#nufmt
- run: nix flake check --accept-flake-config
55 changes: 0 additions & 55 deletions .github/workflows/pull_request.yml

This file was deleted.

12 changes: 5 additions & 7 deletions benches/file-format-bench.rs
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
use criterion::{criterion_group, criterion_main, Criterion};
use nu_formatter::{config::Config, format_single_file, Mode};
use std::path::PathBuf;
use nu_formatter::{config::Config, format_string};

fn criterion_benchmark(c: &mut Criterion) {
let input = include_str!("example.nu");
let config = Config::default();

c.bench_function("Format massive nu", |b| {
b.iter(|| {
format_single_file(
PathBuf::from("./benches/example.nu"),
&Config::default(),
&Mode::Normal,
)
format_string(input, &config).expect("benchmark fixture should contain valid Nushell")
});
});
}
Expand Down
86 changes: 5 additions & 81 deletions flake.lock

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

Loading
Loading