Compare commits

...

10 Commits

Author SHA1 Message Date
J
3fd754fbd2 Merge pull request #20 from babichjacob/release-plz-2024-10-07T20-24-50Z
chore: release
2024-10-15 19:36:30 -04:00
release-plz-for-ac-qu-ai-nt[bot]
786949f79c chore: release 2024-10-15 23:27:22 +00:00
J / Jacob Babich
45e5c037ce ci(daily): change time for running to 23:41 so I can verify it works in a few minutes 2024-10-15 19:24:52 -04:00
J / Jacob Babich
09c42f0546 ci(check-and-build-and-test): in the msrv job, check x86_64-apple-darwin on macos-latest and x86_64-unknown-linux-musl on ubuntu-latest now that it's justifiable with the number of jobs spawning reduced from 1c436c8fb4 2024-10-15 19:15:15 -04:00
J / Jacob Babich
1c436c8fb4 ci(check-and-build-and-test): in the msrv job, remove the crate_directory dimension for a speed up (instead, I just copied and pasted the steps for it) 2024-10-15 19:12:37 -04:00
J / Jacob Babich
6717af965d ci(daily): change time for running to 23:04 so I can verify it works in a few minutes 2024-10-15 19:00:50 -04:00
J / Jacob Babich
4e6d56c044 style(cli-clap): ignore the Args argument because it doesn't get used yet (to satisfy Clippy) 2024-10-15 16:47:50 -04:00
J / Jacob Babich
844494b2ca ci(daily): fix the test job to reference the nightly cache channel 2024-10-15 16:42:51 -04:00
J / Jacob Babich
c60856c7d1 ci(check-and-build-and-test): add checking Clippy and rearrange the job so that the most important problems are detected first 2024-10-15 16:42:32 -04:00
J / Jacob Babich
22733f51e0 chore: build out the infrastructure for commands to be passed to the clap CLI 2024-10-15 16:15:33 -04:00
16 changed files with 106 additions and 35 deletions

View File

@@ -18,8 +18,8 @@ env:
CARGO_TERM_COLOR: always CARGO_TERM_COLOR: always
jobs: jobs:
formatting-and-deny-and-audit: audit-and-deny-and-clippy-and-formatting:
name: Check formatting, cargo-deny, and cargo-audit name: Check cargo-audit, cargo-deny, clippy, and formatting
runs-on: ubuntu-latest runs-on: ubuntu-latest
timeout-minutes: 4 timeout-minutes: 4
steps: steps:
@@ -31,14 +31,21 @@ jobs:
- name: Install cargo-audit - name: Install cargo-audit
uses: taiki-e/install-action@cargo-audit uses: taiki-e/install-action@cargo-audit
- name: Formatting - uses: Swatinem/rust-cache@v2
run: cargo fmt --check --verbose
- name: cargo-audit
run: cargo-audit audit --deny warnings
- name: cargo-deny - name: cargo-deny
uses: EmbarkStudios/cargo-deny-action@v2 uses: EmbarkStudios/cargo-deny-action@v2
- name: cargo-audit - name: Clippy
run: cargo-audit audit --deny warnings run: cargo clippy
env:
RUSTFLAGS: "--deny warnings"
- name: Formatting
run: cargo fmt --check --verbose
check-and-build: check-and-build:
strategy: strategy:
@@ -198,24 +205,24 @@ jobs:
msrv: msrv:
strategy: strategy:
matrix: matrix:
crate_directory:
- ./core
- ./cli-clap
- ./gui-eframe
- ./tui-ratatui
- ./multibinary
supporteds: supporteds:
- runner: macos-latest - runner: macos-latest
target: aarch64-apple-darwin target: aarch64-apple-darwin
- runner: macos-latest
target: x86_64-apple-darwin
- runner: ubuntu-latest - runner: ubuntu-latest
target: x86_64-unknown-linux-gnu target: x86_64-unknown-linux-gnu
- install_prerequisite: sudo apt-get update && sudo apt-get install musl-dev musl-tools && sudo ln -s /bin/g++ /bin/musl-g++
runner: ubuntu-latest
target: x86_64-unknown-linux-musl
- prerequisite_step: rm ~/.cargo/bin/cargo.exe; rm ~/.cargo/bin/rust-analyzer.exe; rm ~/.cargo/bin/rustfmt.exe; rustup update - prerequisite_step: rm ~/.cargo/bin/cargo.exe; rm ~/.cargo/bin/rust-analyzer.exe; rm ~/.cargo/bin/rustfmt.exe; rustup update
runner: windows-latest runner: windows-latest
target: x86_64-pc-windows-msvc target: x86_64-pc-windows-msvc
name: Verify MSRV of ${{ matrix.crate_directory }} for ${{ matrix.supporteds.target }} (on ${{ matrix.supporteds.runner }}) name: Verify MSRV for ${{ matrix.supporteds.target }} (on ${{ matrix.supporteds.runner }})
runs-on: ${{ matrix.supporteds.runner }} runs-on: ${{ matrix.supporteds.runner }}
timeout-minutes: 8 timeout-minutes: 8
steps: steps:
@@ -236,6 +243,18 @@ jobs:
with: with:
tool: cargo-msrv tool: cargo-msrv
- name: Verify declared MSRV (minimum supported Rust version) - name: Verify core's declared MSRV (minimum supported Rust version)
run: cargo-msrv verify --output-format json run: cargo-msrv verify --output-format json
working-directory: ${{ matrix.crate_directory }} working-directory: ./core
- name: Verify cli-clap's declared MSRV (minimum supported Rust version)
run: cargo-msrv verify --output-format json
working-directory: ./cli-clap
- name: Verify gui-eframe's declared MSRV (minimum supported Rust version)
run: cargo-msrv verify --output-format json
working-directory: ./gui-eframe
- name: Verify tui-ratatui's declared MSRV (minimum supported Rust version)
run: cargo-msrv verify --output-format json
working-directory: ./tui-ratatui
- name: Verify multibinary's declared MSRV (minimum supported Rust version)
run: cargo-msrv verify --output-format json
working-directory: ./multibinary

