Commit Graph

954 Commits

Author SHA1 Message Date
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
Sam 685406b1bb try updating rubocop so it does not crash 2018-03-13 17:58:23 +11: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 bdb25338e5 Update bootsnap. 2018-03-06 17:37:02 +08:00
Gerhard Schlager 56bacb1c2f Bump onebox 2018-02-27 12:07:16 +01:00
Sam 79e0cd7f52 update onebox 2018-02-26 10:15:14 +11:00
Jeff Wong f4f8a293e7 FEATURE: Implement 2factor login TOTP
implemented review items.

Blocking previous codes - valid 2-factor auth tokens can only be authenticated once/30 seconds.
I played with updating the “last used” any time the token was attempted but that seemed to be overkill, and frustrating as to why a token would fail.
Translatable texts.
Move second factor logic to a helper class.
Move second factor specific controller endpoints to its own controller.
Move serialization logic for 2-factor details in admin user views.
Add a login ember component for de-duplication
Fix up code formatting
Change verbiage of google authenticator

add controller tests:
second factor controller tests
change email tests
change password tests
admin login tests

add qunit tests - password reset, preferences

fix: check for 2factor on change email controller
fix: email controller - only show second factor errors on attempt
fix: check against 'true' to enable second factor.

Add modal for explaining what 2fa with links to Google Authenticator/FreeOTP

add two factor to email signin link

rate limit if second factor token present

add rate limiter test for second factor attempts
2018-02-21 09:04:07 +08:00
Sam 80ec6ce4fd bump onebox 2018-02-21 10:06:17 +11:00
Sam 107eb5d830 FIX: binding_of_caller not working on Ruby 2.5 2018-02-19 11:37:16 +11:00
Sam 9d8df812dd PERF: upgrade Oj gem 2018-02-19 11:37:16 +11:00
Arpit Jalan 9bb7c3dcf0 bump onebox version 2018-02-16 21:32:25 +05:30
Sam e456ae1b6c Revert "Upgrade mail gem to drop dependency on `mime-types`."
This reverts commit 498cc15aa9.

Noticed a certain amount of extra allocations due to this upgrade,
reverting to confirm if this is the case
2018-02-16 07:04:22 +11:00
Guo Xiang Tan 498cc15aa9 Upgrade mail gem to drop dependency on `mime-types`.
Boot Memory Usage

```
Total allocated: 225695379 bytes (1990663 objects)
Total retained:  32795116 bytes (291607 objects)
```

```
Total allocated: 218342892 bytes (1897350 objects)
Total retained:  30123426 bytes (261198 objects)
```
2018-02-15 16:24:26 +08:00
Sam 94b2c70c0d PERF: remove oga gem
oga gem is automatically required by the aws gem
the oga gem retains about 1mb of memory, aws now uses nokogiri

This also removes the html normalize from the pretty text specs that was
a fair bit buggy as the polls test shows.
2018-02-15 14:36:40 +11:00
Sam c89b42c488 PERF: only require the rss library if used
Before:

Total allocated: 257909321 bytes (2514134 objects)
Total retained:  39681579 bytes (343387 objects)

allocated memory by gem
-----------------------------------
  42875979  rss

retained memory by gem
-----------------------------------
   2080188  rss

retained objects by gem
-----------------------------------
     13052  rss

After:

Total allocated: 210562047 bytes (2252030 objects)
Total retained:  37433816 bytes (328635 objects)

----

