Commit Graph

70 Commits (a39ca51e061fcd87ffbea6a077610f08c6e1998e)

Author SHA1 Message Date
Barış Soner Uşaklı 53e1b349ae
Change post owner ()
* feat: , allow array of keys for setObject

* feat: sortedSetRemoveBulk

* feat: test for bulk remove

* feat: , ability to change post ownership

* feat: , fix tid:<tid>:posters

* feat: , front end

* fix: , psql methods

* fix: add missing await

* fix: maybe psql
Barış Soner Uşaklı 805dcd7ca2
Async refactor in place ()
* 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 cea206a9b8e6d8295310074b18cc82a504487862.

* 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
Barış Soner Uşaklı bd640a1107
Topic await errors ()
* 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
Barış Soner Uşaklı 3ecd703ea3 feat: , added sortedSetAddBulk
Barış Soner Uşaklı a39f0ef592 fix: , create per category user post zsets
Baris Usakli 31ccc860d3 feat: allow multiple scores in sortedSetsAdd
Barış Soner Uşaklı 2c98dd5f9d
Object cache refactor ()
* 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
Barış Soner Uşaklı 5917dec288
fix: only allow numbers as scores ()
* zadd score checks

* fix: only allow numbers as scores

* fix: convert values to strings
Barış Soner Uşaklı 3917022a48 fix:
Barış Soner Uşaklı fef7e13c9e feat: small fixes
Barış Soner Uşaklı eb7ae54f81
Category watch state ()
* 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
Barış Soner Uşaklı 263c918088
feat: remove uid:<uid>:ignored:cids ()
use cid:<cid>:ignorers instead
Baris Usakli e65d40c937 dont return undefined from sortedSetsCard if keys is empty or falsy
Baris Usakli 76af8caf58 add missing semicolon
Baris Usakli 420227faae parseFloat scores
Barış Soner Uşaklı 53ad2bbd6e
Categories optimize ()
* WIP

* fix category page

* fix counts, and copyPrivileges

* fix lint

* more fixes,

* redis fix

* fix test

* fix  category test

* remove getParentsAndChildren
Barış Soner Uşaklı ca1e3a758b
Barış Soner Uşaklı f8e219c323 handle empty set, add test
Barış Soner Uşaklı 75816deca7
add cache to redis ()
* 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
Barış Soner Uşaklı 7aa937a657 remove dupe code in mongodb sorted
Barış Soner Uşaklı f3a679e268 remove parseInts
Barış Soner Uşaklı c738dc7d3e remove some more parseInts
Barış Soner Uşaklı e615391b22 convert values to string before removing
Barış Soner Uşaklı 18d0deeccb
update deprecated methods ()
Ben Lubar 33228bb7fe PostgreSQL database driver ()
* [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.
Barış Soner Uşaklı c3fc4a06bf test sortedSetUnion with scores
Barış Soner Uşaklı fde44cb9b9 pass array to groups.destroy
pass array to db.sortedSetRemove
Barış Soner Uşaklı be5c237388 fix decr/incrObjectField if key in array doesn't exist create it
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
Barış Soner Uşaklı 7221b71b68 add test for srem with multi elements
Baris Usakli 959a742c63 add llen to dbal
Barış Soner Uşaklı bce640e514 closes
Barış Soner Uşaklı 7a2d6fe22d Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Barış Soner Uşaklı b084a596fa closes
Ben Lubar 5b1ed21634 [database/mongo] Improve speed of sortedSetRank ()
* [database/mongo] Improve speed of sortedSetRank

* [database/mongo] Fix sortedSetRank to filter by _key
Barış Soner Uşaklı 87d40e9e78 fix increment to use data
Barış Soner Uşaklı 8e04e86e24 closes
Baris Usakli dbf815ed47 closes
Baris Usakli 5604c62776 use the first set for sorting
Barış Soner Uşaklı e7318a1cea Mongo cache ()
* cache mongodb objects

remove user settings cache since it is cached at the object level

* removed indexOf from isMemberOfSets

* change has to get, change maxAge to 0
Barış Soner Uşaklı 108f84fd19 add type to dbal
Barış Soner Uşaklı 329bfeeb3b convert min/max to float
Barış Soner Uşaklı 5a55c882ab convert NaN uids to 0
Barış Soner Uşaklı f1b8492164 remove unnecessary checks
Peter Jaszkowiak b171f3072b Fix many "duplicate key" errors
- Reset defaults after every test
- Remove individual `after(db.emptydb)` calls
- Fix async.every in groups test
- Update plugin list in socket tests
Barış Soner Uşaklı fe0a5aaf28 fix redis tests
Barış Soner Uşaklı fd0043f36a more tests
Barış Soner Uşaklı 95196ceedc closes
Barış Soner Uşaklı 4ab514a422 test for .delete with zset
barisusakli d8170d5d1c fix tests