Note: This is a test release intended to ensure nothing breaks when the
associated crates are published to crates.io.
- Update to version '0.8.7-pre'.
- Testing new `Cargo.toml` workspace manifest, of which brings manifest
keys in all three pacwrap crates together. Most package keys now, with
the exception of crate-specific metadata, are now located in the
workspace manifest.
- Update common.sh to accomodate this change.
- Update README.md to again use relative paths.
- Error logging is now present in pacwrap-agent
- Agent error code handling now correctly traps runtime panics.
- impl of DisplayTrait for TransactionError no longer handles the
display of transaction failure messages.
- Error handling for TransactionAggregation is split into three
categories: Fatal, Error, and Non-Fatal Error. While two former are
immediately trapped and the program is terminated, the latter can
safely terminate the program without consequence.
- This option was ommitted by mistake during some refactoring work and
now the `exec` module in pacwrap has been revised to include this
option.
- AppIndicator module has had the talk option re-added.
- Specifiying the `-v` option twice will invoke `--log` on
xdg-dbus-proxy for easy debugging.
- Updated to alpm.rs 4.0.1
- Changes made with b621c34 were made as a result of a regression,
introduced with alpm.rs 3.0.x, of which has now been fixed upstream.
They've now since been reverted.
- `fatal()` function for handling the termination of the program when a
fatal human-readable error digestable error occurs. This function
terminates the program and will never return a value.
- Much like the aforementioned function, the `error()` function now
prints the error and terminates the program, instead of printing the
error and returning the error code as an i32 integer.
- ErrorType enum implemented as an encapsulate to delineate error type.
- Display trait implemented for ErrorType enum for use cases whereby
the program being terminated is inconvenient for the given code path.
- `generic()` function added to GenericError trait for handling errors
of which do not require a message to be prepended.
- Global configuration is now statically cached with OnceLock instead of
lazy_static, and is loaded on-demand instead of during the invocation
of the `init()` function from the init module upon program startup.
- Use of lazy_static was also eliminated in pacwrap-core's sync module.
- Ability to instruct libalpm to disable its own sandboxing mechanism by
engaging `--disable-sandbox` at the command line.
- Updated manuals to reflect new command-line options.
- Disable sandbox user when disabling libalpm's sandbox
- Logging verbosity triggered by `--debug` command-line option.
- Implemented callback function for libalpm's logging callback.
- Increased TransactionFlags to 16 bits from 8 bits to accomodate the
bitlength required for additional transaction flags.
- exec.rs: Remove libfakeroot.so from LD_PRELOAD environment variable set
in the transaction_agent function, when creating the ephemeral
container with bubblewrap utilised for sandboxed transactions.
- Update Cargo.lock
- Cargo.toml: Change alpm-rs 3.0.5 to 4.0.0
- Added ext function to the FileType impl to return a FileType extension
for the relevant FileType.
- In the edit function, derive the file extension from said ext function.
- Simplified can_edit function with matches macro.
- Initialize gnupg database during container composition
- Handle exit code 1 of agent as a general failure and changed resulting
verbiage to 'general agent fault'. Shifted error codes up by one.
- Check if FD 1 is a terminal for colour detection in pacwrap-key
- Continue loop in kill_processes and warn instead of returning error
- Removed redundant colon in warn message
- Removed vestigial lifetime expanssion from qualify_process function
- lazy-static variables replaced with OnceLock where applicable with
otherwise redundant usage removed.
- Front-end code no longer makes use of lazy-static variables
- Documentation for desktop utils command module
- Split authorship and license sections in manual
- Cleaned up and reformatted some parameters in manual output
- Don't include symbolic containers with queue in filesystem module
- Tidy-up refactor of a few different functions across the library
- Allow synchronization to occur for target-only operations
- Check array bounds in remove module for container deletion shortcut
- Remove redundant builder call to progress function in remove module