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
Neil Lalonde
85a59c632d
allow header_instructions to be passed in to message builder
2017-12-05 15:12:24 -05:00
Arpit Jalan
a5e58e7afa
UX: add onebox favicon styling in email
2017-12-05 14:08:30 +05:30
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
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
6c82a50903
Improve error handling in hijacked code
2017-12-01 16:23:32 +11:00
Vinoth Kannan
7f2eeaf767
FIX: Password required flag should be cleared whenever clearing the raw password ( #5384 )
2017-12-01 15:19:24 +11:00
Neil Lalonde
49371d668f
Version bump to v1.9.0.beta15
2017-11-30 16:32:43 -05:00
Sam
3334a4b539
Simplify hijack code
2017-11-29 11:54:35 +11:00
Gerhard Schlager
44ee388070
FEATURE: omit images from og and twitter description tags
2017-11-28 21:34:02 +01:00
Sam
f80522671b
improve instrumentation and defer hijacking till last moment
2017-11-28 18:21:56 +11: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
b3b55e18d1
UX: stop warping tiny onebox images
2017-11-28 12:32:35 +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
5a959ca4e4
FIX: We also need a base key for `admin_js`
2017-11-27 11:57:06 -05:00
Robin Ward
77f90876d3
REFACTOR: Track manual locked user levels separately from groups
2017-11-27 11:23:44 -05:00
Vinoth Kannan
1f3e9a4350
FIX: Should skip the loop if the image src is blank
2017-11-27 13:41:28 +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
e48c280c7e
correct regression
2017-11-27 15:07:13 +11:00
Sam
d5e7691ae9
favicon proxy now uses hijack
2017-11-27 14:51:14 +11: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
Neil Lalonde
6f8f2c494d
FIX: admin strings in plugins should fallback to english when untranslated
2017-11-24 14:11:01 -05:00
Michael Brown
45c19e44f0
assets rake task: only try and detect brotli if COMPRESS_BROTLI is set
2017-11-24 12:00:38 -05:00
Michael Brown
5584085943
assets rake task: detect the brotli version on the image as the usage changes
2017-11-24 10:40:57 -05:00
Michael Brown
3c60702663
assets rake task: gzip and brotli exit codes exist for a reason - to be checked
2017-11-24 09:52:08 -05: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
Gerhard Schlager
613f4d737a
FIX: updating topic stats failed silently for invalid topics
2017-11-23 18:47:45 +01: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
Neil Lalonde
6c86e0c94a
FEATURE: remove the featured link by editing the topic
2017-11-22 14:53:35 -05:00
Guo Xiang Tan
26d14dbcbb
Remove onceoff job in migrate rake task.
2017-11-22 12:50:01 +08:00
Guo Xiang Tan
edfa2c3af9
FIX: Don't enqueue onceoff job in migration.
...
* Deployment of app servers may happen minutes after migrations.
2017-11-22 12:07:48 +08:00
Guo Xiang Tan
f7642e076d
REFACTOR: Avoid duplicated logic on server and client.
2017-11-21 17:10:04 +08:00
Guo Xiang Tan
c390169b71
Move monkey patch into freedom_patchers.
2017-11-21 14:15:11 +08:00
Guo Xiang Tan
337ccfa3a6
MONKEYPATCH: Allow us to disable the use of advisory locks during migration.
2017-11-21 14:06:22 +08:00
Robin Ward
f8164956dd
Add quote and mention support for username formatters
2017-11-20 16:28:03 -05: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
546b206da0
replace indentation with non-breaking spaces when cooking emails
2017-11-18 17:16:44 +01:00
Régis Hanol
de037da731
FIX: FinalDestination's small_get method wasn't using proper request headers
2017-11-17 17:24:35 +01:00
Régis Hanol
aebcd56300
FIX: try a GET for error code 406
2017-11-17 16:59:51 +01:00
Régis Hanol
221ff24418
SQL != Ruby
2017-11-17 16:12:20 +01:00
Régis Hanol
a0fc8bd924
don't log 404s to gravatar.com
2017-11-17 15:38:26 +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
Guo Xiang Tan
3a472b507e
FIX: `severity_name` was being logged incorrectly.
2017-11-17 08:55:21 +08:00
Robin Ward
2974faee68
FIX: Support client locales defined in plugins
2017-11-16 16:21:53 -05:00
Robin Ward
fc346d207b
Only return unique paths
2017-11-16 15:22:05 -05:00
Robin Ward
966c7e7f07
FEATURE: Allow plugins to dynamically add seed fixture paths
...
This is useful if your plugin wants different seed data for different
locales for example.
2017-11-16 14:43:17 -05:00
Robin Ward
8cd0026cde
FIX: If there is an invalid locale in the site setting, default to en
2017-11-16 10:58:29 -05:00
Régis Hanol
678e28794a
FIX: properly handle too large & broken images in posts
2017-11-16 15:45:07 +01: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
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
Vinoth Kanan
5c11104f9f
FIX: Duplicate a tag if image url is same to href
2017-11-15 17:36:48 +05:30
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
Robin Ward
d07ebf9d4c
UX: Support for custom error pages and headers in plugins
2017-11-14 16:31:44 -05: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
Sam
075a458489
FIX: child theme component vars not resolved in parent
2017-11-14 15:22:59 +11:00
Gerhard Schlager
d3baae5365
removes whitespaces and uses scope
2017-11-13 15:23:24 +01:00
Sam
ed0751f288
always double check there is a class first
2017-11-13 16:06:18 +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
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
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
Michael Howell
38b8d68c68
FEATURE: Allow the user to select a custom home page ( #5268 )
...
* Add user_home configuration option
* Use the new user_home preference to actually show the right home page
* Fix trailing whitespace
* Update user_option_serializer.rb
* Fix JavaScript default homepage tests
* Use an object instead of a giant switch
* Remove trailing whitespace
* Make the default `user_home` set to `null` instead of `0`
* Rename user_home to homepage_id
2017-11-10 06:45:19 +11:00
Robin Ward
16407dfc11
Add a `failed_code` we can check for when using Auth::Result
2017-11-09 10:49:42 -05:00
Sam
06365023c4
FEATURE: new API to search for a user by email
2017-11-09 17:04:21 +11:00
Sam
2d5bf0705a
PERF: exact email match bypass
...
instead of scanning full table when there is an exact email match ONLY
return the actual user.
2017-11-09 16:53:14 +11:00
Guo Xiang Tan
7777a44673
FIX: Don't skip validations when updating user's email.
2017-11-08 11:38:51 +08:00
Sam
fc7dca58fe
UX: oneboxes with avatars now display consistently
...
Onebox avatar size is reduced to 60px
Also fixes regression with some oneboxes not cooking after post
2017-11-08 11:50:01 +11:00
Régis Hanol
be0c7609f1
FIX: validates attachments against current authorized extensions
2017-11-07 19:17:33 +01:00
Arpit Jalan
8f560f0bf4
Merge pull request #5282 from vinothkannans/local_onebox_slash
...
FIX: Topic links onebox differently if end in /
2017-11-07 17:39:38 +05:30
Guo Xiang Tan
8970bdd4fa
FIX: Undefined method before unicorn boots.
2017-11-07 11:52:22 +08:00
Guo Xiang Tan
d9602fe729
Fix incorrect severity field.
2017-11-07 11:24:54 +08:00
Guo Xiang Tan
6a47491afe
Fix the build.
2017-11-06 16:56:22 +08:00
Guo Xiang Tan
ffe823ed32
Ensure we log the datetime in the format that we want.
2017-11-06 16:40:11 +08:00
Guo Xiang Tan
96a414d0a5
Log `progname` as empty string if `nil`.
2017-11-06 16:01:32 +08:00
Guo Xiang Tan
c9df21e131
FEATURE: Allow Unicorn logs to be JSON formatted.
2017-11-06 12:46:14 +08:00
Vinoth Kannan
230fec68ca
FIX: Topic links onebox differently if end in /
2017-11-06 01:41:36 +05:30
Robin Ward
2f0c9793f1
FEATURE: Allow multiple html builders to be registered via plugins
2017-11-03 11:32:32 -04:00
ckeboss
93633865d9
Adds primary user group as a class to quote ( #5285 )
...
* Adds primary user group as a class to quote
This feature addition will add the class `group-PRIMARY_USER_GROUP` to
the quote `aside`. `PRIMARY_USER_GROUP` will be the primary user group
of the user being quoted. This is similar to the class that is added to
a `topic-post`.
* Remove trailing whitespace
* Fix avatar in test
* Address PR comments
* Fix trailing whitespace
2017-11-03 09:51:40 -04:00
Guo Xiang Tan
470b1a5bc1
Don't print Sidekiq starting message to STDERR.
2017-11-03 21:02:31 +08:00
Guo Xiang Tan
88492b2b94
Merge pull request #5283 from viktorbenei/patch-1
...
Fix "duplicate method" issue
2017-11-03 09:32:45 +08:00
Neil Lalonde
18d65fe7e5
FIX: post counts in user stats when changing post owner
2017-11-02 18:05:23 -04:00
Neil Lalonde
21dd2ccd43
FIX: only count regular posts in user stats when deleting
2017-11-02 18:05:23 -04:00
Neil Lalonde
30689783db
don't decrement post_count for a post in a deleted topic that has already been uncounted
2017-11-02 18:05:23 -04:00
Neil Lalonde
f29290ad11
FIX: don't count whispers in user stats post_count
2017-11-02 18:05:23 -04:00
Neil Lalonde
24af9b7d97
FIX: when a topic is deleted, update the post count stats of all user who replied
2017-11-02 18:05:23 -04:00
Robin Ward
64cb8a3ce3
FIX: Normalizer wasn't working with attributes without values
2017-11-02 14:11:20 -04:00
Viktor Benei
54e4ff34f8
Fix "duplicate method" issue
...
Fixing http://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Lint/DuplicateMethods
Readers are defined (https://github.com/discourse/discourse/blob/master/lib/single_sign_on.rb#L61 ), so only writers have to be generated.
2017-11-02 12:33:35 +01:00
Arpit Jalan
5849bae9df
FIX: rescue error when importing category structure
2017-11-01 22:21:37 +05:30
Arpit Jalan
7f33f7850a
Merge pull request #5270 from vinothkannans/rake_categories
...
FEATURE: Rake task to export and import category structure
2017-11-01 21:36:03 +05:30
Vinoth Kannan
a00af4d85a
FEATURE: Rake task to export and import category structure
2017-11-01 17:17:05 +05:30
Arpit Jalan
2792c3c80e
fix typo
2017-11-01 15:51:17 +05:30
Sam
deb79a8fff
DEV: private means nothing for class methods
2017-11-01 16:43:19 +11:00
Sam
f5cc28d740
UX: correct regression with twitter onebox
2017-11-01 16:42:56 +11:00
Gerhard Schlager
d1f257d275
FinalDestination should only log when verbose is enabled
2017-10-31 17:16:59 +01:00
Gerhard Schlager
880d154381
FIX: deleting staged user of rejected email shouldn't delete incoming email
2017-10-31 15:13:23 +01:00
Gerhard Schlager
8c27f28dcb
add more logging to FinalDestination
2017-10-31 12:26:35 +01:00
Sam
9197feefb8
UX: onebox images no longer cause jiggle
...
This stops pages from "jiggling" while oneboxes download.
see: http://cssmojo.com/aspect-ratio-using-custom-properties-and-calc/
2017-10-31 13:50:58 +11:00
Neil Lalonde
9705f8b9c2
Version bump to v1.9.0.beta14
2017-10-30 11:20:55 -04:00
Sam
7ca08216bd
FIX: ensure we have no dangling db connections on threads
...
This correct 10 second timeouts in dev mode, when reloader kicks in
2017-10-30 14:24:15 +11:00
Guo Xiang Tan
401fbdbfe7
FIX: `Topic#title` were being parameterized when encoded slug is
...
enabled.
2017-10-27 11:02:47 +08:00
Sam
70aed105a6
FIX: bypass all site setting work for shadowed method
2017-10-27 11:12:44 +11:00
Guo Xiang Tan
f30366744a
Fix the build.
2017-10-26 17:09:00 +08:00
Erick Guan
7c3123a2dd
Downcase encoded slug by default and more specs
2017-10-26 16:50:29 +08:00
Rafael dos Santos Silva
a173511681
Merge pull request #5259 from discourse/groups_in_sso_provider
...
Add groups to the SSO provider payload
2017-10-25 23:02:53 -02:00
Rafael dos Santos Silva
5d5268a82b
Feature: Group handling
2017-10-25 22:49:17 -02:00
Arpit Jalan
efbd923f60
Merge pull request #5261 from xrav3nz/fix-rebake-match-rake
...
FIX: `post:rebake_match` rake task
2017-10-25 10:22:56 +05:30
Sam
877b7be579
FIX: in readonly mode don't double count pages
2017-10-25 13:19:43 +11:00
Kyle Zhao
82c18f6ca3
fix: undefined variable in `post:rebake_match`
2017-10-24 20:05:58 -04:00
Neil Lalonde
2c15e9c6fe
FIX: search couldn't find tags from before 2017-08-25
2017-10-24 17:55:05 -04:00
Neil Lalonde
fb5b9b6d06
FIX: don't offer the "Something Else" flag reason to TL0 users since they don't have permission to send private messages
2017-10-24 11:47:42 -04:00
Guo Xiang Tan
5c8dac3ae5
Replace `discourse-slack-official` with `discourse-chat-integration`.
2017-10-24 09:44:11 +08:00
Sam
d4d5e6965e
FEATURE: discourse-prometheus is an official plugin
2017-10-24 10:27:28 +11:00
Neil Lalonde
4452d67a23
Revert "FIX: TL0 users' messages to moderators were not being posted when flagging private messages"
2017-10-23 18:17:53 -04:00
Neil Lalonde
214fdad155
FEATURE: category and topic importer can support data from different sources using IMPORT_SOURCE
2017-10-23 14:01:57 -04:00
Régis Hanol
17e5fb0dc0
fix the build
2017-10-23 19:09:38 +02:00
Régis Hanol
80ad32094d
Small re-organization of CookedPostProcessor workflow
...
- only 'limit_size!' of oneboxed images once
- update post image at the end
- move 'enforce_nofollow' in its own method
2017-10-23 18:15:51 +02:00
Régis Hanol
04ae79896c
Exit early when the 'img is already inside an 'a' tag
2017-10-23 17:43:53 +02:00
Guo Xiang Tan
54455fa40b
Use MessageBus to get other processes to failover faster.
2017-10-23 17:58:24 +08:00
Sam
361fbfa518
FEATURE: raise an event when a sidekiq job runs
2017-10-23 17:30:17 +11:00
Sam
55d096ee8b
FEATURE: add event for scheduled_job_ran
2017-10-23 17:22:17 +11:00
Sam
8eb00984ea
improve plugin autospec watcher
2017-10-23 10:49:42 +11:00
Guo Xiang Tan
7673684d91
Allow `DistributedCache#delete` to not publish changes.
2017-10-20 23:03:42 +08:00
Arpit Jalan
804b4f32f8
better error message when API authentication fails
2017-10-20 20:05:34 +05:30
Guo Xiang Tan
57d9830bd2
FIX: DistributedCache without namespace mode wasn't working.
2017-10-20 22:32:41 +08:00
Guo Xiang Tan
fe1e78ddf4
Make PostgreSQL failover work with distributed cache.
2017-10-20 17:15:29 +08:00
Gerhard Schlager
4205c1ad2b
FIX: postprocessing ignored cook method
2017-10-20 10:26:45 +02:00
Gerhard Schlager
1481462cbf
PERF: Move oneboxing from cook method "email" to postprocessing
2017-10-20 10:26:45 +02:00
Guo Xiang Tan
d3003592cd
Connection may be `nil`.
2017-10-20 12:10:03 +08:00
Guo Xiang Tan
057571d173
Raise errors in PostgreSQLFallbackHandler threads.
2017-10-20 12:06:03 +08:00
Guo Xiang Tan
24e3e321e1
Only initialize distributed cache once.
2017-10-20 07:17:41 +08:00
Guo Xiang Tan
c7402ef794
FIX: Use a distributed cache to store failover state.
2017-10-20 05:46:19 +08:00
Robin Ward
838568cbc3
Refactor flag types for more customization
2017-10-19 13:55:23 -04:00
Michael Brown
e600fb79b3
Merge pull request #5241 from Supermathie/s_encode
...
single_sign_on: encode the payload with strict_encode64 which doesn't add extraneous newlines
2017-10-19 11:38:00 -04:00
Guo Xiang Tan
25c25ae423
FEATURE: Allow user to leave a PM.
2017-10-19 12:32:55 +08:00
Guo Xiang Tan
79de10b212
FEATURE: Allow users to disable new PMs.
...
https://meta.discourse.org/t/is-it-possible-to-disable-private-messaging-for-a-specific-user/46391
2017-10-19 12:32:55 +08:00
Régis Hanol
cbdfc85466
FIX: images aren't lightboxed anymore (partially reverts 646c6eb7cd
)
2017-10-18 23:54:36 +02:00
Sam
a4c539bade
FEATURE: Allow registration of detailed request logger
...
Detailed request loggers can be used to gather rich timing info
from all requests (which in turn can be forwarded to monitoring solution)
Middleware::RequestTracker.detailed_request_logger(->|env, data| do
# do stuff with env and data
end
2017-10-18 12:10:30 +11:00
Régis Hanol
65dc47adb4
FIX: prevent infinite 'pull_hotlinked_images' jobs when a oneboxed image has a different scheme
2017-10-18 01:50:23 +02:00
Michael Brown
518e101ad6
single_sign_on: encode the payload with strict_encode64 which doesn't add extraneous newlines
2017-10-17 13:41:52 -04:00
Guo Xiang Tan
1b5ee0ae72
FIX: Couldn't boot Discourse app with a readonly postgres.
2017-10-17 13:44:30 +08:00
Sam Saffron
8185b8cb06
FEATURE: cache https redirects per hostname
...
If a hostname does an https redirect we cache that so next
lookup does not incur it.
Also, only rate limit per ip once per final destination
Raise final destination protection to 1000 ip lookups an hour
2017-10-17 16:22:54 +11:00
Sam Saffron
646c6eb7cd
FEATURE: add :before_post_process_cooked hook
...
Also reduce amount of image downloading
2017-10-17 16:22:54 +11:00
Neil Lalonde
2db66072d7
SECURITY: signup without verified email using Google auth
2017-10-16 13:51:41 -04:00
Guo Xiang Tan
5f76e5062d
Pause Sidekiq when postgres failovers.
2017-10-16 19:48:31 +08:00
Neil Lalonde
b124e5f19f
FIX: TL0 users' messages to moderators were not being posted when flagging private messages
2017-10-13 11:55:49 -04:00
Neil Lalonde
6f923d5964
Version bump to v1.9.0.beta13
2017-10-13 11:30:21 -04:00
Vinoth Kannan
f176d114f2
FIX: with_email method won't support hash param ( #5236 )
2017-10-13 11:49:02 +02:00
Guo Xiang Tan
d2ac7a9476
Partially revert 4e89d3f778
.
...
* SiteSetting uses DistributedCache which depends on MessageBus.
Therefore, we need to initialize MessageBus first.
2017-10-12 15:15:24 +08:00
Gerhard Schlager
c0bb97b5cb
FIX: delete staged users when the incoming email is rejected
2017-10-11 16:17:01 +02:00
Guo Xiang Tan
9dcb11f553
Fix the build.
2017-10-11 17:45:19 +08:00
Guo Xiang Tan
36f8697a59
FIX: Exception has to be wrapped in the connection as well.
2017-10-11 17:19:26 +08:00
Guo Xiang Tan
09721090a3
FIX: Ensure that we revert back to default connection after running jobs.
2017-10-11 17:17:03 +08:00
Sam
9b4fd0b26b
correct multisite issues with scheduler
2017-10-11 18:46:53 +11:00
Sam
61f32ed431
FIX: we can not namespace eval automatically, it is impossible
2017-10-11 16:41:26 +11:00
Sam
6b4a1af160
FIX: don't attempt to schedule if there is no next run
2017-10-11 14:27:16 +11:00
Sam
233299982f
keep time consistent, we always use to_i
2017-10-11 14:26:50 +11:00
Sam
4ea87b5ab8
Merge branch 's3_refactor'
2017-10-09 10:27:52 +11:00
Sam
a8b4255bae
Correct rule installation in AWS
2017-10-09 10:26:58 +11:00
Robin Ward
127c13314a
We can use `avatar_template` here rather than recreating the logic
2017-10-06 14:02:43 -04:00
Neil Lalonde
7ed522c890
Version bump to v1.9.0.beta12
2017-10-06 11:28:49 -04:00
Régis Hanol
3bdd8f57c1
FIX: invited staged users would sometimes not get notified of replies
2017-10-06 16:37:28 +02:00
Gerhard Schlager
1477a0e910
Adds a rake task for refreshing posts received via email
...
This is useful when the email_reply_trimmer gem was updated and you want to apply those changes to existing posts.
2017-10-06 14:29:11 +02:00
Guo Xiang Tan
4552840e54
REFACTOR: DRY update code that uses duplicated logic.
2017-10-06 14:33:38 +08:00
Sam
70bb2aa426
FEATURE: allow specifying s3 config via globals
...
This refactors handling of s3 so it can be specified via GlobalSetting
This means that in a multisite environment you can configure s3 uploads
without actual sites knowing credentials in s3
It is a critical setting for situations where assets are mirrored to s3.
2017-10-06 16:20:01 +11:00
Guo Xiang Tan
4ba5e678d8
Require dependencies to enable live reload in dev for Sidekiq.
2017-10-06 11:39:00 +08:00
Robin Ward
0c84352386
Add support for transformations
2017-10-05 16:24:58 -04:00
Robin Ward
07d04aba1d
Support `{{unless}}` in virtual dom templates
2017-10-05 14:35:07 -04:00
Guo Xiang Tan
b2127600fb
Remove use of concurrent timer for Redis failover.
...
* Uses the same logic for Postgres failover.
2017-10-05 15:57:08 +08:00
Neil Lalonde
f5a2ed99b0
FIX: deleting category background images sometimes has no effect
2017-10-04 17:04:37 -04:00
Robin Ward
051b49efdb
FIX: Properly encode string literals in hbs compiler
2017-10-04 15:53:06 -04:00
Neil Lalonde
ddbd1d5ab8
allow regex options on username site settings
2017-10-04 15:08:51 -04:00
Neil Lalonde
c29334cf23
FEATURE: the hide_email_address_taken setting works with the change email address form in user preferences
2017-10-04 11:41:25 -04:00
Sam
a4d4db4f0c
PERF: code not correctly caching git commands
...
Every check for Discourse version could result in shelling out.
2017-10-04 14:22:38 +11:00
Kyle Zhao
0342324b47
FEATURE: support regex in rake post:remap ( #5201 )
2017-10-04 11:47:53 +11:00
Gerhard Schlager
9ff1c23a38
fix typo
2017-10-04 00:01:33 +02:00
Gerhard Schlager
7f50380221
FIX: respect email domain whitelist/blacklist when creating staged users
2017-10-03 16:36:08 +02:00
Gerhard Schlager
76706f9144
FIX: don't create staged users when incoming email is rejected
...
FIX: don't send subscription mail to new users
2017-10-03 16:36:08 +02:00
Sam
5b96463c40
in production there is no cached it seems
2017-10-03 18:27:09 +11:00
Sam
ac01885b60
FEATURE: rake tasks for uploading assets to S3
...
This opens the door to serving application.js and so on from s3.
Also updates s3 gem for some tagging support
2017-10-03 18:00:53 +11:00
Guo Xiang Tan
3e53dbcade
UX: Only include tag hashtag postfix when necessary.
...
https://meta.discourse.org/t/links-to-tags-not-working-in-final-post-unless-autocompleted/69884/6?u=tgxworld
2017-10-03 13:54:50 +08:00
Robin Ward
823936ca9c
A plugin API to catch exceptions
2017-10-02 12:05:12 -04:00
Régis Hanol
47e79570cc
FIX: frequent posters wasn't displaying the correct information
2017-10-02 17:47:04 +02:00
OsamaSayegh
79f3d299a1
Don't allow category definition topics to be converted to PMs ( #5216 )
2017-10-02 10:04:58 +02:00
Arpit Jalan
df09599531
FIX: use different method name for topic rake task
...
https://kevinjalbert.com/defined_methods-in-rake-tasks-you-re-gonna-have-a-bad-time/
cc @gschlager
2017-09-29 22:47:03 +05:30
Robin Ward
00b190af75
Revert "A safe way to create class variables in a multisite environment."
...
The approach taken by this interface was flawed. We need a better
solution.
2017-09-29 11:06:12 -04:00
Robin Ward
0caf6a0f7d
Support for HTML values in widget hbs templates
2017-09-29 09:56:14 -04:00
Sam
f6fdc1ebe8
FEATURE: flexible crawler detection
...
You can use the crawler user agents site setting to amend what user agents
are considered crawlers based on a string match in the user agent
Also improves performance of crawler detection slightly
2017-09-29 12:31:50 +10:00
Robin Ward
df81d109e5
The ability to attach `attrs` when embedding widgets
2017-09-28 16:08:43 -04:00
Neil Lalonde
502f910eb5
Version bump to v1.9.0.beta11
2017-09-28 15:27:46 -04:00
Robin Ward
e980322ed6
Allow hbs widgets to access their parent state
2017-09-28 15:19:44 -04:00
Robin Ward
34f98f362f
Add a plugin hook to specify a class on the body of the document
2017-09-28 13:17:09 -04:00
Robin Ward
07e84a3afa
FIX: Hack our title retriever so that it parses YouTube URLs
2017-09-28 09:30:22 -04:00
OsamaSayegh
ab68379abb
Use `PostDestroyer` to delete topics when performing bulk operation ( #5202 )
...
* Use `PostDestroyer` to delete topics when performing bulk operation
This PR should fix this bug: https://meta.discourse.org/t/bulk-deletion-of-topics-not-logged/50407?u=osama
* failing test
2017-09-28 14:22:49 +02:00
Sam
8ecf313a81
FIX: correctly raise errors when downloads fail
...
This corrects an issue where we are hitting Gravatar for 404 over and over
Also ensures file download properly reports errors
2017-09-28 16:35:43 +10:00
Guo Xiang Tan
426d2178c3
Fix undefined variable in `TopicCreator`.
2017-09-28 12:25:42 +08:00
Guo Xiang Tan
3e6bf38394
Merge pull request #5207 from tgxworld/try_travis_fix
...
Fix randomly failing test.
2017-09-28 10:56:05 +08:00
Guo Xiang Tan
d4388f54a2
FIX: Use exact patht to ensure we always redirect with the right format.
2017-09-28 10:29:41 +08:00
Sam
b80320da5e
no verbose logging for failed downloads of gravatars
2017-09-28 11:32:26 +10:00
Régis Hanol
165b388158
fix indentation
2017-09-28 01:07:43 +02:00
Régis Hanol
3a75242c38
add more logs to pull hotlinked images
2017-09-28 01:00:13 +02:00
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