oven-sh/bun · error · bun_core::Error

AccessDenied

Error message

AccessDenied

What it means

Sentinel variant of the bun_core Error enum mirroring errno EACCES/EPERM: the operation was denied by file permissions or privilege level. One of the errno-category variants kept local because bun_core cannot depend on bun_errno; callers switch on the enum variant.

Solutions

  1. Fix ownership/permissions on the target
  2. Re-run with appropriate privileges
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at src/bun_core/error.rs:24 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of oven-sh/bun@8c5296ac45 (2026-08-16). Data as JSON: /api/errors/3df61f6266a6b249. Report an issue: GitHub.

Appendix: source

Thrown at src/bun_core/error.rs:24

    StreamTooLong,
    #[error("FmtError")]
    FmtError,
    #[error("Unexpected")]
    Unexpected,
    #[error("InvalidByteSequence")]
    InvalidByteSequence,
    #[error("StringTooLong")]
    StringTooLong,
    #[error("InvalidCharacter")]
    InvalidCharacter,
    // errno-category names kept local (bun_core cannot depend on bun_errno):
    #[error("NoSpaceLeft")]
    NoSpaceLeft,
    #[error("NameTooLong")]
    NameTooLong,
    #[error("FileNotFound")]
    FileNotFound,
    #[error("AccessDenied")]
    AccessDenied,
    #[error("WriteFailed")]
    WriteFailed,
    #[error("CurrentWorkingDirectoryUnlinked")]
    CurrentWorkingDirectoryUnlinked,
    #[error(transparent)]
    Alloc(#[from] bun_alloc::AllocError),
}

impl Error {
    #[allow(clippy::trivially_copy_pass_by_ref)]
    pub fn name(&self) -> &'static str {
        match self {
            Self::EndOfStream => "EndOfStream",
            Self::StreamTooLong => "StreamTooLong",
            Self::FmtError => "FmtError",
            Self::Unexpected => "Unexpected",
            Self::InvalidByteSequence => "InvalidByteSequence",

View on GitHub (pinned to 8c5296ac45)