git.iko.soy/rowtype-yoga/purescript-abcjs
on main help sign in
Trim library deps to bindings-only (drop react/random/pitchy/etc. that were game-only)
commit9f0785bd55c93832c73fdf087334cae2045f91de authorMark <mark.eibes@gmail.com> dateSat 30 May 2026, 19:48 (4 months ago) parenteb98d62
4 files changed+11−175
.spec-results+5−5 package.json+1−4 spago.lock+2−151 spago.yaml+3−15
.spec-results+5−5
@@ -2,14 +2,14 @@
22 [
33 "Abcjs.Boomwhacker.boomwhackerColor maps each pitch class to its colour, octave-independent",
44 {
5− "timestamp": "1780160210477.0",
5+ "timestamp": "1780163255992.0",
66 "success": true
77 }
88 ],
99 [
1010 "Abcjs.Internal.withDefaults keeps default render params for unspecified fields, newtypes and all",
1111 {
12− "timestamp": "1780160210477.0",
12+ "timestamp": "1780163255992.0",
1313 "success": true
1414 }
1515 ],
@@ -23,14 +23,14 @@
2323 [
2424 "Abcjs.Render.parseOnly always yields exactly one tune object",
2525 {
26− "timestamp": "1780160210477.0",
26+ "timestamp": "1780163255992.0",
2727 "success": true
2828 }
2929 ],
3030 [
3131 "Abcjs.Render.parseOnly parses a game-generated phrase to at least one line of music",
3232 {
33− "timestamp": "1780160210477.0",
33+ "timestamp": "1780163255992.0",
3434 "success": true
3535 }
3636 ],
@@ -44,7 +44,7 @@
4444 [
4545 "Abcjs.Render.parseOnly parses empty input to a tune with no music",
4646 {
47− "timestamp": "1780160210477.0",
47+ "timestamp": "1780163255992.0",
4848 "success": true
4949 }
5050 ],
package.json+1−4
@@ -14,9 +14,6 @@
1414 "typescript": "^5"
1515 },
1616 "dependencies": {
17− "abcjs": "^6.6.3",
18− "pitchy": "^4.1.0",
19− "react": "^19.2.6",
20− "react-dom": "^19.2.6"
17+ "abcjs": "^6.6.3"
2118 }
2219}
spago.lock+2−151
@@ -6,29 +6,19 @@
66 "core": {
77 "dependencies": [
88 "aff",
9− "arraybuffer-types",
109 "arrays",
1110 "datetime",
1211 "effect",
12+ "foldable-traversable",
1313 "functions",
14− "integers",
1514 "js-promise",
1615 "js-promise-aff",
17− "js-timers",
1816 "maybe",
1917 "newtype",
2018 "nullable",
21− "numbers",
22− "pitchy",
2319 "prelude",
24− "random",
25− "react-basic",
26− "react-basic-dom",
27− "react-basic-hooks",
28− "refs",
2920 "tuples",
3021 "web-dom",
31− "web-html",
3222 "web-uievents"
3323 ]
3424 },
@@ -684,11 +674,7 @@
684674 "zipperarray": "2.0.0"
685675 }
686676 },
687− "extra_packages": {
688− "pitchy": {
689− "path": "../../code/purescript-pitchy"
690− }
691− }
677+ "extra_packages": {}
692678 },
693679 "packages": {
694680 "aff": {
@@ -712,21 +698,6 @@
712698 "unsafe-coerce"
713699 ]
714700 },
715− "aff-promise": {
716− "type": "registry",
717− "version": "4.0.0",
718− "integrity": "sha256-Jgp3y+NWuuAmwz2V3LlWoX+AvxqfVglY77N5zTw8xnI=",
719− "dependencies": [
720− "aff",
721− "control",
722− "effect",
723− "either",
724− "exceptions",
725− "foreign",
726− "prelude",
727− "transformers"
728− ]
729− },
730701 "ansi": {
731702 "type": "registry",
732703 "version": "7.0.0",
@@ -845,15 +816,6 @@
845816 "unfoldable"
846817 ]
847818 },
848− "console": {
849− "type": "registry",
850− "version": "6.1.0",
851− "integrity": "sha256-3T5PPz1mATZmV0C4GzkCkpLlCa5xG7u8ZNgnLrrrI1Q=",
852− "dependencies": [
853− "effect",
854− "prelude"
855− ]
856− },
857819 "const": {
858820 "type": "registry",
859821 "version": "6.0.0",
@@ -1126,15 +1088,6 @@
11261088 "prelude"
11271089 ]
11281090 },
1129− "indexed-monad": {
1130− "type": "registry",
1131− "version": "3.0.0",
1132− "integrity": "sha256-84PslUkPKyrFUGeq981auE+zODsQO/g8rnqwgcN0zQM=",
1133− "dependencies": [
1134− "newtype",
1135− "prelude"
1136− ]
1137− },
11381091 "integers": {
11391092 "type": "registry",
11401093 "version": "6.0.0",
@@ -1200,15 +1153,6 @@
12001153 "transformers"
12011154 ]
12021155 },
1203− "js-timers": {
1204− "type": "registry",
1205− "version": "6.1.0",
1206− "integrity": "sha256-mYEL4zjFOzrDeVCnR9Hg3pcZaBZilB6zPGaZ4fzRmzg=",
1207− "dependencies": [
1208− "effect",
1209− "prelude"
1210− ]
1211− },
12121156 "lazy": {
12131157 "type": "registry",
12141158 "version": "6.0.0",
@@ -1554,16 +1498,6 @@
15541498 "tuples"
15551499 ]
15561500 },
1557− "pitchy": {
1558− "type": "local",
1559− "path": "../../code/purescript-pitchy",
1560− "dependencies": [
1561− "arraybuffer-types",
1562− "effect",
1563− "newtype",
1564− "prelude"
1565− ]
1566− },
15671501 "posix-types": {
15681502 "type": "registry",
15691503 "version": "6.0.0",
@@ -1595,81 +1529,6 @@
15951529 "tuples"
15961530 ]
15971531 },
1598− "random": {
1599− "type": "registry",
1600− "version": "6.0.0",
1601− "integrity": "sha256-7sZRo6P9UIiXDZ9s2QL9T8h3wlIwLdQrR4+oZKOijQw=",
1602− "dependencies": [
1603− "effect",
1604− "integers",
1605− "prelude"
1606− ]
1607− },
1608− "react-basic": {
1609− "type": "registry",
1610− "version": "17.0.0",
1611− "integrity": "sha256-RZA6jqfbrFHLXYD1ARlnfHp2YkT9IjUTkUwsk7Rqn8s=",
1612− "dependencies": [
1613− "effect",
1614− "prelude",
1615− "record"
1616− ]
1617− },
1618− "react-basic-dom": {
1619− "type": "registry",
1620− "version": "7.0.0",
1621− "integrity": "sha256-q5WQnD1cEVe/hzWDziZfPM9DclgCUBowRgbBg1xReSA=",
1622− "dependencies": [
1623− "arrays",
1624− "effect",
1625− "foldable-traversable",
1626− "foreign-object",
1627− "maybe",
1628− "nullable",
1629− "prelude",
1630− "react-basic",
1631− "record",
1632− "unsafe-coerce",
1633− "web-dom",
1634− "web-events",
1635− "web-file",
1636− "web-html"
1637− ]
1638− },
1639− "react-basic-hooks": {
1640− "type": "registry",
1641− "version": "9.1.1",
1642− "integrity": "sha256-wUZMNNivUj6yJDk3rbgeEgljfv2gq1bPHKHEJbkzyNQ=",
1643− "dependencies": [
1644− "aff",
1645− "aff-promise",
1646− "bifunctors",
1647− "console",
1648− "control",
1649− "datetime",
1650− "effect",
1651− "either",
1652− "exceptions",
1653− "foldable-traversable",
1654− "foreign-object",
1655− "functions",
1656− "indexed-monad",
1657− "integers",
1658− "maybe",
1659− "newtype",
1660− "now",
1661− "nullable",
1662− "ordered-collections",
1663− "prelude",
1664− "react-basic",
1665− "refs",
1666− "tuples",
1667− "type-equality",
1668− "unsafe-coerce",
1669− "unsafe-reference",
1670− "web-html"
1671− ]
1672− },
16731532 "record": {
16741533 "type": "registry",
16751534 "version": "4.0.0",
@@ -1878,14 +1737,6 @@
18781737 "integrity": "sha256-0L1QsaY20OILjfU5TV72d3U/tSjhmL9hJ32WMp857Lk=",
18791738 "dependencies": []
18801739 },
1881− "unsafe-reference": {
1882− "type": "registry",
1883− "version": "5.0.0",
1884− "integrity": "sha256-ttSJTQUnK8AK2eGOsfRxLUJEDPL6pnmExjbiOqfwC6I=",
1885− "dependencies": [
1886− "prelude"
1887− ]
1888− },
18891740 "web-dom": {
18901741 "type": "registry",
18911742 "version": "6.0.0",
spago.yaml+3−15
@@ -2,29 +2,19 @@ package:
22 name: abcjs
33 dependencies:
44 - aff
5− - arraybuffer-types
65 - arrays
76 - datetime
87 - effect
8+ - foldable-traversable
99 - functions
1010 - js-promise
1111 - js-promise-aff
12+ - maybe
1213 - newtype
1314 - nullable
14− - integers
15− - js-timers
16− - maybe
17− - numbers
18− - pitchy
1915 - prelude
20− - random
21− - react-basic
22− - react-basic-dom
23− - react-basic-hooks
24− - refs
2516 - tuples
2617 - web-dom
27− - web-html
2818 - web-uievents
2919 test:
3020 main: Test.Main
@@ -34,6 +24,4 @@ package:
3424workspace:
3525 packageSet:
3626 registry: 77.4.0
37− extraPackages:
38− pitchy:
39− path: ../../code/purescript-pitchy
27+ extraPackages: {}