Commit Graph

46 Commits

Author SHA1 Message Date
gasoved
077330b764 feat: scheduled topics (#9399)
* feat: scheduled topics

* refactor: linting fixes

* fix: tests

* fix(test): race condition

* fix: make a single request
2021-03-24 14:28:02 -04:00
Barış Soner Uşaklı
1982edfde3 refactor: fix variable name 2021-03-11 18:47:50 -05:00
Julian Lam
8fd78ce512 feat: post-queue topic event 2021-02-12 15:10:47 -05:00
Peter Jaszkowiak
dab3b23575 chore: eslint no-var, vars-on-top 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
b56d9e12b5 chore: eslint prefer-arrow-callback 2021-02-08 18:06:44 -05:00
Peter Jaszkowiak
707b55b6a5 chore: eslint prefer-template 2021-02-08 18:06:44 -05:00
Barış Soner Uşaklı
7eebcbdbbc perf: only load thumbs for topics that actually have thumbs 2021-02-07 19:13:21 -05:00
Julian Lam
cc0d562e9a chore: more removals of thumb specific backwards-compatibility [breaking] 2021-01-27 16:17:14 -05:00
Julian Lam
ab2e1ecb40 feat(topic-events): work in progress topic events logic and client-side implementation 2021-01-27 13:16:49 -05:00
Barış Soner Uşaklı
2d5a224b06 perf: don't load thumbs if disabled globally, cache thumb results 2020-12-14 21:24:46 -05:00
Julian Lam
378a3a6945 fix: update version removal comments to 1.17 for some features 2020-12-11 12:26:53 -05:00
Julian Lam
9f62df15bd chore: appease codeclimate 2020-12-09 18:45:37 -05:00
Julian Lam
24e754d120 feat: add thumbs to category data return 2020-12-09 18:41:46 -05:00
Julian Lam
bd5c4a5cff fix: tests 2020-12-09 16:46:19 -05:00
Julian Lam
1257aa981e feat: expose uploaded thumbnails to client-side via API
+ plugin hook: filter:topics.getThumbs
2020-12-09 10:42:41 -05:00
Julian Lam
4fc9da81a9 refactor: topic thumbs lib to topics.thumbs 2020-12-09 10:42:41 -05:00
Barış Soner Uşaklı
5a137a0dd6 fix: guest handles to user displayname as well 2020-11-29 15:38:02 -05:00
Julian Lam
6e2da9966e refactor: move plugin hook methods to plugin.hooks.* 2020-11-20 16:32:39 -05:00
Barış Soner Uşaklı
fa4177c3bc fix: #6407, fix feeds
display latest posts instead of oldest in topic rss feed
fix missing await that was causing rss_tokens to not function
fix feed test
more tests for getTopicWithPosts
2020-11-18 14:25:39 -05:00
Barış Soner Uşaklı
93bdfe2f10 perf: reorder async calls 2020-10-26 21:09:51 -04:00
Barış Soner Uşaklı
a05905f196 performance improvements (#8795)
* perf: nconf/winston/render

cache nconf.get calls
modify middleware.pageView to call next earlier
don't call winston.verbose on every hook see https://github.com/winstonjs/winston/issues/1669
translate header/footer separately and cache results for guests

* fix: copy paste fail

* refactor: style and fire hook only log in dev mode

* fix: cache key, header changes based on template

* perf: change replace

* fix: add missing await

* perf: category

* perf: lodash clone

* perf: remove escapeRegexChars
2020-10-26 10:43:18 -04:00
Barış Soner Uşaklı
0db0231cff feat: move postercount to topic hash 2020-10-24 21:14:52 -04:00
Barış Soner Uşaklı
7beaf49028 feat: set unread false for guests 2020-10-12 15:16:58 -04:00
Barış Soner Uşaklı
83d4e7efaa feat: add number of posters to topic 2020-09-23 00:59:42 -04:00
Barış Soner Uşaklı
519e665939 fix: #8538, go to first unread instead of last read 2020-07-31 10:34:10 -04:00
Barış Soner Uşaklı
ce6b20c4b7 feat: remove topics.async.getTopicData usage 2020-07-24 12:02:16 -04:00
Barış Soner Uşaklı
fef04fcf6b fix: missing backgroundImage #8386 2020-07-04 16:08:05 -04:00
Barış Soner Uşaklı
c718b7293e feat: #3783, min/max tags per category 2020-06-24 16:02:57 -04:00
Barış Soner Uşaklı
e20ad5c56e fix: dont crash if topic is null 2020-05-12 22:42:55 -04:00
Barış Soner Uşaklı
0431d75f0d fix: #8297, uids.length is different than topics.length 2020-05-05 21:32:07 -04:00
Julian Lam
fcb81cb8ca fix: #8297 guest handles shown in category.tpl 2020-05-05 20:42:02 -04:00
Julian Lam
ccc6118d30 Testing suite integration for openapi spec (#8263)
* feat: testing suite integration for openapi spec

The testing suite now takes the openapi spec into account. It will
check each route defined, make a call to it, and compare the
response with the defined schema. Any mismatches will cause the
test to fail.

* fix(openapi): removed debug stuff from tests

* fix(openapi): fixed some tests

* fix(openapi): added additional check to tests, test fixes

* fix(openapi): better tests, fixed spec errors

* fix(openapi): bad conditional in test

* fix: oops

* fix(openapi): more tests fixing

* fix(openapi): more tests

* fix(openapi): fix some more tests

* fix: verbose'd an info log

* fix: topic pagination route returns schema-optimized pagination block

* fix(openapi): more test/spec fixes

* fix(openapi): accidentally sending in authenticated jar for anon routes

* fix(openapi): more test/spec fixes

* fix(openapi): more spec fixes

* fix: timestampReadable Invalid Date

* fix(openapi): more tests... almost there

* fix(openapi): more tests fixing

* fix(openapi): finally all tests passing

* fix(openapi): added reverse test to compare response to spec

... and fixed all the tests that broke

* fix: remove tests related to group covers, as route is gone

* fix(openapi): broken test on travis

* fix(openapi): broken test on travis

* fix(openapi): broken test on travis

* fix(openapi): object cache is not present for psql

* fix: tests

Co-authored-by: Barış Soner Uşaklı <barisusakli@gmail.com>
2020-04-23 21:50:08 -04:00
Barış Soner Uşaklı
32ada7c4e7 fix: #8188, fix bookmark if sorting is newest_to_oldest 2020-02-27 17:21:36 -05:00
Barış Soner Uşaklı
9969dd6335 fix: use view_deleted when filtering, closes #8137 2020-01-28 12:42:57 -05:00
Barış Soner Uşaklı
13aaf07bf5 fix: getTopicsFromSet 2019-07-14 17:48:02 -04:00
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
Julian Lam
745a9589e9 Use topics:read privilege for topic filtering use cases (#7462)
* fix: use topics:read privilege for topic filtering use cases

* fix: tests

* fix: more broken tests
2019-03-16 14:51:46 -04:00
Baris Usakli
23da300958 feat: pass options to digest 2019-02-22 14:39:05 -05:00
Barış Soner Uşaklı
fef7e13c9e feat: small fixes 2018-12-17 18:56:09 -05:00
Barış Soner Uşaklı
69bb3293ee misc fixes
handle spider uids properly
2018-11-12 00:20:44 -05:00
Barış Soner Uşaklı
96e986a865 optimize suggested topics/search 2018-11-11 17:57:17 -05:00
Barış Soner Uşaklı
c27be9db5a Recent refactor (#6879)
* wip

* fix inf scroll

* remove duplicated code

* remove dupe code in /unread

* use topicList

* update tag page to use topicList

* fix tests

* combine ifs

* remove more dupe code

* disable timeout
2018-10-27 06:26:50 -04:00
Baris Usakli
12f3f56b01 change to .exists 2018-10-26 14:31:38 -04:00
Barış Soner Uşaklı
f3a679e268 remove parseInts 2018-10-25 17:02:59 -04:00
Baris Usakli
138154a71c move modules 2018-10-23 15:03:32 -04:00