Skip to content

Commit f6cecfb

Browse files
committed
Refactoring: Seperate utils-box-config
1 parent 0132639 commit f6cecfb

6 files changed

Lines changed: 634 additions & 1 deletion

File tree

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ resolver = "3"
44
members = [
55
"utils-box-archives",
66
"utils-box-bits",
7-
# "utils-box-config",
7+
"utils-box-config",
88
# "utils-box-connections",
99
# "utils-box-debug",
1010
"utils-box-logger",

utils-box-config/Cargo.toml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
[package]
2+
name = "utils-box"
3+
version = "0.1.11"
4+
edition = "2024"
5+
authors = ["Agathoklis Papadopoulos <klis.pap@gmail.com>"]
6+
license = "MIT"
7+
readme = "README.md"
8+
9+
description = "A toolbox of various small RUST utilities that make handling configuration files easier"
10+
categories = ["development-tools", "config", "parsing"]
11+
keywords = ["tools", "utilities", "utils", "toolbox"]
12+
exclude = [".github", "Cargo.toml.orig", "cargo_vcs_info.json"]
13+
repository = "https://github.com/klispap/utils-box"
14+
15+
16+
[dependencies]
17+
utils-box-logger = "1.0.1"
18+
anyhow = "1.0.100"
19+
log = "0.4.28"
20+
rust-ini = "0.18.0"
21+
22+
[dev-dependencies]
23+
indoc = "1.0.9"
24+
tempfile = "3.22.0"
25+
named-lock = "0.3.0"
26+
27+
[lints.rust]
28+
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }

utils-box-config/LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2023 Agathoklis Papadopoulos
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

utils-box-config/README.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
[![Coverage Status](https://coveralls.io/repos/github/klispap/utils-box/badge.svg?branch=main)](https://coveralls.io/github/klispap/utils-box?branch=main)
2+
3+
# Summary
4+
A toolbox library that holds a useful collection of small unitilies written in Rust that make our life easier when writting Rust applications.
5+
6+
# Utilities provided:
7+
8+
## Config
9+
Manipulate INI-style configuration files by checking for changes, updates etc
10+
11+
Mininal Example:
12+
```rust
13+
let mut config_changes = ini_compare(
14+
&old_config_path.to_path_buf(),
15+
&new_config_path.to_path_buf(),
16+
)
17+
.unwrap();
18+
19+
println!("{:#?}", config_changes);
20+
21+
```
22+
23+
# Tips for resolving Ubuntu 22.04/24.04 build issues:
24+
25+
1) Make sure you have the following system-level dependencies installed:
26+
```
27+
sudo apt install pkg-config build-essential fontconfig libfontconfig1-dev
28+
```
29+
30+
2) Verify that `pkg-config` can detect `libstdc++` properly:
31+
```
32+
pkg-config --libs libstdc++
33+
```
34+
35+
3) If `libstdc++` is not detected, add the symbolic link:
36+
```
37+
sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/11/libstdc++.so /usr/lib/libstdc++.so
38+
```
39+

0 commit comments

Comments
 (0)