{"record":{"id":"12929de5b309e830","repo":"denoland/deno","slug":"no-valid-icon-images-found-for-icns","errorCode":null,"errorMessage":"No valid icon images found for .icns","messagePattern":"No valid icon images found for \\.icns","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cli/tools/desktop.rs","lineNumber":5183,"sourceCode":"  icns_path: &Path,\n) -> Result<(), deno_core::error::AnyError> {\n  use std::io::Write;\n\n  let mut icons: Vec<(&'static [u8; 4], Vec<u8>)> = Vec::new();\n  for entry in entries {\n    let src = cwd.join(&entry.path);\n    if !src.exists() {\n      log::warn!(\"Icon '{}' not found, skipping\", src.display());\n      continue;\n    }\n    let data = std::fs::read(&src)?;\n    for code in icns_ostypes_for_size(entry.size) {\n      icons.push((*code, data.clone()));\n    }\n  }\n\n  if icons.is_empty() {\n    deno_core::anyhow::bail!(\"No valid icon images found for .icns\");\n  }\n\n  // File header (8 bytes) + for each icon: 4-byte OSType + 4-byte length + payload.\n  let total_size: u32 = icons\n    .iter()\n    .map(|(_, data)| 8 + data.len() as u32)\n    .sum::<u32>()\n    + 8;\n\n  let mut buf = Vec::with_capacity(total_size as usize);\n  buf.write_all(b\"icns\")?;\n  buf.write_all(&total_size.to_be_bytes())?;\n  for (code, data) in &icons {\n    buf.write_all(*code)?;\n    let entry_len = 8 + data.len() as u32;\n    buf.write_all(&entry_len.to_be_bytes())?;\n    buf.write_all(data)?;\n  }","sourceCodeStart":5165,"sourceCodeEnd":5201,"githubUrl":"https://github.com/denoland/deno/blob/89f33cbef296a2b287f323d42de54c871fa69c77/cli/tools/desktop.rs#L5165-L5201","documentation":"Error \"No valid icon images found for .icns\" thrown in denoland/deno.","triggerScenarios":"Thrown at cli/tools/desktop.rs:5183 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"89f33cbef296a2b287f323d42de54c871fa69c77","analyzedAt":"2026-08-16T07:54:21.310Z","schemaVersion":2},"datasetVersion":"2026-08-16T08:17:34.114Z"}