Sam
c7a0ced656
FIX: remove facebook_request_extra_profile_details
...
Since this no longer works
2018-04-26 14:14:35 +10:00
Sam
98d142b1c1
also causes test failure, removing
2018-04-26 13:48:44 +10:00
Sam
0a82d739f9
unofficialize plugin
2018-04-26 13:23:14 +10:00
Sam
4ded5e18e6
add more official plugins
2018-04-26 12:33:07 +10:00
Robin Ward
a5172a37e0
Allow staff members to enable safe mode, even if disabled
2018-04-25 11:49:57 -04:00
Gerhard Schlager
afe1a2793d
Mark discourse-signatures plugin as official
2018-04-25 11:58:39 +02:00
Guo Xiang Tan
0e38481d6d
Add docker_manager to official plugin list.
2018-04-25 13:02:50 +08:00
Sam
aad7df2a1b
correct return value
2018-04-25 08:44:07 +10:00
Neil Lalonde
18c27883e9
Version bump to v2.0.0.beta7
2018-04-24 11:13:52 -04:00
Sam
035312d501
FIX: specify path for dosp cookie
2018-04-24 11:07:58 -04:00
Guo Xiang Tan
bf6e548692
Remove plugin that is internal to us.
2018-04-24 11:07:49 -04:00
Joffrey JAFFEUX
42a848f88f
linting
2018-04-23 10:26:33 +02:00
Régis Hanol
69c32a2651
Refresh site settings after a remap
2018-04-23 09:57:13 +02:00
Guo Xiang Tan
c148500d51
FIX: Deadlock when topic with auto close topic timers exceeds `auto_close_topics_post_count`.
2018-04-23 13:34:24 +08:00
Sam
6a0aeae91b
DEV: clean up JavaScript testing
...
- Unify runner for autospec and qunit:test
- Report on slowest 30 tests
- Use async await instead of promise tower
2018-04-23 14:43:04 +10:00
Sam
ded84a4b58
PERF: improve performance once logged in rate limiter hits
...
If "logged in" is being forced anonymous on certain routes, trigger
the protection for any requests that spend 50ms queueing
This means that ...
1. You need to trip it by having 3 requests take longer than 1 second in 10 second interval
2. Once tripped, if your route is still spending 50m queueuing it will continue to be protected
This means that site will continue to function with almost no delays while it is scaling up to handle the new load
2018-04-23 11:55:25 +10:00
Guo Xiang Tan
80847d83a8
Mark `discourse-voting` and `discourse-staff-notes` as official.
2018-04-23 09:26:13 +08:00
Sam
86c1457c40
correct typo
2018-04-23 10:55:38 +10:00
Neil Lalonde
70f2c5d3fd
FEATURE: move staff tags setting to tag group settings
2018-04-20 15:34:23 -04:00
Robin Ward
cfcdc4b420
Output when a locale is invalid
2018-04-20 15:29:18 -04:00
Guo Xiang Tan
45fe5dc793
`$redis.client` -> `$redis._client`.
...
See c239abb43c
2018-04-20 13:01:17 +08:00
Arpit Jalan
91bf10bd12
FIX: create upload record for exported csv files
2018-04-20 00:27:49 +05:30
Régis Hanol
2b0e505121
Extract signatures from emails sent with Newton
2018-04-19 12:39:55 +02:00
Neil Lalonde
5b93d69939
FIX: error when non-staff user edits their topic after a hidden tag is added to it
2018-04-18 12:51:25 -04:00
Sam
4810ce3607
correct regression
2018-04-18 21:04:08 +10:00
Sam
59cd7894d9
FEATURE: if site is under extreme load show anon view
...
If a particular path is being hit extremely hard by logged on users,
revert to anonymous cached view.
This will only come into effect if 3 requests queue for longer than 2 seconds
on a *single* path.
This can happen if a URL is shared with the entire forum base and everyone
is logged on
2018-04-18 16:58:57 +10:00
Arpit Jalan
3566c6f02b
FIX: strip emoji string from slug
2018-04-18 11:32:32 +05:30
Neil Lalonde
8fc1289172
move topic excerpt code to one method to DRY it up and for extensibility
2018-04-17 15:08:21 -04:00
Neil Lalonde
b87fa6d749
FIX: blacklisted crawlers could get through by omitting the accept header
2018-04-17 12:39:30 -04:00
Régis Hanol
2585ada5ca
FIX: don't allow spaces in 'reply_by_email_address' site setting
2018-04-17 17:08:12 +02:00
Guo Xiang Tan
ad4c25e004
PERF: Only save site setting if values have been changed.
2018-04-17 21:07:39 +08:00
Sam
9980f18d86
FEATURE: track request queueing as early as possible
2018-04-17 18:06:17 +10:00
Guo Xiang Tan
1b9a38c5e2
FIX: Incorrect formatter used when logstash formatter is enabled.
2018-04-17 12:07:52 +08:00
Régis Hanol
001b0710c7
FIX: don't add diff classes more than once
2018-04-16 15:41:45 +02:00
Arpit Jalan
c74c933996
SECURITY: escape HTML entities from topic title
2018-04-15 18:44:28 +05:30
Arpit Jalan
0183656631
FIX: verify filtered tags when checking for category minimum required tags
2018-04-14 23:20:43 +05:30
Régis Hanol
fe32733a57
extract signatures from emails sent using Zimbra
2018-04-13 19:04:27 +02:00
Neil Lalonde
e8d35653ae
Version bump to v2.0.0.beta6
2018-04-13 10:47:01 -04:00
Régis Hanol
a0a06492d8
FIX: make get_hostname more lenient to user input
2018-04-12 17:09:09 +02:00
Régis Hanol
3c8b43bb01
FIX: non-oneboxed links on separate lines should stay on separate lines
2018-04-11 21:33:45 +02:00
Sam
f0803e9611
sleep here is a better fit
2018-04-11 16:46:27 +10:00
Sam
be0366d587
add debugging for docker test
2018-04-11 16:39:39 +10:00
Arpit Jalan
48d43b33cc
add client side validation for category minimum_required_tags
2018-04-11 07:17:52 +05:30
Arpit Jalan
9ca6ebe8fe
FEATURE: enforce tagging on categories
2018-04-11 07:15:24 +05:30
Gerhard Schlager
64f2086cca
rake task should allow reordering posts of single topic
2018-04-10 13:52:08 +02:00
Joffrey JAFFEUX
45f657336e
FEATURE: adds support for loading existing core asset in pretty text
2018-04-10 08:37:16 +02:00
Guo Xiang Tan
874003b7b1
FIX: Group can't be deleted if certain users are demoted.
2018-04-10 14:19:35 +08:00
Sam
afaeb20f27
FEATURE: Add option to have sso synchronize group membership
...
In some cases add_groups and remove_groups is too much work, some sites
may wish to simply synchronize group membership based on a list.
When sso_overrides_groups is on all not automatic group membership is
sourced from SSO. Note if you omit to specify groups, they will be cleared
out.
2018-04-10 13:17:23 +10:00
Arpit Jalan
adb93716ca
FIX: rake task should rebake posts in descending ID order
2018-04-10 00:18:49 +05:30
Gerhard Schlager
62aacce8f4
FEATURE: Notify flaggers when flagged post is edited by author
2018-04-09 16:45:33 +02:00
Arpit Jalan
cd66dd1404
fix admin rake task
2018-04-07 16:57:17 +05:30
Neil Lalonde
f6cfff3cea
UX: user preferences allows users to choose which title to use from their badges and groups
2018-04-06 14:34:36 -04:00
jose-hms
b87205831b
FEATURE: Staged user moderation ( #5721 )
2018-04-06 11:41:25 +02:00
Angus McLeod
fa7ddf7238
Add wizard_js to translations that can be overridden from a plugin
2018-04-06 11:34:25 +02:00
Guo Xiang Tan
2ddcdf8704
UX: Add an icon to indicate if a plugin is official.
...
https://meta.discourse.org/t/improving-admin-plugins/84585
2018-04-06 10:54:58 +08:00
Guo Xiang Tan
5da7c2a4ad
FIX: Restorer wasn't rolling back if restore fails.
...
* This only applies to backup file taken with
pg_dump 10.3+ and pg_dump 9.5.12+.
2018-04-06 09:43:32 +08:00
Robin Ward
e27edfe597
FIX: Don't give two errors about not being able to post links
2018-04-05 12:54:48 -04:00
Gerhard Schlager
35efdb39b3
FEATURE: Show the current reply count of the flagged post
2018-04-05 14:03:02 +02:00
Gerhard Schlager
f2d00e5eff
FEATURE: Use Message-ID for detecting email replies to group
...
Ignores the site setting "find_related_post_with_key" and always tries to honor the `In-Reply-To` and `References` header for emails sent to a group.
The senders email address must be included in the `To` or `CC` header of a previous email sent to the group and the `Message-ID` of that email must be included in the current email's `In-Reply-To` or `References` header.
2018-04-05 11:00:38 +02:00
Arpit Jalan
10759677db
FIX: when uploading image newuser restrictions should not apply to staff
2018-04-05 09:51:03 +05:30
Sam
0d6cfe45bf
tl1 should be enough for grant admin. tl4 is hard to revert
2018-04-05 10:53:11 +10:00
Guo Xiang Tan
4f7f733ab0
Upgrade docker:test to use PG 10.
2018-04-04 10:28:23 +08:00
Sam
f1ef46d7b7
FIX: unable to import private themes due to key checking
2018-04-03 16:11:03 +10:00
Guo Xiang Tan
142571bba0
Remove use of `rescue nil`.
...
* `rescue nil` is a really bad pattern to use in our code base.
We should rescue errors that we expect the code to throw and
not rescue everything because we're unsure of what errors the
code would throw. This would reduce the amount of pain we face
when debugging why something isn't working as expexted. I've
been bitten countless of times by errors being swallowed as a
result during debugging sessions.
2018-04-02 13:52:51 +08:00
Blake Erickson
31ce955487
Add destroy rake task
...
Adds several rake tasks to delete users, topics, pm's and site stats so
that you can have a fresh site but maintain site settings and category
structure.
2018-03-30 18:32:21 -06:00
Régis Hanol
a0386655a6
Add support to elide content from ProtonMail emails
2018-03-30 10:41:32 +02:00
Gerhard Schlager
cf9965fd54
Add rake task for reordering posts by creation_date
2018-03-29 14:42:41 +02:00
Robin Ward
eab64710ff
FIX: Shared draft performance fix + missing avatars
2018-03-28 16:11:43 -04:00
Robin Ward
4b5977aa6a
Revert "PERF: Don't join on shared drafts unless you have to"
...
This reverts commit efedd9745f
.
2018-03-28 15:35:13 -04:00
Robin Ward
a8f211bd41
Extensibility for custom staff check
2018-03-28 14:48:14 -04:00
Robin Ward
efedd9745f
PERF: Don't join on shared drafts unless you have to
2018-03-28 13:57:39 -04:00
Régis Hanol
9e7d5a3cdf
FIX: 'uploads:recover_from_tombstone' rake task wasn't restoring attachments
2018-03-28 15:51:47 +02:00
Guo Xiang Tan
ee69d58a59
FIX: Tests could get stucked in infinite loop if it fails to resolve IP of a hostname.
2018-03-28 14:49:05 +08:00
Neil Lalonde
7311023a52
Merge pull request #5700 from discourse/crawl-block
...
FEATURE: control web crawlers access with white/blacklist
2018-03-27 15:06:03 -04:00
Neil Lalonde
4d12ff2e8a
when writing cache, remove elements from the user agents list. also return a message and content type when blocking a crawler.
2018-03-27 13:44:14 -04:00
Gerhard Schlager
fcd352e089
FIX: Try fixing unparsable email addresses
...
The mail gem returns `UnstructuredField` when it fails to parse email addresses, but the `Receiver` always expects an `AddressList`.
2018-03-27 18:28:54 +02:00
Gerhard Schlager
b945a2dc39
Call `on_drop` only when tables/columns are dropped
2018-03-27 13:18:13 +11:00
Gerhard Schlager
4ad401bac5
Ignore delay when first migration was < 10min ago
2018-03-27 13:18:13 +11:00
Gerhard Schlager
19c5afc69d
Protect against accidental table renames
2018-03-27 13:18:13 +11:00
Neil Lalonde
f2c060bdf2
FEATURE: option for tags in a tag group to be visible only to staff
2018-03-26 17:05:09 -04:00
Robin Ward
f03b6bd8c9
FIX: Update `last_version_at` when publishing
2018-03-26 16:06:20 -04:00
Robin Ward
d4296f33ff
FIX: Publishing should update the public_version too
2018-03-26 15:46:25 -04:00
Neil Lalonde
09ea27ed89
Version bump to v2.0.0.beta5
2018-03-26 11:22:52 -04:00
Robin Ward
2b161a2391
FIX: Don't include shared drafts in global latest
2018-03-26 10:43:55 -04:00
Arpit Jalan
b75b6de982
FIX: respect nofollow settings for onebox links
2018-03-26 18:21:16 +05:30
Régis Hanol
c5c1d8e180
Add support for the '/p/:post_id' route on the client-side
2018-03-24 02:44:39 +01:00
Blake Erickson
9fdf139235
Add tests for Site Settings import/export
...
- extracted out site settings rake task to a class
- added tests for import and export of site settings
2018-03-23 14:55:17 -06:00
Arpit Jalan
17584bca5e
UX: wrap full-size Twitter onebox images in aspect-ratio
2018-03-23 18:25:04 +05:30
Arpit Jalan
9a184b355d
Merge pull request #5696 from techAPJ/instagram-aspect-image
...
UX: wrap instagram images with aspect ratio
2018-03-23 04:00:52 +05:30
Neil Lalonde
a84bb81ab5
only applies to get html requests
2018-03-22 17:57:44 -04:00
Robin Ward
c686ae8d8f
FIX: Ambiguous column name
2018-03-22 16:38:53 -04:00
Robin Ward
41fc8e32e2
FIX: N+1 query for shared drafts
2018-03-22 16:24:30 -04:00
Neil Lalonde
ced7e9a691
FEATURE: control which web crawlers can access using a whitelist or blacklist
2018-03-22 15:41:02 -04:00
Arpit Jalan
33c1aeb2ac
UX: wrap instagram images with aspect ratio
2018-03-22 21:35:10 +05:30
Joffrey JAFFEUX
e053697cfa
FEATURES: updates emojis and adds support for more women emojis!
2018-03-22 11:08:06 +01:00
Guo Xiang Tan
f3b402ffd5
UX: Allow users to filter members on group page.
...
* Only admins are allowed to filter users by email.
2018-03-22 14:02:41 +08:00
Arpit Jalan
d96c1058a2
FEATURE: add staff action log for 'restore topic'
2018-03-21 18:04:13 +05:30
Gerhard Schlager
eebe1d8c56
Allow delayed dropping and renaming of tables
2018-03-21 12:05:12 +01:00
Sam
6a3c8fe69c
FEATURE: protect against accidental column or table drops
...
Often we need to amend our schema, it is tempting to use
drop_table, rename_column and drop_column to amned schema
trouble though is that existing code that is running in production
can depend on the existance of previous schema leading to application
breaking until new code base is deployed.
The commit enforces new rules to ensure we can never drop tables or
columns in migrations and instead use Migration::ColumnDropper and
Migration::TableDropper to defer drop the db objects
2018-03-21 15:43:32 +11:00
Robin Ward
b9abd7dc9e
FEATURE: Shared Drafts
...
This feature can be enabled by choosing a destination for the
`shared drafts category` site setting.
* Staff members can create shared drafts, choosing a destination
category for the topic when it is published.
* Shared Drafts can be viewed in their category, or above the
topic list for the destination category where it will end up.
* When the shared draft is ready, it can be published to the
appropriate category by clicking a button on the topic view.
* When published, Drafts change their timestamps to the current
time, and any edits to the original post are removed.
2018-03-20 17:15:26 -04:00
Michael Brown
63a1e9b60a
backup restorer: tidy pg_dump schema portability logic, add test
2018-03-20 10:32:39 +08:00
Neil Lalonde
6ca71e1319
FIX: when creating a topic in a category that only allows tags from a tag group, don't allow creation of new tags
2018-03-19 11:42:10 -04:00
Vinoth Kannan
c5d26992d4
Prefer to use primary email for new user creation over other available emails
2018-03-19 17:10:35 +05:30
Guo Xiang Tan
ec57ca54b5
FEATURE: Admins should be able to view PMs of any group.
2018-03-19 14:12:01 +08:00
Guo Xiang Tan
52b9af10a1
PERF: PG queries for the `UserEmail#email` column was not using the index.
2018-03-19 11:31:14 +08:00
Guo Xiang Tan
da8e15f954
FIX: Restorer was not extracting the patch version in dump file.
2018-03-16 11:09:56 +08:00
Michael Brown
90291318eb
restorer: clarify logging
2018-03-15 12:14:08 -04:00
Vinoth Kannan
58bb3967e5
SECURITY: Oneboxer should escape the URL before processing
2018-03-15 19:57:55 +05:30
Guo Xiang Tan
a35227918f
UX: Display group topics in a topic list.
2018-03-15 11:37:55 +08:00
Régis Hanol
20ba54d536
FIX: extracting mail content from exchange emails
2018-03-14 22:02:43 +01:00
Robin Ward
135195363b
FIX: Not logging old post contents properly
2018-03-14 15:01:36 -04:00
Guo Xiang Tan
58b8ea4f41
Upgrade mail gem to remove dependency on mime-types.
...
* Use a EmailValidator.email_regexp for `Email.is_valid?`
check as we're seeing an increase in allocation when
parsing email addresses wih `Mail::Address`.
2018-03-14 14:37:55 +08:00
Neil Lalonde
6b13fbccc2
tag-choosers with everyTag should also be able to get more results
2018-03-13 17:17:16 -04:00
Neil Lalonde
58508e553d
FIX: tag input should not include tags you've already chosen in the search results
2018-03-13 17:17:16 -04:00
Robin Ward
c75fd34328
Allow Discourse installs to name the token cookie
2018-03-13 16:48:40 -04:00
Robin Ward
31a0c4a9be
FEATURE: Add `quote-modified` class if a quote has been modified
2018-03-13 13:41:06 -04:00
Arpit Jalan
7d375690c1
Merge pull request #5667 from techAPJ/pm-tags-page
...
FEATURE: replace PM tags dropdown with a dedicated tags page
2018-03-13 13:08:21 +05:30
Arpit Jalan
24338fbbe8
FEATURE: replace PM tags dropdown with a dedicated tags page
2018-03-13 13:06:58 +05:30
Guo Xiang Tan
a9713ca20b
REFACTOR: Always prefer to raise an error if record fails to save.
2018-03-13 12:01:01 +08:00
Guo Xiang Tan
2ad2ed2eb2
FIX: Couldn't move a topic into the uncategorized category.
2018-03-13 10:20:47 +08:00
Robin Ward
65ac80b014
FEATURE: Log Staff edits in Staff Action Logs
...
Why? Some edits by staff are not tracked. For example, during the grace
period, or via the flags/silence dialog.
If a staff member is editing someone else's post, it now goes into the
Staff Action Logs so it can be audited by other staff members.
2018-03-12 13:51:40 -04:00
Gerhard Schlager
d243b82fb3
FIX: Calculation of text length for <details> in excerpt was wrong
2018-03-12 16:55:23 +01:00
Guo Xiang Tan
5782a23a69
Allow `uploads:missing` to skip optimized image check.
2018-03-12 20:08:53 +08:00
Gerhard Schlager
ec3a2d2762
Stop retrying tests three times if qunit tests fail
...
Warming up the Rails server should be enough
2018-03-12 12:51:26 +01:00
Arpit Jalan
345b453ee1
optimize query for fetching PM created in previous hour
2018-03-12 16:40:17 +05:30
Sam
758b9a7dda
FEATURE: prototype of local theme directory watcher
...
(note this will be documented a bit late)
2018-03-12 18:36:06 +11:00
Arpit Jalan
3a35f459c7
optimize last pm log fetching
2018-03-11 09:34:08 +05:30
Arpit Jalan
f862122978
FIX: do not log personal message view if there exists a similar log in previous hour
2018-03-11 09:23:32 +05:30
Guo Xiang Tan
5ef75c9c61
Improve grep pattern in restorer.
2018-03-09 15:48:12 +08:00
Guo Xiang Tan
766b41d9f4
Fix version check in restorer.
2018-03-09 15:01:10 +08:00
Sam
800760e353
also watch CSS in unicorn on dev
2018-03-09 17:47:57 +11:00
Guo Xiang Tan
8fd47314d9
FIX: Restore process for dump taken with `pg_dump` 10.3+.
...
* Since we can no longer restore into a different schema,
we will move tables in the public schema into the backup schema
first before restoring the dump file which goes into the public
schema. The downside to this approach is that we will increase
the downtime experienced during the restore process. Downtime
would equal the duration of restoring the dump file.
2018-03-09 13:24:58 +08:00
Sam
39e679d3cb
FEATURE: allow themes to live in private git repos
...
This feature allows themes sourced from git to live on private
servers, it automatically generates key pairs.
2018-03-09 16:14:38 +11:00
Guo Xiang Tan
a89f3160a5
Add new config to ensure backup/restore connects to PG directly.
...
* In `pg_dump` 10.3+ and 9.5.12+, in
it does a `SELECT pg_catalog.set_config('search_path', '', false)`
which changes the state of the current connection. This is known
to be problematic with Pgbouncer which reuses connections. As such,
we'll always try to connect directly to PG directly during
the backup/restore process.
2018-03-09 10:28:03 +08:00
Sam
5b6e49ae1d
FEATURE: split out max diff to 2 settings
...
We trust staff + tl2 and up to perform edits in grace period.
Allow them significantly more edit room in grace period prior to storing
a revision.
editing_grace_period_max_diff_high_trust applies to users with tl2 and up.
So
tl0 / 1 : we store an extra revision if more than 100 chars change
tl2 and up : we store an extra revision if more than 400 chars change
We may tweak these numbers as we go.
2018-03-09 11:58:50 +11:00
Arpit Jalan
0c2be8b775
Merge pull request #5655 from techAPJ/pm-tags-dropdown
...
FEATURE: filter personal messages by tags
2018-03-08 16:30:38 +05:30
Arpit Jalan
a8149f8969
FIX: user should not be able to invite to PM if trust level requirment not met
...
FIX: when personal messages are disabled let user invite to a public topic
2018-03-08 14:59:04 +05:30
Arpit Jalan
c29660c8f1
FEATURE: filter personal messages by tags
2018-03-08 14:42:07 +05:30
Guo Xiang Tan
152f64a18b
Trigger is dropped along with the table.
2018-03-08 15:28:00 +08:00
Guo Xiang Tan
9dc72537e5
FIX: `TableMigrationHelper` didn't clean up after itself.
2018-03-08 15:10:05 +08:00
Neil Lalonde
a8f825d6a9
Version bump to v2.0.0.beta4
2018-03-07 15:18:26 -05:00
Sam
e162cd16b6
FEATURE: editing_grace_period_max_diff to force revisions in grace period
...
If a user performs a substantive edit of 20 chars or more during grace period
we will store a revision to track the change
This allows for better auditing of changes that happen during the grace period
2018-03-07 18:34:34 +11:00
Guo Xiang Tan
76e2b6c825
Add "discourse-assign" to the list of official plugins.
2018-03-06 21:45:37 +08:00
Guo Xiang Tan
7068b90c01
Merge pull request #5651 from tgxworld/live_update_group_messages
...
Live update group messages
2018-03-06 18:55:13 +08:00
Gerhard Schlager
832f0a9c4d
FIX: Typo prevented extraction of email signatures
2018-03-06 11:34:47 +01:00
Guo Xiang Tan
1365bab0d7
FEATURE: Live updates for user's messages page.
...
https://meta.discourse.org/t/group-inbox-messages-not-updated-for-new-posts/38189
2018-03-06 18:15:21 +08:00
Sam
0134e41286
FEATURE: detect when client thinks user is logged on but is not
...
This cleans up an error condition where UI thinks a user is logged on
but the user is not. If this happens user will be prompted to refresh.
2018-03-06 16:49:31 +11:00
Sam
f0d5f83424
FEATURE: limit assets less that non asset paths
...
By default assets can be requested up to 200 times per 10 seconds
from the app, this includes CSS and avatars
2018-03-06 15:20:39 +11:00
Robin Ward
17a615165c
FIX: Don't lock wiki posts when they're edited
2018-03-05 14:50:06 -05:00
Arpit Jalan
003b03d939
allow staff to delete user if posts are 5 or less irrespective of delete_user_max_post_age
2018-03-05 23:31:29 +05:30