[package]
name = "bump-scope"
version = "2.2.0"
edition = "2024"
license = "MIT OR Apache-2.0"
description = "A fast bump allocator that supports allocation scopes / checkpoints. Aka an arena for values of arbitrary types."
categories = ["memory-management", "no-std", "no-std::no-alloc"]
keywords = ["allocator", "arena", "no-std", "bump", "allocation"]
documentation = "https://docs.rs/bump-scope"
repository = "https://github.com/bluurryy/bump-scope"
rust-version = "1.85.1"
readme = "README.md"
include = ["src/**/*", "/LICENSE-*", "/README.md", "/CHANGELOG.md", "/UPGRADING.md", "!**/tests/**/*"]
[dependencies]
allocator-api2-02 = { package = "allocator-api2", version = "0.2.21", default-features = false, optional = true }
allocator-api2-03 = { package = "allocator-api2", version = "0.3.0", default-features = false, optional = true }
allocator-api2-04 = { package = "allocator-api2", version = "0.4.0", default-features = false, optional = true }
bytemuck = { version = "1.23.0", default-features = false, optional = true }
zerocopy-08 = { package = "zerocopy", version = "0.8.14", default-features = false, optional = true }
serde = { package = "serde_core", version = "1.0.228", default-features = false, optional = true }
[features]
default = ["std", "alloc", "panic-on-alloc"]
std = ["alloc", "allocator-api2-02?/std", "allocator-api2-03?/std", "allocator-api2-04?/std"]
alloc = ["allocator-api2-02?/alloc", "allocator-api2-03?/alloc", "allocator-api2-04?/alloc"]
panic-on-alloc = []
serde = ["dep:serde"]
bytemuck = ["dep:bytemuck"]
zerocopy-08 = ["dep:zerocopy-08"]
allocator-api2-02 = ["dep:allocator-api2-02"]
allocator-api2-03 = ["dep:allocator-api2-03"]
allocator-api2-04 = ["dep:allocator-api2-04"]
nightly = [
"nightly-allocator-api",
"nightly-coerce-unsized",
"nightly-exact-size-is-empty",
"nightly-trusted-len",
"nightly-fn-traits",
"nightly-tests",
"nightly-dropck-eyepatch",
"nightly-clone-to-uninit",
]
nightly-allocator-api = ["allocator-api2-02/nightly"]
nightly-coerce-unsized = []
nightly-exact-size-is-empty = []
nightly-trusted-len = []
nightly-fn-traits = []
nightly-tests = []
nightly-dropck-eyepatch = []
nightly-clone-to-uninit = []
[dev-dependencies]
trybuild = "1.0.114"
expect-test = "1.5.1"
rayon = "1.11.0"
serde_json = "1.0.145"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--generate-link-to-definition"]
[package.metadata.release]
allow-branch = ["main"]
pre-release-hook = ["just", "pre-release"]
pre-release-commit-message = "release: version {{version}}"
pre-release-replacements = [
{ file = "CHANGELOG.md", search = "## \\[Unreleased\\]", replace = "## [{{version}}] - {{date}}", exactly = 1 },
{ file = "CHANGELOG.md", search = "\\[Unreleased\\]: .*", replace = "[{{version}}]: https://github.com/bluurryy/bump-scope/releases/tag/v{{version}}" },
{ file = "CHANGELOG.md", search = "#Unreleased", replace = "#{{version}}", min = 0 },
{ file = "CHANGELOG.md", search = "<!-- next-url -->", replace = "<!-- next-url -->\n[Unreleased]: https://github.com/bluurryy/bump-scope/compare/{{tag_name}}...HEAD", exactly = 1 },
{ file = "UPGRADING.md", search = "## \\[Unreleased\\]", replace = "## [{{version}}] - {{date}}", min = 0 },
{ file = "UPGRADING.md", search = "\\[Unreleased\\]: .*", replace = "[{{version}}]: CHANGELOG.md#{{version}}", min = 0 },
{ file = "UPGRADING.md", search = "#Unreleased", replace = "#{{version}}", min = 0 },
]