Resolving dependencies... Downloading layoutz-0.1.0.0 Downloaded layoutz-0.1.0.0 Configuring layoutz-0.1.0.0... Preprocessing library for layoutz-0.1.0.0.. Building library for layoutz-0.1.0.0.. [1 of 1] Compiling Layoutz ( Layoutz.hs, dist/build/Layoutz.o, dist/build/Layoutz.dyn_o ) Layoutz.hs:162:9: warning: [GHC-63397] [-Wname-shadowing] This binding for underline shadows the existing binding defined at Layoutz.hs:462:1 | 162 | underline = if length underlinePattern >= maxWidth | ^^^^^^^^^ Layoutz.hs:182:29: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 182 | padElementToSize maxH width linesList = | ^^^^^ Layoutz.hs:200:55: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 200 | then topLeft ++ replicate (totalWidth - 2) (head horizontal) ++ topRight | ^^^^ Layoutz.hs:204:49: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 204 | in topLeft ++ replicate leftPad (head horizontal) ++ title ++ replicate rightPad (head horizontal) ++ topRight | ^^^^ Layoutz.hs:204:98: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 204 | in topLeft ++ replicate leftPad (head horizontal) ++ title ++ replicate rightPad (head horizontal) ++ topRight | ^^^^ Layoutz.hs:206:66: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 206 | bottomBorder = bottomLeft ++ replicate (totalWidth - 2) (head horizontal) ++ bottomRight | ^^^^ Layoutz.hs:223:62: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 223 | topBorder = topLeft ++ replicate (contentWidth + 2) (head horizontal) ++ topRight | ^^^^ Layoutz.hs:224:68: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 224 | bottomBorder = bottomLeft ++ replicate (contentWidth + 2) (head horizontal) ++ bottomRight | ^^^^ Layoutz.hs:238:32: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 238 | then render (head elements) | ^^^^ Layoutz.hs:246:38: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 246 | renderElement (HorizontalRule char width) = concat (replicate width char) | ^^^^^ Layoutz.hs:281:28: warning: [GHC-18042] [-Wtype-defaults] " Defaulting the type variable a0 to type Integer in the following constraints (Show a0) arising from a use of show at Layoutz.hs:281:28-31 (Integral a0) arising from a use of round at Layoutz.hs:281:34-38 " In the expression: show (round value) In the expression: if value == fromInteger (round value) then show (round value) else printf "%.1f" value In an equation for valueStr: valueStr = if value == fromInteger (round value) then show (round value) else printf "%.1f" value | 281 | then show (round value) | ^^^^ Layoutz.hs:294:9: warning: [GHC-40910] [-Wunused-local-binds] Defined but not used: totalContentWidth | 294 | totalContentWidth = sum columnWidths | ^^^^^^^^^^^^^^^^^ Layoutz.hs:295:9: warning: [GHC-40910] [-Wunused-local-binds] Defined but not used: totalSeparatorWidth | 295 | totalSeparatorWidth = (length columnWidths - 1) * 3 -- " | " between columns | ^^^^^^^^^^^^^^^^^^^ Layoutz.hs:296:9: warning: [GHC-40910] [-Wunused-local-binds] Defined but not used: totalWidth | 296 | totalWidth = totalContentWidth + totalSeparatorWidth + 4 -- 4 for outer borders and padding | ^^^^^^^^^^ Layoutz.hs:297:17: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 297 | hChar = head horizontal | ^^^^ Layoutz.hs:330:32: warning: [GHC-63397] [-Wname-shadowing] This binding for row shadows the existing binding defined at Layoutz.hs:485:1 | 330 | normalizeRow expectedLen row = | ^^^ Layoutz.hs:345:18: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 345 | padToWidth width str = str ++ replicate (max 0 (width - length str)) ' ' | ^^^^^ Layoutz.hs:347:36: warning: [GHC-63397] [-Wname-shadowing] This binding for row shadows the existing binding defined at Layoutz.hs:485:1 | 347 | renderTableRow widths vChars row = | ^^^ Layoutz.hs:355:21: warning: [GHC-63397] [-Wname-shadowing] This binding for height shadows the existing binding defined at Layoutz.hs:61:3 | 355 | padCellToSize height width cellLines = | ^^^^^^ Layoutz.hs:355:28: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 355 | padCellToSize height width cellLines = | ^^^^^ Layoutz.hs:363:43: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 363 | let header = replicate flankingChars (head glyph) ++ " " ++ title ++ " " ++ replicate flankingChars (head glyph) | ^^^^ Layoutz.hs:363:106: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 363 | let header = replicate flankingChars (head glyph) ++ " " ++ title ++ " " ++ replicate flankingChars (head glyph) | ^^^^ Layoutz.hs:385:17: warning: [GHC-63397] [-Wname-shadowing] This binding for tree shadows the existing binding defined at Layoutz.hs:551:1 | 385 | renderElement tree = renderTree tree "" True [] | ^^^^ Layoutz.hs:459:9: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 459 | center' width element = L (Centered (render element) width) | ^^^^^ Layoutz.hs:515:11: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 515 | hr'' char width = L (HorizontalRule char width) | ^^^^^ Preprocessing library for layoutz-0.1.0.0.. Running Haddock on library for layoutz-0.1.0.0.. Warning: --source-* options are ignored when --hyperlinked-source is enabled. [1 of 1] Compiling Layoutz ( Layoutz.hs, nothing ) Layoutz.hs:162:9: warning: [GHC-63397] [-Wname-shadowing] This binding for underline shadows the existing binding defined at Layoutz.hs:462:1 | 162 | underline = if length underlinePattern >= maxWidth | ^^^^^^^^^ Layoutz.hs:182:29: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 182 | padElementToSize maxH width linesList = | ^^^^^ Layoutz.hs:200:55: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 200 | then topLeft ++ replicate (totalWidth - 2) (head horizontal) ++ topRight | ^^^^ Layoutz.hs:204:49: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 204 | in topLeft ++ replicate leftPad (head horizontal) ++ title ++ replicate rightPad (head horizontal) ++ topRight | ^^^^ Layoutz.hs:204:98: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 204 | in topLeft ++ replicate leftPad (head horizontal) ++ title ++ replicate rightPad (head horizontal) ++ topRight | ^^^^ Layoutz.hs:206:66: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 206 | bottomBorder = bottomLeft ++ replicate (totalWidth - 2) (head horizontal) ++ bottomRight | ^^^^ Layoutz.hs:223:62: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 223 | topBorder = topLeft ++ replicate (contentWidth + 2) (head horizontal) ++ topRight | ^^^^ Layoutz.hs:224:68: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 224 | bottomBorder = bottomLeft ++ replicate (contentWidth + 2) (head horizontal) ++ bottomRight | ^^^^ Layoutz.hs:238:32: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 238 | then render (head elements) | ^^^^ Layoutz.hs:246:38: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 246 | renderElement (HorizontalRule char width) = concat (replicate width char) | ^^^^^ Layoutz.hs:281:28: warning: [GHC-18042] [-Wtype-defaults] " Defaulting the type variable a0 to type Integer in the following constraints (Show a0) arising from a use of show at Layoutz.hs:281:28-31 (Integral a0) arising from a use of round at Layoutz.hs:281:34-38 " In the expression: show (round value) In the expression: if value == fromInteger (round value) then show (round value) else printf "%.1f" value In an equation for valueStr: valueStr = if value == fromInteger (round value) then show (round value) else printf "%.1f" value | 281 | then show (round value) | ^^^^ Layoutz.hs:294:9: warning: [GHC-40910] [-Wunused-local-binds] Defined but not used: totalContentWidth | 294 | totalContentWidth = sum columnWidths | ^^^^^^^^^^^^^^^^^ Layoutz.hs:295:9: warning: [GHC-40910] [-Wunused-local-binds] Defined but not used: totalSeparatorWidth | 295 | totalSeparatorWidth = (length columnWidths - 1) * 3 -- " | " between columns | ^^^^^^^^^^^^^^^^^^^ Layoutz.hs:296:9: warning: [GHC-40910] [-Wunused-local-binds] Defined but not used: totalWidth | 296 | totalWidth = totalContentWidth + totalSeparatorWidth + 4 -- 4 for outer borders and padding | ^^^^^^^^^^ Layoutz.hs:297:17: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 297 | hChar = head horizontal | ^^^^ Layoutz.hs:330:32: warning: [GHC-63397] [-Wname-shadowing] This binding for row shadows the existing binding defined at Layoutz.hs:485:1 | 330 | normalizeRow expectedLen row = | ^^^ Layoutz.hs:345:18: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 345 | padToWidth width str = str ++ replicate (max 0 (width - length str)) ' ' | ^^^^^ Layoutz.hs:347:36: warning: [GHC-63397] [-Wname-shadowing] This binding for row shadows the existing binding defined at Layoutz.hs:485:1 | 347 | renderTableRow widths vChars row = | ^^^ Layoutz.hs:355:21: warning: [GHC-63397] [-Wname-shadowing] This binding for height shadows the existing binding defined at Layoutz.hs:61:3 | 355 | padCellToSize height width cellLines = | ^^^^^^ Layoutz.hs:355:28: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 355 | padCellToSize height width cellLines = | ^^^^^ Layoutz.hs:363:43: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 363 | let header = replicate flankingChars (head glyph) ++ " " ++ title ++ " " ++ replicate flankingChars (head glyph) | ^^^^ Layoutz.hs:363:106: warning: [GHC-63394] [-Wx-partial] In the use of head (imported from Prelude, but defined in GHC.List): "This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty." | 363 | let header = replicate flankingChars (head glyph) ++ " " ++ title ++ " " ++ replicate flankingChars (head glyph) | ^^^^ Layoutz.hs:385:17: warning: [GHC-63397] [-Wname-shadowing] This binding for tree shadows the existing binding defined at Layoutz.hs:551:1 | 385 | renderElement tree = renderTree tree "" True [] | ^^^^ Layoutz.hs:459:9: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 459 | center' width element = L (Centered (render element) width) | ^^^^^ Layoutz.hs:515:11: warning: [GHC-63397] [-Wname-shadowing] This binding for width shadows the existing binding defined at Layoutz.hs:53:3 | 515 | hr'' char width = L (HorizontalRule char width) | ^^^^^ Haddock coverage: 71% ( 33 / 46) in 'Layoutz' Missing documentation for: Element (Layoutz.hs:49) Border (Layoutz.hs:102) layout (Layoutz.hs:482) text (Layoutz.hs:449) br (Layoutz.hs:452) center (Layoutz.hs:455) row (Layoutz.hs:485) underline (Layoutz.hs:462) box (Layoutz.hs:488) statusCard (Layoutz.hs:475) ul (Layoutz.hs:469) inlineBar (Layoutz.hs:472) render (Layoutz.hs:68) Documentation created: dist/doc/html/layoutz/, dist/doc/html/layoutz/layoutz.txt Installing library in /var/lib/hackage-doc-builder/build-cache/tmp-install/lib/x86_64-linux-ghc-9.8.4/layoutz-0.1.0.0-EaTmFAOg7Ib7CSXx2fFT22 Completed layoutz-0.1.0.0