Commit Graph

4218 Commits

Author SHA1 Message Date
Guo Xiang Tan 7ed9fbb415 FIX: Use default parameter in method. 2017-06-26 11:14:13 +09:00
Sam da5ccd2000 correctly hunt for console.log 2017-06-23 15:24:20 -04:00
Sam a5295591b8 FEATURE: post_process_cooked event 2017-06-23 14:35:46 -04:00
Arpit Jalan 03d7ec8777 FEATURE: new rake task to delete all likes 2017-06-23 22:30:01 +05:30
Sam 234694b50f Feature: CommonMark support
This adds the markdown.it engine to Discourse.
https://github.com/markdown-it/markdown-it

As the migration is going to take a while the new engine is default
disabled. To enable it you must change the hidden site setting:
enable_experimental_markdown_it.

This commit is a squash of many other commits, it also includes some
improvements to autospec (ability to run plugins), and a dev dependency
on the og gem for html normalization.
2017-06-23 12:01:33 -04:00
Joffrey JAFFEUX 7c68949e04 Emoji ordering
This commit uses
http://www.unicode.org/emoji/charts/emoji-ordering.html to generate an
automatic ordering of emojis. We also don't have to maintain a full
emoji list for groups but only sub sections.
2017-06-23 17:51:13 +02:00
Régis Hanol a9c0df0b58 FIX: always try to convert PNG to JPG when pasting an image 2017-06-23 12:13:48 +02:00
Régis Hanol b7e6620109 FIX: 'uploads:migrate_from_s3' rake task 2017-06-23 10:15:11 +02:00
Régis Hanol 94cee37edd FIX: uploads:recover_from_tombstone rake task 2017-06-22 17:00:05 +02:00
Régis Hanol 6e5c59e5ec FIX: image orientation wasn't properly working 2017-06-22 16:53:49 +02:00
Régis Hanol 66920cfafd Merge pull request #4938 from LeoMcA/ses-fix
FEATURE: setting to only use the key when finding the related post of…
2017-06-22 16:15:57 +02:00
Régis Hanol ca539854c8 FIX: use 'jpg' instead of 'jpe' extension for 'image/jpeg' content type 2017-06-22 12:53:56 +02:00
Guo Xiang Tan 80e348d226 PERF: Speed up slow tests in our test suite.
Before

```
Finished in 7 minutes 23 seconds (files took 4.15 seconds to load)
7145 examples, 0 failures, 10 pending
```

After

```
Finished in 6 minutes 12 seconds (files took 4.41 seconds to load)
7145 examples, 0 failures, 10 pending
```
2017-06-22 11:23:31 +09:00
Neil Lalonde 8fd915a11a Revert "FIX: add path to cookies so sessions on the same domain but different subfolders don't log each other out" 2017-06-21 16:18:24 -04:00
Robin Ward aaaa93c216 FIX: Full page search was removing advanced search terms 2017-06-21 15:51:15 -04:00
Arpit Jalan 6796de8bf2 FIX: replace site_name with email_prefix in subject when use_site_subject is true 2017-06-21 21:15:49 +05:30
Neil Lalonde 1b3501b39b FIX: discourse hub calls 2017-06-20 17:15:59 -04:00
Jakub Macina f87d32ac6d Add backend code for searching by filetypes. 2017-06-20 21:20:06 +02:00
Neil Lalonde 1716747810 FIX: add path to cookies so sessions on the same domain but different subfolders don't log each other out 2017-06-20 13:30:36 -04:00
Guo Xiang Tan 8dbe2c3ec4 FIX: Incorrect way to use Excon in `DiscourseHub`. 2017-06-20 08:32:45 +09:00
Jakub Macina bf002e0873 Add extraction of image_url for oneboxed images. Fix search by images filter name. 2017-06-19 15:18:02 +02:00
Leo McArdle 5e0efb3410 FEATURE: setting to only use the key when finding the related post of an email reply
this fixes email-in threading problems when using a SMTP server which modifies the message_id
header, like Amazon SES
2017-06-19 12:22:44 +01:00
Guo Xiang Tan 7ea288140d Allow multiple host when restricting Sidekiq queues. 2017-06-19 14:45:51 +09:00
Guo Xiang Tan 48fb19d9e4 Fix hash style. 2017-06-19 07:51:06 +09:00
Guo Xiang Tan 3d1a7a02f7 Fix typo. 2017-06-19 07:49:32 +09:00
Alberto Aguirre 170a554747 FIX: version check
api.discourse.org server apparently does not like GET
requests that have a port number in the headers Host entry

