From c84ef242334e606c88e5f7a2249d9b2d3cde8aa4 Mon Sep 17 00:00:00 2001 From: mmkal <15040698+mmkal@users.noreply.github.com> Date: Sun, 22 Sep 2019 14:59:41 -0400 Subject: [PATCH 1/5] feat: slonik 19 --- package-lock.json | 366 ++++++++++++++++++++++++++++----- package.json | 5 +- packages/migrator/package.json | 2 +- packages/typegen/package.json | 2 +- readme.md | 3 +- scripts/publish.sh | 14 -- scripts/update-readme.js | 27 --- 7 files changed, 325 insertions(+), 94 deletions(-) delete mode 100755 scripts/publish.sh delete mode 100644 scripts/update-readme.js diff --git a/package-lock.json b/package-lock.json index d204c28d..ba605f92 100644 --- a/package-lock.json +++ b/package-lock.json @@ -187,9 +187,9 @@ } }, "@babel/runtime": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.5.5.tgz", - "integrity": "sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.6.0.tgz", + "integrity": "sha512-89eSBLJsxNxOERC0Op4vd+0Bqm6wRMqMbFtV3i0/fbaWw/mJ8Q3eBvgX0G4SyrOOLCtbu98HspF8o09MRT+KzQ==", "dev": true, "requires": { "regenerator-runtime": "^0.13.2" @@ -1739,9 +1739,9 @@ "dev": true }, "@types/slonik": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/@types/slonik/-/slonik-18.2.0.tgz", - "integrity": "sha512-OAwFkwH56hi5EwkfL3MBM74i6BA5rAEa+6Le8lEz2f3OF6sjc4AJRoovRpxMNV2jrP35GZ4rM/PrtYmjlOs47w==", + "version": "18.6.1", + "resolved": "https://registry.npmjs.org/@types/slonik/-/slonik-18.6.1.tgz", + "integrity": "sha512-0FXdtPd2erLaQRl2kVqXp89C3rgJyutwAns0uCZVtzkQhZUQ6iJ1NEOsx3pF/YwtTNxa8APoI2RcuQD0wfcPpg==", "dev": true, "requires": { "@types/node": "*" @@ -2225,9 +2225,9 @@ "dev": true }, "boolean": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/boolean/-/boolean-0.2.0.tgz", - "integrity": "sha512-mDcM3ChboDuhv4glLXEH1us7jMiWXRSs3R13Okoo+kkFOlLIjvF1y88507wTfDf9zsuv0YffSDFUwX95VAT/mg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-1.0.0.tgz", + "integrity": "sha512-IB1lgIywn37N9Aff8CciCblVpMUflgL42vyxPUH0IvaDdIi/QwBHKv1lq/HOkATHCfa7c4MbMYJ7Bo7hGuoI+w==", "dev": true }, "brace-expansion": { @@ -2328,6 +2328,12 @@ "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==", "dev": true }, + "bufferput": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/bufferput/-/bufferput-0.1.3.tgz", + "integrity": "sha1-xs1KLO+jldIod3She8mpCyJER9k=", + "dev": true + }, "builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", @@ -2973,9 +2979,9 @@ "dev": true }, "core-js": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.1.4.tgz", - "integrity": "sha512-YNZN8lt82XIMLnLirj9MhKDFZHalwzzrL9YLt6eb0T5D0EDl4IQ90IGkua8mHbnxNrkj1d8hbdizMc0Qmg1WnQ==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.2.1.tgz", + "integrity": "sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw==", "dev": true }, "core-util-is": { @@ -3010,6 +3016,12 @@ "request": "^2.86.0" } }, + "crack-json": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/crack-json/-/crack-json-1.2.1.tgz", + "integrity": "sha512-0NtinzYN8ReAxx778JUUfIKVK7l2UOXxXd1DqcroYcjGkW65ruQnDgElpCcDKSlR9xD/owjEuIMmYkj87dm4VQ==", + "dev": true + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -3253,6 +3265,12 @@ "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", "dev": true }, + "detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", + "dev": true + }, "dezalgo": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", @@ -4800,6 +4818,17 @@ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true }, + "globalthis": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.0.tgz", + "integrity": "sha512-vcCAZTJ3r5Qcu5l8/2oyVdoFwxKgfYnMTR2vwWeux/NAVZK3PwcMaWkdUIn4GJbmKuRK7xcvDsLuK+CKcXyodg==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "object-keys": "^1.0.12" + } + }, "globby": { "version": "9.2.0", "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", @@ -5027,6 +5056,12 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "dev": true + }, "iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", @@ -5184,6 +5219,12 @@ } } }, + "int64-buffer": { + "version": "0.99.1007", + "resolved": "https://registry.npmjs.org/int64-buffer/-/int64-buffer-0.99.1007.tgz", + "integrity": "sha512-XDBEu44oSTqlvCSiOZ/0FoUkpWu/vwjJLGSKDabNISPQNZ5wub1FodGHBljRsrR0IXRPq7SslshZYMuA55CgTQ==", + "dev": true + }, "invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", @@ -6845,6 +6886,12 @@ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true }, + "multi-fork": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/multi-fork/-/multi-fork-0.0.2.tgz", + "integrity": "sha1-gFiuxGFBJMftqhWBm4juiJ0+tOA=", + "dev": true + }, "multimatch": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-3.0.0.tgz", @@ -7449,6 +7496,12 @@ "json-parse-better-errors": "^1.0.1" } }, + "parse-ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", + "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", + "dev": true + }, "parse-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-4.0.1.tgz", @@ -7529,16 +7582,16 @@ "dev": true }, "pg": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/pg/-/pg-7.11.0.tgz", - "integrity": "sha512-YO4V7vCmEMGoF390LJaFaohWNKaA2ayoQOEZmiHVcAUF+YsRThpf/TaKCgSvsSE7cDm37Q/Cy3Gz41xiX/XjTw==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/pg/-/pg-7.12.1.tgz", + "integrity": "sha512-l1UuyfEvoswYfcUe6k+JaxiN+5vkOgYcVSbSuw3FvdLqDbaoa2RJo1zfJKfPsSYPFVERd4GHvX3s2PjG1asSDA==", "dev": true, "requires": { "buffer-writer": "2.0.0", "packet-reader": "1.0.0", "pg-connection-string": "0.1.3", "pg-pool": "^2.0.4", - "pg-types": "~2.0.0", + "pg-types": "^2.1.0", "pgpass": "1.x", "semver": "4.3.2" }, @@ -7549,19 +7602,6 @@ "integrity": "sha1-2hhHsglA5C7hSSvq9l1J2RskXfc=", "dev": true }, - "pg-types": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.0.1.tgz", - "integrity": "sha512-b7y6QM1VF5nOeX9ukMQ0h8a9z89mojrBHXfJeSug4mhL0YpxNBm83ot2TROyoAmX/ZOX3UbwVO4EbH7i1ZZNiw==", - "dev": true, - "requires": { - "pg-int8": "1.0.1", - "postgres-array": "~2.0.0", - "postgres-bytea": "~1.0.0", - "postgres-date": "~1.0.4", - "postgres-interval": "^1.1.0" - } - }, "semver": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.2.tgz", @@ -7576,12 +7616,51 @@ "integrity": "sha512-bhlV7Eq09JrRIvo1eKngpwuqKtJnNhZdpdOlvrPrA4dxqXPjxSrbNrfnIDmTpwMyRszrcV4kU5ZA4mMsQUrjdg==", "dev": true }, + "pg-copy-streams": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/pg-copy-streams/-/pg-copy-streams-2.2.2.tgz", + "integrity": "sha512-mjSqs6hrsRhBojCuY2hxyg48B+3th5ARBjMxBCEisIqBvdRD0g5ETdbts20TzrOfha8ueJQOmQCJCprtczJtGQ==", + "dev": true + }, + "pg-copy-streams-binary": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pg-copy-streams-binary/-/pg-copy-streams-binary-1.2.0.tgz", + "integrity": "sha512-gWVAMgMF0KNjfIdVONk3naZgb2Qr/TCvRAB9rtUOv3xt6JBGSwAQfD2xsGV9Xts/Nj11CAmfz4KLshwXdp+mkw==", + "dev": true, + "requires": { + "bufferput": "^0.1.3", + "ieee754": "^1.1.13", + "int64-buffer": "^0.99.1007", + "multi-fork": "0.0.2", + "through2": "^3.0.1" + }, + "dependencies": { + "through2": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", + "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", + "dev": true, + "requires": { + "readable-stream": "2 || 3" + } + } + } + }, "pg-cursor": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pg-cursor/-/pg-cursor-2.0.0.tgz", "integrity": "sha512-/gYHadqLurektHk6HXiL0hSrn+RZfowkLr+ftC0lLoLBlIm8JIdk9f9g71EEjK63XxqhFqcykHuxQLFzSeyzdQ==", "dev": true }, + "pg-formatter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pg-formatter/-/pg-formatter-1.1.1.tgz", + "integrity": "sha512-dtY8ah3DBJMx5Fnje2Qz2MfQVu3ns+AJpAQ8Gi+VN8VE263nrgB/Txqln4fanLDbKIp6K0GQ3ZQzHfVRGokzbA==", + "dev": true, + "requires": { + "shell-quote": "^1.6.1" + } + }, "pg-int8": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz", @@ -7589,15 +7668,15 @@ "dev": true }, "pg-pool": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-2.0.6.tgz", - "integrity": "sha512-hod2zYQxM8Gt482q+qONGTYcg/qVcV32VHVPtktbBJs0us3Dj7xibISw0BAAXVMCzt8A/jhfJvpZaxUlqtqs0g==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-2.0.7.tgz", + "integrity": "sha512-UiJyO5B9zZpu32GSlP0tXy8J2NsJ9EFGFfz5v6PSbdz/1hBLX1rNiiy5+mAm5iJJYwfCv4A0EBcQLGWwjbpzZw==", "dev": true }, "pg-types": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.1.0.tgz", - "integrity": "sha512-ePgBz25hdRT7VzMdhQkG77N85vuvoojj7FO/uiyy/ifmUEKjNKyIjZwxwJvvj9YBpmmfIXJAq2vK9CU3a4Scag==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz", + "integrity": "sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==", "dev": true, "requires": { "pg-int8": "1.0.1", @@ -7724,6 +7803,15 @@ "react-is": "^16.8.4" } }, + "pretty-ms": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-5.0.0.tgz", + "integrity": "sha512-94VRYjL9k33RzfKiGokPBPpsmloBYSf5Ri+Pq19zlsEcUKFob+admeXr5eFDRuPjFmEOcjJvPGdillYOJyvZ7Q==", + "dev": true, + "requires": { + "parse-ms": "^2.1.0" + } + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -8145,12 +8233,14 @@ } }, "roarr": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.13.2.tgz", - "integrity": "sha512-HQUuk0VVFmzSrAMFOimSXRBZ8KJu8qH8LOm4ltnJCsQTZr8QQbneI9pzfW3m37Jiq+6oR9c0Xc+W4xnbi7QLKw==", + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.14.1.tgz", + "integrity": "sha512-Fhm9shQ8JhpjFnOT7bgxKR7Xcg1Tq+0/Tdy+bloB4sUxxAib4MZDMJ6AjUBRE+798l2MnhhF2JTqbqx1+/kRyQ==", "dev": true, "requires": { - "boolean": "^0.2.0", + "boolean": "^1.0.0", + "detect-node": "^2.0.4", + "globalthis": "^1.0.0", "json-stringify-safe": "^5.0.1", "semver-compare": "^1.0.0", "sprintf-js": "^1.1.2" @@ -8342,6 +8432,17 @@ "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", "dev": true }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, "slide": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", @@ -8349,29 +8450,55 @@ "dev": true }, "slonik": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/slonik/-/slonik-18.2.0.tgz", - "integrity": "sha512-6h8H/VopKU2D3O//5+YJdXvv+wgQzaj8fI3T7nuQJmuRaGC9ZGPZwTD5Ui5ijcBJfzQwxZYdHcvml9aZjVZvaQ==", + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/slonik/-/slonik-19.0.1.tgz", + "integrity": "sha512-w3zcIqDGyKjUMFMC4ibXmKwjJePvJrKM/yIXVL2SK00B+gsLwaCKyoGQLwesmqWvSgn+rGgRkUItAcFDt8kh7A==", "dev": true, "requires": { - "core-js": "^3.1.4", + "concat-stream": "^2.0.0", "delay": "^4.3.0", "es6-error": "^4.1.1", "get-stack-trace": "^2.0.1", "inline-loops.macro": "^1.2.2", "iso8601-duration": "^1.2.0", - "lodash": "^4.17.14", - "pg": "^7.11.0", + "lodash": "^4.17.15", + "pg": "^7.12.1", "pg-connection-string": "^2.1.0", + "pg-copy-streams": "^2.2.2", + "pg-copy-streams-binary": "^1.1.2", "pg-cursor": "^2.0.0", - "pg-types": "^2.1.0", + "pg-types": "^2.2.0", "postgres-interval": "^1.2.0", - "roarr": "^2.13.2", + "roarr": "^2.14.1", "serialize-error": "^4.1.0", + "slonik-interceptor-preset": "^1.2.3", "through2": "^3.0.1", "ulid": "^2.3.0" }, "dependencies": { + "concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, "through2": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", @@ -8383,6 +8510,126 @@ } } }, + "slonik-interceptor-field-name-transformation": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/slonik-interceptor-field-name-transformation/-/slonik-interceptor-field-name-transformation-1.4.1.tgz", + "integrity": "sha512-ENMVgjDsh0Qp55i1jLUy+N3Md6IcMCb9j2A3Js2C8WprWHq9OFFfUN82r2f8Z68Km/XmoUJbt4CovrVkFHnSYA==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "core-js": "^3.2.1", + "slonik": "^19.0.1" + } + }, + "slonik-interceptor-preset": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/slonik-interceptor-preset/-/slonik-interceptor-preset-1.2.5.tgz", + "integrity": "sha512-BGY+y7JMmh2aVLqdNBMM1owaRqAcjQA5fx0sz+ZudsNKAELGjgqemVoo5Vyhh9rpPdq7NsLY2zv6dqkguMr6PQ==", + "dev": true, + "requires": { + "slonik": "^19.0.1", + "slonik-interceptor-field-name-transformation": "^1.4.1", + "slonik-interceptor-query-benchmarking": "^1.3.4", + "slonik-interceptor-query-logging": "^1.3.1", + "slonik-interceptor-query-normalisation": "^1.1.5" + } + }, + "slonik-interceptor-query-benchmarking": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/slonik-interceptor-query-benchmarking/-/slonik-interceptor-query-benchmarking-1.3.4.tgz", + "integrity": "sha512-a2Kin7dVUPOF5l/lA29MNg/bWbB6T87hI+7Qw+9MkKRLhqV7+Ybxycp8TkMVNd4y8/0fmEqpHeTS2CDAvhBczQ==", + "dev": true, + "requires": { + "core-js": "^3.2.1", + "pg-formatter": "^1.1.1", + "pretty-ms": "^5.0.0", + "slonik": "^19.0.1", + "table": "^5.4.6", + "wrap-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.1.0.tgz", + "integrity": "sha512-Qts4KCLKG+waHc9C4m07weIY8qyeixoS0h6RnbsNVD6Fw+pEZGW3vTyObL3WXpE09Mq4Oi7/lBEyLmOiLtlYWQ==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.1.0.tgz", + "integrity": "sha512-NrX+1dVVh+6Y9dnQ19pR0pP4FiEIlUvdTGn8pw6CKTNq5sgib2nIhmUNT5TAmhWmvKr3WcxBcP3E8nWezuipuQ==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^5.2.0" + } + }, + "wrap-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.0.0.tgz", + "integrity": "sha512-8YwLklVkHe4QNpGFrK6Mxm+BaMY7da6C9GlDED3xs3XwThyJHSbVwg9qC4s1N8tBFcnM1S0s8I390RC6SgGe+g==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^5.0.0" + } + } + } + }, + "slonik-interceptor-query-logging": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/slonik-interceptor-query-logging/-/slonik-interceptor-query-logging-1.3.1.tgz", + "integrity": "sha512-N2UQFG3s3vdU62sUAT4PET4y354+VuIgx4X6p4PmoWeR1G0vUolMAhh7pXyN8bdBNFXNNaCRM+UqsetBKa3xVQ==", + "dev": true, + "requires": { + "crack-json": "^1.2.1", + "pretty-ms": "^5.0.0", + "serialize-error": "^4.1.0", + "slonik": "^19.0.1" + } + }, + "slonik-interceptor-query-normalisation": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/slonik-interceptor-query-normalisation/-/slonik-interceptor-query-normalisation-1.1.5.tgz", + "integrity": "sha512-66a0scwf08vcn/fQaoDhNCYxRHMfUBo00VvDlnadOPIiUNvfQPVW7w09xXMRfE7adVDOhpoQ2UQBEkQH2EgJqQ==", + "dev": true, + "requires": { + "core-js": "^3.2.1", + "slonik": "^19.0.1" + } + }, "smart-buffer": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.0.2.tgz", @@ -8862,6 +9109,31 @@ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, + "table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "dependencies": { + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + } + } + }, "tar": { "version": "4.4.11", "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.11.tgz", diff --git a/package.json b/package.json index db690ec9..8aad6389 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,6 @@ "test": "jest", "update-readme": "node scripts/update-readme", "bootstrap": "lerna bootstrap", - "reinstall": "lerna exec -- npm install", "migrate": "lerna run migrate", "lerna-publish": "scripts/publish.sh", "ci": "run-s update-readme bootstrap build migrate test build", @@ -54,14 +53,14 @@ "devDependencies": { "@types/jest": "^24.0.18", "@types/node": "^12.6.8", - "@types/slonik": "^18.2.0", + "@types/slonik": "^18.6.1", "check-clean": "^0.1.0", "coveralls": "^3.0.5", "jest": "^24.9.0", "lerna": "^3.16.1", "npm-run-all": "^4.1.5", "prettier": "^1.18.2", - "slonik": "^18.2.0", + "slonik": "^19.0.1", "ts-expect": "^1.1.0", "ts-jest": "^24.1.0", "ts-node": "^8.3.0", diff --git a/packages/migrator/package.json b/packages/migrator/package.json index bd2ff88d..0b693338 100644 --- a/packages/migrator/package.json +++ b/packages/migrator/package.json @@ -29,6 +29,6 @@ "@types/umzug": "^2.2.2" }, "peerDependencies": { - "slonik": ">= 16.0.0 < 19" + "slonik": ">= 16.0.0 < 20" } } diff --git a/packages/typegen/package.json b/packages/typegen/package.json index 68eb0906..2c632e96 100644 --- a/packages/typegen/package.json +++ b/packages/typegen/package.json @@ -19,6 +19,6 @@ }, "license": "ISC", "peerDependencies": { - "slonik": ">= 16.0.0 < 19" + "slonik": ">= 16.0.0 < 20" } } diff --git a/readme.md b/readme.md index cb5499ea..a5044b6f 100644 --- a/readme.md +++ b/readme.md @@ -42,5 +42,6 @@ While developing, it can be useful to run `npm run build -- -w` to compile conti On master, and with write permissions to both master and npm (this isn't automated yet): ```bash -npm run lerna-publish +npx lerna version +npx lerna publish from-package ``` diff --git a/scripts/publish.sh b/scripts/publish.sh deleted file mode 100755 index c0d3106d..00000000 --- a/scripts/publish.sh +++ /dev/null @@ -1,14 +0,0 @@ -set -e - -# After versioning/tagging/publishing, lerna does not update `package-lock.json` files: https://github.com/lerna/lerna/issues/1998 -# So the publish script prevents tags from being pushed by `lerna version`, and instead -# pushes them manually after running `npm run reinstall` - -npx lerna version -TAGS=$(git tag -l --points-at HEAD) -npx lerna publish from-package -npm run reinstall -git commit packages/*/package-lock.json -m "chore: update lockfiles for tags:" -m "$TAGS" -npx check-clean -lerna exec -- npm ci -git push --follow-tags diff --git a/scripts/update-readme.js b/scripts/update-readme.js deleted file mode 100644 index 5ae73fd2..00000000 --- a/scripts/update-readme.js +++ /dev/null @@ -1,27 +0,0 @@ -const fs = require('fs') -const os = require('os') - -const packageDirs = fs.readdirSync('packages') -const packageInfoList = packageDirs - .map(dirName => { - const packageJson = JSON.parse(fs.readFileSync(`packages/${dirName}/package.json`, 'utf8')) - const logLine = fs - .readFileSync(`packages/${dirName}/readme.md`, 'utf8') - .split('\n') - .map(line => line.trim()) - .filter(Boolean) - .find(line => line.match(/^[a-zA-Z]/)) // first line that starts with a letter - return {packageJson, logLine} - }) - .map(info => `[${info.packageJson.name}](${info.packageJson.homepage}) - ${info.logLine}`.trim()) - .sort() - .map((line, index) => `${index + 1}. ${line}`) - .join(os.EOL) - -const existingReadme = fs.readFileSync('readme.md', 'utf8') - -const lines = existingReadme.split(os.EOL + os.EOL) -const packagesSectionIndex = lines.findIndex((line, index) => !!line && index > lines.indexOf('## Packages')) -packagesSectionIndex > -1 ? lines[packagesSectionIndex] = packageInfoList : lines.push(packageInfoList) - -fs.writeFileSync('readme.md', lines.join(os.EOL + os.EOL).trim() + os.EOL, 'utf8') From c329330f9c8639ec8be51468db8b44e7dcb592d1 Mon Sep 17 00:00:00 2001 From: mmkal <15040698+mmkal@users.noreply.github.com> Date: Sun, 22 Sep 2019 15:00:56 -0400 Subject: [PATCH 2/5] chore: undelete update-readme --- scripts/update-readme.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 scripts/update-readme.js diff --git a/scripts/update-readme.js b/scripts/update-readme.js new file mode 100644 index 00000000..5ae73fd2 --- /dev/null +++ b/scripts/update-readme.js @@ -0,0 +1,27 @@ +const fs = require('fs') +const os = require('os') + +const packageDirs = fs.readdirSync('packages') +const packageInfoList = packageDirs + .map(dirName => { + const packageJson = JSON.parse(fs.readFileSync(`packages/${dirName}/package.json`, 'utf8')) + const logLine = fs + .readFileSync(`packages/${dirName}/readme.md`, 'utf8') + .split('\n') + .map(line => line.trim()) + .filter(Boolean) + .find(line => line.match(/^[a-zA-Z]/)) // first line that starts with a letter + return {packageJson, logLine} + }) + .map(info => `[${info.packageJson.name}](${info.packageJson.homepage}) - ${info.logLine}`.trim()) + .sort() + .map((line, index) => `${index + 1}. ${line}`) + .join(os.EOL) + +const existingReadme = fs.readFileSync('readme.md', 'utf8') + +const lines = existingReadme.split(os.EOL + os.EOL) +const packagesSectionIndex = lines.findIndex((line, index) => !!line && index > lines.indexOf('## Packages')) +packagesSectionIndex > -1 ? lines[packagesSectionIndex] = packageInfoList : lines.push(packageInfoList) + +fs.writeFileSync('readme.md', lines.join(os.EOL + os.EOL).trim() + os.EOL, 'utf8') From b5749cf953065a8cdffd1e62b57677fc0401af99 Mon Sep 17 00:00:00 2001 From: mmkal <15040698+mmkal@users.noreply.github.com> Date: Sun, 22 Sep 2019 15:02:57 -0400 Subject: [PATCH 3/5] chore: remove lerna-publish script --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index 8aad6389..f8952626 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,6 @@ "update-readme": "node scripts/update-readme", "bootstrap": "lerna bootstrap", "migrate": "lerna run migrate", - "lerna-publish": "scripts/publish.sh", "ci": "run-s update-readme bootstrap build migrate test build", "coverage": "npm test -- --coverage", "coveralls": "npm run coverage -- --coverageReporters=text-lcov | coveralls" From f16b152e32dd540ee0e15c45f43f37f994cf038c Mon Sep 17 00:00:00 2001 From: mmkal <15040698+mmkal@users.noreply.github.com> Date: Sun, 22 Sep 2019 16:02:49 -0400 Subject: [PATCH 4/5] chore: make test more concise --- packages/demo/test/index.test.ts | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/packages/demo/test/index.test.ts b/packages/demo/test/index.test.ts index b204aaa4..80052933 100644 --- a/packages/demo/test/index.test.ts +++ b/packages/demo/test/index.test.ts @@ -10,26 +10,22 @@ describe('demo app', () => { beforeAll(() => slonik.query(sql`delete from messages`)) it('gets and posts messages', async () => { - const {body: empty} = await testApp - .get('/api/messages') + const {body: empty} = await testApp.get('/api/messages') expect(empty).toEqual([]) - const {body: {id: newMessageId}} = await testApp - .post('/api/messages?content=abc') + const {body: {id: newMessageId}} = await testApp.post('/api/messages?content=abc') expect(newMessageId).toBeGreaterThanOrEqual(0) - const {body: nonEmpty} = await testApp - .get('/api/messages') + const {body: nonEmpty} = await testApp.get('/api/messages') expect(nonEmpty).toMatchObject([{text: 'abc'}]) }) it('fails sensibly for illegal input', async () => { const mockError = jest.spyOn(console, 'error').mockImplementation(() => {}) - const response = await testApp - .post('/api/messages?content=anillegallylongmessage1231231231231231') + const response = await testApp.post('/api/messages?content=anillegallylongmessage1231231231231231') expect(response).toMatchObject({ status: 500, From ae36b5d51c9892c95c948a2b88aaab75b67e1941 Mon Sep 17 00:00:00 2001 From: mmkal <15040698+mmkal@users.noreply.github.com> Date: Sun, 29 Sep 2019 13:34:29 +0100 Subject: [PATCH 5/5] chore: bump @types/slonik to 19 as well --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index ba605f92..5822219d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1739,9 +1739,9 @@ "dev": true }, "@types/slonik": { - "version": "18.6.1", - "resolved": "https://registry.npmjs.org/@types/slonik/-/slonik-18.6.1.tgz", - "integrity": "sha512-0FXdtPd2erLaQRl2kVqXp89C3rgJyutwAns0uCZVtzkQhZUQ6iJ1NEOsx3pF/YwtTNxa8APoI2RcuQD0wfcPpg==", + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@types/slonik/-/slonik-19.0.0.tgz", + "integrity": "sha512-lFQbw0zZlLQe1xAtEzVNzKgtLrqR6Z8qzn3kJ7YBUZqPL+RL6C2MY6AeRkhNoYFCn0ZxvCkP79U7FstP0eDrZA==", "dev": true, "requires": { "@types/node": "*" diff --git a/package.json b/package.json index f8952626..37476227 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "devDependencies": { "@types/jest": "^24.0.18", "@types/node": "^12.6.8", - "@types/slonik": "^18.6.1", + "@types/slonik": "^19.0.0", "check-clean": "^0.1.0", "coveralls": "^3.0.5", "jest": "^24.9.0",