{"record":{"id":"7947cfa0285fd60e","repo":"elkowar/eww","slug":"error-the-value-for-atribute-join-is-not-vali","errorCode":null,"errorMessage":"Error, the value: {} for atribute join is not valid","messagePattern":"Error, the value: (.+?) for atribute join is not valid","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/eww/src/widgets/graph.rs","lineNumber":322,"sourceCode":"        glib::Propagation::Proceed\n    }\n}\n\nfn apply_line_style(style: &str, cr: &cairo::Context) -> Result<()> {\n    match style {\n        \"miter\" => {\n            cr.set_line_cap(cairo::LineCap::Butt);\n            cr.set_line_join(cairo::LineJoin::Miter);\n        }\n        \"bevel\" => {\n            cr.set_line_cap(cairo::LineCap::Square);\n            cr.set_line_join(cairo::LineJoin::Bevel);\n        }\n        \"round\" => {\n            cr.set_line_cap(cairo::LineCap::Round);\n            cr.set_line_join(cairo::LineJoin::Round);\n        }\n        _ => Err(anyhow!(\"Error, the value: {} for atribute join is not valid\", style))?,\n    };\n    Ok(())\n}\n","sourceCodeStart":304,"sourceCodeEnd":326,"githubUrl":"https://github.com/elkowar/eww/blob/48f5aa8b379adf29da0b0bb9ca04164f65d8bdaa/crates/eww/src/widgets/graph.rs#L304-L326","documentation":"During graph drawing, eww parses the `join` attribute style value into a `cairo::LineJoin` (with an associated line cap). Any string other than the accepted values falls through the match's `_` arm and returns this error, which propagates up through `draw` and is reported by the error-handling context. It is an invalid-enum-value error for a widget styling attribute.","triggerScenarios":"Setting `:join` on a graph widget to a value other than \"miter\", \"round\", or \"bevel\" (as accepted by apply_line_style's match).","commonSituations":"Typos in eww config such as `:join \"Round\"` (wrong case) or `:join \"smooth\"`; copying stroke styles from CSS/other toolkits that use different join names.","solutions":["Change the `join` attribute value in your config to one of the accepted values (e.g. \"miter\", \"round\", or \"bevel\" — lowercase, as matched in apply_line_style).","Check for case/whitespace typos in the attribute string.","Remove the `join` attribute to use the default."],"exampleFix":"// before\n(graph :join \"smooth\" ...)\n// after\n(graph :join \"round\" ...)","handlingStrategy":"validation","validationCode":"fn valid_join(v: &str) -> bool { matches!(v, \"miter\" | \"round\" | \"bevel\") }","typeGuard":"fn parse_join(v: &str) -> Option<&'static str> {\n    [\"miter\", \"round\", \"bevel\"].into_iter().find(|ok| v.eq_ignore_ascii_case(ok))\n}","tryCatchPattern":null,"preventionTips":["Use exactly the lowercase enum names accepted by cairo: miter, round, bevel.","Lint config attribute values against allowed lists before applying.","Avoid copying CSS line-join names; they differ from cairo's."],"tags":[],"backgroundTag":null,"analyzedSha":"48f5aa8b379adf29da0b0bb9ca04164f65d8bdaa","analyzedAt":"2026-09-08T03:13:26.897Z","contentChangedAt":"2026-09-08T03:13:26.897Z","schemaVersion":2},"datasetVersion":"2026-09-16T09:17:16.951Z"}