Additionally fix the actual GET query; it should use query
parameters not a body.
2017-06-18 04:56:15 -05:00
Guo Xiang Tan a6450f7377 REFACTOR: Allow `delete_removed_posts_after` SiteSetting to be bypassed. 2017-06-16 12:27:51 +09:00
Guo Xiang Tan d82dbd565b FIX: Remove dependency on `rest-client`. 2017-06-16 09:42:41 +09:00
Guo Xiang Tan b5ec241716 FIX: Validate interpolation keys used in translation overrides.
https://meta.discourse.org/t/discobot-translation-missing-error/64429/6?u=tgxworld
2017-06-16 08:54:48 +09:00
Robin Ward 7366f334b0 FIX: Try a GET for error code 409 too -- (Medium posts) 2017-06-15 15:09:59 -04:00
Sam bdb848b4f3 Split the theme_key so we extract the key from seq 2017-06-15 14:09:44 -04:00
Neil Lalonde eb9f306e64 FIX: fail to send email notification if post has img tag with no src attribute 2017-06-15 10:36:19 -04:00
Sam ac1f84d3e1 SECURITY: theme key should be an anon cache breaker 2017-06-15 09:36:27 -04:00
Guo Xiang Tan 8f48c20598 Merge pull request #4931 from jjaffeux/fixes-woman-shrugging-conversion
Fixes woman_shrugging name conversion
2017-06-15 15:52:28 +09:00
Joffrey JAFFEUX f1750be2be Fixes woman_shrugging name conversion 2017-06-15 08:26:29 +02:00
Guo Xiang Tan b70d4da858 FIX: Only invite admins when automatic backup fails. 2017-06-15 14:04:22 +08:00
Neil Lalonde b98a930364 Merge pull request #4896 from dmacjam/multiple-tags-logical-and-search
FEATURE: Advanced search supports logical AND of multiple tags
2017-06-14 14:39:23 -04:00
Joffrey JAFFEUX 95e1843d33 Improves native emoji conversion 2017-06-14 17:42:52 +02:00
Régis Hanol 1ceb64500f Merge pull request #4926 from jjaffeux/fixes-mouse-three
Uses computer_mouse as base name
2017-06-14 14:55:48 +02:00
Joffrey JAFFEUX 252c811dae Uses computer_mouse as base name 2017-06-14 11:10:09 +02:00
Régis Hanol 485de2fcc3 Merge pull request #4924 from jjaffeux/cook-toned
adds tones to woman_cook and man_cook
2017-06-14 09:25:48 +02:00
Régis Hanol 493ab9d10e Merge pull request #4923 from jjaffeux/fixes-automobile-emoji-not-displayed
Fixes automobile being an alias now
2017-06-14 09:25:10 +02:00
Joffrey JAFFEUX 44e152d750 adds tones to woman_cook and man_cook 2017-06-14 08:35:11 +02:00
Guo Xiang Tan f6060bfbf6 Invite admins to automatic backups failure topic.
https://meta.discourse.org/t/if-automatic-backup-fails-there-should-be-a-warning/64461
2017-06-14 15:01:11 +09:00
Joffrey JAFFEUX 03f3612884 Fixes automobile being an alias now 2017-06-14 07:50:36 +02:00
Guo Xiang Tan 5ce8d7a8c5 Log all errors during clean up as well. 2017-06-14 11:03:50 +09:00
Robin Ward 009f0921dc FEATURE: Whitelist hosts for internal crawling 2017-06-13 12:59:54 -04:00
Sam 826f332766 Merge pull request #4901 from jjaffeux/emoji-5.0
Emoji next
2017-06-13 11:12:41 -04:00
Régis Hanol 5d63a7f4a6 FIX: pull hotlinked images even when they have no extension 2017-06-13 13:27:05 +02:00
Régis Hanol 54e8fb0d89 FEATURE: new 'allow_staff_to_upload_any_file_in_pm' site setting 2017-06-12 22:41:29 +02:00
Robin Ward a3729b51eb FIX: Always allow the host the forum is hosted on 2017-06-12 13:22:51 -04:00
Neil Lalonde eaeae0ac31 Version bump to v1.9.0.beta2 2017-06-12 12:48:24 -04:00
Guo Xiang Tan eab3562864 Merge pull request #4905 from tgxworld/strip-zero-width-chars-from-search-term
FIX: Strip zero-width characters from search terms.
2017-06-12 18:01:02 +09:00
Guo Xiang Tan e888369f51 UX: Don't send emails for discobot notifications. 2017-06-12 17:00:27 +09:00
Jakub Macina 76712da166 Add backend code for searching posts with images. 2017-06-09 10:30:21 +02:00
Robin Ward 602e4d0da4 FIX: Return `nil` when the `reply_key` is missing 2017-06-08 14:28:48 -04:00
Jay Pfaffman 83110a1a81 FIX: allow tar to finish if files change during backup 2017-06-07 13:31:02 -07:00
Guo Xiang Tan 684b05f510 FIX: Strip zero-width characters from search terms. 2017-06-07 18:19:47 +09:00
Guo Xiang Tan d4d0aa8ca7 Minor fixes for https://github.com/discourse/discourse/pull/4845. 2017-06-07 10:03:19 +09:00
Guo Xiang Tan da736f70a4 Merge pull request #4845 from vinothkannans/download-onebox-images
FEATURE: pull onebox images
2017-06-07 09:55:04 +09:00
Robin Ward 0de5d01d79 FIX: Onebox wasn't using correct uri 2017-06-06 16:39:15 -04:00
Robin Ward 369bb78f8e FIX: Support for cookies in onebox redirects 2017-06-06 15:02:11 -04:00
Robin Ward 53b95f009f FIX: If HEAD is not supported, try GET. Also set cookies 2017-06-06 13:53:49 -04:00
Vinoth Kannan 209383faab FEATURE: pull onebox images 2017-06-06 18:51:58 +05:30
Joffrey JAFFEUX ea6b6c817f always run the tests 2017-06-05 19:01:52 +02:00
Joffrey JAFFEUX 05f8b5b72e white_sun_small_cloud is an alias 2017-06-05 15:31:24 +02:00
Joffrey JAFFEUX b0d5b57fdb remove spec warning 2017-06-05 15:23:15 +02:00
Joffrey JAFFEUX 613f6895a6 white_sun_small_cloud is an old alias 2017-06-05 15:23:08 +02:00
Joffrey JAFFEUX 64336a8c75 Emoji 5.0 support 2017-06-05 14:06:23 +02:00
Arpit Jalan a1ebd67237 Revert "FEATURE: new setting to prioritize open topics in search" 2017-06-03 01:54:35 +05:30
Arpit Jalan b8a87a0996 FEATURE: new setting to prioritize open topics in search 2017-06-03 00:33:53 +05:30
Jakub Macina eaec35d230 Fix tag related advanced search tests into one context. Fix dynamic locale and select clause in search by all tags. Fix separator for all tags to plus sign. 2017-06-02 12:39:07 +02:00
Régis Hanol 062158a25e FIX: PNG-to-JPEG conversion should only be done to images with at least 1 megapixels 2017-06-01 23:12:37 +02:00
Régis Hanol 832d621b48 FIX: automatic PNG-to-JPEG conversion should use a default white background 2017-06-01 23:10:36 +02:00
Robin Ward 88ee054e14 FIX: Restrict wizard staff count to human users 2017-06-01 11:20:32 -04:00
Guo Xiang Tan 2ee144c27f FEATURE: Add DiscourseEvent trigger when a user logs in.
* Also adds a event trigger when user logs in for the first time.
2017-06-01 17:44:49 +09:00
Guo Xiang Tan bd486100c0 Remove stubs on DiscourseEvent in tests. 2017-06-01 16:21:00 +09:00
Guo Xiang Tan 13c6695d65 Revert "Load posts in batches while indexing problem posts."
This reverts commit ce57ff9fcf.

