Compare commits

..

No commits in common. "master" and "v0.7.3-alpha.0" have entirely different histories.

10 changed files with 26 additions and 109 deletions

View File

@ -21,6 +21,8 @@ jobs:
run: |
rustup component add rustfmt
rustup component add clippy
- name: install python
run: apt update && apt install libpython3-dev -y
- name: config custom registry
run: |
mkdir -p ~/.cargo/
@ -43,4 +45,4 @@ jobs:
with:
# Optional. Commit message for the created commit.
# Defaults to "Apply automatic changes"
commit_message: "ci: automatic cargo CI changes"
commit_message: automatic cargo CI changes

View File

@ -1,7 +0,0 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
# Check for updates every Monday
schedule:
interval: "weekly"

View File

@ -1,16 +1,10 @@
name: Rust CI
name: cargo devel CI
on:
pull_request:
branches:
- '**'
push:
branches:
- '**'
# - '!master'
env:
CARGO_TERM_COLOR: always
jobs:
CI:
runs-on: ubuntu-latest
@ -48,10 +42,10 @@ jobs:
- name: cargo fmt
run: cargo fmt --all
- name: cargo test
run: cargo test --all-features --all-targets --workspace
run: cargo test --all-features --all-targets --workspace && cargo test --all-features --workspace --doc
- name: commit back to repository
uses: stefanzweifel/git-auto-commit-action@v5
with:
# Optional. Commit message for the created commit.
# Defaults to "Apply automatic changes"
commit_message: "ci: automatic Rust CI changes"
commit_message: automatic cargo CI changes

View File

@ -1,54 +0,0 @@
name: Release-plz
permissions:
pull-requests: write
contents: write
on:
push:
branches:
- master
- main
jobs:
# Release unpublished packages.
release-plz-release:
name: Release-plz release
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Run release-plz
uses: MarcoIeni/release-plz-action@v0.5
with:
command: release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
# Create a PR with the new versions and changelog, preparing the next release.
release-plz-pr:
name: Release-plz PR
runs-on: ubuntu-latest
concurrency:
group: release-plz-${{ github.ref }}
cancel-in-progress: false
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Run release-plz
uses: MarcoIeni/release-plz-action@v0.5
with:
command: release-pr
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}

View File

@ -5,7 +5,7 @@ default-members = [".", "members/libpt-core"]
[workspace.package]
publish = true
version = "0.7.3-alpha.2"
version = "0.7.3-alpha.0"
edition = "2021"
authors = ["Christoph J. Scherr <software@cscherr.de>"]
license = "GPL-3.0-or-later"
@ -21,8 +21,8 @@ anyhow = "1.0.79"
thiserror = "1.0.56"
libpt-core = { version = "0.5.0", path = "members/libpt-core" }
libpt-bintols = { version = "0.5.1", path = "members/libpt-bintols" }
libpt-log = { version = "0.6.2-alpha.1", path = "members/libpt-log" }
libpt-cli = { version = "0.2.2-alpha.1", path = "members/libpt-cli" }
libpt-log = { version = "0.6.2-alpha.0", path = "members/libpt-log" }
libpt-cli = { version = "0.2.2-alpha.0", path = "members/libpt-cli" }
[package]
name = "libpt"

View File

@ -1,7 +1,7 @@
[package]
name = "libpt-cli"
publish.workspace = true
version = "0.2.2-alpha.2"
version = "0.2.2-alpha.0"
edition.workspace = true
authors.workspace = true
license.workspace = true

View File

@ -1,7 +1,7 @@
[package]
name = "libpt-log"
publish.workspace = true
version = "0.6.2-alpha.2"
version = "0.6.2-alpha.0"
edition.workspace = true
authors.workspace = true
license.workspace = true

View File

@ -20,6 +20,4 @@ pub enum Error {
/// any other error type, wrapped in [`anyhow::Error`]
#[error(transparent)]
Other(#[from] anyhow::Error),
#[error("Tried to open the logfile, but logging to file was not requested")]
LogfileButNoFilelog,
}

View File

@ -151,23 +151,9 @@ impl LoggerBuilder {
));
if self.log_to_file {
tracing_subscriber::registry()
.with(layer.and_then({
tracing_subscriber::fmt::layer()
.with_writer(
self.logfile()?
.expect("logging to file is requested but logfile returned None"),
)
.with_ansi(self.ansi)
.with_target(self.display_target)
.with_file(self.display_filename)
.with_thread_ids(self.display_thread_ids)
.with_line_number(self.display_line_number)
.with_thread_names(self.display_thread_names)
.with_span_events(self.span_events.clone())
.with_filter(tracing::level_filters::LevelFilter::from_level(
self.max_level,
))
}))
.with(layer.and_then(
tracing_subscriber::fmt::layer().with_writer(self.logfile().unwrap()),
))
.init();
} else {
tracing_subscriber::registry().with(layer).init();
@ -177,24 +163,25 @@ impl LoggerBuilder {
Ok(Logger {})
}
/// Opens a new file for logging to.
///
/// Format: `{log_dir}/{consumer_name}_2024-09-01.log`
///
/// Will be none if [`Self::log_to_file`] is [false].
fn logfile(&self) -> Result<Option<std::fs::File>> {
fn logfile(&self) -> Option<std::fs::File> {
if !self.log_to_file {
return Err(Error::LogfileButNoFilelog.into());
return None;
}
let mut path = self.log_dir.clone();
std::fs::create_dir_all(&path)?;
path.push(format!(
"{}_{}.log",
"{}.{}.log",
libpt_core::get_crate_name().unwrap_or_else(|| "logfile".to_string()),
chrono::Local::now().date_naive()
));
let file = std::fs::File::create(path)?;
Ok(Some(file))
let file = match std::fs::File::create(path) {
Ok(f) => f,
Err(e) => {
eprintln!("libpt: could not start logging to file: {e}");
return None;
}
};
Some(file)
}
/// enable or disable logging to and creating of logfiles

View File

@ -1,9 +1,6 @@
#!/bin/bash
set -e
cargo check --all-features --workspace
echo ">>>>>>>> SELECT A NEW VERSION"
cargo ws version
NEW_VERSION=$(cat Cargo.toml | rg '^\s*version\s*=\s*"([^"]*)"\s*$' -or '$1')
echo ">>>>>>>> PUBLISHING RELEASE FOR REPO"
bash scripts/release.sh
echo ">>>>>>>> PUBLISHING TO CRATES.IO NEXT"