Sam
47c44356f8
FIX: load balanced servers do not share monotonic clock
...
This means then when a service is load balanced and you reach rate limits
there was a case where they counting was way off
also remove the stub from clock_gettime cause we need to be super careful with
it, so we should probably just stub by hand when needed
2017-12-07 11:48:11 +11:00
Sam
90a55d6f7c
FIX: handle CORS in hijacked requests
2017-12-07 10:31:04 +11:00
Gerhard Schlager
16738cfb1b
FEATURE: convert plain text emails to markdown
2017-12-06 01:47:51 +01:00
Kyle Zhao
5f318a5241
FEATURE: Replace SimpleRSS with Ruby RSS module ( #5311 )
...
* SPEC: PollFeedJob parsing atom feed
* add FeedItemAccessor
It is to provide a consistent interface to access a feed item's tag
content.
* add FeedElementInstaller
to install non-standard and non-namespaced feed elements
* FEATURE: replace SimpleRSS with Ruby RSS module
* get FinalDestination and download with Excon
* support namespaced element with FeedElementInstaller
2017-12-06 10:45:09 +11:00
Robin Ward
410994b7f5
FEATURE: Show a button to Staff for "Moderation History" on posts/topics
...
When clicked, it pops up a modal showing a history of moderation actions
taken on the post or topic.
2017-12-05 15:20:20 -05:00
Vinoth Kannan
6e054b2572
FEATURE: Convert HTML to Markdown while pasting in composer
2017-12-05 12:23:39 -05:00
Sam
995bf3c84e
correct spec on Ruby 2.3
2017-12-05 07:04:41 +11:00
Sam
5a9622163d
FIX: regression around rate limiter
2017-12-04 21:44:16 +11:00
Sam
dd70ef3abf
Revert "Revert "PERF: improve speed of rate limiter""
...
This reverts commit 2373d85239
.
2017-12-04 21:23:11 +11:00
Sam
2373d85239
Revert "PERF: improve speed of rate limiter"
...
This reverts commit a9bcdd7f27
.
2017-12-04 21:19:28 +11:00
Sam
d041377ccf
correct test that does not work with discobot
2017-12-04 18:20:05 +11:00
Sam
a9bcdd7f27
PERF: improve speed of rate limiter
...
Also
- adds a global rate limiter option
- cleans up usage in tests
- fixes freeze_time so it handles clock_gettime
2017-12-04 18:17:30 +11:00
Sam
af061efcf5
DEV: if plugins are installed do not fail the test
2017-12-04 18:17:30 +11:00
Guo Xiang Tan
b18cc81609
Make rubocop happy.
2017-12-04 10:55:31 +08:00
Guo Xiang Tan
22140efa70
Tests are still leaking connection after skipping.
...
* Could be in the setup.
2017-12-04 10:46:30 +08:00
Guo Xiang Tan
e73fbfe265
FIX: Topic#featured_link_root_domain
extracts URL before parsing.
2017-12-04 10:00:07 +08:00
Guo Xiang Tan
4c8402c50f
Skip test that is leaking connections.
2017-12-04 09:26:51 +08:00
Arpit Jalan
496cd3b4df
Merge pull request #5385 from techAPJ/search-logs-improvements
...
FEATURE: support search click through tracking for user, category and tags
2017-12-01 12:08:38 +05:30
Arpit Jalan
e3925278e2
FEATURE: support search click through tracking for user, category and tags
...
https://meta.discourse.org/t/search-logs-page/73281/11?u=techapj
This commit adds following features:
- support for tracking click through to user, tag and category
- new filter for search type (header, full page)
This commit also removes "most viewed topic" field from search logs page because we are now tracking multiple click through entities, so topic is not a special entity anymore. This also improves query perf. The query now takes `20.5ms` to runs, as opposed to `655.9ms` previously.
2017-12-01 12:04:55 +05:30
Vinoth Kannan
7f2eeaf767
FIX: Password required flag should be cleared whenever clearing the raw password ( #5384 )
2017-12-01 15:19:24 +11:00
Guo Xiang Tan
c128e421c4
FIX: Don't run job if topic timer has already been deleted.
2017-11-30 15:26:26 +08:00
Guo Xiang Tan
1c2d1682ae
Merge pull request #5328 from tgxworld/reenable_interpolation_keys_check
...
FIX: Re-enable invalid interpolation keys check and allow default key…
2017-11-30 13:04:54 +08:00
Guo Xiang Tan
9fbe1436b6
UX: Replace heuristic solution root domain extraction for topic featured link.
2017-11-29 21:52:41 +08:00
Guo Xiang Tan
b1375ef44e
Ensure that we disconnect connection in test.
2017-11-29 20:57:13 +08:00
Guo Xiang Tan
8491c5fba5
UX: Replace heuristic solution for extracting root domain.
2017-11-29 16:26:46 +08:00
Gerhard Schlager
44ee388070
FEATURE: omit images from og and twitter description tags
2017-11-28 21:34:02 +01:00
Guo Xiang Tan
1d8b834301
Merge pull request #5369 from vinothkannans/queued
...
FIX: Error if queued post not found while updating
2017-11-28 17:51:05 +08:00
Jeff Wong
b094894c94
Feature: Add service worker registration method to plugin API
2017-11-28 14:01:41 +08:00
Sam
df84e1c358
Correctly track hijacked requests
2017-11-28 16:47:20 +11:00
Sam
0caa335ef0
FIX: Handle more cases where HTTP status is not correct
...
HTTP status was not correct with send_file which uses streaming
2017-11-28 11:00:13 +11:00
Sam
ca7af7b88f
FIX: displaying wrong avatar and letter avatar
...
correct regression where params and env is reused in production
2017-11-28 09:28:40 +11:00
Robin Ward
77f90876d3
REFACTOR: Track manual locked user levels separately from groups
2017-11-27 11:23:44 -05:00
Vinoth Kannan
31aa21b5a4
FIX: Error if queued post not found while updating
2017-11-27 19:25:51 +05:30
Sam
608207b2e5
FEATURE: avatar proxy happens in background
...
This ensures that even if it is slow to download avatars site will
continue to work
Also simplifies hijack pattern
2017-11-27 17:43:24 +11:00
Sam
d5e7691ae9
favicon proxy now uses hijack
2017-11-27 14:51:14 +11:00
Guo Xiang Tan
5805979e88
FIX: Re-enable invalid interpolation keys check and allow default keys to be left out of translation overrides.
...
https://meta.discourse.org/t/bulk-invite-from-file-resets-the-invite-forum-mailer-customized-text/67606/16
2017-11-27 11:00:08 +08:00
Guo Xiang Tan
2e04ef97d9
Fix the build.
2017-11-27 10:53:05 +08:00
Guo Xiang Tan
a7030e80bf
Skip randomly failing test.
2017-11-27 10:51:18 +08:00
Sam
eb428ef54d
FEATURE: uploads are processed a faster
...
Also cleans up API to always return 422 on upload error. (previously returned 200)
Uploads are processed using new hijack pattern
2017-11-27 12:43:35 +11:00
Guo Xiang Tan
71942e4f62
Merge pull request #5352 from tgxworld/method_for_replica_postgres_connection
...
Expose `replica_postgresql_connection` to `ActiveRecord::Base`.
2017-11-27 08:38:10 +08:00
Gerhard Schlager
b3094e9954
FIX: incoming and outgoing emails got lost when post was moved
2017-11-24 11:45:36 +01:00
Sam
e0e99d4bbd
PERF: hijack onebox requests so they do not use up a unicorn worker
2017-11-24 15:31:40 +11:00
Guo Xiang Tan
a509f466a0
Expose replica_postgresql_connection
to ActiveRecord::Base
.
2017-11-24 09:35:45 +08:00
Guo Xiang Tan
82222e8d18
Improve specs to test for the right response status.
2017-11-24 09:32:44 +08:00
Arpit Jalan
406ad1a1f2
Merge pull request #5357 from techAPJ/invite-trust-level
...
FIX: invited users were not granted trust level based on their group
2017-11-23 23:42:20 +05:30
Robin Ward
ad07e6e172
FEATURE: group_removes_trust_level
setting
...
By default in Discourse, if a group grants a user a particular trust
level that is locked even if they are removed from the group.
With this new setting, when a user is removed from a group their
trust level is set to either the next highest trust level based on group
membership, or they are unlocked and promoted based on the default
mechanisms.
2017-11-23 13:03:24 -05:00
Gerhard Schlager
613f4d737a
FIX: updating topic stats failed silently for invalid topics
2017-11-23 18:47:45 +01:00
Arpit Jalan
3508046e33
FIX: invited users were not granted trust level based on their group
...
https://meta.discourse.org/t/bulk-invites-and-trust-level/73535
If the user enters password when accepting invite they were not granted
trust level based on their group privileges. It was because `password_required` was set to true when creating user record and when the user was updated again when granting trust level the password validation was raising error saying that the password is empty. This commit fetches fresh user record after the user is created so that the user record can be updated successfully.
2017-11-23 22:19:28 +05:30
Gerhard Schlager
39810e4425
FIX: do not move small post actions
2017-11-23 17:25:53 +01:00
Sam
e61629ed84
remove spec containing mock
2017-11-23 17:54:27 +11:00
Sam
2b8d4508e5
PERF: stop running background work between requests
...
Use a dedicated thread to run Scheduler::Defer
This avoids blocking of a worker during operations that require waiting.
In particular uploads risked blocking a unicorn.
This also add a queue "length" that discourse prometheus consumes.
2017-11-23 15:48:47 +11:00
Robin Ward
628275fc31
FIX: Some badge routes were still working even with badges disabled
2017-11-21 12:22:44 -05:00
Guo Xiang Tan
f7642e076d
REFACTOR: Avoid duplicated logic on server and client.
2017-11-21 17:10:04 +08:00
Régis Hanol
2d48caffdf
FIX: be more lenient when deleting a custom emoji
2017-11-20 23:50:23 +01:00
Robin Ward
0a9daba627
FIX: Support for long suspension emails
2017-11-20 12:45:46 -05:00
Sam
7e841a0495
FIX: stop counting PMs, deleted topics and whispers in directory and user stats
2017-11-20 16:44:09 +11:00
Guo Xiang Tan
385372e384
Revert "PERF: Reduce number of topics to filter while querying for unread."
...
This reverts commit c06b782cab
.
2017-11-20 11:49:09 +08:00
Gerhard Schlager
41673c322c
dear Rubocop, don't be so pedantic ;-)
2017-11-19 12:45:33 +01:00
Gerhard Schlager
92a831bae6
FEATURE: user directory returns staged users during search
2017-11-19 01:17:31 +01:00
Gerhard Schlager
546b206da0
replace indentation with non-breaking spaces when cooking emails
2017-11-18 17:16:44 +01:00
Neil Lalonde
87ec11e298
FIX: more accurate counting of posts read. Skipping to the end of a topic does not count all posts as read in user stats.
2017-11-17 16:08:46 -05:00
Robin Ward
d755c9c90f
FIX: Allow regular expressions to specify boundaries
2017-11-17 14:13:44 -05:00
Gerhard Schlager
d47fa6653b
do not notify staged users about posts withing mailinglist mirror category
2017-11-17 15:29:14 +01:00
Gerhard Schlager
1a3ab7c02e
ignore some site settings for emails sent to mailinglist mirror category
2017-11-17 15:29:14 +01:00
Gerhard Schlager
aea161fabd
suppress rejection email when email was sent to mailinglist mirror category
2017-11-17 15:29:14 +01:00
Régis Hanol
a586738f25
fix randomly failing spec
2017-11-16 18:16:16 +01:00
Régis Hanol
678e28794a
FIX: properly handle too large & broken images in posts
2017-11-16 15:45:07 +01:00
Vinoth Kannan
6f2a3cb026
Remove unwanted triggers to CookedPostProcessor
( #5319 )
2017-11-16 15:20:44 +05:30
Sam
9c22c68d39
FIX: only save custom fields if they actually change
2017-11-16 15:14:10 +11:00
Guo Xiang Tan
3ab6318e5f
Disable postgresql adapter tests until we figure out what is leaking
...
connections.
2017-11-16 07:17:22 +08:00
Sam
f52111f787
FEATURE: allow plugins to easily detect if running in Rack
...
Usage: Discourse.running_in_rack? to tell if rack was booted
2017-11-16 08:39:29 +11:00
Sam
20fbf81505
FEATURE: Allow plugins to easily add defaults to GlobalSetting
...
usage:
GlobalSetting.add_default("plugin_setting_name", "value")
2017-11-16 08:39:29 +11:00
Neil Lalonde
0cdded8079
Merge pull request #5303 from vinothkannans/export-multiple-categories
...
FEATURE: Option to export multiple categories using export_category method
2017-11-15 16:07:21 -05:00
Gerhard Schlager
9207dee69a
FEATURE: escape HTML when cooking plaintext emails
2017-11-15 20:22:11 +01:00
Robin Ward
fc73de9578
Support for finding new locales in plugins
2017-11-15 11:20:04 -05:00
Vinoth Kannan
cbc0afb399
REFACTOR: Instance methods added to 'PluginStore' model for easy access ( #5315 )
2017-11-15 10:10:20 -05:00
Régis Hanol
648832a643
fix the build
2017-11-15 11:53:14 +01:00
Vinoth Kannan
7b494a65c9
NEW: large image placeholder added in cooked html ( #5291 )
2017-11-15 11:30:47 +01:00
Guo Xiang Tan
89d9ffa884
EXPERIMENTAL: Allow logs to be shipped via different methods.
...
See https://github.com/dwbutler/logstash-logger#uri-configuration for
a list of available methods.
2017-11-15 09:11:33 +08:00
Sam
813e21d0e8
FIX: current user serializer consistently returns {} for custom_fields
...
Resolves : #5210
2017-11-15 11:55:37 +11:00
OsamaSayegh
4c4410225e
UX: cap likes 2 ( #5237 )
2017-11-15 11:28:54 +11:00
Arpit Jalan
3831663fea
FEATURE: search logs page ( #5313 )
2017-11-15 11:13:50 +11:00
Régis Hanol
23baaa5dcc
FIX: don't crop iPhone X screenshots
2017-11-14 20:37:27 +01:00
Robin Ward
971e302ff2
FEATURE: Support an end date for user silencing
2017-11-14 13:20:19 -05:00
Gerhard Schlager
4be8f17e66
FIX: counting invites didn't work
...
PostgreSQL reported the following error:
"for SELECT DISTINCT, ORDER BY expressions must appear in select list"
2017-11-14 11:40:07 +01:00
Sam
47e4c9bb46
FIX: import/export theme should work with uploads
2017-11-14 16:30:23 +11:00
Sam
075a458489
FIX: child theme component vars not resolved in parent
2017-11-14 15:22:59 +11:00
Guo Xiang Tan
bf5ba5fbd1
Remove readonly alert
smoke test.
2017-11-14 11:18:38 +08:00
Gerhard Schlager
d3baae5365
removes whitespaces and uses scope
2017-11-13 15:23:24 +01:00
Régis Hanol
7370adeae3
FIX: don't delete uploads referenced in drafts or queued posts when using the short_url
2017-11-13 15:01:31 +01:00
Sam
8a66446849
FEATURE: add overflow-y auto to Markdown tables
2017-11-13 17:52:15 +11:00
Sam
4f28c71b50
FIX: error setting tombstone bucket when set to old version
2017-11-13 15:36:45 +11:00
Sam
3ac7d041ae
UX: generic onebox treats all square images as avatars and renders them smaller
2017-11-13 11:21:19 +11:00
Gerhard Schlager
5210e3e744
FEATURE: accept incoming email with reply_key mismatch when original email was forwarded
2017-11-12 23:44:22 +01:00
Gerhard Schlager
fc6de6863b
WIP
2017-11-12 21:12:34 +01:00
Gerhard Schlager
4dc4bc70c8
FIX: ignore_by_title should match case-insensitive
2017-11-12 01:43:18 +01:00
Vinoth Kanan
d9823f69c6
FEATURE: Option to export multiple categories using export_category method
2017-11-11 19:11:16 +05:30
Robin Ward
4270c93666
FIX: Missing yml file
2017-11-10 14:29:36 -05:00
Robin Ward
1f14350220
Rename "Blocked" to "Silenced"
2017-11-10 14:10:27 -05:00
Neil Lalonde
9dc9ca4ac0
FIX: be consistent with how first posts in topics are counted. do like DirectoryItem.refresh_period :all
2017-11-10 12:18:25 -05:00