Limit is ignored with `find_each`.
2017-06-01 11:15:27 +09:00
Neil Lalonde 82ed51450e Version bump to v1.9.0.beta1 2017-05-31 16:39:57 -04:00
Jakub Macina 3eebcccbf2 Add searching by all tags using postgres full-text search. 2017-05-31 16:36:15 +02:00
Guo Xiang Tan 137f91d1cf PERF: N+1 query when searching with tags enabled. 2017-05-31 08:14:09 +09:00
Guo Xiang Tan ce57ff9fcf Load posts in batches while indexing problem posts. 2017-05-31 07:54:49 +09:00
Guo Xiang Tan 0f2148be9b Make it clear which service is triggering the exception. 2017-05-31 06:38:38 +09:00
Sam 435d4d51a4 add support for controller tests 2017-05-30 17:33:01 -04:00
Gerhard Schlager 8299e7e8c3
Add new, experimental version of mbox importer 2017-05-29 20:59:18 +02:00
Sam b839493fea PERF: Limit new messages in suggested for PMs
unlimited the query will hunt for ancient old PMs which is very
expensive
2017-05-26 11:00:31 -04:00
Sam 0aed2533ac Revert unread optimisation, has too many edge cases 2017-05-26 09:04:13 -04:00
Sam 29fac1ac18 PERF: improve performance of unread queries
Figuring out what unread topics a user has is a very expensive
operation over time.

Users can easily accumulate 10s of thousands of tracking state rows
(1 for every topic they ever visit)

When figuring out what a user has that is unread we need to join
the tracking state records to the topic table. This can very quickly
lead to cases where you need to scan through the entire topic table.

This commit optimises it so we always keep track of the "first" date
a user has unread topics. Then we can easily filter out all earlier
topics from the join.

