diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..49a3700 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,11 @@ +# 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.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +### Added +- Initial scaffold: module declaration, package skeleton, sentinel errors, CI workflow. diff --git a/errors.go b/errors.go new file mode 100644 index 0000000..8de56cb --- /dev/null +++ b/errors.go @@ -0,0 +1,14 @@ +package blockdev + +import "errors" + +var ( + // ErrMisaligned indicates an offset or length is not a multiple of BlockSize. + ErrMisaligned = errors.New("blockdev: offset or length not block-aligned") + + // ErrOutOfBounds indicates a read or write extends beyond the device length. + ErrOutOfBounds = errors.New("blockdev: read/write beyond device length") + + // ErrBadFormat indicates serialized data is malformed and cannot be deserialized. + ErrBadFormat = errors.New("blockdev: malformed serialized data") +)