Barış Soner Uşaklı
805dcd7ca2
Async refactor in place ( #7736 )
...
* feat: allow both callback&and await
* feat: ignore async key
* feat: callbackify and promisify in same file
* Revert "feat: callbackify and promisify in same file"
This reverts commit cea206a9b8 .
* feat: no need to store .callbackify
* feat: change getTopics to async
* feat: remove .async
* fix: byScore
* feat: rewrite topics/index and social with async/await
* fix: rewrite topics/data.js
fix issue with async.waterfall, only pass result if its not undefined
* feat: add callbackify to redis/psql
* feat: psql use await
* fix: redis 🌋
* feat: less returns
* feat: more await rewrite
* fix: redis tests
* feat: convert sortedSetAdd
rewrite psql transaction to async/await
* feat: 🐶
* feat: test
* feat: log client and query
* feat: log bind
* feat: more logs
* feat: more logs
* feat: check perform
* feat: dont callbackify transaction
* feat: remove logs
* fix: main functions
* feat: more logs
* fix: increment
* fix: rename
* feat: remove cls
* fix: remove console.log
* feat: add deprecation message to .async usage
* feat: update more dbal methods
* fix: redis :voodoo:
* feat: fix redis zrem, convert setObject
* feat: upgrade getObject methods
* fix: psql getObjectField
* fix: redis tests
* feat: getObjectKeys
* feat: getObjectValues
* feat: isObjectField
* fix: add missing return
* feat: delObjectField
* feat: incrObjectField
* fix: add missing await
* feat: remove exposed helpers
* feat: list methods
* feat: flush/empty
* feat: delete
* fix: redis delete all
* feat: get/set
* feat: incr/rename
* feat: type
* feat: expire
* feat: setAdd
* feat: setRemove
* feat: isSetMember
* feat: getSetMembers
* feat: setCount, setRemoveRandom
* feat: zcard,zcount
* feat: sortedSetRank
* feat: isSortedSetMember
* feat: zincrby
* feat: sortedSetLex
* feat: processSortedSet
* fix: add mising await
* feat: debug psql
* fix: psql test
* fix: test
* fix: another test
* fix: test fix
* fix: psql tests
* feat: remove logs
* feat: user arrow func
use builtin async promises
* feat: topic bookmarks
* feat: topic.delete
* feat: topic.restore
* feat: topics.purge
* feat: merge
* feat: suggested
* feat: topics/user.js
* feat: topics modules
* feat: topics/follow
* fix: deprecation msg
* feat: fork
* feat: topics/posts
* feat: sorted/recent
* feat: topic/teaser
* feat: topics/tools
* feat: topics/unread
* feat: add back node versions
disable deprecation notice
wrap async controllers in try/catch
* feat: use db directly
* feat: promisify in place
* fix: redis/psql
* feat: deprecation message
logs for psql
* feat: more logs
* feat: more logs
* feat: logs again
* feat: more logs
* fix: call release
* feat: restore travis, remove logs
* fix: loops
* feat: remove .async. usage
2019-07-09 12:46:49 -04:00
Barış Soner Uşaklı
bd640a1107
Topic await errors ( #7727 )
...
* feat: derp await
* feat: restore user.getSettings
* feat: cleanup
* feat: make tid const
* feat: cleanup
* fix: tests
* feat: deprecate filter:controllers.topic.get
* feat: rewrite post-index logic
* feat: change calculation to match others
* fix: use .async
* feat: remove try/catch wrapper
2019-07-03 12:48:26 -04:00
Barış Soner Uşaklı
3ecd703ea3
feat: #7707 , added sortedSetAddBulk
2019-06-24 17:48:13 -04:00
Barış Soner Uşaklı
a39f0ef592
fix : #5570 , create per category user post zsets
2019-06-24 15:21:43 -04:00
Baris Usakli
31ccc860d3
feat: allow multiple scores in sortedSetsAdd
2019-05-31 15:44:50 -04:00
Barış Soner Uşaklı
2c98dd5f9d
Object cache refactor ( #7558 )
...
* fix: cache refactor
db.getObjectField no longer loads entire object
db.getObjectsFields only clones data once
more tests
* feat: add back cache to redis
db.getObjectField no longer loads entire object
2019-04-24 14:38:46 -04:00
Barış Soner Uşaklı
4df925e76a
fix: remove redis object cache
2019-04-17 17:08:52 -04:00
Baris Usakli
45d7e37ae8
fix: tests
2019-03-15 16:21:15 -04:00
Baris Usakli
b48b6d75e5
fix: callbacks
2019-03-15 16:06:38 -04:00
Baris Usakli
7addc5a0e2
fix: return early if keys is empty
2019-03-15 14:16:24 -04:00
Baris Usakli
b3962c1694
fix: return early if keys is empty
2019-03-15 14:16:24 -04:00
Barış Soner Uşaklı
5917dec288
fix: only allow numbers as scores ( #7356 )
...
* zadd score checks
* fix: only allow numbers as scores
* fix: convert values to strings
2019-02-11 11:23:18 -05:00
Barış Soner Uşaklı
fef7e13c9e
feat: small fixes
2018-12-17 18:56:09 -05:00
Barış Soner Uşaklı
eb7ae54f81
Category watch state ( #7109 )
...
* feat: wip, category watch change
* feat: pass data to client
* feat: allow changing state
* fix: account page categories
* fix: show in unread if topic is followed or category is watched
* feat: add default watch state to acp
* feat: save user category watch state
* feat: update unread recent pages
* fix: remove dupe code
* fix: flip conditions
* fix: handle empty arrays
* fix: ignore/watch on others profile
* feat: upgrade script for category states
if there are any users ignoring categories set their state in new zset and delete cid:<cid>:ignorers
* fix: upgrade
* fix: tests
* fix: redis count
* fix: more tests
2018-12-14 16:24:17 -05:00
Barış Soner Uşaklı
d117df77f7
fix : #7102
2018-12-12 14:26:11 -05:00
Barış Soner Uşaklı
263c918088
feat: remove uid:<uid>:ignored:cids ( #7099 )
...
use cid:<cid>:ignorers instead
2018-12-12 11:15:34 -05:00
Baris Usakli
e65d40c937
dont return undefined from sortedSetsCard if keys is empty or falsy
2018-12-07 16:50:35 -05:00
Baris Usakli
420227faae
parseFloat scores
2018-12-07 16:01:08 -05:00
Barış Soner Uşaklı
53ad2bbd6e
Categories optimize ( #6999 )
...
* WIP
* fix category page
* fix counts, and copyPrivileges
* fix lint
* more fixes,
* redis fix
* fix test
* fix category test
* remove getParentsAndChildren
2018-11-25 19:08:38 -05:00
Baris Usakli
7b9a2caec3
closes #6994
2018-11-23 14:39:59 -05:00
Barış Soner Uşaklı
ca1e3a758b
#6986
2018-11-21 20:40:40 -05:00
Barış Soner Uşaklı
48690a01b9
dont need to call multi if keys.length is 0
2018-11-21 17:24:38 -05:00
Barış Soner Uşaklı
07f83c5078
fix redis tests
2018-11-11 16:23:36 -05:00
Barış Soner Uşaklı
75816deca7
add cache to redis ( #6917 )
...
* add cache to redis
move out cache module from mongo
* fix redis tests
* add callback noop
* fix typo
* del cache on field delete
* make redis/mongo caches separate
2018-11-07 15:04:56 -05:00
Baris Usakli
51792da430
dont crash if there is nothing to write
2018-10-26 15:15:20 -04:00
Ben Lubar
33228bb7fe
PostgreSQL database driver ( #5861 )
...
* [test/database/list] Fix test list 4 being used in two different tests
* [database/postgres] PostgreSQL database driver
* [database/postgres] Make transactions work based on continuation scope.
* [database/postgres] Implement nested transactions
* eslint --fix
* Add database changes from earlier this week to the PostgreSQL driver.
* Fix typo
* Fix postgres.incrObjectFieldBy returning undefined instead of null when given NaN
* [database/postgres] Fix sortedSetsCard returning an array of strings.
* Update socket.io postgres adapter
* Fix PostgreSQL erroring when multiple updates are made to the same sorted set entry in a single operation.
Add a test case to catch this error.
* Fix lint errors.
* Only prune sessions on one instance in a cluster to avoid deadlocks.
They're caught and handled by the database server, but they spam the logs.
* Fix arguments.slice.
2018-08-08 15:13:48 -04:00
Baris Usakli
16a7728ab8
fix redis warnings
2018-07-06 14:20:37 -04:00
Barış Soner Uşaklı
6a9a73c86c
changes to leaveAllGroups
...
Groups.destroy can take an array of groupnames
Groups.leave can take an array of groupnames
db.incrObjectField/decrObjectField can take an array of keys
db.sortedSetRemove can take an array of keys and values
db.setRemove can take an array of keys
2018-03-17 18:49:38 -04:00
Baris Usakli
959a742c63
add llen to dbal
2018-03-15 12:06:40 -04:00
Barış Soner Uşaklı
7a2d6fe22d
Merge remote-tracking branch 'refs/remotes/origin/master' into develop
2018-02-02 10:36:25 -05:00
Barış Soner Uşaklı
b084a596fa
closes #6301
2018-02-01 14:33:06 -05:00
Barış Soner Uşaklı
c0b7d4f5b5
fix redis export
2018-01-22 16:51:12 -05:00
Barış Soner Uşaklı
8a6345ded7
possible fix for pubsub
2018-01-22 16:41:22 -05:00
Ben Lubar
e85aabbe74
Allow running as a cluster without Redis ( #6233 )
...
* [database/*] Allow databases other than Redis to provide pubsub for clustering if Redis is not present
* [pubsub] Delay messages sent before the database is ready until the database is ready.
* [pubsub] Restore old behavior of not using the database in non-clustered NodeBB instances.
See comment: https://github.com/NodeBB/NodeBB/pull/6233#issuecomment-357814968
2018-01-18 13:02:56 -05:00
Baris Usakli
dbf815ed47
closes #6103
2017-11-22 12:10:40 -05:00
Barış Soner Uşaklı
43f9c3224f
dont crash sortedSetIncryBy on redis if no callback is supplied
2017-11-02 08:14:35 -04:00
Barış Soner Uşaklı
108f84fd19
add type to dbal
2017-10-20 13:51:07 -04:00
Barış Soner Uşaklı
890c2eff70
style changes
2017-05-27 01:44:26 -04:00
Barış Soner Uşaklı
fe0a5aaf28
fix redis tests
2017-05-19 20:32:31 -04:00
Barış Soner Uşaklı
95196ceedc
closes #5692
2017-05-19 14:52:36 -04:00
Barış Soner Uşaklı
7135d25a4a
closes #5654
2017-05-08 12:19:22 -04:00
Barış Soner Uşaklı
14f3907aa4
change the way group member posts are stored
2017-05-04 16:32:51 -04:00
barisusakli
92343eb2e1
fix mongo setObject if key/value is empty string
2017-04-14 13:58:32 -04:00
barisusakli
7ce6c1d0ad
closes #5571
2017-04-13 16:36:02 -04:00
Peter Jaszkowiak
1ed571189c
Make utils and translator easier to require
...
Move utils.walk to file.walk, backwards compatible
2017-04-08 20:27:52 -06:00
barisusakli
6aa8c8aa94
merge
2017-02-25 11:17:56 +03:00
barisusakli
fa08498a9e
closes #5480
2017-02-25 11:01:35 +03:00
Peter Jaszkowiak
4bb49a7171
ESlint no-unused-vars
2017-02-18 15:05:36 -07:00
Peter Jaszkowiak
09e868ce5f
ESlint no-useless-escape, no-else-return
2017-02-18 14:27:26 -07:00
Peter Jaszkowiak
896c8c7343
ESlint object-curly-spacing
2017-02-18 12:30:49 -07:00