We use pg functions, instead of nested queries here to assist the
planner.
2017-05-25 15:07:30 -04:00
Robin Ward 0a08c18a14 FIX: Don't rate limit gravatar downloads 2017-05-24 13:54:26 -04:00
Robin Ward cdbe027c1c Refactor `FileHelper` to use keyword arguments. 2017-05-24 13:54:26 -04:00
Sam 405fd9c15d Merge pull request #4870 from tgxworld/fix_cleanup_sockets_servers
FIX: Ensure we clean up socket servers.
2017-05-24 12:33:34 -04:00
Sam 3aa3c915e7 detect dead qunit 2017-05-24 12:24:34 -04:00
Sam fcc523c320 Merge pull request #4872 from mcmcclur/add-httrack
Update crawler_detection.rb
2017-05-24 11:49:28 -04:00
Sam f12490eae0 FIX: order:latest not working for search within topic
FEATURE: use 'l' as a shorthand for order:latest
2017-05-24 11:24:41 -04:00
Robin Ward 3b0cbf7013 FIX: Always allow downloads from CDN 2017-05-23 16:32:54 -04:00
Robin Ward f101e052e6 FIX: Roll back file_helper changes, relative URLs were broken 2017-05-23 15:50:48 -04:00
Robin Ward b81e7be9a1 FEATURE: Rate limit how often we'll crawl a destination IP 2017-05-23 15:03:04 -04:00
Robin Ward 36e477750c FIX: Use same code path for downloading images 2017-05-23 14:51:30 -04:00
Robin Ward e5e7a15a85 SECURITY: Never crawl by IP 2017-05-23 13:07:18 -04:00
Robin Ward 93a5fc62bf FEATURE: A site setting to prevent crawling on private IP blocks 2017-05-23 11:56:06 -04:00
Sam 35bb4ae995 FIX: wizard was not showing up if more than 1 system user 2017-05-23 11:09:50 -04:00
Régis Hanol 9dddb81cf6 FIX: remove memoization on class method used in a job 2017-05-22 23:35:41 +02:00
Blake Erickson 4e8beda332 Merge pull request #4866 from JaredReisinger/admin-user-pagination
Add pagination to /admin/users/list API
2017-05-22 15:12:59 -06:00
Robin Ward b8d78b33c6 FIX: Other content types like images are fine 2017-05-22 16:51:37 -04:00
Robin Ward 4c690f7089 Use `FinalDestination` to ensure public redirects for onebox 2017-05-22 16:42:49 -04:00
Robin Ward b23fc2bf84 Helper to find the final destination for a URL 2017-05-22 15:52:41 -04:00
Neil Lalonde 02fb86916f Version bump to v1.8.0.beta13 2017-05-22 13:49:35 -04:00
Régis Hanol a7f337fa93 FIX: CDN wasn't properly applied to category background images when using S3 2017-05-22 18:37:01 +02:00
Guo Xiang Tan 604aaf8686 FIX: N+1 query in suggested topics list. 2017-05-22 18:05:38 +08:00
Robin Ward 908433a7a0 SECURITY: Validate the `entity` when downloading a CSV 2017-05-19 16:00:51 -04:00
Robin Ward 28f486cb7a FIX: Regular users shouldn't be able to invite to PMs if disabled 2017-05-19 12:57:21 -04:00
Régis Hanol 4fb335f1f0 FIX: don't process the same incoming email more than once 2017-05-18 16:43:07 +02:00
Régis Hanol 13e489b4ca replace the upload type whitelist with a sanitizer 2017-05-18 12:13:13 +02:00
Régis Hanol 80435cf2af Add mutex around incoming email processing 2017-05-18 01:09:51 +02:00
Guo Xiang Tan 0306863d71 Fix the build on travis. 2017-05-17 21:35:22 +08:00
Régis Hanol a1b8a3b52b FIX: supports bare <li> when converting html to markdown 2017-05-17 15:05:11 +02:00
Guo Xiang Tan b0e4555a86 Allow Basic Authentication to be set in smoke test. 2017-05-17 19:24:43 +08:00
Guo Xiang Tan 4b3b54da70 Make sure we log the backtrace as well. 2017-05-17 16:31:53 +08:00
Sam 6a1f579c6e FIX: don't search for plugins in nested subdirectories 2017-05-16 17:28:56 -04:00
Jared Reisinger 645f648ea7 Merge remote-tracking branch 'upstream/master' into admin-user-pagination 2017-05-16 13:36:47 -07:00
Sam 6ddd8d9166 FIX: when entering topics "tracking" would not be set
There was a timing issue when subscribing to messages for topics.

Old flow:

- We generate JSON for topic
- We subscribe to messages for topic

New flow:

- We keep track of last id in the topic message bus channel
- We generate JSON
- We subscribe to messages for topic starting at saved message id

