Robin Ward
3e13becf33
A safe way to create class variables in a multisite environment.
...
This should allow plugins to set class variables that will not
stomp on other plugins.
2017-09-27 13:00:47 -04:00
Guo Xiang Tan
5324c01209
FIX: Don't raise an error if reading from URL timeout.
2017-09-27 14:53:22 +08:00
Robin Ward
460ed3c8cf
Revert "Allow `NotFound` to specify an optional `Location` for the resource"
...
This reverts commit 4ae66c9e01
.
2017-09-26 12:58:24 -04:00
Robin Ward
4ae66c9e01
Allow `NotFound` to specify an optional `Location` for the resource
2017-09-26 09:10:18 -04:00
Guo Xiang Tan
367fb1c524
FIX: Onebox fails on encoded URL.
...
https://meta.discourse.org/t/onebox-breaks-if-theres-chinese-text-in-url/67364
2017-09-26 18:34:54 +08:00
Guo Xiang Tan
c25730935e
FIX: Do not include non-human users on suspected users list.
...
https://meta.discourse.org/t/discobot-is-a-suspect-user/70558
2017-09-26 15:04:08 +08:00
Guo Xiang Tan
c06b782cab
PERF: Reduce number of topics to filter while querying for unread.
2017-09-26 12:36:52 +08:00
Robin Ward
81f2b38b78
FIX: Don't include flags on non-human users
2017-09-25 16:15:48 -04:00
Robin Ward
d1ebc62065
The ability to display errors on flagging actions.
2017-09-25 12:28:01 -04:00
Robin Ward
561fa7d0cd
FEATURE: Site Setting to hide suspension reason on the public profile
2017-09-25 12:25:14 -04:00
Robin Ward
d7c37d9369
Add front end service for staff controls
2017-09-25 12:25:14 -04:00
Robin Ward
5cf50f0034
Adjust flagged posts to use the store
2017-09-25 12:25:14 -04:00
Robin Ward
5e69217793
Add filtering support to flags
2017-09-25 12:25:14 -04:00
Robin Ward
40eba8cd93
FEATURE: View flags grouped by topic
2017-09-25 12:25:14 -04:00
Guo Xiang Tan
9540b952fd
Fix broken condition in PostgresqlFallbackAdapter.
2017-09-25 13:48:59 +08:00
Guo Xiang Tan
23b787e0a6
Require dependency otherwise it causes Sidekiq to lock up in development.
2017-09-25 13:48:59 +08:00
Guo Xiang Tan
5be5def217
PERF: Bypass AR and just use raw SQL.
2017-09-25 13:48:59 +08:00
Guo Xiang Tan
77d4c4d8dc
Fix all the errors to get our tests green on Rails 5.1.
2017-09-25 13:48:58 +08:00
Gerhard Schlager
e08b5feb8a
improved status output during auto-closing and ignore deleted topic timers
2017-09-21 10:58:09 +02:00
Gerhard Schlager
26d10370c6
Adds a rake task for applying auto-close to old topics
2017-09-20 15:49:53 +02:00
Régis Hanol
8ed318c4fe
display 'similar to' earlier when composing a post
2017-09-16 01:03:29 +02:00
Régis Hanol
32972de2d7
Version bump to v1.9.0.beta10
2017-09-16 00:55:41 +02:00
Guo Xiang Tan
1a9762a9c0
Fixed private group messages being exposed in suggested topics.
...
Revert "Revert "PERF: Avoid unnecessary expensive joins if possible.""
This reverts commit d9714c21c8
.
2017-09-15 23:40:53 +08:00
Gerhard Schlager
6e04f05173
that shouldn't have been there...
2017-09-15 17:33:31 +02:00
Gerhard Schlager
d51eee4dbc
FIX: don't try to send a rejection message when the sender was not detected
2017-09-15 17:30:02 +02:00
Gerhard Schlager
a2187b0acd
FIX: better error handling for incoming emails
2017-09-15 17:30:02 +02:00
Guo Xiang Tan
d9714c21c8
Revert "PERF: Avoid unnecessary expensive joins if possible."
...
This reverts commit f3fadf41b7
.
* This ended up exposing group pms to users that are not part
of a group.
2017-09-15 22:22:07 +08:00
Arpit Jalan
041ace5d3b
new rake task to defer all flags
2017-09-15 16:42:58 +05:30
Régis Hanol
797936d2c5
FIX: don't leak whisper count in user card
2017-09-14 20:08:16 +02:00
Robin Ward
8c2d6118ff
Remove some of the last few `fa-icon` helpers
2017-09-14 11:20:36 -04:00
Neil Lalonde
f698de0bbf
Version bump to v1.9.0.beta9
2017-09-14 11:08:22 -04:00
Guo Xiang Tan
de46d59a94
Remove comment that is no longer relevant.
2017-09-14 19:57:50 +08:00
Guo Xiang Tan
195982fd41
PERF: Remove N+1 query when generating posters summary.
2017-09-14 12:07:35 +08:00
Guo Xiang Tan
f3fadf41b7
PERF: Avoid unnecessary expensive joins if possible.
...
```
EXPLAIN ANALYZE SELECT "topics".* FROM "topics"
LEFT JOIN topic_users tu ON topics.id = tu.topic_id AND tu.user_id =
13455
WHERE ("topics"."deleted_at" IS NULL)
AND (topics.archetype = 'private_message')
AND (
topics.id IN (
SELECT topic_id
FROM topic_allowed_groups tg
JOIN group_users gu ON gu.user_id = 13455 AND gu.group_id =
tg.group_id
WHERE gu.group_id IN (47)
)
)
AND (
topics.id IN (
SELECT ta.topic_id
FROM topic_allowed_users ta
WHERE ta.user_id IN (32852,-10)
)
OR
topics.id IN (
SELECT tg.topic_id
FROM topic_allowed_groups tg
WHERE tg.group_id IN (-10)
)
)
AND (topics.id NOT IN (69933,69995,69988,69984,69968,69973,69971,69952))
AND "topics"."visible" = 't'
ORDER BY topics.bumped_at DESC
LIMIT 3;
```
Planning time: 1.277 ms
Execution time: 71.577 ms
```
EXPLAIN ANALYZE SELECT "topics".* FROM "topics"
LEFT JOIN topic_users tu ON topics.id = tu.topic_id AND tu.user_id =
13455
LEFT JOIN (
SELECT * FROM topic_allowed_groups _tg
LEFT JOIN group_users gu
ON gu.user_id = 13455
AND gu.group_id = _tg.group_id
AND gu.group_id IN (47)
) tg ON topics.id = tg.topic_id
LEFT JOIN topic_allowed_users ta2 ON topics.id = ta2.topic_id AND
ta2.user_id IN (32852)
WHERE ("topics"."deleted_at" IS NULL)
AND (topics.archetype = 'private_message')
AND (tg.topic_id IS NOT NULL)
AND (ta2.topic_id IS NOT NULL)
AND (topics.id NOT IN (69933,69995,69988,69984,69968,69973,69971,69952))
AND "topics"."visible" = 't'
ORDER BY topics.bumped_at DESC
LIMIT 3;
```
Planning time: 1.191 ms
Execution time: 0.129 ms
2017-09-14 11:18:58 +08:00
Régis Hanol
0096ee40da
FIX: only show participants the user can see
2017-09-13 17:14:03 +02:00
Guo Xiang Tan
28148197d6
PERF: Avoid `NOT IN (<subquery>>` which can get really slow.
...
```
EXPLAIN ANALYZE SELECT "topics".*
FROM "topics" LEFT JOIN topic_users tu ON topics.id = tu.topic_id AND
tu.user_id = 13455
WHERE ("topics"."deleted_at" IS NULL)
AND (topics.archetype = 'private_message')
AND (
topics.id IN (
SELECT topic_id
FROM topic_allowed_users
WHERE user_id = 13455
)
)
AND (
topics.id IN (
SELECT ta.topic_id
FROM topic_allowed_users ta
WHERE ta.user_id IN (2,1995,8307,17621,22980,-10)
)
OR
topics.id IN (
SELECT tg.topic_id
FROM topic_allowed_groups tg
WHERE tg.group_id IN (-10)
)
)
AND (topics.id NOT IN (68559,60069,42145))
AND "topics"."visible" = 't'
ORDER BY topics.bumped_at
DESC LIMIT 5;
```
Planning time: 1.196 ms
Execution time: 21.176 ms
```
EXPLAIN ANALYZE SELECT "topics".*
FROM "topics"
LEFT JOIN topic_users tu ON topics.id = tu.topic_id AND tu.user_id =
13455
LEFT JOIN topic_allowed_users ta ON topics.id = ta.topic_id AND
ta.user_id = 13455
LEFT JOIN topic_allowed_users ta2 ON topics.id = ta2.topic_id AND
ta2.user_id IN (2,1995,8307,17621,22980,-10)
LEFT JOIN topic_allowed_groups tg ON topics.id = tg.topic_id AND
tg.group_id IN (-10)
WHERE ("topics"."deleted_at" IS NULL)
AND (topics.archetype = 'private_message')
AND (ta.topic_id IS NOT NULL)
AND (ta2.topic_id IS NOT NULL OR tg.topic_id IS NOT NULL)
AND (topics.id NOT IN (68559,60069,42145))
AND "topics"."visible" = 't'
ORDER BY topics.bumped_at DESC
LIMIT 5;
```
Planning time: 1.792 ms
Execution time: 2.546 ms
2017-09-13 22:28:33 +08:00
Gerhard Schlager
31ecb4fecf
FIX: Handle incoming emails without email address in From header ( #5177 )
2017-09-12 22:35:24 +02:00
Guo Xiang Tan
07bfe3d053
FIX: Use a distrbuted cache for site locale.
2017-09-12 19:36:17 +08:00
Arpit Jalan
18142d8abf
new rake task to bake uncooked posts
2017-09-12 12:40:18 +05:30
Neil Lalonde
c12a53449c
FIX: output css for category backgrounds only if uploads have a url
2017-09-11 17:10:30 -04:00
Robin Ward
717ed75fc4
Add warning when plugins changed by `tmp` was not removed
2017-09-08 13:38:46 -04:00
Guo Xiang Tan
2db47f98cd
Avoid allocating an extra array.
2017-09-08 14:07:24 +08:00
Guo Xiang Tan
0f2a303f00
Remove irrelevant comment.
2017-09-08 14:07:24 +08:00
Guo Xiang Tan
5d4221fbe1
PERF: Avoid calling expensive `PostGuardian#can_see_post?` multiple times.
...
Before
```
Your Results: (note for timings- percentile is first, duration is second
in millisecs)
---
topic_admin:
50: 19
75: 19
90: 21
99: 27
topic:
50: 56
75: 62
90: 64
99: 99
timings:
load_rails: 1262
ruby-version: 2.4.1-p111
rss_kb: 198432
pss_kb: 136612
virtual: physical
architecture: amd64
operatingsystem: Ubuntu
memorysize: 15.59 GB
kernelversion: 4.10.0
physicalprocessorcount: 1
processor0: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
rss_kb_9877: 327892
pss_kb_9877: 263671
rss_kb_9946: 325468
pss_kb_9946: 261671
rss_kb_10153: 326456
pss_kb_10153: 262657
```
After
```
Your Results: (note for timings- percentile is first, duration is second
in millisecs)
---
topic_admin:
50: 18
75: 18
90: 20
99: 28
topic:
50: 41
75: 42
90: 46
99: 49
timings:
load_rails: 1201
ruby-version: 2.4.1-p111
rss_kb: 187936
pss_kb: 123596
virtual: physical
architecture: amd64
operatingsystem: Ubuntu
memorysize: 15.59 GB
kernelversion: 4.10.0
physicalprocessorcount: 1
processor0: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
rss_kb_26478: 342360
pss_kb_26478: 276696
rss_kb_26547: 340368
pss_kb_26547: 275930
rss_kb_26747: 338964
pss_kb_26747: 274466
```
2017-09-08 14:07:24 +08:00
Régis Hanol
657440b8be
FIX: consecutive_visits query wasn't properly setting 'granted_at' (3rd time's a charm)
2017-09-07 18:41:56 +02:00
Guo Xiang Tan
58321d0783
PERF: Remove `Object#present?` check introduced in e0d5d9670a
.
2017-09-07 21:36:27 +08:00
David Taylor
7d350d0d75
Revert plugin js changes ( #5139 )
...
* Revert "Add disabled_plugins to preloadstore for login_required anonymous users (#5134 )"
This reverts commit b840170f8d
.
* Revert "Do not load javascripts for disabled plugins (#5103 )"
This reverts commit a14ab48829
.
2017-09-07 15:15:29 +02:00
Guo Xiang Tan
e0d5d9670a
Fix the build.
2017-09-07 18:41:44 +08:00
Guo Xiang Tan
3e123b1a39
PERF: Use `pluck` instead of enmurating through all the records.
2017-09-07 17:24:23 +08:00
Guo Xiang Tan
4d840d10db
PERF: Reduce number of Redis hits per requests.
2017-09-07 13:34:27 +08:00
Régis Hanol
db920673dc
FIX: consecutive_visits query wasn't return only the first result per user
2017-09-07 01:08:28 +02:00
Régis Hanol
8a935a4b5f
FEATURE: new badges when visiting the forum for 10, 100 and 365 consecutive days
2017-09-06 22:35:08 +02:00
David Taylor
a14ab48829
Do not load javascripts for disabled plugins ( #5103 )
...
* Do not load javascript for disabled plugins
* Appease rubocop
2017-09-06 10:06:47 +02:00
Robin Ward
db929e58fc
FIX: Don't allow staff to approve users with unverified emails
2017-09-04 12:55:39 -04:00
Robin Ward
cb56dcdf2e
FIX: Use proper `iconNode` when compiling virtual dom templates
2017-09-01 11:20:33 -04:00
Robin Ward
dffb1fc4ee
FEATURE: Use Glimmer compiler for widget templates
...
Widgets can now specify a template which is precompiled using Glimmer's
AST and then converted into our virtual dom code.
Example:
```javascript
createWidget('post-link-arrow', {
template: hbs`
{{#if attrs.above}}
<a class="post-info arrow" title={{i18n "topic.jump_reply_up"}}>
{{fa-icon "arrow-up"}}
</a>
{{else}}
<a class="post-info arrow" title={{i18n "topic.jump_reply_down"}}>
{{fa-icon "arrow-down"}}
</a>
{{/if}}
`,
click() {
DiscourseURL.routeTo(this.attrs.shareUrl);
}
});
```
2017-09-01 09:28:16 -04:00
Sam Saffron
7f8a90ef63
remove non english comment
2017-08-31 17:00:37 -04:00
Robin Ward
48e95f01fc
Version bump to v1.9.0.beta8
2017-08-31 14:54:44 -04:00
Robin Ward
e7885c20cb
Add reloadable support for patching in an avatar lookup
2017-08-30 14:24:03 -04:00
Guo Xiang Tan
df9d662dab
FIX: Use `CASCADE` when dropping function.
2017-08-30 15:54:27 +08:00
Guo Xiang Tan
54ad436258
Revert "FIX: Drop function first before removing trigger."
...
This reverts commit d229969afa
.
2017-08-30 15:38:09 +08:00
Guo Xiang Tan
d229969afa
FIX: Drop function first before removing trigger.
2017-08-30 15:33:25 +08:00
Sam
c705159d22
Remove email column from user table
2017-08-29 11:50:56 -04:00
Bianca Nenciu
6bc74ceb50
Split alias levels in mentionable and messageable levels. ( #5065 )
...
* Split alias levels in mentionable and messageable levels.
* Fixed some tests.
* Set messageable level to everyone by default.
* By defaults, groups are not mentionable or messageable.
* Made staff groups messageable by the system.
2017-08-28 12:32:08 -04:00
Sam
552fbd3c8d
lint
2017-08-28 12:25:34 -04:00
darix
4b5724ec02
Extend config/version.rb with more informations ( #5061 )
...
This gives installations not using git checkouts
to provide all the informations needed for the
internal version checks and version display in
the dashboard.
The build:stamp rake task was extended to also
add the new informations.
2017-08-28 12:24:56 -04:00
Bianca Nenciu
bb3a5910d7
Support for sending PMs to email addresses ( #4988 )
...
* Added support for sending PMs to email addresses.
* Made changes after review.
* Added settings validator.
* Fixed tests.
2017-08-28 12:07:30 -04:00
Arpit Jalan
4623b46b0b
rescue error when remapping permalinks
2017-08-28 20:43:40 +05:30
Sam
6e1809ce32
add a debugging task for running all schedules
2017-08-25 12:19:34 -04:00
Neil Lalonde
2c56f8df7c
FEATURE: show tags in search results
2017-08-25 11:52:59 -04:00
Sam
fef08c6fee
FEATURE: rake db:stats
...
Basic rake task to provide db stats like largest tables, row count and size
2017-08-25 10:29:04 -04:00
Arpit Jalan
70f7a0ca1a
new rake task to remap old phpbb links
2017-08-25 15:09:11 +05:30
Robin Ward
0b58848895
FIX: Category badge style of none was causing errors when rendering
2017-08-24 13:45:32 -04:00
Sam
fdc5c080ea
FIX: bump default max for int site settings to a much higher number
...
(close to long int)
2017-08-24 10:16:41 -04:00
Guo Xiang Tan
7c15b27a90
Merge pull request #5073 from xrav3nz/extract-github-avatar
...
FEATURE: import Github profile picture
2017-08-23 16:18:46 +09:00
Kyle Zhao
5868508e98
GH#retrieve_avatar: simplify conditional and restructured testing
2017-08-22 23:46:50 -04:00
Guo Xiang Tan
49ddc98b38
Merge pull request #5066 from davidtaylorhq/docker-lint-changes
...
Docker lint SINGLE_PLUGIN
2017-08-23 09:56:15 +09:00
Kyle Zhao
49f0119c12
FEATURE: import Github profile picture
2017-08-22 20:23:47 -04:00
Sam
bcf7dc38c2
FEATURE: server side support for upload:// markdown
...
This allows uploads to be specified using short sha1 hash instead of full
URL
Client side change is pending
2017-08-22 11:46:23 -04:00
David Taylor
ed6e1c3825
Combine docker:lint and docker:test into one command
2017-08-22 13:47:29 +01:00
Guo Xiang Tan
2d4d76472d
FIX: Broken suspect user lists.
...
https://meta.discourse.org/t/server-error-code-500/68404
2017-08-22 11:16:55 +09:00
David Taylor
a3f5878ec9
Use `if`, not `unless`
2017-08-18 22:12:20 +01:00
David Taylor
7704e8246b
Allow SINGLE_PLUGIN environment variable to be used
2017-08-18 22:04:35 +01:00
David Taylor
ea43f50f6d
Add documentation for new ENV variables
2017-08-18 22:03:09 +01:00
Sam
aeedecd27c
correct erratically failing spec
2017-08-18 15:10:37 -04:00
David Taylor
d65570a8a1
Preparation for using chrome for qunit in docker images ( #5062 )
...
Move use_chrome option to ENV variable
Rewrite script to work with node 6 (current LTS version used in discourse_docker)
Add node stuff to gitignore
2017-08-18 14:08:58 -04:00
Guo Xiang Tan
8ecf383c55
Extract linter in `docker:test` Rake task into `docker:lint`.
2017-08-18 12:22:01 +09:00
Sam
a83bd537f4
FIX: exception in excerpt parser for null nodes
2017-08-17 16:13:30 -04:00
Neil Lalonde
df5142493c
Version bump to v1.9.0.beta7
2017-08-17 15:59:29 -04:00
Guo Xiang Tan
0e656ff213
FIX: Can't reset AR schema cache due to versions table.
2017-08-17 19:27:35 +09:00
Guo Xiang Tan
2157079d09
Add Plugin API to register a category custom field.
2017-08-17 15:59:57 +09:00
Régis Hanol
55f449edc5
FIX: reloading issues with classes
2017-08-16 23:00:52 +02:00
Robin Ward
f9ff06b9d4
Allow ENV variable to force polling
2017-08-16 12:59:38 -04:00
Neil Lalonde
0daeefc977
Version bump to v1.9.0.beta6
2017-08-16 12:49:25 -04:00
Robin Ward
c8220e11f9
Better formatting for CSS errors
2017-08-16 11:48:07 -04:00
David Taylor
c981edfa20
Add option to run qunit tests in headless chrome ( #5054 )
2017-08-16 07:42:42 -04:00
Erick Guan
6e59149a77
FIX: rebuild index when engine replaced ( #5021 )
2017-08-16 07:38:34 -04:00
Guo Xiang Tan
b77aa29e71
Merge pull request #5013 from LeoMcA/alternate-emails-phase-1.5
...
FIX: add additional email to tests and clean up resulting mess
2017-08-16 16:19:28 +09:00
Guo Xiang Tan
86adc8d717
Fix typo.
2017-08-16 13:06:47 +09:00
Guo Xiang Tan
0b2d65f77a
Include the site setting file path for which a default value is missing.
2017-08-16 11:42:08 +09:00