So, 2 less megabytes on boot and 13000 objects stuck in ruby heaps forever.
2018-02-15 13:11:33 +11:00
Rafael dos Santos Silva 218c8e8623
Merge pull request #5595 from discourse/new-gfycat-onebox
New gfycat onebox
2018-02-14 19:03:28 -02:00
Rafael dos Santos Silva c3606fdef6 Update onebox 2018-02-14 17:43:13 -02:00
Robin Ward 0b13b82e94 Update nokogiri to latest version 2018-02-13 19:36:19 -05:00
Guo Xiang Tan 19b4116416 Bump `rails_multisite` to 2.0.4. 2018-02-12 15:39:21 +08:00
Guo Xiang Tan 5dabcc9081 Fix Gemfile.lock. 2018-02-12 14:08:02 +08:00
Guo Xiang Tan 87b0cc382b Bump `rails_multisite` to 2.0.3. 2018-02-12 14:03:04 +08:00
Régis Hanol 508a8e29ab update email_reply_trimmer to latest version 2018-02-06 01:04:45 +01:00
Sam 073d072aa6 correct lockfile 2018-01-29 18:28:59 +11:00
Sam d2025e33cf FEATURE: bump rbtrace to latest 2018-01-23 15:36:47 +11:00
Sam 36ed8f5176 Correct regression where /sidekiq/scheduler was not working 2018-01-22 10:48:35 +11:00
Guo Xiang Tan 54dc191a91 Update `rails_multisite` to 2.0.1. 2018-01-19 10:19:16 +08:00
Sam 12872d03be PERF: run post timings in background
This means that if a very large amount of registered users hit
a single topic we will handle it gracefully, even if db gets slow.
2018-01-19 08:27:29 +11:00
Gerhard Schlager 5d7a33cd6d Update email_reply_trimmer to improve performance 2018-01-17 12:04:56 +01:00
Sam 8c47eb2951 update coderay 2018-01-17 15:50:41 +11:00
Arpit Jalan a0f0ed576a bump onebox version 2018-01-11 23:15:25 +05:30
Arpit Jalan afb18a5c41 bump onebox version 2018-01-11 14:30:35 +05:30
Sam d5fd6d2639 PERF: defer message bus on hidden tabs so only one in 1.5 seconds happens 2018-01-09 12:39:17 +11:00
Guo Xiang Tan 74ec100aff Upgrade `pg` gem. 2018-01-08 10:27:19 +08:00
Régis Hanol e3f8182125 FIX: Google Calendar oneboxes weren't working 2018-01-07 19:15:11 +01:00
Sam 8d4cd57662 Update libv8 from 5.9 to 6.3 2018-01-05 17:12:04 +11:00
Jano Suchal 05ec1be101 Drop the fork usage of fastimage (#5461)
Fork is not needed anymore since fastimage 2.1.1 has been released with the needed PR merged in.
2018-01-04 09:53:53 +01:00
Sam 030a0cd698 bump onebox for vimeo private link support 2017-12-29 09:38:25 +11:00
Arpit Jalan b74e933cfb bump onebox version 2017-12-23 01:17:30 +05:30
Arpit Jalan 16076f9ab8 bump onebox version 2017-12-21 14:49:59 +05:30
Sam fd67508497 FIX: don't count users as replying long after they are done typing
Also, don't leak a large amount of redis usage for presence stuff
2017-12-18 15:41:32 +11:00
Arpit Jalan f9990eeb13 bump onebox version 2017-12-07 12:05:19 +05:30
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
Arpit Jalan 7bbf137238 bump onebox version 2017-12-05 07:28:45 +05:30
Guo Xiang Tan f5d45f797a Fix broken Gemfile.lock. 2017-12-04 11:28:45 +08:00
Guo Xiang Tan 78f09f0489 Logster 1.2.9 is the version we want to be at. 2017-12-04 11:05:14 +08:00
Guo Xiang Tan 846b047847 Revert "Revert "Upgrade logster.""
This reverts commit 57ca4b20e2.
2017-12-04 09:30:21 +08:00
Guo Xiang Tan 57ca4b20e2 Revert "Upgrade logster."
This reverts commit 1376a86bcc.
2017-12-01 17:32:49 +08:00
Guo Xiang Tan 1376a86bcc Upgrade logster. 2017-12-01 16:03:00 +08:00
Guo Xiang Tan 3053499375 Update mini_suffix. 2017-11-30 11:14:06 +08:00
Guo Xiang Tan fffb7561c4 Update `mini_suffix`. 2017-11-29 17:07:41 +08:00
Guo Xiang Tan 8491c5fba5 UX: Replace heuristic solution for extracting root domain. 2017-11-29 16:26:46 +08:00
Arpit Jalan 64cdb4f7e8 bump onebox version 2017-11-27 12:21:47 +05:30
Guo Xiang Tan c8157f6b07 Update seed-fu with PG10 support.
https://meta.discourse.org/t/discourse-appears-to-be-broken-with-postgres-10/71723
2017-11-27 10:26:59 +08:00
Arpit Jalan abbb2b28eb bump onebox version 2017-11-25 15:53:18 +05:30
Sam 407d80f1dd FEATURE: update rack-mini-profiler to latest 2017-11-24 10:28:35 +11:00
Sam 8fd09fe616 FEATURE: upgrade message bus
new version recovers very cleanly from redis flush
2017-11-24 09:23:12 +11:00
Arpit Jalan 961a09ff14 bump onebox version 2017-11-23 17:45:08 +05:30
Arpit Jalan 211dac6f71 bump onebox version 2017-11-22 14:55:47 +05:30
Arpit Jalan b8c9975429 bump onebox version 2017-11-21 11:10:44 +05:30
Guo Xiang Tan 89d9ffa884 EXPERIMENTAL: Allow logs to be shipped via different methods.
See https://github.com/dwbutler/logstash-logger#uri-configuration for
a list of available methods.
2017-11-15 09:11:33 +08:00
Sam 5427ca13b7 FEATURE: update rails multisite so we error out if RAILS_DB is invalid 2017-11-13 16:37:25 +11:00
Sam 86e6732f78 FEATURE: update rails multisite
always allow /srv/status through even if host does not match
2017-11-09 15:40:56 +11: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
Guo Xiang Tan a97273e1a5 Update Unicorn to 5.3.1. 2017-11-06 11:22:58 +08:00
Arpit Jalan 253de41166 bump onebox gem version 2017-11-03 22:38:36 +05:30
Arpit Jalan 91438849d2 bump onebox version 2017-11-02 00:51:21 +05:30
Arpit Jalan 6b5bb9d664 bump onebox gem version 2017-11-01 15:50:23 +05:30
Guo Xiang Tan d888d3c54c EXPERIMENTAL: Allow Logstash formatter to be enable for lograge logs. 2017-11-01 08:38:06 +08:00
Guo Xiang Tan 58bb3c14f6 Remove gem that is no longer used. 2017-10-31 14:13:54 +08:00
Guo Xiang Tan d487be759c EXPERIMENTAL: Allow app to Logstash directly. 2017-10-27 22:56:32 +08:00
Guo Xiang Tan 90d6677d97 EXPERIMENTAL: Allow lograge to be selected as the logging library. 2017-10-27 17:54:45 +08:00
Guo Xiang Tan db579f7917 Upgrade logster. 2017-10-27 12:13:52 +08:00
Guo Xiang Tan 09e7c1ce8a Update Rubocop. 2017-10-23 12:03:31 +08:00
Guo Xiang Tan a88f910469 Bump message_bus to 2.0.8. 2017-10-06 08:33:46 +08:00
Guo Xiang Tan a25851032a Update Sidekiq. 2017-10-05 13:59:21 +08: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 f1d8ed6aaf Update lock file. 2017-10-03 14:59:25 +08:00
Guo Xiang Tan 7e059a5a6e Upgrade Rails to 5.1.4. 2017-10-03 14:56:44 +08:00
Sam 9fa575dca1 Update message bus
This corrects a rare race condition.
2017-10-02 15:21:45 +11:00
Sam 41261b32a5 FIX: update message bus
- Corrects broken short polling
- Corrects after fork
2017-09-29 16:58:12 +10:00
Guo Xiang Tan d442da9fdd SECURITY: Update Nokogiri. 2017-09-25 20:06:58 +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
Guo Xiang Tan 898ee93547 Upgrade to Rails 5. 2017-09-25 10:01:22 +08:00
Guo Xiang Tan d58de2b484 Install Ruby-Prof. 2017-09-25 10:01:22 +08:00
Gerhard Schlager 0960e2dd67 bump onebox version 2017-09-18 14:25:56 +02:00
Gerhard Schlager 619864bc70 update email_reply_trimmer to latest 2017-09-14 17:20:55 +02:00
Arpit Jalan eafab41a2c bump onebox version 2017-08-17 13:10:11 +05:30
Sam 91f0f76fb1 update message bus to ruby 2.0 packaged version 2017-08-16 15:05:39 -04:00
Sam Saffron d27e81a296 Perf: update message_bus to latest 2017-08-16 07:50:12 -04:00
Bianca Nenciu 1c079bec33 Remove Spork dependency. 2017-08-10 22:54:52 +01:00
Régis Hanol 9aa49e922c let's use the latest omniauth-github gem 2017-08-07 10:43:54 +02:00
Régis Hanol ad20f59897 FIX: couldn't upload SVG with a DOCTYPE 2017-08-07 10:32:35 +02:00
Arpit Jalan 447e4386ee bump onebox version 2017-08-03 13:37:22 +05:30
Guo Xiang Tan 54f09ca59d Install rubocop in development mode. 2017-08-01 10:51:44 +09:00
Erick Guan f1eccd113c Replace rmmseg gem for cppjieba_rb since better dictionary (#5006)
* Rename locale to ts config in search module to make it clear

* Replace rmmese-cpp for cppjieba_rb
2017-07-31 15:28:48 -04:00
Régis Hanol cae437850e update email_reply_trimmer to latest 2017-07-31 11:21:41 +02:00
Guo Xiang Tan 358d245dd8 Upgrade Rails to 4.2.9. 2017-07-31 15:37:46 +09:00
Sam 9d774a951a Update libv8 and benchmark 2017-07-26 10:59:41 -04:00
Sam Saffron 045a2abcec FEATURE: remove the timecop gem
We should only have one way of mocking time, misuse of timecop
was causing build stability issues
2017-07-24 12:11:10 -04:00
Arpit Jalan eb6c5a54ea bump onebox version 2017-07-20 22:31:01 +05:30
Sam 38daa61fc7 FEATURE: libv8 upgraded to version 5.7
corresponds more or less with Chrome 57
2017-07-18 10:55:51 -04:00
Sam Saffron d0c5205a52 Feature: Change markdown engine to markdown it
This commit removes the old evilstreak markdownjs engine.

- Adds specs to WhiteLister and changes it to stop using globals
    (Fixes large memory leak)
- Fixes edge cases around bbcode handling
- Removes mdtest which is no longer valid (to be replaced with
    CommonMark)
- Updates MiniRacer to correct minor unmanaged memory leak
- Fixes plugin specs
2017-07-17 11:41:34 -04:00
Robin Ward c786700817 Upgrade onebox for a simple video fix 2017-07-10 14:20:07 -04:00
Robin Ward 7906c9ce29 Update onebox gem for Trello support 2017-07-07 10:45:22 -04:00
Robin Ward 2f480e21a0 Stop using Babel source gem, which is no longer updated 2017-07-05 14:19:16 -04:00
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
Robin Ward 94ab194a7f Adds support for Github oneboxes to commits in pull requests 2017-06-22 15:46:07 -04:00
Sam 2181e995f1 remove sinatra 2017-06-19 13:49:11 -04:00
Guo Xiang Tan be44e4b730 Update Sidekiq. 2017-06-19 14:20:54 +09:00
Guo Xiang Tan d82dbd565b FIX: Remove dependency on `rest-client`. 2017-06-16 09:42:41 +09:00
Robin Ward 8ae445766f Upgrade Ember to 2.13 2017-06-15 10:12:07 -04:00
Régis Hanol 5d63a7f4a6 FIX: pull hotlinked images even when they have no extension 2017-06-13 13:27:05 +02:00
Guo Xiang Tan 3acc9941dd Merge pull request #4920 from greysteil/dependabot/bundler/mail-2.6.6
Bump mail from 2.6.6.rc1 to 2.6.6
2017-06-12 18:00:08 +09:00
dependabot[bot] d43b46d09b Bump mail from 2.6.6.rc1 to 2.6.6
Bumps [mail](https://github.com/mikel/mail) from 2.6.6.rc1 to 2.6.6.
- [Changelog](https://github.com/mikel/mail/blob/master/CHANGELOG.rdoc)
- [Commits](https://github.com/mikel/mail/commits/v2.6.6)
2017-06-10 07:03:22 +00:00
Robin Ward b5bead1fe3 FIX: Don't use `target=_blank` for local oneboxes 2017-06-09 12:15:36 -04:00
dependabot[bot] 63eb298089 Bump puma from 3.6.0 to 3.9.1
Bumps [puma](https://github.com/puma/puma) from 3.6.0 to 3.9.1.
- [Release notes](https://github.com/puma/puma/releases/tag/v3.9.1)
- [Changelog](https://github.com/puma/puma/blob/master/History.md)
- [Commits](https://github.com/puma/puma/compare/v3.6.0...v3.9.1)
2017-06-08 14:37:02 +00:00
Guo Xiang Tan ff1154b523 Update Sidekiq to 5.0.x. 2017-06-08 07:15:13 +09:00
Guo Xiang Tan 22ecbf1249 More gem updates. 2017-06-08 07:14:22 +09:00
Guo Xiang Tan 61a4711e83 Update i18n. 2017-06-07 11:13:21 +09:00
Guo Xiang Tan 24cf302753 Update nokogiri. 2017-06-07 11:13:07 +09:00
Guo Xiang Tan 5332f25aa9 Update gems in development group. 2017-06-07 11:12:44 +09:00
Robin Ward 369bb78f8e FIX: Support for cookies in onebox redirects 2017-06-06 15:02:11 -04:00
Robin Ward 4b82d4fb15 Upgrade Ember to latest patch 2017-06-05 14:39:04 -04:00
Robin Ward 3acabf3e2f FIX: Improved Amazon oneboxing for some URLs 2017-06-02 16:53:40 -04:00
Robin Ward c4b6420455 Update Onebox for better Twitch support 2017-06-01 16:23:47 -04:00
Robin Ward 19d5eb903c SECURITY: Vunerability in mail gem
(see https://github.com/mikel/mail/pull/1097)
2017-06-01 14:51:30 -04:00
Sam 3384a7dd2a proper bootsnap release 2017-05-26 13:26:45 -04:00
Sam 076f079d17 bootsnap upgrade
see: https://github.com/Shopify/bootsnap/pull/43#issuecomment-304281474
2017-05-26 09:37:18 -04:00
Guo Xiang Tan 56f98de7b2 Use webmock to stub external web requests. 2017-05-26 15:19:09 +08:00
Robin Ward 8bc93c0b01 FEATURE: Add custom User-Agent to Discourse Oneboxes 2017-05-24 12:19:36 -04:00
Robin Ward 29755be139 Remove bundle-audit, it is not updated frequently enough 2017-05-18 12:31:19 -04:00
Sam 851876acfa update miniprofiler to clean up errors 2017-05-17 15:35:18 -04:00
Robin Ward 1870089cf1 Include latest onebox fix 2017-05-17 15:21:40 -04:00
Sam 17f75bc95e FIX: bump mini profiler to support sub folders 2017-05-17 13:51:31 -04:00
Sam bdd4a9e69d update nokogiri 2017-05-17 11:33:20 -04:00
Robin Ward e865a44b93 FIX: Forgot to lock gem 2017-05-15 13:35:28 -04:00
Guo Xiang Tan d5f823dae5 Fix the build on travis. 2017-05-15 19:48:14 +08:00
Robin Ward 49a30a7532 FIX: Include new onebox fixes 2017-05-12 14:25:15 -04:00
Sam 961dc0480d update bootsnap 2017-05-12 09:45:28 -04:00
Sam 704101253d add bootsnap to speed up test and dev 2017-05-11 13:51:38 -04: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
Guo Xiang Tan a470bce8fb Update mail gem to 2.6.5 for a slightly smaller memory footprint. 2017-05-03 17:02:47 +08:00
Guo Xiang Tan 8d04afc01b Update OJ. 2017-05-03 16:52:02 +08:00
Guo Xiang Tan 862052fca8 Update `rack-mini-profiler`. 2017-05-03 16:52:02 +08:00
Guo Xiang Tan f81d39114d Update RSpec's dependency to fix deprecation warning. 2017-04-26 16:21:51 +08:00
Guo Xiang Tan b00886f5c1 Remove sidekiq-statistic gem.
* We don't really use it and there is an on-going issue
  with the gem not expiring keys in a Redis list which
  hasn't been fully resolved.

  https://github.com/davydovanton/sidekiq-statistic/issues/73
2017-04-26 14:54:47 +08:00
Sam Saffron 587653ad73 remove bootsnap till we sort out linux 2017-04-25 14:55:18 -07:00
Sam Saffron 1ae67a21f5 FEATURE: add support for bootsnap in dev
To use bootsnap which speeds up rails boot add

BOOTSNAP=1 to your env
2017-04-25 10:15:12 -07: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
Guo Xiang Tan d7b446c174 Install `discourse_image_optim` gem for now. 2017-04-20 15:14:39 +08: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
Guo Xiang Tan 86efc57390 FIX: Onebox's dependencies were not updated. 2017-04-15 11:39:51 +08:00
Sam 22214f5e5c Upgrade the Listen gem 2017-04-13 10:39:36 -04:00
Guo Xiang Tan f48022b674 Upgrade Rails to 4.2.8. 2017-04-13 10:17:09 +08:00
Régis Hanol a5f1c57a70 bump onebox 2017-04-13 00:49:22 +02:00
Guo Xiang Tan 0165b22b76 Bump onebox. 2017-04-13 06:31:25 +08: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 4cb6880766 Upgrade image_optim. 2017-04-12 10:38:17 -04:00
Robin Ward 28da0549b6 Update facebook login gem 2017-03-27 16:52:09 -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
Régis Hanol 60dc531531 bump onebox 2017-03-13 16:31:41 +01:00
Sam ab3faeb0f9 PERF: user mini racer to uglify assets 2017-03-09 16:44:50 -05:00
Guo Xiang Tan c4e22a12f9 Bump Redis. 2017-03-09 18:40:07 +08:00
Robin Ward 890f1bde89 FIX: Add `thor` to Gemfile. We need it for our CLI tool. 2017-03-02 13:36:06 -05:00
Robin Ward bcbe474856 FIX: Don't raise `DownloadTooLarge`, just do nothing 2017-02-17 14:08:54 -05:00
Arpit Jalan 75f154b177 bump onebox 2017-02-08 12:08:41 +05:30
Arpit Jalan be9230cba2 bump onebox 2017-02-07 00:35:05 +05:30
Régis Hanol ba115480ba FIX: wasn't extracting links to quoted posts 2017-02-06 14:45:04 +01:00
Sam a898d6a02a FIX: silence and quiet logger not thread safe
This caused info/warning to be consistently missing
in dev mode when using puma
2017-01-31 15:44:46 -05:00
Régis Hanol cb1b24b594 bump onebox 2017-01-27 11:49:01 +01:00
Robin Ward 396557bae9 SECURITY: Prevent large onebox downloads, better timeout support 2017-01-25 14:55:54 -05:00
Sam Saffron 1a45fe94a2 drop thin, it is no longer supported 2017-01-20 08:11:36 -05:00
Arpit Jalan b741adb364 bump onebox version 2017-01-20 00:55:12 +05:30
Régis Hanol 07660ecedb bump onebox 2017-01-19 00:28:37 +01:00
Guo Xiang Tan b2162b910b Update rbtrace to work on 2.4.0. 2017-01-16 08:06:09 +08:00
Sam Saffron e90af4f2de FEATURE: Update omniauth twitter as prep for Ruby 2.4 support 2017-01-14 20:10:09 -05:00
Régis Hanol f3a325ac0f bump onebox 2017-01-11 21:55:31 +01:00
Régis Hanol d39afa9501 bump onebox 2017-01-06 16:37:38 +01:00
Arpit Jalan 51386bd339 bump onebox version 2017-01-06 19:50:16 +05:30
Régis Hanol 107d1bb357 bump onebox 2017-01-04 19:56:12 +01:00
Arpit Jalan 69b79ea3f9 bump onebox version 2017-01-04 01:26:10 +05:30
Sam Saffron 920050c3ec remove conditional support for ruby 2.0 2016-12-29 16:32:23 +11:00
Sam Saffron 65c40feb32 upgrade libv8 so it installs better on mac 2016-12-29 16:29:37 +11:00
Sam 4bc57f3686 update memory profiler 2016-12-23 12:58:44 +11:00
Sam c531f4ded5 remove rails-observers
Rails yanked out observers many many years ago, instead the functionality
was yanked out to a gem that is very lightly maintained.

For example: if we want to upgrade to rails 5 there is no published gem

Internally the usage of observers had quite a few problem.

The series of refactors renamed a bunch of classes to give us more clarity
and removed some magic.
2016-12-22 16:46:53 +11:00
Robin Ward 71dd94e92d FIX: Didn't mean to upgrade sprockets version with Ember 2016-12-21 10:39:45 -05:00
Régis Hanol eaa40756a8 bump onebox 2016-12-21 16:34:26 +01:00
Sam ea9f7a41af remove gctools (no longer used) add gctracer for debugging 2016-12-20 15:07:30 +11:00
Robin Ward e03d5e2140 Reapply Ember 2.10 for good this time!
This reverts commit ddd299f4aa.
2016-12-19 11:19:10 -05:00
Sam 7918d99a2e SECURITY: update onebox gem 2016-12-19 13:17:51 +11:00
Robin Ward ddd299f4aa Revert "Revert "Revert Ember 2.10+ for a short while""
This reverts commit 76bbc481cb.
2016-12-16 10:29:30 -05:00
Robin Ward 76bbc481cb Revert "Revert Ember 2.10+ for a short while"
This reverts commit 21682fd60b.
2016-12-16 09:52:29 -05:00
Robin Ward 21682fd60b Revert Ember 2.10+ for a short while 2016-12-15 16:43:38 -05:00
Robin Ward a149913c4d FIX: Template compilation was broken 2016-12-15 10:28:15 -05:00
Robin Ward 28699e66d8 Revert "REVERT: Ember 2.10 -- it's not building properly"
This reverts commit 600541c623.
2016-12-15 10:28:15 -05:00
Guo Xiang Tan e765e64cb1 Bump onebox for fixes. 2016-12-15 16:18:48 +08:00
Robin Ward 4648e32ed1 SECURITY: Update to latest onebox gem 2016-12-14 12:49:18 -05:00
Guo Xiang Tan 20f9aad539 Merge pull request #4599 from tgxworld/remove_rspec_given
Remove RSpec given.
2016-12-14 17:42:30 +08:00
Guo Xiang Tan 18f400e652 Remove RSpec given. 2016-12-14 10:29:22 +08:00
Neil Lalonde 3b20e8b094 update onebox gem to 1.6.3 2016-12-13 16:30:49 -05:00
Robin Ward 600541c623 REVERT: Ember 2.10 -- it's not building properly 2016-12-12 16:19:05 -05:00
Robin Ward a808bcb0b8 Upgrade to Ember 2.10 2016-12-12 14:44:29 -05:00
Robin Ward 765e5e9186 Upgrade to Ember 2.9 2016-12-12 14:44:29 -05:00
Régis Hanol 3cc6fabb62 bump onebox 2016-11-30 16:29:36 +01:00
Régis Hanol 6725464d31 bump onebox 2016-11-29 15:46:10 +01:00
Régis Hanol 671e230490 bump onebox 2016-11-28 15:35:10 +01:00
Robin Ward 2d3518f475 Enable newer version of Ember 2016-11-25 10:09:58 -05:00
Régis Hanol 1de28ce8be bump onebox 2016-11-21 17:20:55 +01:00
Guo Xiang Tan 00c0410fc7 Bump rails_multisite. 2016-11-18 12:06:47 +08:00
Guo Xiang Tan 6e10fc3f11 Revert "Rollback Rails Multisite - seems to have a bug"
This reverts commit ed1720cd02.
2016-11-18 11:07:46 +08:00
Régis Hanol 343396e182 bump email_reply_trimmer 2016-11-17 23:33:16 +01:00
Robin Ward ed1720cd02 Rollback Rails Multisite - seems to have a bug 2016-11-17 16:10:54 -05:00
Régis Hanol 17f2be9f88 FEATURE: new 'enable_forwarded_email' site setting 2016-11-16 19:42:11 +01:00
Guo Xiang Tan 0d295cc7b9 Bump onebox for fixes. 2016-11-14 21:51:37 +08:00
Régis Hanol 80769a5acd bump onebox version 2016-11-14 10:45:13 +01:00
Guo Xiang Tan 8967357924 Update rails_multisite. 2016-11-14 09:56:34 +08:00
Régis Hanol 6b65c009e1 bump onebox 2016-11-07 22:22:25 +01:00
Arpit Jalan 36127b6eca update onebox gem 2016-11-06 15:23:18 +05:30
Guo Xiang Tan 83de81930f Update gems. 2016-11-04 09:02:09 +08:00
Guo Xiang Tan 3277fb1c78 Remove unused gem. 2016-11-04 08:30:49 +08:00
Régis Hanol 3255a215ec bump onebox 2016-11-03 01:46:46 +01:00
Sam a5bf3b88a7 FIX: mini_racer will no longer Dispose forked isolates 2016-11-02 22:20:29 +11:00
Sam 55e33414bb update mini_racer to latest version 2016-10-25 13:21:02 +11:00
Guo Xiang Tan becff2de4d Update gems. 2016-10-14 11:01:35 +08:00
Régis Hanol 726eb7bdca bump email_reply_trimmer to latest version 2016-10-12 19:57:05 +02:00
Arpit Jalan bd03061028 update onebox gem version 2016-10-10 00:37:56 +05:30
Sam 846a08d3c7 FIX: improve error results for message bus failures 2016-08-25 15:39:39 +10:00
Arpit Jalan 4f25010844 bump onebox version 2016-08-23 18:12:51 +05:30
Guo Xiang Tan 9144fe5dc7 Update aws-sdk gem. 2016-08-15 12:15:46 +08:00
Guo Xiang Tan b89489b65c SECURITY: Upgrade Rails. 2016-08-13 09:25:06 +08:00
Arpit Jalan e5695b573e bump onebox version 2016-08-11 19:48:08 +05:30
Arpit Jalan 6946efce91 bump onebox version 2016-08-10 19:25:24 +05:30
Arpit Jalan 90d4ea7099 bump onebox version 2016-08-08 20:40:50 +05:30
Guo Xiang Tan 463b536b85 Bump onebox. 2016-08-02 15:49:05 +08:00
Guo Xiang Tan d55da4fe1b Revert "Revert "Update rails.""
This reverts commit 4d27d7e1d3.
2016-07-18 11:00:23 +08:00
Robin Ward 4d27d7e1d3 Revert "Update rails."
This reverts commit 898ec43989.
2016-07-15 16:35:57 -04:00
Guo Xiang Tan 9353013b40 Merge pull request #4332 from tgxworld/bunch_of_fixes_for_backup
Bunch of fixes for backup
2016-07-15 17:26:30 +08:00
Guo Xiang Tan 898ec43989 Update rails. 2016-07-15 13:18:30 +08:00
Guo Xiang Tan 5f5e045271 Update aws-sdk. 2016-07-15 11:35:18 +08:00
Arpit Jalan c7bbc1cebf update onebox gem 2016-07-13 21:54:49 +05:30
Guo Xiang Tan 11ccce5a27 Bump logster. 2016-07-11 15:14:07 +08:00
Arpit Jalan ad16329b5c Update onebox gem 2016-06-29 21:31:50 +05:30
Guo Xiang Tan 9ed79d8ecd
Add Bullet gem to detect N+1 queries. 2016-06-28 09:29:42 +08:00
Sam 7f78cf3f1a update message bus to release gem 2016-06-21 10:10:54 +10:00
Régis Hanol 5e2545a578 FEATURE: improve support for (whitelisted) SVGs as images 2016-06-20 10:22:13 +02:00
Sam 9416c93a23 SECURITY: update logster 2016-06-20 12:12:48 +10:00
Sam 3160cdf2f4 update nokogiri to stable 2016-06-07 16:54:36 +10:00
Régis Hanol 11e303e278 update discourse_fastimage to latest (add support for SVG with doctype) 2016-06-06 17:11:16 +02:00
Guo Xiang Tan cb5be1fe8f
Upgrade rspec to 3.4.0. 2016-05-30 11:38:38 +08:00