Skip to content

Commit dbeacc3

Browse files
committed
chore: bump version to 1.8.0
1 parent 60b485d commit dbeacc3

5 files changed

Lines changed: 24 additions & 5 deletions

File tree

CHANGELOG.md

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,34 @@
22

33
All notable changes to this project will be documented in this file.
44

5-
## [Unreleased]
5+
## [1.8.0] - 2026-06-19
66

77
### Added
88

99
- CI cross-compilation jobs for aarch64 and riscv64
1010
- Release workflow now produces `.apg` packages for all three architectures
11+
- `db_verify()` — checks that every file recorded for each installed package
12+
exists on disk under a given root; returns a `db_verify_issue` array with
13+
per-package lists of missing paths
14+
- `db_verify_free()` — companion free function for `db_verify()` results
15+
16+
### Fixed
17+
18+
- `TRANS_OP_REMOVE` now removes package files from disk before calling
19+
`db_remove()`; previously only the database record was deleted
20+
- `db_owner()` replaced O(n×m) full-scan with an O(1) `mdb_get` lookup
21+
against a new `file_owner` LMDB index (`file_path → pkg_name`); the index
22+
is maintained automatically by `db_add()` and `db_remove()`
23+
- `run_script()` now sandboxes the child process with isolated network, mount,
24+
UTS, and IPC namespaces on Linux via `unshare()`; sandbox failure is
25+
fail-closed (script is not executed)
1126

1227
### Changed
1328

29+
- Linux namespace sandbox in `run_script()` guarded behind `#ifdef __linux__`;
30+
on other POSIX platforms scripts run without isolation
31+
- Hardcoded paths and LMDB map size extracted into Meson build options:
32+
`keyring_dir`, `keys_dir`, `tmp_dir`, `db_mapsize`
1433
- Cross files (`cross-aarch64.txt`, `cross-riscv64.txt`) migrated `c_args` and
1534
`c_link_args` to `[built-in options]`; added `pkgconfig` to `[binaries]`
1635

Doxyfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
DOXYFILE_ENCODING = UTF-8
22
PROJECT_NAME = libapg
3-
PROJECT_NUMBER = 1.7.0
3+
PROJECT_NUMBER = 1.8.0
44
PROJECT_BRIEF = "Package management library"
55
OUTPUT_DIRECTORY = docs/_doxygen
66
INPUT = include/

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
project = "libapg"
22
author = "AnmiTaliDev"
3-
release = "1.7.0"
3+
release = "1.8.0"
44
copyright = "2026, AnmiTaliDev"
55

66
extensions = [

flake.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
{
1414
packages.${system}.default = pkgs.stdenv.mkDerivation {
1515
pname = "libapg";
16-
version = "1.7.0";
16+
version = "1.8.0";
1717

1818
src = ./.;
1919

meson.build

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
project('libapg', 'c',
2-
version: '1.7.0'
2+
version: '1.8.0'
33
)
44

55
libapg_sources = files(

0 commit comments

Comments
 (0)