Commit Graph

81 Commits

Author SHA1 Message Date
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
Sam 473363e0fa only enable bullet on demand 2016-07-05 11:10:42 +10:00
Guo Xiang Tan 4a143d584b
Don't log bullet alerts in the console. 2016-06-29 09:36:32 +08:00
Guo Xiang Tan 3e07658fb2
Don't alert. 2016-06-28 11:53:45 +08:00
Guo Xiang Tan 9ed79d8ecd
Add Bullet gem to detect N+1 queries. 2016-06-28 09:29:42 +08:00
Régis Hanol 5943483ef5 nope nope nope 2016-06-03 17:25:39 +02:00
Régis Hanol 9704603fab FEATURE: sendgrid webhooks 2016-06-01 21:48:06 +02:00
Sam bd9bc7918c FIX: downcase developer emails do it matches internal email storage 2016-05-27 12:18:54 +10:00
Guo Xiang Tan 9e25e4baa8
[CI SKIP] Typo. 2016-04-18 11:40:04 +08:00
Sam 613761d1cd FEATURE: upgrade to Rails 4.2.4 2015-09-23 15:24:30 +10:00
Kane York ecfa17b5a7 FEATURE: Localization fallbacks (server-side)
The FallbackLocaleList object tells I18n::Backend::Fallbacks what order the
languages should be attempted in. Because of the translate_accelerator patch,
the SiteSetting.default_locale is *not* guaranteed to be fully loaded after the
server starts, so a call to ensure_loaded! is added after the locale is set for
the current user.

The declarations of config.i18n.fallbacks = true in the environment files were
actually garbage, because the I18n.default_locale was
SiteSetting.default_locale, so there was nothing to fall back to. *derp*
2015-07-15 10:17:36 -07:00
Sam 2599b94920 ignore uploads for mini profiler 2015-04-17 12:16:37 +10:00
Robin Ward c7d367996a PERF: Concatenate scripts in development mode
This improves my DOMContentLoaded from 9s+ to less than 4s.
Pinging @SamSaffron on this because this was previously controversial.

This implementation adds the `@sourceURL` directive so chrome correctly
identifies the source files.
2015-04-16 15:40:23 -04:00
Arpit Jalan c84b51d4ae FEATURE: show exact error for test email 2014-11-19 22:58:59 +05:30
Sam 85e5e912b2 be explicit about log level 2014-11-17 18:03:11 +11:00
Sam 34180eba93 FIX: official benchmark crashing while populating db 2014-11-11 10:28:17 +11:00
Robin Ward 65ab88da77 Let's try to change Uglifier settings properly 2014-10-15 16:51:16 -04:00
Robin Ward bc01589ea5 Add `screw_ie8` setting 2014-10-15 16:28:06 -04:00
Robin Ward 0a14d80f4a Don't specify uglifier in dev 2014-10-15 16:23:06 -04:00
Robin Ward 42d9dedad1 Check if `Uglifier` is defined (we're precompiling assets) 2014-10-15 16:08:00 -04:00
Robin Ward 8a6f9425d4 Fix uglifier args 2014-10-15 16:00:45 -04:00
Robin Ward 309144d9fc Let's try telling uglifier to user 1k lines 2014-10-15 15:55:55 -04:00
Godfrey Chan 2dd2b70994 *Don't* silence the deprecation warnings in test
This is actually where we are most likely to see it (and we should try to deal
with those as soon as possible, ideally when upgrading).
2014-10-11 15:02:15 -07:00
Akshay 7cd8b4f329 raise migration error in development if pending migrations 2014-10-04 07:02:30 +05:30
Sam 68a3fd5ef0 FIX: developer emails not working on ruby 2.0 2014-08-30 09:07:30 +10:00
Sam b7e8bcda07 FIX: strip leading/trailing spaces from developer emails 2014-08-29 12:21:33 +10:00
Akshay 6301a43d57 Not initializing variable for looping if unused in loop 2014-08-15 03:24:55 +05:30
Sam 9468ebeb2e CHANGE: Mini Profiler only enabled for developers in prd 2014-07-17 08:34:41 +10:00
Sam 6019e3f257 FIX: remove hardcoding from middleware stack so we can control it 2014-07-10 17:01:21 +10:00
Sam 97373535c8 A regression here worries me too much 2014-05-14 11:27:29 +10:00
Claus Strasburger b53248178b Added `openssl_verify_mode` parameter for action_mailer.
- parameter in `environments/production.rb`
- documentation & default value (nil) in `discourse_defaults.conf`
2014-05-08 22:21:36 +02:00
Sam 7e7c4efcc0 FEATURE: on initial boot hint users on how to get admin 2014-03-24 18:03:39 +11:00
Sam 76c7d42027 require rbtrace in development cause it is handy 2014-03-18 15:22:53 +11:00
Stephan Kaag f12925887c Drop Rails3 support 2014-02-17 19:42:08 +01:00
Sam 73aca9063d FEATURE: allow overriding server static asset if needed 2014-02-17 10:44:37 +11:00
Robin Ward 18e719b0af In development mode, if an avatar is missing just serve up a placeholder 2014-01-17 11:47:23 -05:00
Vikhyat Korrapati 6d50504a83 Make SMTP authentication mechanism configurable. 2014-01-06 18:19:42 +05:30
illspirit 1b2e3bf141 Fix smtp settings, added password 2013-12-20 20:50:17 -05:00
Sam bac2d21382 strip out nil settings from config 2013-12-20 19:12:08 +11:00
Sam b312b4d563 clean up config to use global settings 2013-12-20 15:12:23 +11:00
Sam 66afabcf4c stop messing with asset pipeline defaults
stripping postfixes is wasteful and uneeded. It messes up our build
2013-12-19 12:33:17 +11:00
Sam ffffee3ae1 IMPORTANT - removed all sample files
This is very likely to cause merge conflict, it is for the greater good
Discuss at: http://meta.discourse.org/t/enough-with-the-sample-files/10351

From now on we use ENV to customise if needed
2013-12-18 16:46:37 +11:00
Sam 646cca3128 Good luck getting this updated everywhere, kicking myself really hard for allowing these stupid sample files
see: http://meta.discourse.org/t/enough-with-the-sample-files/10351

Our default sample setup was not minifying css or js causing js and css to be 2.5x larger than it needed

Anyone using my docker setup, please run a new bootstrap. Anyone else, apply diff manually.
2013-12-16 18:21:24 +11:00
Régis Hanol 78b2c5acff use CDN_URL environement variable in production 2013-11-29 18:35:29 +01:00
Sam 9d13c6b931 we need this eager load thing 2013-11-26 15:16:56 +11:00
Régis Hanol eb9c1f28ed add debug mode to autospec 2013-11-05 11:01:17 +01:00
Sam a2efe27a58 allow compile in profile. 2013-11-05 14:12:26 +11:00
Sam 8ff35d4b10 automatically make developers admins on account creation, this solves the user #1 problem
you can simply set the DEVELOPER_EMAILS to a comma delimited list and the users will be auto admined
2013-11-02 10:26:02 +11:00
Faraz Yashar 69460b8f9b Remove best standards support for Rails 4 since it's been removed from ActionDispatch 2013-10-17 15:36:18 -04:00
Sam 3d647a4b41 remove rack cache, it has been causing trouble
instead implement an aggressive anonymous cache that is stored in redis
this cache is sitting in the front of the middleware stack enabled only in production
TODO: expire it more intelligently when stuff is created
2013-10-16 16:39:18 +11:00