Commit Graph

5084 Commits

Author SHA1 Message Date
Guo Xiang Tan
eb427f7cf4 PERF: Update TopicView#participant_count to use Topic#posts_count.
Use the counter cache instead of hitting the DB and plucking
every single id.
2018-06-27 17:18:47 +08:00
Guo Xiang Tan
cfa7898c2d Rename TopicView#last_read_post_id to TopicView#filtered_post_id. 2018-06-27 12:33:57 +08:00
Guo Xiang Tan
cb69888758 PERF: Don't pluck all the columns just to retrieve a single value. 2018-06-27 11:41:35 +08:00
Arpit Jalan
6bcdc3ba4b FEATURE: allow author to delete posts irrespective of post_edit_time_limit 2018-06-26 21:43:06 +05:30
Guo Xiang Tan
49ffc1eb61 Revert "PERF: Send down gaps as the relevant posts load instead of front loading."
This reverts commit 4c3352528e.
2018-06-26 12:54:14 +08:00
Guo Xiang Tan
4c3352528e PERF: Send down gaps as the relevant posts load instead of front loading. 2018-06-26 12:49:06 +08:00
Guo Xiang Tan
0b6a2e9d1f Remove force summary mode for megatopics for now.
The logic is too hairy and we can't reliably determine
when to force summary mode. Work is underway to improve
perf for megatopics so this will not be required
eventually.
2018-06-26 12:49:06 +08:00
Guo Xiang Tan
5100a62fc0 FIX: Megatopics forced into summary mode when loading posts. 2018-06-25 22:11:56 +08:00
David Lee
4644d777bd FEATURE: add website field to SSO 2018-06-25 16:09:39 +10:00
Jeff Wong
41f76a74f8 FEATURE: send message when a user reaches tl1 2018-06-22 13:20:00 -07:00
Robin Ward
6901e0e043 FIX: Rails.logger isn't always available when loading plugin locales 2018-06-22 10:20:20 -04:00
Guo Xiang Tan
50f14c6e61 Prefer update! -> update!. 2018-06-22 15:13:04 +08:00
Guo Xiang Tan
f69356e628 FIX: Users can't "show all posts" in forced summary topics. 2018-06-22 11:32:45 +08:00
Neil Lalonde
544254f7a8 Version bump to v2.1.0.beta2 2018-06-21 10:41:52 -04:00
Guo Xiang Tan
97d8cd820e No need to expire readonly mode key immediately. 2018-06-21 17:52:42 +08:00
Guo Xiang Tan
9a7a079f4d Force summary mode when user enters at the top of megalodoon topics. 2018-06-21 15:18:52 +08:00
Guo Xiang Tan
f7d22bad90 FEATURE: Forced summary mode for megalodon topics.
This is mainly done for performance reasons and megalodon
topics are usually a byproduct of imports where site setting
limits are not respected.
2018-06-21 14:00:20 +08:00
Guo Xiang Tan
5cef4e281b PERF: Memoize TopicView#gaps results. 2018-06-21 12:37:24 +08:00
Sam
2d59d06916 PERF: mega_topics get no post counts per user 2018-06-21 11:09:45 +10:00
Sam
f66efc601d FIX: cubot android devices were detected as crawlers 2018-06-21 10:56:46 +10:00
Joffrey JAFFEUX
2f7960bd2a
DEV: updates prettier and displays linters/prettifiers version in CI 2018-06-20 18:34:49 +02:00
Joffrey JAFFEUX
8126b603e4
fix prettier 2018-06-20 18:26:43 +02:00
Joffrey JAFFEUX
c5c1b45d19
higher loglevel for prettier 2018-06-20 16:51:48 +02:00
Guo Xiang Tan
0365806b93 FIX: Properly display error when post action fails to create. 2018-06-20 21:20:23 +08:00
Guo Xiang Tan
ff5fc3cb08 Use a fixed limit for mega topic posts count. 2018-06-20 16:58:52 +08:00
Guo Xiang Tan
9c925a66ff PERF: Don't display days ago on timeline for megatopics.
Analysis using `pg_stat_statements` showed this query
to be eating up a significant portion of CPU.
2018-06-20 16:25:54 +08:00
Sam
cbdab71179 PERF: stop counting participants on very large topics
This query gets very expensive and can be bypassed on large topics
2018-06-20 18:11:39 +10:00
Sam
2f0e73f2d6 DEV: fast pluck to use type_map in mini_sql 2018-06-20 17:53:49 +10:00
Sam
44091f20c6 DEV: allow for method deprecation using Discourse.deprecate
New method deprecator will ensure one log message an hour happens
for all deprecated method calls per call site