This ensures that there is complete overlap for message consumption
and that there are no cases where an update may go missing due to timing
2017-05-16 15:04:21 -04:00
Neil Lalonde 7821400141 FEATURE: staff can set a timer to remind them about a topic 2017-05-16 14:49:50 -04:00
mcmcclur a307ad6517 Update crawler_detection.rb
Add HTTrack to the list of detected crawlers so that Discourse will serve vanilla HTML per https://meta.discourse.org/t/a-basic-discourse-archival-tool/62614/25
2017-05-16 11:17:05 -04:00
Leo McArdle 59922ce0a4 FEATURE: remove table wrapping posts in notification emails 2017-05-16 10:37:53 -04:00
Robin Ward 31f27006e1 FIX: We can download protocol relative urls 2017-05-15 15:32:55 -04:00
Neil Lalonde 025fca607e Version bump to v1.8.0.beta12 2017-05-15 11:47:50 -04:00
Jared Reisinger 1dcd61fa34 Add pagination to /admin/users/list API
Prior to this, only the first 100 active/new/etc. users were available
via the `/admin/users/list` API.  This change adds support for a
`page=#` querystring parameter so that *all* of the users can be
retrieved.  Requests for pages past the last user result in an
empty-list response; requests for negative pages (or zero) just return
the first page.

Added tests to cover pagination.
2017-05-12 13:28:35 -07:00
Neil Lalonde 8b9799507c fix deploy problems due to renamed table 2017-05-12 15:17:25 -04:00
Sam 47ce674798 PERF: bypass wizard check after 15 topics are created 2017-05-12 10:18:43 -04:00
Neil Lalonde 55b61e9bea rename topic_status_update to topic_timer 2017-05-11 18:27:53 -04:00
Sam 52ae63d5d7 FIX: when searching PMs also search group PMs
Users belonging to a group could not search for PMs unless explicitly added
to the PM unless admin
2017-05-11 15:59:03 -04:00
Régis Hanol b2b10c0f3c FIX: these should not have been class variables 2017-05-11 10:03:28 +02:00
Régis Hanol 9641d2413d REFACTOR: upload workflow creation into UploadCreator
- Automatically convert large-ish PNG/BMP to JPEG
- Updated fast_image to latest version
2017-05-11 00:16:57 +02:00
Sam 7d9b5514ba FIX: correctly invalidate theme css cache on scheme change 2017-05-10 15:47:11 -04:00
Sam bc0b9af576 FEATURE: support uploads for themes
This allows themes to bundle various assets
2017-05-10 15:47:11 -04:00
Sam f709899a1d Allow theme field object model to support uploads 2017-05-10 15:46:42 -04:00
osamasayegh 2f8b1e33f4 FEATURE: bulk relist 2017-05-10 14:53:54 -04:00
Neil Lalonde 5be7a2dad4 FIX: invalid html in notification emails when template has been customized 2017-05-10 14:01:26 -04:00
Robin Ward b57b635d30 FIX: Extract `div` tags within `span`s 2017-05-09 12:33:54 -04:00
Robin Ward addc85cd08 FIX: Don't let users edit wiki posts unless they can reply 2017-05-08 16:23:11 -04:00
Robin Ward 009e120e13 FIX: Don't raise an error when the img attribute cannot be found 2017-05-08 15:35:31 -04:00
Robin Ward 96c59c5b82 FIX: Don't notify or return flags on system users 2017-05-08 13:13:35 -04:00
Sam Saffron 1dc55bcc5b attempt to handle one more multisite edge case 2017-05-05 13:51:26 -04:00
Robin Ward 1b526ebd91 FIX: Catch broken pipe errors 2017-05-04 15:50:35 -04:00
Sam 7a15b44ac3 rename on_remove, on_drop 2017-05-04 14:03:17 -04:00
Sam 6a6eed4ed2 DEV: column dropper class for cleaner removal of superflous columns
Also fixes issues during deploy cause target column was renamed in
theme_fields
2017-05-04 10:15:41 -04:00
Guo Xiang Tan 4101db8b36 FIX: Invalid creation of `Theme` in wizard builder. 2017-05-04 11:44:23 +08:00
Régis Hanol bf322281e3 Improve handling of inlined images in incoming emails 2017-05-03 23:02:02 +02:00
Régis Hanol 768c63c103 Add 'keep_cid_imgs' option to HTML to Markdown converter to improve incoming email parsing 2017-05-03 23:01:55 +02:00
Régis Hanol e38014772b FIX: skip hidden <img> (no tracking for you) 2017-05-03 19:40:34 +02:00
Régis Hanol c8044c6956 FIX: skip hidden nodes when converting from HTML to Markdown 2017-05-03 19:34:03 +02:00
Régis Hanol bff36de130 FIX: HtmlToMarkdown should not convert empty/bad <img> tags 2017-05-03 18:29:25 +02:00
Régis Hanol c880af8120 FIX: properly trim whitespaces (including those pesky &nbsp; html entities) 2017-05-03 18:04:31 +02:00
Sam 342ef5f81a FEATURE: out-of-the-box dark/light user selectable themes 2017-05-03 11:31:33 -04:00
Régis Hanol edbf12622b FIX: HtmlToMarkdown should not convert empty/bad <a> tags 2017-05-03 16:42:37 +02:00
Guo Xiang Tan 90cd35c496 PERF: Reduce allocated memory when generating mailing list email.
Before: 10590714 bytes
After: 5303394 bytes
2017-05-03 16:59:44 +08:00
Sam f5f4c36795 Increase autospec qunit timeout to 600 seconds
Correct it so it refocuses on correct runner after running a test
JS tests can not focus on line so skip in vim mode
2017-05-02 16:02:14 -04:00
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
Sam ba9339b8d7 FIX: missing image-url helper 2017-05-01 15:32:02 -04:00
Sam 556ef4cfbd FIX: case sensitive unconditional add of exact match in user search 2017-05-01 14:37:16 -04:00
Sam a5fc51a967 improve QUNIT support for autospec 2017-05-01 13:50:28 -04:00
Robin Ward b99aedeccc Merge pull request #4838 from vinothkannans/fix/read
FIX: 'read' filter in top menu showing new topics
2017-05-01 11:21:13 -04:00
Régis Hanol 2d22173b81 Merge pull request #4846 from cfstras/transfer-encoding-8bit
Fix reply-by-mail for 8-bit transfer encodings
2017-05-01 15:27:50 +02:00
Sam Saffron dafc4ec906 qunit runner in autospec has been a mess, opening moves to get it working 2017-04-30 19:45:29 -04:00
Claus Strasburger e9bb9a167b Fix reply-by-mail for 8-bit transfer encodings
The mail class seems to handle mails sent with Content-Transfer-Encoding: 8bit
somewhat weirdly: It decodes them (to utf-8), changes the raw source to base64,
and does not modify the Content-Type:charset= header.

