Build #1 for gb-synth-0.1.0.0

[all reports]

Package gb-synth-0.1.0.0
Install InstallOk
Docs Ok
Tests Ok
Time submitted 2026-02-19 00:53:34.473824351 UTC
Compiler ghc-9.8.4
OS linux
Arch x86_64
Dependencies base-4.19.2.0, bytestring-0.12.1.0, containers-0.6.8
Flags none

Code Coverage

expressions85% (794/927)
booleanguards66% (8/12)
conditions 40% (2/5)
qualifiers100% (0/0)
alternatives89% (34/38)
local declarations87% (101/115)
top-level declarations42% (43/102)

Build log

[view raw]

Resolving dependencies...
Downloading  gb-synth-0.1.0.0
Downloaded   gb-synth-0.1.0.0
Configuring gb-synth-0.1.0.0...
Preprocessing library for gb-synth-0.1.0.0..
Building library for gb-synth-0.1.0.0..
[1 of 8] Compiling GBSynth.Envelope ( src/GBSynth/Envelope.hs, dist/build/GBSynth/Envelope.o, dist/build/GBSynth/Envelope.dyn_o )
[2 of 8] Compiling GBSynth.Pattern  ( src/GBSynth/Pattern.hs, dist/build/GBSynth/Pattern.o, dist/build/GBSynth/Pattern.dyn_o )
[3 of 8] Compiling GBSynth.WAV      ( src/GBSynth/WAV.hs, dist/build/GBSynth/WAV.o, dist/build/GBSynth/WAV.dyn_o )
[4 of 8] Compiling GBSynth.Synthesis ( src/GBSynth/Synthesis.hs, dist/build/GBSynth/Synthesis.o, dist/build/GBSynth/Synthesis.dyn_o )

src/GBSynth/Synthesis.hs:57:16: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
57 |       phases = tail (scanl (+) 0.0 deltas)
   |                ^^^^

src/GBSynth/Synthesis.hs:81:16: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
81 |       phases = tail (scanl (+) 0.0 deltas)
   |                ^^^^
[5 of 8] Compiling GBSynth.Oscillator ( src/GBSynth/Oscillator.hs, dist/build/GBSynth/Oscillator.o, dist/build/GBSynth/Oscillator.dyn_o )

src/GBSynth/Oscillator.hs:59:24: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
59 |       phases = take n (tail (scanl (+) 0.0 (repeat delta)))
   |                        ^^^^
[6 of 8] Compiling GBSynth.Instrument ( src/GBSynth/Instrument.hs, dist/build/GBSynth/Instrument.o, dist/build/GBSynth/Instrument.dyn_o )
[7 of 8] Compiling GBSynth.Song     ( src/GBSynth/Song.hs, dist/build/GBSynth/Song.o, dist/build/GBSynth/Song.dyn_o )
[8 of 8] Compiling GBSynth.Render   ( src/GBSynth/Render.hs, dist/build/GBSynth/Render.o, dist/build/GBSynth/Render.dyn_o )
Preprocessing library for gb-synth-0.1.0.0..
Running Haddock on library for gb-synth-0.1.0.0..
Warning: --source-* options are ignored when --hyperlinked-source is enabled.
[1 of 8] Compiling GBSynth.Envelope ( src/GBSynth/Envelope.hs, nothing )
[2 of 8] Compiling GBSynth.Pattern  ( src/GBSynth/Pattern.hs, nothing )
[3 of 8] Compiling GBSynth.WAV      ( src/GBSynth/WAV.hs, nothing )
[4 of 8] Compiling GBSynth.Synthesis ( src/GBSynth/Synthesis.hs, nothing )

src/GBSynth/Synthesis.hs:57:16: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
57 |       phases = tail (scanl (+) 0.0 deltas)
   |                ^^^^

src/GBSynth/Synthesis.hs:81:16: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
81 |       phases = tail (scanl (+) 0.0 deltas)
   |                ^^^^
[5 of 8] Compiling GBSynth.Oscillator ( src/GBSynth/Oscillator.hs, nothing )

src/GBSynth/Oscillator.hs:59:24: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
59 |       phases = take n (tail (scanl (+) 0.0 (repeat delta)))
   |                        ^^^^
[6 of 8] Compiling GBSynth.Instrument ( src/GBSynth/Instrument.hs, nothing )
[7 of 8] Compiling GBSynth.Song     ( src/GBSynth/Song.hs, nothing )
[8 of 8] Compiling GBSynth.Render   ( src/GBSynth/Render.hs, nothing )
Haddock coverage:
 100% ( 10 / 10) in 'GBSynth.Envelope'
Warning: 'Pattern' is ambiguous. It is defined
    * at src/GBSynth/Pattern.hs:28:16
    * at src/GBSynth/Pattern.hs:28:1
    You may be able to disambiguate the identifier by qualifying it or
    by specifying the type/value namespace explicitly.
    Defaulting to the one defined at src/GBSynth/Pattern.hs:28:1
Warning: 'Sample' is out of scope.
    If you qualify the identifier, haddock can try to link it anyway.
 100% (  8 /  8) in 'GBSynth.Pattern'
 100% (  8 /  8) in 'GBSynth.WAV'
 100% ( 13 / 13) in 'GBSynth.Synthesis'
 100% (  7 /  7) in 'GBSynth.Oscillator'
 100% (  9 /  9) in 'GBSynth.Instrument'
Warning: 'Song' is ambiguous. It is defined
    * at src/GBSynth/Song.hs:44:13
    * at src/GBSynth/Song.hs:44:1
    You may be able to disambiguate the identifier by qualifying it or
    by specifying the type/value namespace explicitly.
    Defaulting to the one defined at src/GBSynth/Song.hs:44:1