Also removes unused monkey patches to ActiveRecord::Base
2018-06-20 17:53:49 +10:00
Sam
cb824a6b33 DEV: remove all calls to SqlBuilder use DB.build instead
This is part of the migration to mini_sql, SqlBuilder.new is being
deprecated and replaced with DB.build
2018-06-20 17:53:49 +10:00
Guo Xiang Tan
806f0ca19d FIX: URL with params for svg images should not be light boxed. 2018-06-20 10:47:14 +08:00
Arpit Jalan
aedc61a3b4 FEATURE: allow large icon to be uploaded in wizard 2018-06-19 21:08:02 +05:30
Joffrey JAFFEUX
24c27b5321
FEATURE: adds a add_report method accessible in plugin.rb 2018-06-19 15:00:11 +02:00
Guo Xiang Tan
7eff64773c Revert "FIX: Don't clear active connections in defer queue."
This reverts commit c9feadf9ec.
2018-06-19 17:58:21 +08:00
Guo Xiang Tan
df24c51c6f Revert "FIX: Don't try to dequeue an empty queue."
This reverts commit 1af7d4a894.
2018-06-19 15:49:45 +08:00
Guo Xiang Tan
41c1e1b302 FIX: Discourse.keep_readonly_mode does not work for multisite. 2018-06-19 15:44:08 +08:00
Guo Xiang Tan
1af7d4a894 FIX: Don't try to dequeue an empty queue. 2018-06-19 15:25:44 +08:00
Sam
b8e5989201 correct rake db:create, which needs a defer DB object 2018-06-19 16:43:50 +10:00
Sam
5f64fd0a21 DEV: remove exec_sql and replace with mini_sql
Introduce new patterns for direct sql that are safe and fast.

MiniSql is not prone to memory bloat that can happen with direct PG usage.
It also has an extremely fast materializer and very a convenient API

- DB.exec(sql, *params) => runs sql returns row count
- DB.query(sql, *params) => runs sql returns usable objects (not a hash)
- DB.query_hash(sql, *params) => runs sql returns an array of hashes
- DB.query_single(sql, *params) => runs sql and returns a flat one dimensional array
- DB.build(sql) => returns a sql builder

See more at: https://github.com/discourse/mini_sql
2018-06-19 16:13:36 +10:00
Sam
cc3fc87dd7 DEV: handle termination cleanly in autospec 2018-06-19 16:13:36 +10:00
Guo Xiang Tan
c9feadf9ec FIX: Don't clear active connections in defer queue. 2018-06-19 12:45:16 +08:00
Guo Xiang Tan
34e4c8f573 FIX: Discourse.keep_readonly_mode spins a new thread each time it is called. 2018-06-19 10:24:08 +08:00
Guo Xiang Tan
6e97242bb9 Monkey patch in 7830a950ef 2018-06-19 09:45:48 +08:00
Jeff Wong
68e4e6a575 FIX: staged users are still tl0 but do not trigger spam if 1 week old. 2018-06-18 17:20:04 -07:00
Guo Xiang Tan
630b4570ef Add specs for RateLimiter::LimitExceeded#description. 2018-06-19 07:48:03 +08:00
Neil Lalonde
3725fd8345
Merge pull request #6002 from featheredtoast/trust-previously-staged-users
FIX: don't punish a user for being previously staged for spam flags.
2018-06-18 15:14:31 -04:00
Neil Lalonde
320cd9a19e UX: rate limiter message will say to wait "a few seconds" instead of 0 to 3 seconds 2018-06-18 14:14:47 -04:00
Joffrey JAFFEUX
913d97e780
fix prettier 2018-06-18 20:10:48 +02:00
Joffrey JAFFEUX
6f2c5ea1f2
increases loglevel to debug CI only failure 2018-06-18 19:25:54 +02:00
Blake Erickson
9963078dd1 Add to offical plugins list 2018-06-18 10:20:49 -06:00