This leads to Discourse trying the message encoding (in my example ISO-8859-1)
first, and if that does not contain any unparseable characters, it uses that.
Sadly, in ISO-8859-1, every byte sequence is valid.

Fix this by always trying to decode as UTF-8 first. The probability of someone
using another encoding that cleanly (but wrongly) decodes as UTF-8 should be
fairly low.
2017-04-30 23:30:40 +02:00
Vinoth Kannan 1241660c2c FIX: 'read' filter in top menu showing new topics 2017-04-29 14:37:45 +05:30
Régis Hanol aba76bace6 add support to keep img tags when converting to html 2017-04-28 22:14:46 +02:00
Régis Hanol 51ee49aad2 FIX: properly support HTML document when converting to markdown 2017-04-28 22:02:20 +02:00
Robin Ward f05f1a24d3 Change Anniversary badge to be multiple grant, once per year 2017-04-28 14:22:54 -04:00
Neil Lalonde a501f9d4e5 Version bump to v1.8.0.beta11 2017-04-27 14:05:58 -04:00
Régis Hanol 0ec15af970 restore the 'incoming_email_prefer_html' site setting 2017-04-27 14:31:11 +02:00
Guo Xiang Tan 7873a2efb7 Merge pull request #4843 from tgxworld/disable_post_min_length_for_pm
FEATURE: Disable minimum post length check when in PM with non human …
2017-04-27 16:35:19 +08: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
Guo Xiang Tan 84490c4558 Allow a sidekiq queue to be configured to only run on a certain hostname. 2017-04-27 15:32:16 +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
Régis Hanol b76674f640 FEATURE: convert incoming emails in HTML to markdown
- remove incoming_email_prefer_html site setting
- remove HtmlCleaner class
2017-04-26 16:49:06 +02:00
Guo Xiang Tan c3b5bca0e8 Log error for all exceptions in scheduler stats. 2017-04-26 09:33:05 +08:00
Guo Xiang Tan 1f6418f907 Track error message in `SchedulerStats`. 2017-04-26 01:34:25 +08:00
Sam Saffron f04fbf911a FEATURE: in vim dev you can focus on spec line in autospec
instructions in bin/notify_file_change
2017-04-25 09:13:29 -07:00
Guo Xiang Tan 85ba14fedd Fix `Fixnum` is deprecated in Ruby 2.4. 2017-04-25 15:19:12 +08:00
Guo Xiang Tan aef89c4850 REFACTOR: Load `Post` records in batches when destroying stubs. 2017-04-25 10:19:21 +08:00
Régis Hanol e5c29a1dde eradicate debugging 'puts' 💥 2017-04-24 23:08:15 +02:00
Régis Hanol 7c739f0f45 rake tasks to ensure consistency after bulk import 2017-04-24 23:00:54 +02:00
Régis Hanol 0f2e6042f2 PERF: don't load User object in memory when we only need to know if it exists 2017-04-24 23:00:36 +02:00
Régis Hanol d5630d6160 HtmlToMarkdown library
Small library to transform HTML to Discourse-flavored markdown (mostly used for imports)
2017-04-24 22:01:41 +02:00
Guo Xiang Tan 423f2ab228 FIX: Processing incoming email should be done in a background job. 2017-04-24 13:57:28 +08:00
Arpit Jalan dad2024094 FIX: do not impose default min/max validation on hidden site setting 2017-04-22 12:08:39 +05:30
Guo Xiang Tan 5fab2042f5 Revert "Add rake task to gather `GC.stat` for Sidekiq."
This reverts commit 15e2f55655.
2017-04-22 08:23:24 +08:00
Sam b74c61777a waiting on the wrong array 2017-04-21 17:29:38 -04:00
Sam b077335a30 make stat socket much more robust 2017-04-21 17:12:29 -04:00
Sam e189ec2def correct it so stats socket times out after 10 seconds 2017-04-21 16:54:18 -04:00
Sam 0b3aec9c94 FEATURE: set UNICORN_STATS_SOCKET_DIR for status socket
eg:

