Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project
adheres to Semantic Versioning.
Added
core
library for fundamental types and functions used by everything else
test
library for testing infrastructure
core::result
namespace, containing facilities for operations that can fail
test::outcome
namespace, containing types representing scenario outcomes
EXPECT
family of macros, used to express test conditions
test::scenario
namespace, containing the Scenario
type for representing a single test scenario
test::suite
namespace, containing the Suite
singleton used to hold all of the tests in a suite
test::cli
namespace, containing a function execute()
that can be called from main()
test::abstract_reporter
namespace, containing the AbstractReporter
interface
test::console_reporter
namespace, containing a reporter that writes to stdout
test::reporter
namespace, containing factories for specific reporters and also a wrapper type
core::error_chain
namespace, containing the ErrorChain
class for building complex error types
unix
library for wrapping Unix-like APIs
core::none
namespace, containing the None
type to use as a placeholder
unix::errors
namespace, containing error types for the unix
library
unix::fs
namespace, containing wrappers for filesystem APIs on Unix-like systems
windows
library for wrapping Windows APIs
windows::transcoding
namespace, containing functions for transcoding UTF8 with UTF16 for Windows APIs
core::constant_error
namespace, containing a ConstantError
template for errors with a constant message
windows::windows_error
namespace, containing functions and a type for reading and formatting Windows errors
Changed
- Reduced all
ErrorChain
and Result
instances in unix::errors
to one of each
- Moved Unix FS errors next to the functions that return them
- Refactored as many error types as possible to use
ConstantError
- Refactored all
ErrorChain
usages to be subtypes instead of aliases
- Changed
windows::transcoding
errors to be WindowsError
s
Deprecated
Removed
Fixed
Security
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project
adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Added
* `core` library for fundamental types and functions used by everything else
* `test` library for testing infrastructure
* `core::result` namespace, containing facilities for operations that can fail
* `test::outcome` namespace, containing types representing scenario outcomes
* `EXPECT` family of macros, used to express test conditions
* `test::scenario` namespace, containing the `Scenario` type for representing a single test scenario
* `test::suite` namespace, containing the `Suite` singleton used to hold all of the tests in a suite
* `test::cli` namespace, containing a function `execute()` that can be called from `main()`
* `test::abstract_reporter` namespace, containing the `AbstractReporter` interface
* `test::console_reporter` namespace, containing a reporter that writes to stdout
* `test::reporter` namespace, containing factories for specific reporters and also a wrapper type
* `core::error_chain` namespace, containing the `ErrorChain` class for building complex error types
* `unix` library for wrapping Unix-like APIs
* `core::none` namespace, containing the `None` type to use as a placeholder
* `unix::errors` namespace, containing error types for the `unix` library
* `unix::fs` namespace, containing wrappers for filesystem APIs on Unix-like systems
* `windows` library for wrapping Windows APIs
* `windows::transcoding` namespace, containing functions for transcoding UTF8 with UTF16 for Windows APIs
* `core::constant_error` namespace, containing a `ConstantError` template for errors with a constant message
* `windows::windows_error` namespace, containing functions and a type for reading and formatting Windows errors
### Changed
* Reduced all `ErrorChain` and `Result` instances in `unix::errors` to one of each
* Moved Unix FS errors next to the functions that return them
* Refactored as many error types as possible to use `ConstantError`
* Refactored all `ErrorChain` usages to be subtypes instead of aliases
* Changed `windows::transcoding` errors to be `WindowsError`s
### Deprecated
### Removed
### Fixed
### Security
[Unreleased]: https://gitlab.com/bravelytyped/crucible