From c5fc886786440f75f214e741bdca326fd1a9aafd Mon Sep 17 00:00:00 2001 From: Orion Kindel Date: Sat, 28 Oct 2023 14:46:44 -0500 Subject: [PATCH] fix: migrate to new spago, purescript, bun --- .prettierrc.cjs | 8 +++ .tool-versions | 2 + bun.lockb | Bin 0 -> 58040 bytes bun/fmt.js | 27 +++++++++ jsconfig.json | 16 ++++++ package-lock.json | 131 ------------------------------------------ package.json | 8 ++- packages.dhall | 8 --- psc-package.json | 13 ----- spago.dhall | 15 ----- spago.yaml | 15 +++++ src/Cheerio.js | 30 +++++----- src/Cheerio/Static.js | 14 ++--- 13 files changed, 97 insertions(+), 190 deletions(-) create mode 100644 .prettierrc.cjs create mode 100644 .tool-versions create mode 100755 bun.lockb create mode 100644 bun/fmt.js create mode 100644 jsconfig.json delete mode 100644 package-lock.json delete mode 100644 packages.dhall delete mode 100644 psc-package.json delete mode 100644 spago.dhall create mode 100644 spago.yaml diff --git a/.prettierrc.cjs b/.prettierrc.cjs new file mode 100644 index 0000000..3a11283 --- /dev/null +++ b/.prettierrc.cjs @@ -0,0 +1,8 @@ +module.exports = { + tabWidth: 2, + trailingComma: 'all', + singleQuote: true, + semi: false, + arrowParens: 'avoid', + plugins: ['prettier-plugin-sh'], +} diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 0000000..0e1cc88 --- /dev/null +++ b/.tool-versions @@ -0,0 +1,2 @@ +purescript 0.15.12 +bun 1.0.7 diff --git a/bun.lockb b/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..c7c423732748020c37fe312c203d2ec5072b12b8 GIT binary patch literal 58040 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 Qt3P+emfH85|9^k~2SK#cX8-^I literal 0 HcmV?d00001 diff --git a/bun/fmt.js b/bun/fmt.js new file mode 100644 index 0000000..04b5c40 --- /dev/null +++ b/bun/fmt.js @@ -0,0 +1,27 @@ +/** @type {(parser: string, ps: string[]) => import("bun").Subprocess} */ +const prettier = (parser, ps) => + Bun.spawn(['bun', 'x', 'prettier', '--write', '--parser', parser, ...ps], { + stdout: 'inherit', + stderr: 'inherit', + }) + +const procs = [ + prettier('babel', ['./src/**/*.js', './bun/**/*.js', './.prettierrc.cjs']), + prettier('json', ['./package.json', './jsconfig.json']), + Bun.spawn( + [ + 'bun', + 'x', + 'purs-tidy', + 'format-in-place', + 'src/**/*.purs', + 'test/**/*.purs', + ], + { + stdout: 'inherit', + stderr: 'inherit', + }, + ), +] + +await Promise.all(procs.map(p => p.exited)) diff --git a/jsconfig.json b/jsconfig.json new file mode 100644 index 0000000..f48b93c --- /dev/null +++ b/jsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "types": ["bun-types"], + "lib": ["esnext"], + "target": "esnext", + "module": "esnext", + "moduleResolution": "bundler", + "moduleDetection": "force", + "jsx": "react", + "allowJs": true, + "checkJs": true, + "noEmit": true, + "strict": true + }, + "include": ["src/**/*.js", "bun/**/*.js"] +} diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index cb75288..0000000 --- a/package-lock.json +++ /dev/null @@ -1,131 +0,0 @@ -{ - "name": "purescript-cheerio", - "version": "0.2.3", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" - }, - "cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", - "requires": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - } - }, - "cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "requires": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - } - }, - "css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" - }, - "dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" - }, - "domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "requires": { - "domelementtype": "^2.3.0" - } - }, - "domutils": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", - "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", - "requires": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.1" - } - }, - "entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" - }, - "htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "requires": { - "boolbase": "^1.0.0" - } - }, - "parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "requires": { - "entities": "^4.4.0" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", - "requires": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - } - } - } -} diff --git a/package.json b/package.json index 9d87974..ab46c49 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,9 @@ "test": "test" }, "scripts": { - "test": "spago test" + "fmt": "bun fmt", + "build": "bun x spago build", + "test": "bun x spago test" }, "repository": { "type": "git", @@ -21,5 +23,9 @@ "homepage": "https://github.com/icyrockcom/purescript-cheerio#readme", "dependencies": { "cheerio": "^1.0.0-rc.12" + }, + "devDependencies": { + "purs-tidy": "^0.10.0", + "spago": "next" } } diff --git a/packages.dhall b/packages.dhall deleted file mode 100644 index 5319067..0000000 --- a/packages.dhall +++ /dev/null @@ -1,8 +0,0 @@ -let upstream = - https://github.com/purescript/package-sets/releases/download/psc-0.14.3-20210811/packages.dhall sha256:a2de7ef2f2e753733eddfa90573a82da0c7c61d46fa87d015b7f15ef8a6e97d5 - -let overrides = {=} - -let additions = {=} - -in upstream // overrides // additions diff --git a/psc-package.json b/psc-package.json deleted file mode 100644 index afdeb26..0000000 --- a/psc-package.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "purescript-cheerio", - "set": "psc-0.13.6-20200404", - "source": "https://github.com/purescript/package-sets.git", - "depends": - [ "console" - , "effect" - , "functions" - , "prelude" - , "psci-support" - , "test-unit" - ] -} diff --git a/spago.dhall b/spago.dhall deleted file mode 100644 index a1d9a74..0000000 --- a/spago.dhall +++ /dev/null @@ -1,15 +0,0 @@ -{ name = "cheerio" -, license = "MIT" -, repository = "https://github.com/icyrockcom/purescript-cheerio" -, dependencies = - [ "arrays" - , "effect" - , "functions" - , "maybe" - , "prelude" - , "psci-support" - , "test-unit" - ] -, packages = ./packages.dhall -, sources = [ "src/**/*.purs", "test/**/*.purs" ] -} diff --git a/spago.yaml b/spago.yaml new file mode 100644 index 0000000..738a99d --- /dev/null +++ b/spago.yaml @@ -0,0 +1,15 @@ +package: + dependencies: + - arrays + - effect + - functions + - maybe + - prelude + - psci-support + - test-unit + name: cheerio +workspace: + extra_packages: {} + package_set: + url: https://raw.githubusercontent.com/purescript/package-sets/psc-0.15.10-20230930/packages.json + hash: sha256-nTsd44o7/hrTdk0c6dh0wyBqhFFDJJIeKdQU6L1zv/A= diff --git a/src/Cheerio.js b/src/Cheerio.js index cc32335..db9825a 100644 --- a/src/Cheerio.js +++ b/src/Cheerio.js @@ -1,7 +1,7 @@ -const cheerio = require('cheerio') +import cheerio from 'cheerio' // Attributes -exports.attrImpl = function(nothing, just, name, cheerioInst) { +export const attrImpl = function(nothing, just, name, cheerioInst) { if (cheerioInst.length > 0) { const value = cheerioInst.attr(name); @@ -11,57 +11,57 @@ exports.attrImpl = function(nothing, just, name, cheerioInst) { return nothing; } -exports.hasClassImpl = function(className, cheerioInst) { +export const hasClassImpl = function(className, cheerioInst) { return cheerioInst.hasClass(className); } // Traversing -exports.findImpl = function(selector, cheerioInst) { +export const findImpl = function(selector, cheerioInst) { return cheerioInst.find(selector); } -exports.parent = function(cheerioInst) { +export const parent = function(cheerioInst) { return cheerioInst.parent() } -exports.next = function(cheerioInst) { +export const next = function(cheerioInst) { return cheerioInst.next() } -exports.prev = function(cheerioInst) { +export const prev = function(cheerioInst) { return cheerioInst.prev() } -exports.siblings = function(cheerioInst) { +export const siblings = function(cheerioInst) { return cheerioInst.siblings() } -exports.children = function(cheerioInst) { +export const children = function(cheerioInst) { return cheerioInst.children() } -exports.first = function(cheerioInst) { +export const first = function(cheerioInst) { return cheerioInst.first() } -exports.last = function(cheerioInst) { +export const last = function(cheerioInst) { return cheerioInst.last() } -exports.eqImpl = function(index, cheerioInst) { +export const eqImpl = function(index, cheerioInst) { return cheerioInst.eq(index) } // Rendering -exports.htmlImpl = function(nothing, just, cheerioInst) { +export const htmlImpl = function(nothing, just, cheerioInst) { return cheerioInst.length ? just(cheerioInst.html()) : nothing; } -exports.text = function(cheerioInst) { +export const text = function(cheerioInst) { return cheerioInst.text() } // Miscellaneous -exports.length = function(cheerioInst) { +export const length = function(cheerioInst) { return cheerioInst.length; } diff --git a/src/Cheerio/Static.js b/src/Cheerio/Static.js index bd14c73..0ad4d1a 100644 --- a/src/Cheerio/Static.js +++ b/src/Cheerio/Static.js @@ -1,24 +1,24 @@ -const cheerio = require('cheerio') +import cheerio from 'cheerio' // Loading -exports.load = cheerio.load +export const load = cheerio.load // Selecting -exports.selectImpl = function(str, cheerioStatic) { +export const selectImpl = function(str, cheerioStatic) { return cheerioStatic(str) } -exports.selectDeepImpl = function(strArr, cheerioStatic) { +export const selectDeepImpl = function(strArr, cheerioStatic) { return cheerioStatic.apply(cheerioStatic, strArr) } // Rendering -exports.htmlImpl = function(nothing, just, cheerioInst) { +export const htmlImpl = function(nothing, just, cheerioInst) { const ret = cheerio.html(cheerioInst) return ret != null ? just(ret) : nothing } // Utilities -exports.root = function(cheerioStatic) { +export const root = function(cheerioStatic) { return cheerio.root.call(cheerioStatic) -} \ No newline at end of file +}