View File

@@ -2,7 +2,7 @@ name: Daily
on: on:
schedule: schedule:
- cron: "27 17 * * *" - cron: "41 23 * * *"
jobs: jobs:
audit: audit:
@@ -150,7 +150,7 @@ jobs:
- uses: Swatinem/rust-cache@v2 - uses: Swatinem/rust-cache@v2
with: with:
shared-key: ${{ matrix.supporteds.target }}-latest shared-key: ${{ matrix.supporteds.target }}-latest-nightly
cache-on-failure: "true" cache-on-failure: "true"
- name: Test - name: Test

10
Cargo.lock generated
View File

@@ -4,7 +4,7 @@ version = 3
[[package]] [[package]]
name = "ac-qu-ai-nt" name = "ac-qu-ai-nt"
version = "0.0.12" version = "0.0.13"
dependencies = [ dependencies = [
"ac-qu-ai-nt-cli-clap", "ac-qu-ai-nt-cli-clap",
"ac-qu-ai-nt-gui-eframe", "ac-qu-ai-nt-gui-eframe",
@@ -16,7 +16,7 @@ dependencies = [
[[package]] [[package]]
name = "ac-qu-ai-nt-cli-clap" name = "ac-qu-ai-nt-cli-clap"
version = "0.0.8" version = "0.0.9"
dependencies = [ dependencies = [
"clap", "clap",
"tracing", "tracing",
@@ -24,7 +24,7 @@ dependencies = [
[[package]] [[package]]
name = "ac-qu-ai-nt-core" name = "ac-qu-ai-nt-core"
version = "0.0.3" version = "0.0.4"
dependencies = [ dependencies = [
"llama-cpp-2", "llama-cpp-2",
"snafu", "snafu",
@@ -33,14 +33,14 @@ dependencies = [
[[package]] [[package]]
name = "ac-qu-ai-nt-gui-eframe" name = "ac-qu-ai-nt-gui-eframe"
version = "0.0.5" version = "0.0.6"
dependencies = [ dependencies = [
"tracing", "tracing",
] ]
[[package]] [[package]]
name = "ac-qu-ai-nt-tui-ratatui" name = "ac-qu-ai-nt-tui-ratatui"
version = "0.0.5" version = "0.0.6"
dependencies = [ dependencies = [
"tracing", "tracing",
] ]

View File

@@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
## [0.0.9](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-cli-clap-v0.0.8...ac-qu-ai-nt-cli-clap-v0.0.9) - 2024-10-15
### Fixed
- *(ac-qu-ai-nt-cli-clap)* write a `main` function instead of re-exporting so that the declared MSRV can be met
### Other
- *(cli-clap)* ignore the `Args` argument because it doesn't get used yet (to satisfy Clippy)
- build out the infrastructure for commands to be passed to the clap CLI
## [0.0.8](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-cli-clap-v0.0.7...ac-qu-ai-nt-cli-clap-v0.0.8) - 2024-10-07 ## [0.0.8](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-cli-clap-v0.0.7...ac-qu-ai-nt-cli-clap-v0.0.8) - 2024-10-07
### Other ### Other

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "ac-qu-ai-nt-cli-clap" name = "ac-qu-ai-nt-cli-clap"
description = "A CLI (written with clap) for ac-qu-ai-nt" description = "A CLI (written with clap) for ac-qu-ai-nt"
version = "0.0.8" version = "0.0.9"
edition = "2021" edition = "2021"
rust-version = "1.76" rust-version = "1.76"

View File

@@ -1,4 +1,15 @@
pub fn main() { use clap::{Parser, Subcommand};
#[derive(Debug, Subcommand)]
enum Command {}
#[derive(Debug, Parser)]
pub struct Args {
#[command(subcommand)]
command: Command,
}
pub fn main(_args: Args) {
#[cfg(feature = "tracing")] #[cfg(feature = "tracing")]
tracing::info!("What's up, world?"); tracing::info!("What's up, world?");
} }

View File

@@ -1,3 +1,7 @@
use clap::Parser;
fn main() { fn main() {
ac_qu_ai_nt_cli_clap::main(); let args = ac_qu_ai_nt_cli_clap::Args::parse();
ac_qu_ai_nt_cli_clap::main(args);
} }

View File

@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
## [0.0.4](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-core-v0.0.3...ac-qu-ai-nt-core-v0.0.4) - 2024-10-15
### Other
- update `llama-cpp-2` and other packages
- *(ac-qu-ai-nt-core)* update `llama-cpp-2`
- *(core)* add `snafu` as a dependency
## [0.0.3](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-core-v0.0.2...ac-qu-ai-nt-core-v0.0.3) - 2024-10-07 ## [0.0.3](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-core-v0.0.2...ac-qu-ai-nt-core-v0.0.3) - 2024-10-07
### Other ### Other

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "ac-qu-ai-nt-core" name = "ac-qu-ai-nt-core"
description = "The core library of ac-qu-ai-nt. If you're looking for the application, see cli-clap or gui-eframe or tui-ratatui or the multibinary" description = "The core library of ac-qu-ai-nt. If you're looking for the application, see cli-clap or gui-eframe or tui-ratatui or the multibinary"
version = "0.0.3" version = "0.0.4"
edition = "2021" edition = "2021"
rust-version = "1.76" rust-version = "1.76"

View File

@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
## [0.0.6](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-gui-eframe-v0.0.5...ac-qu-ai-nt-gui-eframe-v0.0.6) - 2024-10-15
### Fixed
- *(ac-qu-ai-nt-gui-eframe)* write a `main` function instead of re-exporting so that the declared MSRV can be met
## [0.0.5](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-gui-eframe-v0.0.4...ac-qu-ai-nt-gui-eframe-v0.0.5) - 2024-10-07 ## [0.0.5](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-gui-eframe-v0.0.4...ac-qu-ai-nt-gui-eframe-v0.0.5) - 2024-10-07
### Other ### Other

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "ac-qu-ai-nt-gui-eframe" name = "ac-qu-ai-nt-gui-eframe"
description = "A GUI (written with egui / eframe) for ac-qu-ai-nt" description = "A GUI (written with egui / eframe) for ac-qu-ai-nt"
version = "0.0.5" version = "0.0.6"
edition = "2021" edition = "2021"
rust-version = "1.76" rust-version = "1.76"

View File

@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
## [0.0.13](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-v0.0.12...ac-qu-ai-nt-v0.0.13) - 2024-10-15
### Other
- build out the infrastructure for commands to be passed to the clap CLI
## [0.0.12](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-v0.0.11...ac-qu-ai-nt-v0.0.12) - 2024-10-07 ## [0.0.12](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-v0.0.11...ac-qu-ai-nt-v0.0.12) - 2024-10-07
### Other ### Other

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "ac-qu-ai-nt" name = "ac-qu-ai-nt"
description = "A WIP project using AI to break down a user's query, acquire the knowledge to answer it, then transfer those insights to the user" description = "A WIP project using AI to break down a user's query, acquire the knowledge to answer it, then transfer those insights to the user"
version = "0.0.12" version = "0.0.13"
edition = "2021" edition = "2021"
rust-version = "1.76" rust-version = "1.76"
@@ -27,9 +27,9 @@ tracing = [
] ]
[dependencies] [dependencies]
ac-qu-ai-nt-cli-clap = { version = "0.0.8", path = "../cli-clap", optional = true } ac-qu-ai-nt-cli-clap = { version = "0.0.9", path = "../cli-clap", optional = true }
ac-qu-ai-nt-gui-eframe = { version = "0.0.5", path = "../gui-eframe", optional = true } ac-qu-ai-nt-gui-eframe = { version = "0.0.6", path = "../gui-eframe", optional = true }
ac-qu-ai-nt-tui-ratatui = { version = "0.0.5", path = "../tui-ratatui", optional = true } ac-qu-ai-nt-tui-ratatui = { version = "0.0.6", path = "../tui-ratatui", optional = true }
clap = { workspace = true, features = ["derive", "env"] } clap = { workspace = true, features = ["derive", "env"] }
dirs-next = "2.0.0" dirs-next = "2.0.0"

View File

@@ -19,7 +19,7 @@ struct Args {
enum Command { enum Command {
#[cfg(feature = "cli-clap")] #[cfg(feature = "cli-clap")]
#[command(alias = "cli")] #[command(alias = "cli")]
CliClap, CliClap(ac_qu_ai_nt_cli_clap::Args),
#[cfg(feature = "gui-eframe")] #[cfg(feature = "gui-eframe")]
#[command(alias = "gui")] #[command(alias = "gui")]
GuiEframe, GuiEframe,
@@ -57,7 +57,7 @@ fn main() {
match command { match command {
#[cfg(feature = "cli-clap")] #[cfg(feature = "cli-clap")]
Command::CliClap => ac_qu_ai_nt_cli_clap::main(), Command::CliClap(args) => ac_qu_ai_nt_cli_clap::main(args),
#[cfg(feature = "gui-eframe")] #[cfg(feature = "gui-eframe")]
Command::GuiEframe => ac_qu_ai_nt_gui_eframe::main(), Command::GuiEframe => ac_qu_ai_nt_gui_eframe::main(),
#[cfg(feature = "tui-ratatui")] #[cfg(feature = "tui-ratatui")]

View File

@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
## [0.0.6](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-tui-ratatui-v0.0.5...ac-qu-ai-nt-tui-ratatui-v0.0.6) - 2024-10-15
### Fixed
- *(ac-qu-ai-nt-tui-ratatui)* write a `main` function instead of re-exporting so that the declared MSRV can be met
## [0.0.5](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-tui-ratatui-v0.0.4...ac-qu-ai-nt-tui-ratatui-v0.0.5) - 2024-10-07 ## [0.0.5](https://github.com/babichjacob/ac-qu-ai-nt/compare/ac-qu-ai-nt-tui-ratatui-v0.0.4...ac-qu-ai-nt-tui-ratatui-v0.0.5) - 2024-10-07
### Other ### Other

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "ac-qu-ai-nt-tui-ratatui" name = "ac-qu-ai-nt-tui-ratatui"
description = "A TUI (written with Ratatui) for ac-qu-ai-nt" description = "A TUI (written with Ratatui) for ac-qu-ai-nt"
version = "0.0.5" version = "0.0.6"
edition = "2021" edition = "2021"
rust-version = "1.76" rust-version = "1.76"