Warning: 'Section' is ambiguous. It is defined
    * at src/GBSynth/Song.hs:33:16
    * at src/GBSynth/Song.hs:33:1
    You may be able to disambiguate the identifier by qualifying it or
    by specifying the type/value namespace explicitly.
    Defaulting to the one defined at src/GBSynth/Song.hs:33:1
Warning: 'Track' is ambiguous. It is defined
    * at src/GBSynth/Song.hs:22:14
    * at src/GBSynth/Song.hs:22:1
    You may be able to disambiguate the identifier by qualifying it or
    by specifying the type/value namespace explicitly.
    Defaulting to the one defined at src/GBSynth/Song.hs:22:1
 100% (  9 /  9) in 'GBSynth.Song'
 100% ( 10 / 10) in 'GBSynth.Render'
Documentation created: dist/doc/html/gb-synth/,
dist/doc/html/gb-synth/gb-synth.txt
Installing library in /var/lib/hackage-doc-builder/build-cache/tmp-install/lib/x86_64-linux-ghc-9.8.4/gb-synth-0.1.0.0-7a7FPt2sZRMEblHEHtq905
Completed    gb-synth-0.1.0.0

Test log

[view raw]

Resolving dependencies...
Build profile: -w ghc-9.8.4 -O0
In order, the following will be built (use -v for more details):
 - gb-synth-0.1.0.0 (first run)
Configuring gb-synth-0.1.0.0...
Preprocessing library for gb-synth-0.1.0.0..
Building library for gb-synth-0.1.0.0..
[1 of 8] Compiling GBSynth.Envelope ( src/GBSynth/Envelope.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Envelope.o, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Envelope.dyn_o )
[2 of 8] Compiling GBSynth.Pattern  ( src/GBSynth/Pattern.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Pattern.o, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Pattern.dyn_o )
[3 of 8] Compiling GBSynth.WAV      ( src/GBSynth/WAV.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/WAV.o, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/WAV.dyn_o )
[4 of 8] Compiling GBSynth.Synthesis ( src/GBSynth/Synthesis.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Synthesis.o, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Synthesis.dyn_o )

src/GBSynth/Synthesis.hs:57:16: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
57 |       phases = tail (scanl (+) 0.0 deltas)
   |                ^^^^

src/GBSynth/Synthesis.hs:81:16: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
81 |       phases = tail (scanl (+) 0.0 deltas)
   |                ^^^^
[5 of 8] Compiling GBSynth.Oscillator ( src/GBSynth/Oscillator.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Oscillator.o, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Oscillator.dyn_o )

src/GBSynth/Oscillator.hs:59:24: warning: [GHC-63394] [-Wx-partial]
    In the use of tail
    (imported from Prelude, but defined in GHC.List):
    "This is a partial function, it throws an error on empty lists. Replace it with drop 1, or use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
   |
59 |       phases = take n (tail (scanl (+) 0.0 (repeat delta)))
   |                        ^^^^
[6 of 8] Compiling GBSynth.Instrument ( src/GBSynth/Instrument.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Instrument.o, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Instrument.dyn_o )
[7 of 8] Compiling GBSynth.Song     ( src/GBSynth/Song.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Song.o, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Song.dyn_o )
[8 of 8] Compiling GBSynth.Render   ( src/GBSynth/Render.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Render.o, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/GBSynth/Render.dyn_o )
Preprocessing test suite 'gb-synth-test' for gb-synth-0.1.0.0..
Building test suite 'gb-synth-test' for gb-synth-0.1.0.0..
[1 of 1] Compiling Main             ( test/Main.hs, /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/gb-synth-test/gb-synth-test-tmp/Main.o )

test/Main.hs:179:37: 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."
    |
179 |       assertApprox "env start" 0.0 (head env) 0.01
    |                                     ^^^^

test/Main.hs:240: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."
    |
240 |       assertEqual "note event" (NoteOn 60 1.0) (head (patEvents pat))
    |                                                 ^^^^

test/Main.hs:246:46: 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."
    |
246 |       assertEqual "hit at 0" (NoteOn 0 1.0) (head (patEvents hitPat))
    |                                              ^^^^

test/Main.hs:451:44: 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."
    |
451 |        in assertApprox "gain applied" 0.5 (head result) 0.001
    |                                            ^^^^
[2 of 2] Linking /var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/build/gb-synth-test/gb-synth-test
Running 1 test suites...
Test suite gb-synth-test: RUNNING...
Test suite gb-synth-test: PASS
Test suite logged to:
/var/lib/hackage-doc-builder/build-cache/tmp-install/reports/gb-synth-0.1.0.0.test
Writing: gb-synth-0.1.0.0-inplace/GBSynth.WAV.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Synthesis.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Song.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Render.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Pattern.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Oscillator.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Instrument.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Envelope.hs.html
Writing: hpc_index.html
Writing: hpc_index_fun.html
Writing: hpc_index_alt.html
Writing: hpc_index_exp.html
Test coverage report written to
/var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/hpc/vanilla/html/gb-synth-test/hpc_index.html
1 of 1 test suites (1 of 1 test cases) passed.
Writing: gb-synth-0.1.0.0-inplace/GBSynth.WAV.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Synthesis.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Song.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Render.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Pattern.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Oscillator.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Instrument.hs.html
Writing: gb-synth-0.1.0.0-inplace/GBSynth.Envelope.hs.html
Writing: hpc_index.html
Writing: hpc_index_fun.html
Writing: hpc_index_alt.html
Writing: hpc_index_exp.html
Package coverage report written to
/var/lib/hackage-doc-builder/build-cache/tmp-install/dist-newstyle/build/x86_64-linux/ghc-9.8.4/gb-synth-0.1.0.0/noopt/hpc/vanilla/html/gb-synth-0.1.0.0/hpc_index.html