discourse/lib/tasks
David Taylor 6c3df84a93
DEV: In themes:update, only update themes which are out-of-date (#15676)
Running `update_from_remote` and `save!` cause a number of side-effects, including instructing all clients to reload CSS files. If there are no changes, then this is wasteful, and can even cause a 'flicker' effect on clients as they reload CSS.

This commit checks if any updates are available before triggering `update_from_remote` / `save!`. This should be much faster, and stop the 'flickering' UX from happening on every themes:update run.

It also improves the output of the command to include the from/to commit hashes, which may be useful for debugging issues. For example:

```
Checking 'Alien Night | A Dark Discourse Theme' for 'default'... already up to date
Checking 'Star Wars' for 'default'... updating from d8a170dd to 66b9756f
Checking 'Media Overlay' for 'default'... already up to date
```
2022-01-21 18:23:26 +00:00
..
add_topic_to_quotes.rake
admin.rake FIX: Create email token with correct scope (#15658) 2022-01-20 16:38:56 +02:00
annotate.rake
api.rake
assets.rake DEV: Support for running theme test with Ember CLI (third attempt) 2022-01-13 16:02:07 -05:00
auto_annotate_models.rake
autospec.rake DEV: Add API docs for uploads and API doc watcher (#15387) 2021-12-23 08:40:15 +10:00
avatars.rake
backfill.thor
categories.rake FIX: rake categories:move_topics shouldn't move category description topic (#14797) 2021-11-03 11:27:51 +08:00
cdn.rake DEV: Fix rubocop issues (#14715) 2021-10-27 11:39:28 +03:00
db.rake Revert "DEV: increase lock timeout for multisite migration (#14831)" (#14883) 2021-11-11 16:16:53 +03:00
destroy.rake
dev.rake
docker.rake DEV: Wait for initdb to complete in docker.rake (#15614) 2022-01-17 17:45:39 +00:00
emails.rake DEV: Use EmailSettingsValidator in more places (#15404) 2022-01-04 08:30:48 +10:00
emoji.rake FEATURE: Add missing emojis (#15582) 2022-01-14 17:51:13 -03:00
export.rake
groups.rake
i18n.rake
images.rake
import.rake
incoming_emails.rake
integration.rake DEV: Remove hints of jshint (#14828) 2021-11-08 09:12:37 +08:00
javascript.rake DEV: Fix methods removed in Ruby 3.2 (#15459) 2022-01-05 18:45:08 +01:00
log.rake
maxminddb.rake
plugin.rake DEV: Update rake qunit:test and rake plugin:qunit to use testem 2022-01-18 10:16:29 +00:00
populate.rake
populate.thor
posts.rake FIX: LocalJumpError in rake tasks (#14874) 2021-11-10 16:53:55 +01:00
qunit.rake DEV: Update rake qunit:test and rake plugin:qunit to use testem 2022-01-18 10:16:29 +00:00
redis.rake FIX: LocalJumpError in rake tasks (#14874) 2021-11-10 16:53:55 +01:00
release_note.rake DEV: Fix methods removed in Ruby 3.2 (#15459) 2022-01-05 18:45:08 +01:00
rspec.rake
s3.rake DEV: Fix methods removed in Ruby 3.2 (#15459) 2022-01-05 18:45:08 +01:00
scheduler.rake
search.rake
site_settings.rake
site.rake DEV: Fix methods removed in Ruby 3.2 (#15459) 2022-01-05 18:45:08 +01:00
smoke_test.rake DEV: Fix methods removed in Ruby 3.2 (#15459) 2022-01-05 18:45:08 +01:00
svg_icons.rake
tags.rake
themes.rake DEV: In themes:update, only update themes which are out-of-date (#15676) 2022-01-21 18:23:26 +00:00
topics.rake FIX: LocalJumpError in rake tasks (#14874) 2021-11-10 16:53:55 +01:00
turbo.rake
typepad.thor
uploads.rake DEV: Try to download missing uploads from origin URL (#15629) 2022-01-19 11:05:58 +01:00
users.rake