discourse/lib
Sam 6a3c8fe69c FEATURE: protect against accidental column or table drops
Often we need to amend our schema, it is tempting to use
drop_table, rename_column and drop_column to amned schema
trouble though is that existing code that is running in production
can depend on the existance of previous schema leading to application
breaking until new code base is deployed.

The commit enforces new rules to ensure we can never drop tables or
columns in migrations and instead use Migration::ColumnDropper and
Migration::TableDropper to defer drop the db objects
2018-03-21 15:43:32 +11:00
..
active_record/connection_adapters Expose `replica_postgresql_connection` to `ActiveRecord::Base`. 2017-11-24 09:35:45 +08:00
auth Prefer to use primary email for new user creation over other available emails 2018-03-19 17:10:35 +05:30
autospec Switch to chrome headless mode instead of phantomjs. 2017-12-19 16:00:43 +08:00
backup_restore backup restorer: tidy pg_dump schema portability logic, add test 2018-03-20 10:32:39 +08:00
common_passwords
demon demo script for demonizing using fork exec 2018-01-11 13:51:52 +11:00
email FIX: extracting mail content from exchange emails 2018-03-14 22:02:43 +01:00
emoji Adds :puke: as alias to :face_vomiting: 2018-02-24 17:11:04 +01:00
es6_module_transpiler FEATURE: Use Glimmer compiler for widget templates 2017-09-01 09:28:16 -04:00
file_store FIX: cache_file storage cleanup logic was wrong 2018-01-18 17:00:04 +01:00
freedom_patches FEATURE: protect against accidental column or table drops 2018-03-21 15:43:32 +11:00
guardian FEATURE: Shared Drafts 2018-03-20 17:15:26 -04:00
highlight_js update highlight.js to 9.12.0 2017-07-05 11:12:10 +02:00
i18n FEATURE: Allow plugins to register a new locale 2018-01-25 14:57:41 +01:00
import Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
import_export FEATURE: add category suppress from latest 2018-02-22 09:56:35 +11:00
javascripts Correct Arabic month names 2018-01-14 20:01:45 +01:00
middleware FEATURE: detect when client thinks user is logged on but is not 2018-03-06 16:49:31 +11:00
migration FEATURE: protect against accidental column or table drops 2018-03-21 15:43:32 +11:00
onebox FIX: local post onebox was always pointing to 1st post 2018-02-26 16:05:35 +01:00
plugin Add "discourse-assign" to the list of official plugins. 2018-03-06 21:45:37 +08:00
pretty_text FEATURE: Add `quote-modified` class if a quote has been modified 2018-03-13 13:41:06 -04:00
rate_limiter FIX: regression around rate limiter 2017-12-04 21:44:16 +11:00
scheduler PERF: stop running background work between requests 2017-11-23 15:48:47 +11:00
search FEATURE: show tags in search results 2017-08-25 11:52:59 -04:00
sidekiq FEATURE: raise an event when a sidekiq job runs 2017-10-23 17:30:17 +11:00
site_settings FEATURE: Shared Drafts 2018-03-20 17:15:26 -04:00
stylesheet also watch CSS in unicorn on dev 2018-03-09 17:47:57 +11:00
tasks Allow `uploads:missing` to skip optimized image check. 2018-03-12 20:08:53 +08:00
theme_store FEATURE: prototype of local theme directory watcher 2018-03-12 18:36:06 +11:00
validators FIX: do not treat :: as a valid emoji 2018-03-05 15:35:24 +01:00
wizard FIX: staff count on invites step of wizard should only include real users 2017-08-14 22:17:41 -04:00
admin_confirmation.rb
admin_constraint.rb Add extensibility to admin constraints 2018-01-25 13:56:08 -05:00
admin_user_index_query.rb PERF: PG queries for the `UserEmail#email` column was not using the index. 2018-03-19 11:31:14 +08:00
age_words.rb
archetype.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
auth.rb
avatar_lookup.rb Remove irrelevant comment. 2017-09-08 14:07:24 +08:00
badge_queries.rb FEATURE: Support an end date for user silencing 2017-11-14 13:20:19 -05:00
base62.rb remove constant warning in base62 file 2018-01-19 19:52:42 +01:00
cache.rb Fix all the errors to get our tests green on Rails 5.1. 2017-09-25 13:48:58 +08:00
canonical_url.rb
category_badge.rb FIX: Category badge style of none was causing errors when rendering 2017-08-24 13:45:32 -04:00
comment_migration.rb Fix all the errors to get our tests green on Rails 5.1. 2017-09-25 13:48:58 +08:00
composer_messages_finder.rb REFACTOR: Use `Topic#private_message?` to reduce duplication. 2018-03-05 15:39:22 +08:00
configurable_urls.rb
content_buffer.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
cooked_post_processor.rb FEATURE: Add `quote-modified` class if a quote has been modified 2018-03-13 13:41:06 -04:00
crawler_detection.rb correct specs, ensure crawler layout only applies to html 2018-01-16 16:28:11 +11:00
current_user.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
custom_renderer.rb
custom_setting_providers.rb
db_helper.rb
directory_helper.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
discourse.rb SECURITY: correct local onebox category checks 2018-02-14 10:40:46 +11:00
discourse_cookie_store.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
discourse_diff.rb UX: Adding a sticky footer to the post history modal, removing bootstrap columns 2018-01-29 15:15:50 -05:00
discourse_event.rb Remove stubs on DiscourseEvent in tests. 2017-06-01 16:21:00 +09:00
discourse_hub.rb DEV: private means nothing for class methods 2017-11-01 16:43:19 +11:00
discourse_iife.rb
discourse_logstash_logger.rb FIX: `severity_name` was being logged incorrectly. 2017-11-17 08:55:21 +08:00
discourse_plugin.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
discourse_plugin_registry.rb FEATURE: Allow plugins to register a new locale 2018-01-25 14:57:41 +01:00
discourse_redis.rb FIX: in readonly mode don't double count pages 2017-10-25 13:19:43 +11:00
discourse_tagging.rb FIX: when creating a topic in a category that only allows tags from a tag group, don't allow creation of new tags 2018-03-19 11:42:10 -04:00
discourse_updates.rb REFACTOR: Avoid duplicated logic on server and client. 2017-11-21 17:10:04 +08:00
disk_space.rb
distributed_cache.rb Allow `DistributedCache#delete` to not publish changes. 2017-10-20 23:03:42 +08:00
distributed_memoizer.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
distributed_mutex.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
edit_rate_limiter.rb
email.rb Upgrade mail gem to remove dependency on mime-types. 2018-03-14 14:37:55 +08:00
email_backup_token.rb
email_cook.rb replace indentation with non-breaking spaces when cooking emails 2017-11-18 17:16:44 +01:00
email_updater.rb FIX: Don't skip validations when updating user's email. 2017-11-08 11:38:51 +08:00
enum.rb
enum_site_setting.rb
excerpt_parser.rb FIX: Calculation of text length for <details> in excerpt was wrong 2018-03-12 16:55:23 +01:00
feed_element_installer.rb FEATURE: Replace SimpleRSS with Ruby RSS module (#5311) 2017-12-06 10:45:09 +11:00
feed_item_accessor.rb FEATURE: Replace SimpleRSS with Ruby RSS module (#5311) 2017-12-06 10:45:09 +11:00
file_helper.rb FIX: don't double request when downloading a file 2018-02-24 12:35:57 +01:00
filter_best_posts.rb PERF: Remove `Object#present?` check introduced in e0d5d9670a. 2017-09-07 21:36:27 +08:00
final_destination.rb FIX: Retry with GET request when HEAD fails with error 400 2018-02-27 12:07:16 +01:00
flag_query.rb Many enhancements to the flagging / suspending interface. 2018-02-01 17:13:02 -05:00
flag_settings.rb Refactor flag types for more customization 2017-10-19 13:55:23 -04:00
gaps.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
global_path.rb FEATURE: allow specifying s3 config via globals 2017-10-06 16:20:01 +11:00
guardian.rb FIX: user should not be able to invite to PM if trust level requirment not met 2018-03-08 14:59:04 +05:30
has_errors.rb
headless-ember.js
hijack.rb FEATURE: detect when client thinks user is logged on but is not 2018-03-06 16:49:31 +11:00
homepage_constraint.rb FEATURE: Allow the user to select a custom home page (#5268) 2017-11-10 06:45:19 +11:00
html_prettify.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
html_to_markdown.rb FIX: handle <pre> inside <blockquote> in html_to_markdown 2018-02-26 23:28:02 +01:00
image_sizer.rb
inline_oneboxer.rb FIX: inline oneboxer min title length of 2 2018-01-30 08:40:04 +11:00
introduction_updater.rb
ip_addr.rb
js_locale_helper.rb FEATURE: Allow plugins to register a new locale 2018-01-25 14:57:41 +01:00
json_error.rb FEATURE: View flags grouped by topic 2017-09-25 12:25:14 -04:00
letter_avatar.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
markdown_linker.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
mem_info.rb
memory_diagnostics.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
message_bus_diags.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
method_profiler.rb FIX: stop double counting net calls in logs 2018-02-28 10:45:11 +11:00
mobile_detection.rb
new_post_manager.rb UX: when a post is blocked due to a watched word, message includes the word being blocked 2018-02-28 11:22:18 -05:00
new_post_result.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
notification_levels.rb
oneboxer.rb SECURITY: Oneboxer should escape the URL before processing 2018-03-15 19:57:55 +05:30
onpdiff.rb
pbkdf2.rb more prep work for jRuby 2018-02-26 10:25:58 +11:00
permalink_constraint.rb
pinned_check.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
plain_text_to_markdown.rb FEATURE: convert plain text emails to markdown 2017-12-06 01:47:51 +01:00
plugin_gem.rb Add some more debugging information when a plugin can't find a gem 2017-08-02 14:00:18 -04:00
post_action_creator.rb PERF: Avoid calling expensive `PostGuardian#can_see_post?` multiple times. 2017-09-08 14:07:24 +08:00
post_creator.rb FEATURE: Shared Drafts 2018-03-20 17:15:26 -04:00
post_destroyer.rb FIX: be consistent with how first posts in topics are counted. do like DirectoryItem.refresh_period :all 2017-11-10 12:18:25 -05:00
post_enqueuer.rb
post_jobs_enqueuer.rb FEATURE: Live updates for user's messages page. 2018-03-06 18:15:21 +08:00
post_locker.rb FEATURE: Staff members can lock posts 2018-01-26 14:01:30 -05:00
post_merger.rb
post_revisor.rb FIX: Not logging old post contents properly 2018-03-14 15:01:36 -04:00
pretty_text.rb Remove censored_pattern site setting, which is replaced by watched words 2018-02-26 16:29:27 -05:00
primary_group_lookup.rb PERF: Remove N+1 query when generating posters summary. 2017-09-14 12:07:35 +08:00
promotion.rb REFACTOR: Track manual locked user levels separately from groups 2017-11-27 11:23:44 -05:00
quote_comparer.rb FEATURE: Add `quote-modified` class if a quote has been modified 2018-03-13 13:41:06 -04:00
rate_limiter.rb Add guard for `nil` in our `RateLimiter`. 2018-03-01 13:20:42 +08:00
retrieve_title.rb FIX: inline oneboxer min title length of 2 2018-01-30 08:40:04 +11:00
route_format.rb FIX: `RouteFormat` is a better class name than `RouteFormats` 2017-12-21 15:30:32 -05:00
rtl.rb DEV: Move RTL into lib where it belongs 2017-07-03 15:26:57 -04:00
s3_helper.rb FIX: error setting tombstone bucket when set to old version 2017-11-13 15:36:45 +11:00
score_calculator.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
screening_model.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
search.rb FEATURE: search within title using in:title 2018-02-20 14:41:21 +11:00
secure_session.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
single_sign_on.rb Fix "duplicate method" issue 2017-11-02 12:33:35 +01:00
site_setting_extension.rb FIX: bypass all site setting work for shadowed method 2017-10-27 11:12:44 +11:00
slug.rb FIX: `Topic#title` were being parameterized when encoded slug is 2017-10-27 11:02:47 +08:00
socket_server.rb
source_url.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
spam_handler.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
sql_builder.rb Fix all the errors to get our tests green on Rails 5.1. 2017-09-25 13:48:58 +08:00
staff_constraint.rb FIX: Return 404 if API access is invalid. 2017-08-10 18:27:01 +09:00
staff_message_format.rb More extensibility for custom silence/suspend messages 2018-01-19 11:35:19 -05:00
stats_socket.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
suggested_topics_builder.rb Avoid allocating an extra array. 2017-09-08 14:07:24 +08:00
system_message.rb
text_cleaner.rb FIX: strip zero width spaces from topic title 2018-02-21 00:12:39 +05:30
text_sentinel.rb rename 'min_private_message_{post/title}_length' to 'min_personal_message_{post/title}_length' 2018-02-01 13:25:29 +05:30
theme_settings_manager.rb FEATURE: Theme settings (2) (#5611) 2018-03-04 19:04:23 -05:00
theme_settings_parser.rb FEATURE: Theme settings (2) (#5611) 2018-03-04 19:04:23 -05:00
timeline_lookup.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
topic_creator.rb FEATURE: Shared Drafts 2018-03-20 17:15:26 -04:00
topic_list_responder.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
topic_publisher.rb FEATURE: Shared Drafts 2018-03-20 17:15:26 -04:00
topic_query.rb FEATURE: Shared Drafts 2018-03-20 17:15:26 -04:00
topic_query_sql.rb
topic_retriever.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
topic_subtype.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
topic_view.rb optimize query for fetching PM created in previous hour 2018-03-12 16:40:17 +05:30
topics_bulk_action.rb FEATURE: Live updates for user's messages page. 2018-03-06 18:15:21 +08:00
trust_level.rb
twitter_api.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
unread.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
upload_creator.rb FIX: catch all server-side error when uploading a file 2017-12-27 16:33:25 +01:00
url_helper.rb Move escape_uri method to a more suitable place 2017-12-12 20:17:46 +01:00
user_name_suggester.rb
version.rb Version bump to v2.0.0.beta4 2018-03-07 15:18:26 -05:00
wizard.rb Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00