sam@ubuntu stats_sockets % socat - UNIX-CONNECT:9622.sock
gc_stat
{"count":46,"heap_allocated_pages":2459,"heap_sorted_length":2460,"heap_allocatable_pages":0,"heap_available_slots":1002267,"heap_live_slots":647293,"heap_free_slots":354974,"heap_final_slots":0,"heap_marked_slots":503494,"heap_swept_slots":498773,"heap_eden_pages":2459,"heap_tomb_pages":0,"total_allocated_pages":2459,"total_freed_pages":0,"total_allocated_objects":4337014,"total_freed_objects":3689721,"malloc_increase_bytes":6448248,"malloc_increase_bytes_limit":29188387,"minor_gc_count":36,"major_gc_count":10,"remembered_wb_unprotected_objects":19958,"remembered_wb_unprotected_objects_limit":39842,"old_objects":462019,"old_objects_limit":895782,"oldmalloc_increase_bytes":6448696,"oldmalloc_increase_bytes_limit":19350882}
2017-04-21 11:37:03 -04:00
Arpit Jalan b0151ab66a Merge pull request #4826 from techAPJ/site-setting-max-value
FIX: all basic integer settings should have min & max value validation
2017-04-21 20:21:10 +05:30
Arpit Jalan 1f5089e474 FIX: handle invite error in wizard 2017-04-21 20:07:04 +05:30
Sam 52306c393a FEATURE: basic implementation of stats socket 2017-04-21 10:24:43 -04:00
Guo Xiang Tan 15e2f55655 Add rake task to gather `GC.stat` for Sidekiq. 2017-04-21 17:32:06 +08: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
Arpit Jalan 9eff4f0807 FIX: all basic integer settings should have max value validation 2017-04-21 07:09:41 +05:30
Arpit Jalan 5d9d2cf287 FIX: do not explicitly show email of flagger / flagged user 2017-04-20 22:09:30 +05:30
Sam e119c6e01e FIX: embedded comments not working when theme is missing 2017-04-20 10:31:33 -04:00
Guo Xiang Tan 0f2e2ea175 Update moment locales as well. 2017-04-20 12:24:20 +08:00
Sam 7eabb90b71 FEATURE: added error messages for bad theme CSS / JS 2017-04-19 16:46:46 -04:00
Guo Xiang Tan 8052218f61 Upgrade momentjs. 2017-04-19 22:04:35 +08:00
Robin Ward 564eb8c20f Allow plugins to add vendored files for the text pipeline 2017-04-18 17:59:05 -04:00
Sam 2bc3aa7ed4 remove no digest refs
the digestless special dev behavior is no longer needed
2017-04-18 17:05:33 -04:00
Sam 0a67d859d5 correct watcher so it handles color scheme changes correctly 2017-04-18 16:48:15 -04:00
Robin Ward d82d11a96b FIX: ctx parameter is optional 2017-04-18 13:06:11 -04:00
Robin Ward 8b8ee2ad61 Pass a context in when using a HTML builder 2017-04-18 12:35:35 -04:00
Robin Ward 1363988cd7 Support for an HTML builder that can create dynamic HTML 2017-04-17 17:32:55 -04:00
Sam 5dd752877e FEATURE: try adding some preload hints for chrome 2017-04-17 11:52:43 -04:00
Sam 6e5296a510 FEATURE: upgrade sprockets to latest stable
This unlocks Rails upgrades, so we can now upgrade to latest Rails
2017-04-17 10:12:05 -04:00
Guo Xiang Tan 04016f0dec Support Ruby 2.4. 2017-04-15 12:29:00 +08:00
David Taylor 96f2335c09 FIX: Corrects typo to avoid error 500 on theme change 2017-04-15 01:21:53 +01:00
Sam 4ed4d77fd3 correct the monkey patch 2017-04-14 15:06:52 -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 8370b4b1b7 FIX: don't precompile if we have no themes table 2017-04-14 10:33:35 -04:00
Sam 4161a7abec FIX: allow CSS precompilation to access newly manifested assets 2017-04-14 10:30:19 -04:00
Sam 2d636406dc FIX: in some case bundle exec fails from spawn
there is some bundler magic in here, prefer bin stubs anyway
cause they are a bit faster
2017-04-13 17:24:58 -04:00
Sam 22214f5e5c Upgrade the Listen gem 2017-04-13 10:39:36 -04:00
Sam a018eed611 expand tmp for osx 2017-04-12 14:47:37 -04:00
Sam db9a44d4b5 we need theme vars when building theme css 2017-04-12 13:37:27 -04:00
Sam bbecc65737 force recompilation of css assets 2017-04-12 12:46:03 -04:00
Sam 8cd9afcfad move CSS precompilation to last step 2017-04-12 12:30:24 -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
Guo Xiang Tan 3861bd2793 FIX: Quotes should be ignored when parsing for onebox source. 2017-04-11 15:22:21 +08:00
Guo Xiang Tan 0a4c30bce3 FIX: Handle cases where `alt` and `title` tag is blank when parsing excerpt. 2017-04-11 14:18:27 +08:00
Régis Hanol 2be14a604c FIX: censored_pattern with group capturing wasn't working 2017-04-10 23:38:48 +02:00
Neil Lalonde 8ce14479b6 Version bump to v1.8.0.beta10 2017-04-10 14:31:27 -04:00
Guo Xiang Tan e49f3a408e FEATURE: Add option for `ExcerptParser` to keep onebox source. 2017-04-10 16:11:58 +08:00
Régis Hanol 93556bb950 Merge pull request #4793 from rcgordon/smtp-fast-rejection
Added an API to ask if an incoming email should be dropped at the SMTP level.
2017-04-07 09:59:52 +02:00
Guo Xiang Tan f534f041a0 FIX: Ensure directory exists. 2017-04-07 15:50:17 +08:00
Ryan C. Gordon a51c191a66 Make Email::Receiver.check_address() into a class method. 2017-04-05 23:10:36 -04:00
Robin Ward 17f2974d0a SECURITY: Confirm new administrator accounts via email 2017-04-04 15:59:01 -04:00
Guo Xiang Tan e4d7e4fbe3 Improve error messages. 2017-04-04 17:19:14 +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
Yana Agun Siswanto cd2d2f16e5 Allow to order search results by the topic creation date
based on: https://meta.discourse.org/t/allow-to-order-search-results-by-the-topic-creation-date/38544
2017-03-30 01:18:38 +07:00
Arpit Jalan bb0fa5abbc FIX: suggested username should not be more than setting max_username_length 2017-03-29 18:19:28 +05:30
Neil Lalonde 2e57464819 Version bump to v1.8.0.beta9 2017-03-28 11:34:01 -04:00
Arpit Jalan 8bf12502bd Merge pull request #4780 from techAPJ/send-statistics
FEATURE: Send anonymized usage statistics to Discourse if "Discourse Hub" can't reach the site
2017-03-28 10:02:05 +05:30
Arpit Jalan f3cd5f61c5 FEATURE: Send anonymized usage statistics to Discourse if Discourse Hub can't reach the site 2017-03-28 09:07:23 +05:30
Régis Hanol 85bf18ad0e tiny refactor 2017-03-27 16:21:38 +02:00
Guo Xiang Tan fc3c34b78f Allow Brotli compression to be disabled when precompiling. 2017-03-27 11:55:43 +08:00
Arpit Jalan 3449339fea FIX: admin locales were not getting converted to message format 2017-03-25 01:12:23 +05:30
Guo Xiang Tan a4deb0e47d Fix typo. 2017-03-24 20:59:34 +08:00
Régis Hanol 747f4812e4 fix custom emoji support when using subfolder 2017-03-24 02:09:39 +01:00
Régis Hanol 9f65658c5c register_emoji should work with subfolder installs 2017-03-24 01:08:12 +01:00
Arpit Jalan 9f930125f5 FIX: replace site_name in email subject with site title 2017-03-22 23:38:46 +05:30
Arpit Jalan 786fd6bbd2 Merge pull request #4774 from techAPJ/email-prefix
FIX: use email prefix only in subject
2017-03-22 14:18:50 +05:30
Matt Palmer da7a44064b Fix purge_tombstone for the brave new world of secure command execution 2017-03-22 10:27:07 +11:00