Commit Graph

348 Commits (1cf88f4fead8cc5285a740365dde4fbe5efdc786)

Author SHA1 Message Date
Louis Lam 18169c59a1
[MySQL monitor] Split password into a standalone field (#3899) 2023-10-16 00:38:56 +08:00
Louis Lam 8e441dd8f7
Follow up #3263 (#3847) 2023-10-14 19:00:27 +08:00
Louis Lam 1c13a75970
Fix #3868 postgres monitor could possibly crash Uptime Kuma (#3880)
* Bump pg

* Handle uncaughtException

* Fix parsing issue of postgres connection and fix the query example
2023-10-13 02:50:10 +08:00
Andreas Brett 42bf27fe5a
push monitor: increase token security (#912)
* increased pushToken security

* Merge manually

---------

Co-authored-by: Andreas Brett <github@abrett.de>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-10-11 19:28:06 +08:00
Louis Lam 852b3fa61b Merge branch '1.23.X'
# Conflicts:
#	package-lock.json
#	server/database.js
#	server/server.js
#	server/util-server.js
2023-10-09 21:28:01 +08:00
Muhammed Hussein karimi 2ab21ccf8a
🐛 fix: kafka producer bugs (#3771)
* 🐛 fix: missing Kafka Producer SSL option in frontend object

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* ♻️  refactor: better error handling of kafka producer

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

---------

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>
2023-09-24 03:30:15 +08:00
Louis Lam 59119b9e71 Merge branch '1.23.X'
# Conflicts:
#	package-lock.json
2023-09-18 03:26:59 +08:00
FC (Fay) Stegerman d8a8f6c08b
EditMonitor: add missing config UI for json-query (#3751) 2023-09-17 20:39:07 +08:00
Anders Kvist f0c54be43f
Adding x-www-form-urlencoded (#3499)
* Adding x-www-form-urlencoded

* Adding example of x-www-form-urlencoding to body.

* A bit cleaner.

* Update server/model/monitor.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update src/pages/EditMonitor.vue

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update src/pages/EditMonitor.vue

Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Add simple test

---------

Co-authored-by: Anders Kvist <ak@cego.dk>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
Co-authored-by: Matthew Nickson <mnickson@sidingsmedia.com>
2023-09-09 18:05:25 +08:00
ZaneL1u 1f29fabe64
fix: fix the judgment condition of Tailscale (#3701) 2023-09-07 16:15:21 +08:00
Louis Lam a13fc7079e Merge branch 'master' into 2.0.X
# Conflicts:
#	package-lock.json
2023-08-30 01:39:16 +08:00
Louis Lam cd79df07e1
Add an ability to enable/disable nscd (#3652) 2023-08-28 16:15:48 +08:00
Louis Lam 0c40f02584 Put `Monitor Group` under `Advanced` section 2023-08-28 04:59:47 +08:00
Matthew Nickson 8a92054c2b
Added JSDoc to ESLint (#3529)
* Added JSDoc to eslint rules

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Fixed JSDoc eslint errors

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Update the check-linters workflow to Node.js 20

---------

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-08-11 15:46:41 +08:00
Nelson Chan 2921f33c24
Feat: add givenPortOnly as gamedig option (#3532) 2023-08-08 03:14:21 +08:00
Anders Kvist ceb5708bfd
Fix case for setting httpBodyEncoding to null - does work for http, b… (#3498)
* Fix case for setting httpBodyEncoding to null - does work for http, but not for keyword if anything else but json.

* Updating case.

* Update src/pages/EditMonitor.vue

Added suggestion from @CommanderStorm

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update src/pages/EditMonitor.vue

Co-authored-by: Frank Elsinga <frank@elsinga.de>

---------

Co-authored-by: Anders Kvist <ak@cego.dk>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-08-07 15:13:51 +08:00
Jinhyeok Lee 439b6517d1
Feat: Add http/http keyword timeout option (#2142)
* feat: Add timeoutMs field

* chore: Update Languages (incl. ko-KR)

* Revert "chore: Update Languages (incl. ko-KR)"

This reverts commit 349331a00b.

* chore: Update ko-KR selectively

* chore: Update en selectively

* Merge manually

* Reorder and show only if http related monitors

* fix: Update Korean translation

* fix: Rename timeoutMs to timeout, rename label, make DOUBLE

* fix: Change minimum step to 0.1, matching DOUBLE type

* Put the sql patch at the end

* Update EditMonitor.vue

* Colocate timeout with retry, fix clampTimeout logic, show default on 0

* Update src/pages/EditMonitor.vue to remove a comment

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Fix merge issue

* Update the timeout value while finished editing the interval value

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-08-07 00:14:56 +08:00
Nelson Chan a032e11a2e
Feat: Create Group in EditMonitor page (#3379)
* Feat: Create Group in EditMonitor page

* Fix: Start group mon. after child is added

* Chore: Swap confirm & cancel for ergonomics

* Fix rarely issue that group monitor can throw an error if lastBeat is null

* Resume the group monitor in the callback

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-08-04 14:48:21 +08:00
Henrik Gerdes 42b5d30a33
feat: Implement oauth2 monitors (#3119)
* [empty commit] pull request for implement oauth2 monitor

* feat: implement oauth2 client credentials flow

* fix: auth methods clarification & error handling

* docs: fix JSdocs types and clarifications
2023-08-02 15:40:19 +08:00
Frank Elsinga 149d08ecbb
Chore: make sql monitors eazier to use (#3474)
* Fixed the sql monitor not having the query required

* Apply suggestions from code review

* added `redis` and  `mongodb` to the connectionString as requested by @chakflying
2023-07-31 17:28:39 +08:00
SGprooo 1d9a28e9ab
feat: Tailscale ping monitor (#3178)
* Add boilerplate for tailscale ping

* tailscale initial commit draft

* Refactor TailscalePing & better error handling

Split check function into two methods and added async/await syntax for readability/modularity
Switched to promise-based error handling (takes into account different types of error such as "Execution error", "Error in output", "no matching peer", and "is local Tailscale IP") and throws them as JavaScript errors.

* Minor update

* minor update (again)

* Update server/monitor-types/tailscale-ping.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update server/monitor-types/tailscale-ping.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update server/monitor-types/tailscale-ping.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Update server/monitor-types/tailscale-ping.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* timeout revision

* JSDoc

* Removed long explainers

* eslint tailscale-ping.js --fix

* reran eslint

* Fix: Use hostname rather than url

* Fixed NaN on monitor interval

now interval value is correctly passed to runTailscalePing

* Add warning message

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2023-07-19 20:58:21 +08:00
Muhammed Hussein karimi 278b88a9d9
feat: added kafka producer (#3268)
*  feat: added kafka producer

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: eslint warn

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: typings and auth problems

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: better variable name to trrack disconnection

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: grouping Kafka Producer special settings into one template

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

*  feat: add kafka producer translations into `en.json`

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: disable close-on-select on kafka broker picker

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: `en.json` invalid json (conflict resolve)

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* Nostr dm notifications (#3051)

* Add nostr DM notification provider

* require crypto for node 18 compatibility

* remove whitespace

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* move closer to where it is used

* simplify success or failure logic

* don't clobber the non-alert msg

* Update server/notification-providers/nostr.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* polyfills required for node <= 18

* resolve linter warnings

* missing comma

---------

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Drop nostr

* Minor

* Fix a bug of clone

---------

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-07-17 16:15:44 +08:00
Muhammed Hussein karimi 6bece8796e
feat: json-query monitor added (#3253)
*  feat: json-query monitor added

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: import warning error

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: br tag and remove comment

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: supporting compare string with other types

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: switch to a better lib for json query

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: better description on json query and using `v-html` in jsonQueryDescription element to fix `a` tags

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: result variable in error message

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: typos in json query description

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* 📝 docs: `HTTP(s) Json Query` added to monitor list in `README.md`

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>

* 🐛 fix: needed white space in `README.md`

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Nostr dm notifications (#3051)

* Add nostr DM notification provider

* require crypto for node 18 compatibility

* remove whitespace

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* move closer to where it is used

* simplify success or failure logic

* don't clobber the non-alert msg

* Update server/notification-providers/nostr.js

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* polyfills required for node <= 18

* resolve linter warnings

* missing comma

---------

Co-authored-by: Frank Elsinga <frank@elsinga.de>

* Drop nostr

* Rebuild package-lock.json

* Lint

---------

Signed-off-by: Muhammed Hussein Karimi <info@karimi.dev>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
Co-authored-by: zappityzap <128872140+zappityzap@users.noreply.github.com>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-07-13 23:37:26 +08:00
Louis Lam ed6b4e5ae5 Merge remote-tracking branch 'origin/master' into miles/invert-keyword
# Conflicts:
#	server/database.js
2023-07-08 16:19:44 +08:00
Louis Lam 4f6035899d
Real browser monitor type (#3308) 2023-06-27 15:54:33 +08:00
Louis Lam 596402e71f
Merge pull request #3246 from chakflying/ui/monitor-group-select
UI: Improve no group monitor message
2023-06-17 16:43:03 +08:00
Nelson Chan 19fc7d31e6 Fix: Remove extra fields on clone 2023-06-15 00:58:45 +08:00
Nelson Chan de9ad0fe60 UI: Add help msg for no Group Mon. 2023-06-12 19:26:50 +08:00
Peace 9bd76c2795
Merge branch 'master' into group-monitors 2023-05-31 20:51:33 +02:00
Louis Lam a7588adc52
Merge branch 'master' into grpc-patch 2023-04-11 18:55:27 +08:00
Louis Lam af6e01ee3a
Merge pull request #3010 from chakflying/fix/grpc-invalid-regex
Fix: Remove invalid gRPC url regex
2023-04-11 18:43:51 +08:00
Miles Steele 171aff1226 add invert keyword feature 2023-04-06 15:25:25 -05:00
Louis Lam 22f730499f Improve the database connection string input 2023-04-03 02:57:14 +08:00
Nelson Chan 97c7ad9cc7 Fix: Remove invalid gRPC url regex 2023-04-02 00:07:07 +08:00
Louis Lam e8d48561fc Change `Retries` from `0` to `1` 2023-04-01 01:45:16 +08:00
Louis Lam a6acd065bb WIP 2023-03-31 20:58:45 +08:00
Louis Lam 70572af1af Fix #2969 2023-03-24 18:40:05 +08:00
Louis Lam 491239415e Merge remote-tracking branch 'origin/master' into doubles-ss_master
# Conflicts:
#	server/database.js
2023-03-12 18:38:19 +08:00
Nelson Chan ad26f0e817 Fix: assign tags when cloning monitor 2023-03-02 06:44:16 +08:00
Godwin Gabriel Ndlovu 6fc34e44d9
Resolved issue with using IP Address as GRPC URL
I've been having an issue with trying to use an IPAddress Host:Port combination in monitoring my GRPC instances. 
This was because the input type was set to url instead of text.
Even if the pattern passes the match test, the url would block as it requires a fully qualified domain name with HTTP and this would fail to submit
2023-03-01 19:45:31 +02:00
Louis Lam ea3b3abe36 Fine tune 2023-02-25 20:13:46 +08:00
Louis Lam 7f9332c753 Merge remote-tracking branch 'origin/master' into feature/482-add-description-to-monitor
# Conflicts:
#	server/database.js
#	server/model/monitor.js
#	src/icon.js
#	src/languages/en.js
#	src/languages/es-ES.js
2023-02-25 19:14:44 +08:00
Louis Lam f32d3af62c Merge remote-tracking branch 'origin/master' into doubles-ss_master
# Conflicts:
#	server/database.js
2023-02-25 17:57:25 +08:00
Louis Lam 8a115670cd
Fix label and id
Co-authored-by: AlexKraus <alex.b.kraus@googlemail.com>
2023-02-25 17:55:40 +08:00
Louis Lam 4fed0c152e Show `Copy of` in front of the cloned monitor name 2023-02-25 17:05:03 +08:00
Louis Lam 4a5a424198 Merge remote-tracking branch 'origin/master' into mathiash98/clone-monitor 2023-02-25 15:43:07 +08:00
Louis Lam f47f2d5c87 Better save button for edit/add monitor page 2023-02-25 15:40:24 +08:00
Louis Lam f0ae67f89a Merge remote-tracking branch 'origin/master' into mathiash98/clone-monitor
# Conflicts:
#	src/languages/en.js
#	src/pages/EditMonitor.vue
2023-02-25 14:56:51 +08:00
Faruk Genç 72106ba4c4 Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors 2023-02-18 22:38:40 +03:00
Faruk Genç 3ab0faee91 Add update query for old monitors and save new data correctly 2023-02-18 22:18:48 +03:00
Faruk Genç 9e3a77f419 Customize body placeholder for body encoding 2023-02-18 17:02:56 +03:00
OidaTiftla 36d160ad02
Rename "consequently" to "consecutively" as suggested by @skylarv
https://github.com/louislam/uptime-kuma/pull/1212#issuecomment-1423373045
2023-02-09 09:04:47 +01:00
Suriya Soutmun 43941fa2c6
feat: add mtls authen method in http/http keyword 2023-02-07 09:40:47 +07:00
Faruk Genç 4287f7e885 Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors
# Conflicts:
#	src/lang/en.json
2023-02-02 19:43:17 +03:00
Peace 2c581ade90
Merge branch 'louislam:master' into group-monitors 2023-02-01 20:44:09 +01:00
Nelson Chan 95c934e08b Fix: Do not allow white space around IP
Feat: Trim input on submit

Test: Add test for whitespace regex match
2023-02-01 08:25:16 +08:00
Faruk Genç 7dacc6a002 Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors 2023-01-30 18:00:42 +03:00
Louis Lam 664da4a317
Merge pull request #2684 from gitstart/UPTM-3
Save button can't be found while edit and add in Mobile version
2023-01-30 21:20:39 +08:00
Faruk Genç 064bc00f46 Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors 2023-01-30 13:09:16 +03:00
Louis Lam 6828d337ae Disable HTTP(s) - Browser Engine
Reason: Unfortunately, after some test, I found that Playwright requires a lot of libraries to be installed on the Linux host in order to start Chrome or Firefox. It will be hard to install, so I hide this feature for now.
2023-01-30 00:00:41 +08:00
Peace d48eb24046
docs: more comments 2023-01-28 14:28:53 +01:00
Peace aee4c22dee
perf: only do one filter instead of 3 in editMonitor 2023-01-28 14:28:34 +01:00
Peace 9a46b50989
docs: add comments 2023-01-28 14:22:15 +01:00
Faruk Genç 35bd129d66 Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors 2023-01-28 15:47:42 +03:00
Peace 97bd306a09
Merge branch 'louislam:master' into group-monitors 2023-01-28 03:07:42 +01:00
Peace 645fd94bba
feat: add ability to group monitors in dashboard 2023-01-28 02:58:03 +01:00
Louis Lam e5ca67d062
HTTPS Monitor using Real Browsers + Limited plugin support (#1787) 2023-01-27 18:25:57 +08:00
gitstart 54e63f3e25 Save button can't be found while edit and add in Mobile version 2023-01-26 12:47:33 +00:00
Faruk Genç 9329ec9234 Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors
# Conflicts:
#	server/database.js
#	server/model/monitor.js
2023-01-25 20:20:11 +03:00
Louis Lam 5050ebc249 Merge remote-tracking branch 'origin/master' into feature/#1891-set-ping-packet-size
# Conflicts:
#	server/util-server.js
#	src/languages/en.js
2023-01-25 16:12:33 +08:00
Louis Lam 83e0401dd8 Show game list for GameDig monitor 2023-01-24 23:03:01 +08:00
Louis Lam aab04f6644 Merge remote-tracking branch 'origin/master' into WhyKickAmooCow_master 2023-01-24 19:44:21 +08:00
Faruk Genç 86ba6f829e Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors 2023-01-20 12:27:28 +03:00
Louis Lam c47b6c5995 Merge remote-tracking branch 'origin/1.19.X'
# Conflicts:
#	package-lock.json
#	package.json
#	src/util-frontend.js
2023-01-17 21:17:04 +08:00
Louis Lam e48a987b9c Merge remote-tracking branch 'origin/master' into mongodb-ping
# Conflicts:
#	server/model/monitor.js
#	server/util-server.js
#	src/pages/EditMonitor.vue
2023-01-15 01:13:11 +08:00
Faruk Genç cf21aa3737 Fix lint 2023-01-14 16:51:07 +03:00
Faruk Genç 9890a0754b Fix lint 2023-01-14 16:48:26 +03:00
Faruk Genç 15c64d458b Fix lint 2023-01-14 16:48:12 +03:00
Faruk Genç be850dd596 Merge remote-tracking branch 'remote/master' into feature/add-xml-support-to-http-monitors
# Conflicts:
#	server/database.js
#	server/model/monitor.js
#	src/languages/en.js
2023-01-14 16:40:13 +03:00
Faruk Genç 3adc9e65d6 Add only xml support to http monitors 2023-01-14 16:33:21 +03:00
long2ice db757123ba refactor: reuse databaseConnectionString 2023-01-13 16:32:49 +08:00
Adam Spurgeon 774d754b21 Add GameDig monitor 2023-01-08 21:43:30 +13:00
Matthew Nickson 7a13b959a3
Updated to match changes in #2223
Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2023-01-06 20:09:40 +00:00
David Twigger e490ec6d29 move hostname regex pattern function to frontend-utils 2023-01-06 11:00:20 +01:00
long2ice 40ebc2df79 feat: support redis monitor 2023-01-05 23:02:56 +08:00
David Twigger abf5e435fe move to utility function 2023-01-05 14:48:12 +01:00
David Twigger 8a372201f1 clean up 2023-01-05 14:23:05 +01:00
David Twigger 5362aab0e5 specify scheme for mqtt monitor type only 2023-01-05 14:06:13 +01:00
David Twigger fc1914bccd Fix lint 2023-01-05 11:42:19 +01:00
David Twigger c196c34840 Add mqtt, mqtts, ws and wss protocols to the mqtt monitor 2023-01-05 08:57:48 +01:00
Mathias Haugsbø 608e3f5582 Feature: Clone existing monitor
Closes #565
Closes #2319

Adds the feature of cloning existing monitor, I have briefly tested it with ping and https and ensured that all properties was cloned including notifications.
2022-12-27 23:26:05 +01:00
Cyril59310 4862bec965
Update Fr language + added variable for missing translation (#2395)
* Update FR language
2022-12-13 22:00:54 +08:00
Louis Lam 4cd5b5563f Fix #1145 2022-12-08 23:21:55 +08:00
Matthew Nickson 2052fa175f
Merge branch 'master' into feature/#1817-add-mysql-monitor
Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-11-17 19:04:14 +00:00
Matthew Nickson 15b63c82c3
Merge remote-tracking branch 'upstream/master' into feature/#1817-add-mysql-monitor
Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-11-17 18:46:58 +00:00
rmarops b059a36e66 added MongoDB ping monitor 2022-11-16 20:50:34 -05:00
minhhn3 b459408b10 fix: resolve conflict 2022-10-26 20:41:21 +07:00
Matthew Nickson 4339ca7eb5
Merge branch 'master' into feature/#1891-set-ping-packet-size 2022-10-22 16:22:28 +01:00
Matthew Nickson f459ea845c
Added #2182 Add support for custom radius ports (#2197)
This commit adds support for the port to be specified when using the
radius monitor type. A check has been implemented to ensure that a null
value is not passed to the radius check function as could occur with
monitors that were created before this change was introduced. The
default port of 1812 is displayed when the user selects the radius
monitor in much the same way as the DNS port is handled. The port was
not included in the hostname in the form hostname:port in order to avoid
issues with IPv6 addresses and monitors that had been created before
this change was implemented.

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-10-13 00:32:05 +08:00
Matthew Nickson f9be918246
Add support for MySQL/MariaDB databases #1817
This commit adds support for monitoring MySQL and MariaDB database
servers. The mysql2 package was choosen over mysql as it provides a
promise wrapper and is reportedly faster than the original mysql package
whilst still maintaining the same API.

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
2022-10-02 01:52:53 +01:00