Sam
342ef5f81a
FEATURE: out-of-the-box dark/light user selectable themes
2017-05-03 11:31:33 -04:00
Arpit Jalan
86f1cc8c92
FIX: don't apply max_emails_per_day_per_user on critical emails
2017-05-03 17:07:39 +05:30
Guo Xiang Tan
982e3d04f6
PERF: Allow memory to be freed instead of fetching all the objects into memory at once.
...
```
MemoryProfiler.report do
Jobs::UserEmail.new.execute(type: :mailing_list, user_id: user.id)
end.pretty_print
```
Before:
```
Total allocated: 180096119 bytes (1962025 objects)
Total retained: 2194 bytes (16 objects)
allocated memory by gem
-----------------------------------
66979096 activerecord-4.2.8
43507184 nokogiri-1.7.1
43365188 mail-2.6.4
5960201 activesupport-4.2.8
5056267 discourse/lib
4835284 rack-mini-profiler-0.10.1
3825817 arel-6.0.4
2186088 i18n-0.8.1
1719330 discourse/app
```
After:
```
Total allocated: 161935975 bytes (1473940 objects)
Total retained: 2234 bytes (17 objects)
allocated memory by gem
-----------------------------------
45430264 activerecord-4.2.8
43568627 nokogiri-1.7.1
43430754 mail-2.6.4
11233878 rack-mini-profiler-0.10.1
5260825 activesupport-4.2.8
5054491 discourse/lib
2186088 i18n-0.8.1
1822494 arel-6.0.4
```
2017-05-03 17:01:57 +08:00
Arpit Jalan
cdce060a38
FIX: don't apply max emails per day per user to forgot password
2017-05-03 14:02:37 +05:30
Sam
946f25098f
Refactor theme fields so they support custom theme defined vars
...
This paves the way to allowing themes to specify uploads and so on.
2017-05-02 16:02:14 -04:00
Arpit Jalan
77a8cae094
FIX: rescue specific errors on invite failure
2017-05-02 15:13:33 +05:30
Jeff Atwood
a4815047c0
purge `scheduler_stats` every 1 month instead of 3
2017-04-28 15:05:15 -07:00
Robin Ward
f05f1a24d3
Change Anniversary badge to be multiple grant, once per year
2017-04-28 14:22:54 -04:00
Guo Xiang Tan
59b906ab0d
FEATURE: Disable minimum post length check when in PM with non human users.
...
https://meta.discourse.org/t/discourse-narrative-bot-beta-feedback/58621/65?u=tgxworld
2017-04-27 16:00:22 +08:00
Robin Ward
bf9c4a7828
FEATURE: secure_email site setting to prevent data going out in email
2017-04-26 13:05:56 -04:00
Guo Xiang Tan
1f6418f907
Track error message in `SchedulerStats`.
2017-04-26 01:34:25 +08:00
Arpit Jalan
aeead60036
FIX: make TopicEmbed trashable
2017-04-25 18:40:39 +05:30
Régis Hanol
0d66529d2b
PostReply doesn't have a primary key, so no luck here
2017-04-24 23:14:01 +02:00
Régis Hanol
1787c45b38
PERF: don't load all replies in memory when moving posts
2017-04-24 23:00:32 +02:00
Régis Hanol
8fe0bbb238
REFACTOR: improve Notification.ensure_consistency SQL query readability
2017-04-24 23:00:27 +02:00
Régis Hanol
301dd139ae
PERF: faster Group.refresh_automatic_group & Group.ensure_consistency
2017-04-24 23:00:21 +02:00
Régis Hanol
3d406b047c
PERF: much faster Badge.ensure_consistency
2017-04-24 22:59:49 +02:00
cpradio
20c2c66dd4
FEATURE: Add normal as a preference for topic subscription state when replying to a topic
2017-04-20 22:33:10 -04:00
Sam
aec73d4003
correct the spec again
2017-04-20 17:41:35 -04:00
Sam
dcf9459b7c
staff should track
2017-04-20 17:32:05 -04:00
Sam
5365973c0a
FIX: detection of error changed, so you can clear errors
2017-04-20 16:55:18 -04:00
Sam
7a9eee1b71
FEATURE: default notification level for group messages
...
also fixes it so staff can amend other user's group notification level
2017-04-20 15:47:35 -04:00
Guo Xiang Tan
2af1b9e93c
Add time out when optimizing images.
2017-04-20 15:21:43 +08:00
Sam
7eabb90b71
FEATURE: added error messages for bad theme CSS / JS
2017-04-19 16:46:46 -04:00
Arpit Jalan
5fa5c18a48
use notification_levels methods for specifying normal notification level
2017-04-19 16:17:24 +05:30
cpradio
2dccaff25d
FIX: Correct behavior of auto-notification state updating to exclude when the topic already has a state of normal/muted
2017-04-19 06:29:35 -04:00
Sam
0a67d859d5
correct watcher so it handles color scheme changes correctly
2017-04-18 16:48:15 -04:00
Arpit Jalan
1c23aedccf
FIX: always send password reset email when accepting invite if password is not set
2017-04-18 14:37:06 +05:30
Guo Xiang Tan
60f1169077
REFACTOR: Reduce repetition in code.
2017-04-18 17:03:49 +08:00
Arpit Jalan
8dea70d354
Revert "FIX: User website allows new TLDs"
2017-04-18 13:18:51 +05:30
Rafael dos Santos Silva
4289dbe3e5
FIX: User website allows new TLDs
2017-04-18 00:30:37 -03:00
Sam
3ccd5eacb4
prefer multiline \A \z
2017-04-17 16:57:37 -04:00
Sam
86904e9cd6
FIX: better error handling for theme import
2017-04-17 16:55:53 -04:00
Sam
5e3a0846f7
FEATURE: allow themes to share color schemes
2017-04-17 15:56:24 -04:00
jloh
5f47603b07
FIX: increase host_must_be_valid regex for .technology TLD
...
.technology is 11 chars long and wasn't being matched previously
2017-04-15 21:06:51 +10:00
Arpit Jalan
0954367bf4
FIX: send activation email when accepting invite if password is set
2017-04-15 14:59:50 +05:30
Guo Xiang Tan
04016f0dec
Support Ruby 2.4.
2017-04-15 12:29:00 +08:00
cpradio
4dc4c5bebc
FIX: Update auto_notification to also update the subscription state when replying if the current state is less than the state being requested
2017-04-14 15:44:42 -04:00
Sam
def7348777
FIX: display custom sections with default theme
...
also cleans up mechanism for previewing themes, cleans up naming,
gets rid of old janky "preview_style", secures local theme key
2017-04-14 13:35:12 -04:00
Sam
809fbb25ce
FIX: blanking theme field was not properly removing it
2017-04-13 17:24:15 -04:00
Guo Xiang Tan
3d76fb9c2c
FIX: Don't show category options for reports that can't be scoped to a category.
2017-04-13 17:10:55 +08:00
Guo Xiang Tan
bda20cc44a
FIX: Don't enqueue topic status update job if topic is deleted.
2017-04-13 12:02:35 +08:00
Guo Xiang Tan
72c16967e6
FIX: Check for reserved usernames before hitting DB.
2017-04-13 11:32:20 +08:00
Guo Xiang Tan
57788200ec
REFACTOR: Add `User.reserved_username?`.
2017-04-13 10:44:26 +08:00
Neil Lalonde
8395569b05
FIX: Topic.similar_to error when Search is not loaded
2017-04-12 14:48:30 -04:00
Sam
a7ed8a0310
correct theme importer to support embedded.scss
2017-04-12 11:30:16 -04:00
Sam
a3e8c3cd7b
FEATURE: Native theme support
...
This feature introduces the concept of themes. Themes are an evolution
of site customizations.
Themes introduce two very big conceptual changes:
- A theme may include other "child themes", children can include grand
children and so on.
- A theme may specify a color scheme
The change does away with the idea of "enabled" color schemes.
It also adds a bunch of big niceties like
- You can source a theme from a git repo
- History for themes is much improved
- You can only have a single enabled theme. Themes can be selected by
users, if you opt for it.
On a technical level this change comes with a whole bunch of goodies
- All CSS is now compiled using a custom pipeline that uses libsass
see /lib/stylesheet
- There is a single pipeline for css compilation (in the past we used
one for customizations and another one for the rest of the app
- The stylesheet pipeline is now divorced of sprockets, there is no
reliance on sprockets for CSS bundling
- CSS is generated with source maps everywhere (including themes) this
makes debugging much easier
- Our "live reloader" is smarter and avoid a flash of unstyled content
we run a file watcher in "puma" in dev so you no longer need to run
rake autospec to watch for CSS changes
2017-04-12 10:53:49 -04:00
Dean Taylor
1a9afa976d
FEATURE: Add AWS S3 EU (London) "eu-west-2" region
2017-04-12 10:38:17 -04:00
Guo Xiang Tan
7cb389a235
Add `DiscourseEvent` trigger when user's topic notification level changes.
2017-04-12 11:56:50 +08:00
Guo Xiang Tan
66a7b0c30b
FIX: Add web hook `DiscourseEvent`s in initializer.
2017-04-12 11:55:49 +08:00
Arpit Jalan
8fb41bf5fb
FIX: update timestamp when resending invite
2017-04-11 20:02:32 +05:30
Guo Xiang Tan
73180c8a19
FIX: Private message can be set to publish in the future.
2017-04-11 20:44:25 +08:00
Guo Xiang Tan
fad04aad6c
Missing association.
2017-04-07 17:05:58 +08:00
Guo Xiang Tan
ae1d6e7421
Fix incorrect method usage.
2017-04-07 15:52:08 +08:00
Guo Xiang Tan
71501feaf3
Improve validation for `TopicStatusUpdate`.
2017-04-07 15:32:00 +08:00
Guo Xiang Tan
0d67b507dc
Merge pull request #4788 from davidtaylorhq/user_seen_event
...
Add a user_seen DiscourseEvent for plugins to hook into
2017-04-06 12:32:16 +08:00
David Rodríguez
934bff43d9
FIX: Copy post actions when moving a topic.
2017-04-06 12:16:22 +08:00
Guo Xiang Tan
5943543ec3
FIX: Improve checks for non-human users.
2017-04-06 11:29:34 +08:00
Guo Xiang Tan
f4758a4c4d
FEATURE: Allow admins to schedule a topic to be published in the future.
2017-04-04 11:16:05 +08:00
Guo Xiang Tan
5cf75c67df
FIX: Callback `undefined` error when topic has been deleted.
2017-04-03 09:06:15 +08:00
David Taylor
03373a0e84
Add a user_seen DiscourseEvent for plugins to hook into
2017-03-31 23:30:59 +01:00
Robin Ward
fc7fa4c0ad
Rename "Rookie of the Month" to "New User of the Month"
2017-03-31 16:30:30 -04:00
Robin Ward
893e93dfbe
New badge, Rookie of the Month, for two new high quality users.
2017-03-31 15:06:31 -04:00
Arpit Jalan
2418daeb63
FIX: check if post exists in topic
2017-03-31 18:02:14 +05:30
Guo Xiang Tan
ed577fbff8
FEATURE: Pause a topic instead of permanently closing when flag threshold is reached.
2017-03-31 14:35:05 +08:00
Guo Xiang Tan
34b7bee568
FEATURE: Allow admin to auto reopen at topic.
...
* This commit also introduces a `TopicStatusUpdate`
model to support other forms of deferred topic
status update in the future.
2017-03-31 11:14:18 +08:00
Robin Ward
14410b71fb
Convert server side paths to use `/u/`
2017-03-30 10:23:24 -04:00
Robin Ward
45a257815a
Convert front end paths from `/users/` to `/u/`
2017-03-30 10:23:24 -04:00
Guo Xiang Tan
99abbc2e2d
UX: Order custom emojis by name.
2017-03-30 13:24:18 +08:00
Arpit Jalan
4812417192
FIX: do not add user to group based on email domain unless email is confirmed
2017-03-28 15:02:40 +05:30
Robin Ward
27a73c73f9
FIX: Error when calculating geometric mean of 0 for read timings
2017-03-27 12:45:34 -04:00
Arpit Jalan
3378e2d49f
FIX: update topic fancy title when updating category name
2017-03-26 12:29:53 +05:30
Régis Hanol
747f4812e4
fix custom emoji support when using subfolder
2017-03-24 02:09:39 +01:00
Neil Lalonde
11ce73b8ed
FEATURE: category setting for default top period
2017-03-22 16:54:18 -04:00
Arpit Jalan
295cf8839e
FIX: better error message when invited user already exists
2017-03-22 13:55:28 +05:30
Guo Xiang Tan
e8fc8f0bb6
Update annotations.
2017-03-22 14:26:53 +08:00
Arpit Jalan
521c88fe58
FIX: enqueue activation email for invited user that has password set
2017-03-20 17:13:21 +05:30
Guo Xiang Tan
ddc8abf9d8
Fix broken optimize image command.
2017-03-20 15:07:38 +08:00
Guo Xiang Tan
6057e17ae7
Fix weird test failure.
2017-03-20 12:06:37 +08:00
Guo Xiang Tan
a567e6bec9
FIX: Publish notification state in `after_commit` hook.
...
`after_save` is still wrapped in a transaction and
we were getting intermittent failures with notifications
state not being published.
2017-03-20 11:38:34 +08:00
Guo Xiang Tan
e7c972ac89
FIX: Don't use backticks that take in inputs.
2017-03-17 15:33:51 +08:00
Neil Lalonde
ad8a579c79
UX: banner enabled/disabled posts should be small posts, not full-size posts
2017-03-16 17:31:37 -04:00
Neil Lalonde
22f197c153
FEATURE: subcategory list style: boxes with featured topics
2017-03-16 11:54:45 -04:00
Robin Ward
fd591257a8
Merge pull request #4759 from kennym/support-ports-for-ip-addresses-in-embedding
...
FIX: Allow ports for embed host IPs
2017-03-16 11:23:42 -04:00
Guo Xiang Tan
9f299b6842
Use `after_commit` since `after_save` runs within the transaction as well.
2017-03-16 16:02:34 +08:00
Guo Xiang Tan
299b92b4d7
Fix broken user created event trigger.
2017-03-16 15:36:27 +08:00
Guo Xiang Tan
5169ef8814
Fix broken specs.
2017-03-16 15:05:28 +08:00
Guo Xiang Tan
bf78c228f4
FIX: User created web hook being enqueued before record has been saved.
...
* Improve web hook tests as well.
2017-03-16 14:44:09 +08:00
Erick Guan
cfbfea0596
FEATURE: Allow easier customization to the web hook event serialization.
2017-03-16 10:09:05 +08:00
Kenny Meyer
ae957bca25
Allow ports for embed host IPs
2017-03-15 18:16:34 -03:00
Guo Xiang Tan
58de40154d
Bump `EMOJI_VERSION` to clear cache.
2017-03-14 15:31:01 +08:00
Guo Xiang Tan
1a7e954e09
FIX: Store custom emojis as uploads.
...
* Depending on a hardcoded directory was a flawed design
which made it impossible to debug when custom emojis go
missing.
2017-03-14 13:07:18 +08:00
Neil Lalonde
6d7e968e30
FEATURE: box-style rendering of sub-categories
2017-03-13 15:25:52 -04:00
Sam
64680286f4
correct logic, so revalidation is reset
...
correct test so it can run at any point
2017-03-13 10:47:43 -04:00
Sam
ef24fd54ba
FEATUE: automatically validate token is stored in redis
...
This ensures we have some handling for redis flushall
We attempt to recover our in-memory session token once every 30 seconds
Code is careful to only set the token if it is nil, to allow for manual
cycling to remain safe if needed
2017-03-13 10:19:02 -04:00
Guo Xiang Tan
4d4a1a1552
Add scope for human users.
2017-03-11 14:25:09 +08:00
Guo Xiang Tan
eb6ef0311e
Hide special users from about pages.
2017-03-10 15:33:31 +08:00
Sam
3032aa7db9
PERF: avoid looking globals from providers after first call
2017-03-09 18:00:55 -05:00
Sam
99f4d5082b
FIX: Improve token rotation and increase logging
...
- avoid access denied on bad cookie, instead just nuke it
- avoid marking a token unseen for first minute post rotation
- log path in user auth token logs
2017-03-07 13:27:43 -05:00
Sam
9f8cfee450
remove dupe code, correct logging logic
2017-03-07 13:27:43 -05:00