Add support for jobs & queueables, migrations
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is failing

- Create migration directives & migrators
- Modify Cache classes to support array manipulation
- Create Redis unit and RedisCache implementation
- Create Queueable base class and Queue class that uses Cache backend
This commit is contained in:
2021-08-23 23:51:53 -05:00
parent 26e0444e40
commit 074a3187eb
28 changed files with 962 additions and 56 deletions

92
pnpm-lock.yaml generated
View File

@@ -3,6 +3,7 @@ dependencies:
'@types/bcrypt': 5.0.0
'@types/busboy': 0.2.3
'@types/cli-table': 0.3.0
'@types/ioredis': 4.26.6
'@types/mime-types': 2.1.0
'@types/mkdirp': 1.0.1
'@types/negotiator': 0.6.1
@@ -18,6 +19,7 @@ dependencies:
cli-table: 0.3.6
colors: 1.4.0
dotenv: 8.2.0
ioredis: 4.27.6
mime-types: 2.1.31
mkdirp: 1.0.4
negotiator: 0.6.2
@@ -182,6 +184,12 @@ packages:
dev: false
resolution:
integrity: sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==
/@types/ioredis/4.26.6:
dependencies:
'@types/node': 14.17.6
dev: false
resolution:
integrity: sha512-Q9ydXL/5Mot751i7WLCm9OGTj5jlW3XBdkdEW21SkXZ8Y03srbkluFGbM3q8c+vzPW30JOLJ+NsZWHoly0+13A==
/@types/json-schema/7.0.7:
dev: true
resolution:
@@ -220,6 +228,10 @@ packages:
dev: false
resolution:
integrity: sha512-8kQ3+wKGRNN0ghtEn7EGps/B8CzuBz1nXZEIGGLP2GnwbqYn4dbTs7k+VKLTq1HvZLRCIDtN3Snx1Ege8B7L5A==
/@types/node/14.17.6:
dev: false
resolution:
integrity: sha512-iBxsxU7eswQDGhlr3AiamBxOssaYxbM+NKXVil8jg9yFXvrfEFbDumLD/2dMTB+zYyg7w+Xjt8yuxfdbUHAtcQ==
/@types/pg/8.6.0:
dependencies:
'@types/node': 14.17.1
@@ -673,6 +685,12 @@ packages:
node: '>=0.8'
resolution:
integrity: sha1-2jCcwmPfFZlMaIypAheco8fNfH4=
/cluster-key-slot/1.1.0:
dev: false
engines:
node: '>=0.10.0'
resolution:
integrity: sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw==
/code-point-at/1.1.0:
dev: false
engines:
@@ -774,6 +792,19 @@ packages:
optional: true
resolution:
integrity: sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==
/debug/4.3.2:
dependencies:
ms: 2.1.2
dev: false
engines:
node: '>=6.0'
peerDependencies:
supports-color: '*'
peerDependenciesMeta:
supports-color:
optional: true
resolution:
integrity: sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==
/deep-is/0.1.3:
dev: true
resolution:
@@ -788,6 +819,12 @@ packages:
dev: false
resolution:
integrity: sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
/denque/1.5.0:
dev: false
engines:
node: '>=0.10'
resolution:
integrity: sha512-CYiCSgIF1p6EUByQPlGkKnP1M9g0ZV3qMIrqMqZqdwazygIA/YP2vrbcyl1h/WppKJTdl1F85cXIle+394iDAQ==
/detect-libc/1.0.3:
dev: false
engines:
@@ -1312,6 +1349,23 @@ packages:
node: '>= 0.10'
resolution:
integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==
/ioredis/4.27.6:
dependencies:
cluster-key-slot: 1.1.0
debug: 4.3.2
denque: 1.5.0
lodash.defaults: 4.2.0
lodash.flatten: 4.4.0
p-map: 2.1.0
redis-commands: 1.7.0
redis-errors: 1.2.0
redis-parser: 3.0.0
standard-as-callback: 2.1.0
dev: false
engines:
node: '>=6'
resolution:
integrity: sha512-6W3ZHMbpCa8ByMyC1LJGOi7P2WiOKP9B3resoZOVLDhi+6dDBOW+KNsRq3yI36Hmnb2sifCxHX+YSarTeXh48A==
/is-core-module/2.4.0:
dependencies:
has: 1.0.3
@@ -1447,6 +1501,14 @@ packages:
dev: true
resolution:
integrity: sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=
/lodash.defaults/4.2.0:
dev: false
resolution:
integrity: sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=
/lodash.flatten/4.4.0:
dev: false
resolution:
integrity: sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=
/lodash.merge/4.6.2:
dev: true
resolution:
@@ -1691,6 +1753,12 @@ packages:
node: '>=0.10.0'
resolution:
integrity: sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
/p-map/2.1.0:
dev: false
engines:
node: '>=6'
resolution:
integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==
/packet-reader/1.0.0:
dev: false
resolution:
@@ -1973,6 +2041,24 @@ packages:
node: '>= 0.10'
resolution:
integrity: sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=
/redis-commands/1.7.0:
dev: false
resolution:
integrity: sha512-nJWqw3bTFy21hX/CPKHth6sfhZbdiHP6bTawSgQBlKOVRG7EZkfHbbHwQJnrE4vsQf0CMNE+3gJ4Fmm16vdVlQ==
/redis-errors/1.2.0:
dev: false
engines:
node: '>=4'
resolution:
integrity: sha1-62LSrbFeTq9GEMBK/hUpOEJQq60=
/redis-parser/3.0.0:
dependencies:
redis-errors: 1.2.0
dev: false
engines:
node: '>=4'
resolution:
integrity: sha1-tm2CjNyv5rS4pCin3vTGvKwxyLQ=
/reflect-metadata/0.1.13:
dev: false
resolution:
@@ -2165,6 +2251,10 @@ packages:
requiresBuild: true
resolution:
integrity: sha512-CidQLG2ZacoT0Z7O6dOyisj4JdrOrLVJ4KbHjVNz9yI1vO08FAYQPcnkXY9BP8zeYo+J/nBgY6Gg4R7w4WFWtg==
/standard-as-callback/2.1.0:
dev: false
resolution:
integrity: sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==
/streamsearch/0.1.2:
dev: false
engines:
@@ -2557,6 +2647,7 @@ specifiers:
'@types/bcrypt': ^5.0.0
'@types/busboy': ^0.2.3
'@types/cli-table': ^0.3.0
'@types/ioredis': ^4.26.6
'@types/mime-types': ^2.1.0
'@types/mkdirp': ^1.0.1
'@types/negotiator': ^0.6.1
@@ -2575,6 +2666,7 @@ specifiers:
colors: ^1.4.0
dotenv: ^8.2.0
eslint: ^7.27.0
ioredis: ^4.27.6
mime-types: ^2.1.31
mkdirp: ^1.0.4
negotiator: ^0.6.2