diff --git a/Gemfile.lock b/Gemfile.lock index 379101a2c7e..b59803ab6ac 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -271,7 +271,6 @@ GEM openid-redis-store (0.0.2) redis ruby-openid - optimist (3.0.0) parallel (1.12.1) parser (2.5.3.0) ast (~> 2.4.0) @@ -321,10 +320,10 @@ GEM rb-fsevent (0.10.3) rb-inotify (0.9.10) ffi (>= 0.5.0, < 2) - rbtrace (0.4.11) + rbtrace (0.4.10) ffi (>= 1.0.6) msgpack (>= 0.4.3) - optimist (>= 3.0.0) + trollop (>= 1.16.2) rchardet (1.8.0) redis (4.0.1) redis-namespace (1.6.0) @@ -421,6 +420,7 @@ GEM thor (0.19.4) thread_safe (0.3.6) tilt (2.0.8) + trollop (2.1.2) tzinfo (1.2.5) thread_safe (~> 0.1) uglifier (4.1.11) diff --git a/app/assets/stylesheets/common/base/user.scss b/app/assets/stylesheets/common/base/user.scss index caffa6c8a4e..b678408b0c1 100644 --- a/app/assets/stylesheets/common/base/user.scss +++ b/app/assets/stylesheets/common/base/user.scss @@ -400,44 +400,6 @@ list-style: none; margin: 0; } - - .username, .name { - display: block; - } - - .name { - margin-left: 0; - } -} - -.user-nav { - margin: 5px 0px; - .fa { - margin-right: 5px; - } - .fa.fa-comment { - margin-right: 2px; - } -} - -.user-right .list-actions { - margin-bottom: 10px; - .btn { - margin-right: 10px; - } -} - -.top-section { - ul { - list-style: none; - margin: 0; - } -} - -.top-section, -.replies-section, -.topics-section { - margin-bottom: 20px; } .top-section, diff --git a/app/jobs/onceoff/recover_post_uploads.rb b/app/jobs/onceoff/recover_post_uploads.rb deleted file mode 100644 index ef3fb0b5aa2..00000000000 --- a/app/jobs/onceoff/recover_post_uploads.rb +++ /dev/null @@ -1,22 +0,0 @@ -require_dependency "upload_recovery" - -module Jobs - class RecoverPostUploads < Jobs::Onceoff - MIN_PERIOD = 30 - MAX_PERIOD = 120 - - def execute_onceoff(args) - UploadRecovery.new.recover(Post.where( - "baked_at >= ?", - grace_period.days.ago - )) - end - - def grace_period - SiteSetting.purge_deleted_uploads_grace_period_days.clamp( - MIN_PERIOD, - MAX_PERIOD - ) - end - end -end diff --git a/config/locales/client.bs_BA.yml b/config/locales/client.bs_BA.yml index 3f3da516491..70f79f18997 100644 --- a/config/locales/client.bs_BA.yml +++ b/config/locales/client.bs_BA.yml @@ -510,7 +510,6 @@ bs_BA: "14": "Na čekanju." categories: all: "Sve kategorije" - all_subcategories: "sve u %{categoryName}" no_subcategory: "nijedna" category: "Kategorija" category_list: "Prikaži listu kategorija" diff --git a/config/locales/client.pt_BR.yml b/config/locales/client.pt_BR.yml index 71dc01204ec..bb4ba1ab9aa 100644 --- a/config/locales/client.pt_BR.yml +++ b/config/locales/client.pt_BR.yml @@ -789,9 +789,6 @@ pt_BR: email_always: "Envie-me notificações mesmo quando eu estiver ativo no site." other_settings: "Outros" categories_settings: "Categorias" - enable_mailing_list: - one: "Você tem certeza de que deseja receber um email para cada novo post?" - other: "Você tem certeza de que deseja receber um email para cada novo post?<br><br>Isso vai resultar em aproximadamente <b>{{count}} emails</b> por dia." new_topic_duration: label: "Considerar tópicos como novos quando" not_viewed: "Eu ainda não os vi" diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml index 82a911e0306..ddea713c1c6 100644 --- a/config/locales/server.en.yml +++ b/config/locales/server.en.yml @@ -1682,7 +1682,6 @@ en: levenshtein_distance_spammer_emails: "When matching spammer emails, number of characters difference that will still allow a fuzzy match." max_new_accounts_per_registration_ip: "If there are already (n) trust level 0 accounts from this IP (and none is a staff member or at TL2 or higher), stop accepting new signups from that IP." - min_ban_entries_for_roll_up: "When clicking the Roll up button, will create a new subnet ban entry if there are at least (N) entries." max_age_unmatched_emails: "Delete unmatched screened email entries after (N) days." diff --git a/config/locales/server.fr.yml b/config/locales/server.fr.yml index 816fb2969d0..b0b36b2d84f 100644 --- a/config/locales/server.fr.yml +++ b/config/locales/server.fr.yml @@ -3555,35 +3555,6 @@ fr: ## [Changements à notre politique de confidentialité](#changes) Si nous décidons de changer notre politique de confidentialité, nous afficherons ces modifications sur cette page. Ce document est soumis à la licence creative commons CC-BY-SA. Il a été mis à jour le 31 mai 2013. - static: - search_help: | - <h3>Astuces</h3> - <p> - <ul> - <li>Les résultats dont le titre correspond à la recherche sont retournés en priorité – en cas de doutes, recherchez dans les titres</li> - <li>Pour obtenir de meilleurs résultats, utilisez toujours des mots rares ou peu fréquents</li> - <li>Dès que possible, limitez vos recherches à une catégorie en particulier, à un utilisateur ou à un sujet</li> - </ul> - </p> - <h3>Options</h3> - <p> - <table> - <tr><td><code>order:views</code></td><td><code>order:latest</code></td><td><code>order:likes</code></td><td><code>@username</code></td><td><code>user:foo</code></td></tr> - <tr><td><code>status:open</code></td><td><code>status:closed</code></td><td><code>status:archived</code></td><td><code>status:noreplies</code></td><td><code>status:single_user</code></td></tr> - <tr><td><code>#category-slug</code></td><td><code>category:foo</code></td><td><code>group:foo</code></td><td><code>badge:foo</code></td><td></td></tr> - <tr><td><code>in:likes</code></td><td><code>in:posted</code></td><td><code>in:watching</code></td><td><code>in:tracking</code></td><td><code>in:private</code></td></tr> - <tr><td><code>in:bookmarks</code></td><td><code>in:first</code></td><td><code>in:pinned</code></td><td><code>in:unpinned</code></td><td><code>in:wiki</code></td></tr> - <tr><td><code>posts_count:num</code></td><td><code>before:days or date</code></td><td><code>after:days or date</code></td><td><code>tags:one,two</code></td><td></td></tr> - </table> - </p> - <h3>Examples</h3> - <p> - <ul> - <li><code>rainbows #parks</code> cherchera les sujets dans la catégorie "parks" qui contiennent le mot "rainbows".</li> - <li><code>rainbows category:parks status:open order:latest</code> cherchera les sujets dans la catégorie "parks" en ordre chronologique qui contiennent le mot "rainbows" et qui ne sont ni fermé ni archivé. - <li><code>rainbows category:"parks and gardens" in:bookmarks</code> cherchera les sujets dans la catégorie "parks and gardens" qui contiennent le mot "rainbows" et qui sont dans vos signets.</li> - </ul> - </p> badges: editor: name: Éditeur diff --git a/config/nginx.sample.conf b/config/nginx.sample.conf index 7fd696bca7e..48bb7a3c152 100644 --- a/config/nginx.sample.conf +++ b/config/nginx.sample.conf @@ -71,7 +71,7 @@ server { # further more etags are based on the file in nginx not sha of data # use dates, it solves the problem fine even cross server etag off; - + # prevent direct download of backups location ^~ /backups/ { internal; diff --git a/discourse.iml b/discourse.iml deleted file mode 100644 index 13f1cee409f..00000000000 --- a/discourse.iml +++ /dev/null @@ -1,215 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<module type="RUBY_MODULE" version="4"> - <component name="FacetManager"> - <facet type="RailsFacetType" name="Ruby on Rails"> - <configuration> - <RAILS_FACET_CONFIG_ID NAME="RAILS_FACET_SUPPORT_REMOVED" VALUE="false" /> - <RAILS_FACET_CONFIG_ID NAME="RAILS_TESTS_SOURCES_PATCHED" VALUE="true" /> - <RAILS_FACET_CONFIG_ID NAME="RAILS_FACET_APPLICATION_ROOT" VALUE="$MODULE_DIR$" /> - </configuration> - </facet> - </component> - <component name="NewModuleRootManager" inherit-compiler-output="true"> - <exclude-output /> - <content url="file://$MODULE_DIR$"> - <sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/spec" isTestSource="true" /> - <excludeFolder url="file://$MODULE_DIR$/.bundle" /> - <excludeFolder url="file://$MODULE_DIR$/components" /> - <excludeFolder url="file://$MODULE_DIR$/public/system" /> - <excludeFolder url="file://$MODULE_DIR$/tmp" /> - <excludeFolder url="file://$MODULE_DIR$/vendor/bundle" /> - </content> - <orderEntry type="inheritedJdk" /> - <orderEntry type="sourceFolder" forTests="false" /> - <orderEntry type="library" scope="PROVIDED" name="actionmailer (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="actionpack (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="actionview (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="active_model_serializers (v0.8.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="activejob (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="activemodel (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="activerecord (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="activesupport (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="annotate (v2.7.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="arel (v6.0.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="aws-sdk (v2.3.22, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="aws-sdk-core (v2.3.22, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="aws-sdk-resources (v2.3.22, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="babel-source (v5.8.34, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="babel-transpiler (v0.7.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="barber (v0.11.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="better_errors (v2.1.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="binding_of_caller (v0.7.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="builder (v3.2.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="bullet (v5.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="bundler (v1.13.6, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="byebug (v8.2.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="certified (v1.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="coderay (v1.1.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="concurrent-ruby (v1.0.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="connection_pool (v2.2.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="crass (v1.0.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="daemons (v1.2.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="debug_inspector (v0.0.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.2.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="discourse-qunit-rails (v0.0.9, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="discourse_fastimage (v2.0.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="docile (v1.1.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="domain_name (v0.5.25, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="email_reply_trimmer (v0.1.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="ember-data-source (v1.0.0.beta.16.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="ember-handlebars-template (v0.7.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="ember-rails (v0.18.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="ember-source (v1.12.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="erubis (v2.7.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="eventmachine (v1.2.0.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="excon (v0.45.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="execjs (v2.7.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="exifr (v1.2.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="fabrication (v2.9.8, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="fakeweb (v1.3.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="faraday (v0.9.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="fast_blank (v1.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="fast_xor (v1.1.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="fast_xs (v0.8.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="ffi (v1.9.10, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="flamegraph (v0.9.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="foreman (v0.82.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="fspath (v2.1.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="given_core (v3.7.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="globalid (v0.3.6, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="guess_html_encoding (v0.0.11, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="hashie (v3.4.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="highline (v1.7.8, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="hiredis (v0.6.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="htmlentities (v4.3.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="http-cookie (v1.0.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="http_accept_language (v2.0.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="i18n (v0.7.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="image_optim (v0.20.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="image_size (v1.4.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="in_threads (v1.3.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="jmespath (v1.3.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="jquery-rails (v4.0.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="jwt (v1.5.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="kgio (v2.10.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="librarian (v0.1.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="libv8 (v5.3.332.38.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="listen (v0.7.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="logster (v1.2.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="loofah (v2.0.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="lru_redux (v1.1.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="mail (v2.6.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="memory_profiler (v0.9.6, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="message_bus (v2.0.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="metaclass (v0.0.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="method_source (v0.8.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="mime-types (v2.99.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="mini_portile2 (v2.1.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="mini_racer (v0.1.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="minitest (v5.9.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="mocha (v1.1.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="mock_redis (v0.15.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="moneta (v0.8.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="msgpack (v0.7.6, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="multi_json (v1.12.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="multi_xml (v0.5.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="multipart-post (v2.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="mustache (v1.0.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="netrc (v0.11.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="nokogiri (v1.6.8, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="nokogumbo (v1.4.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="oauth (v0.4.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="oauth2 (v1.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="oj (v2.14.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth (v1.3.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth-facebook (v3.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth-github-discourse (v1.1.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth-google-oauth2 (v0.3.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth-instagram (v1.0.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth-oauth (v1.1.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth-oauth2 (v1.3.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth-openid (v1.0.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="omniauth-twitter (v1.2.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="onebox (v1.5.44, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="openid-redis-store (v0.0.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="pg (v0.18.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="pkg-config (v1.1.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="progress (v3.1.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="pry (v0.10.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="pry-nav (v0.2.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="pry-rails (v0.3.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="puma (v3.2.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="r2 (v0.2.6, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rack (v1.6.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rack-mini-profiler (v0.10.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rack-openid (v1.3.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rack-protection (v1.5.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rack-test (v0.6.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rails (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rails-deprecated_sanitizer (v1.0.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rails-dom-testing (v1.0.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rails-html-sanitizer (v1.0.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rails-observers (v0.1.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rails_multisite (v1.0.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="railties (v4.2.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="raindrops (v0.16.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rake (v11.2.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rake-compiler (v0.9.9, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rb-fsevent (v0.9.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rb-inotify (v0.9.7, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rbtrace (v0.4.8, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="redis (v3.3.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="redis-namespace (v1.5.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rest-client (v1.8.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rinku (v2.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rmmseg-cpp (v0.2.9, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rspec (v3.4.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rspec-core (v3.4.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v3.4.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rspec-given (v3.7.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rspec-html-matchers (v0.7.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rspec-mocks (v3.4.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rspec-rails (v3.4.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rspec-support (v3.4.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="rtlit (v0.0.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="ruby-openid (v2.7.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="ruby-readability (v0.7.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sanitize (v4.0.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sass (v3.2.19, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sass-rails (v5.0.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="seed-fu (v2.3.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="shoulda (v3.5.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="shoulda-context (v1.2.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="shoulda-matchers (v2.8.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sidekiq (v4.1.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sidekiq-statistic (v1.2.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="simple-rss (v1.3.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="simplecov (v0.11.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="simplecov-html (v0.10.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sinatra (v1.4.6, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="slop (v3.6.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sorcerer (v1.0.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="spork (v1.0.0rc4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="spork-rails (v4.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sprockets (v3.6.3, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="sprockets-rails (v3.1.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="stackprof (v0.2.9, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="thin (v1.6.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="thor (v0.19.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="thread_safe (v0.3.5, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="tilt (v2.0.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="timecop (v0.8.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="trollop (v2.1.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="tzinfo (v1.2.2, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="uglifier (v3.0.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="unf (v0.1.4, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="unf_ext (v0.0.7.1, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="unicorn (v5.1.0, RVM: ruby-2.3.1) [gem]" level="application" /> - <orderEntry type="library" scope="PROVIDED" name="uniform_notifier (v1.9.0, RVM: ruby-2.3.1) [gem]" level="application" /> - </component> - <component name="RModuleSettingsStorage"> - <LOAD_PATH number="0" /> - <I18N_FOLDERS number="1" string0="$MODULE_DIR$/config/locales" /> - </component> -</module> \ No newline at end of file diff --git a/lib/final_destination.rb b/lib/final_destination.rb index c3fff9dcb55..a098df3b526 100644 --- a/lib/final_destination.rb +++ b/lib/final_destination.rb @@ -267,11 +267,6 @@ class FinalDestination return true if SiteSetting.whitelist_internal_hosts.split("|").any? { |h| h.downcase == @uri.hostname.downcase } end - # Whitelisted hosts - return true if hostname_matches?(SiteSetting.s3_cdn_url) || - hostname_matches?(GlobalSetting.try(:cdn_url)) || - hostname_matches?(Discourse.base_url_no_prefix) - address_s = @opts[:lookup_ip].call(@uri.hostname) return false unless address_s diff --git a/lib/upload_creator.rb b/lib/upload_creator.rb index fcc005632db..a1386feb2e3 100644 --- a/lib/upload_creator.rb +++ b/lib/upload_creator.rb @@ -49,10 +49,10 @@ class UploadCreator elsif !Rails.env.test? || @opts[:force_optimize] convert_to_jpeg! if should_convert_to_jpeg? downsize! if should_downsize? - fix_orientation! if should_fix_orientation? return @upload if is_still_too_big? + fix_orientation! if should_fix_orientation? crop! if should_crop? optimize! if should_optimize? end diff --git a/lib/validators/upload_url_validator.rb b/lib/validators/upload_url_validator.rb index 67f1e7af674..7823478aa77 100644 --- a/lib/validators/upload_url_validator.rb +++ b/lib/validators/upload_url_validator.rb @@ -7,7 +7,7 @@ class UploadUrlValidator < ActiveModel::EachValidator rescue URI::Error end - unless uri && Discourse.store.has_been_uploaded?(value) + unless uri && Upload.exists?(url: value) record.errors[attribute] << (options[:message] || I18n.t('errors.messages.invalid')) end end diff --git a/public/images/emoji/emoji_one/sushing_face.png b/public/images/emoji/emoji_one/sushing_face.png new file mode 100644 index 00000000000..b792bac92af Binary files /dev/null and b/public/images/emoji/emoji_one/sushing_face.png differ diff --git a/public/images/emoji/facebook_messenger/sushing_face.png b/public/images/emoji/facebook_messenger/sushing_face.png new file mode 100644 index 00000000000..cd0c5b5401f Binary files /dev/null and b/public/images/emoji/facebook_messenger/sushing_face.png differ diff --git a/public/images/emoji/google/sushing_face.png b/public/images/emoji/google/sushing_face.png new file mode 100644 index 00000000000..aa287807f1a Binary files /dev/null and b/public/images/emoji/google/sushing_face.png differ diff --git a/public/images/emoji/twitter/sushing_face.png b/public/images/emoji/twitter/sushing_face.png new file mode 100644 index 00000000000..e4427cbd153 Binary files /dev/null and b/public/images/emoji/twitter/sushing_face.png differ diff --git a/spec/jobs/recover_post_uploads_spec.rb b/spec/jobs/recover_post_uploads_spec.rb deleted file mode 100644 index 0448bc9adcf..00000000000 --- a/spec/jobs/recover_post_uploads_spec.rb +++ /dev/null @@ -1,17 +0,0 @@ -require 'rails_helper' - -RSpec.describe Jobs::RecoverPostUploads do - describe '#grace_period' do - it 'should restrict the grace period to the right range' do - SiteSetting.purge_deleted_uploads_grace_period_days = - described_class::MIN_PERIOD - 1 - - expect(described_class.new.grace_period).to eq(30) - - SiteSetting.purge_deleted_uploads_grace_period_days = - described_class::MAX_PERIOD + 1 - - expect(described_class.new.grace_period).to eq(120) - end - end -end diff --git a/spec/models/group_spec.rb b/spec/models/group_spec.rb index 33664ab13bb..37ef6736430 100644 --- a/spec/models/group_spec.rb +++ b/spec/models/group_spec.rb @@ -256,28 +256,6 @@ describe Group do end end - it "does not reset the localized name" do - begin - default_locale = SiteSetting.default_locale - I18n.locale = SiteSetting.default_locale = 'fi' - - group = Group.find(Group::AUTO_GROUPS[:everyone]) - group.update!(name: I18n.t("groups.default_names.everyone")) - - Group.refresh_automatic_group!(:everyone) - - expect(group.reload.name).to eq(I18n.t("groups.default_names.everyone")) - - I18n.locale = SiteSetting.default_locale = 'en' - - Group.refresh_automatic_group!(:everyone) - - expect(group.reload.name).to eq(I18n.t("groups.default_names.everyone")) - ensure - I18n.locale = SiteSetting.default_locale = default_locale - end - end - it "uses the localized name if name has not been taken" do begin default_locale = SiteSetting.default_locale diff --git a/spec/models/topic_embed_spec.rb b/spec/models/topic_embed_spec.rb index 3e51111930b..b9e1247929b 100644 --- a/spec/models/topic_embed_spec.rb +++ b/spec/models/topic_embed_spec.rb @@ -105,20 +105,6 @@ describe TopicEmbed do end end - context '.topic_id_for_embed' do - it "returns correct topic id irrespective of url protocol" do - topic_embed = Fabricate(:topic_embed, embed_url: "http://example.com/post/248") - - expect(TopicEmbed.topic_id_for_embed('http://exAMPle.com/post/248')).to eq(topic_embed.topic_id) - expect(TopicEmbed.topic_id_for_embed('https://example.com/post/248/')).to eq(topic_embed.topic_id) - - expect(TopicEmbed.topic_id_for_embed('http://example.com/post/248/2')).to eq(nil) - expect(TopicEmbed.topic_id_for_embed('http://examples.com/post/248')).to eq(nil) - expect(TopicEmbed.topic_id_for_embed('http://example.com/post/24')).to eq(nil) - expect(TopicEmbed.topic_id_for_embed('http://example.com/post')).to eq(nil) - end - end - describe '.find_remote' do context ".title_scrub" do diff --git a/spec/serializers/user_serializer_spec.rb b/spec/serializers/user_serializer_spec.rb index b2f1cb5f300..505294d1187 100644 --- a/spec/serializers/user_serializer_spec.rb +++ b/spec/serializers/user_serializer_spec.rb @@ -238,31 +238,6 @@ describe UserSerializer do end - context "with user fields" do - let(:user) { Fabricate(:user) } - - let! :fields do - [ - Fabricate(:user_field), - Fabricate(:user_field), - Fabricate(:user_field, show_on_profile: true), - Fabricate(:user_field, show_on_user_card: true), - Fabricate(:user_field, show_on_user_card: true, show_on_profile: true) - ] - end - - let(:other_user_json) { UserSerializer.new(user, scope: Guardian.new(Fabricate(:user)), root: false).as_json } - let(:self_json) { UserSerializer.new(user, scope: Guardian.new(user), root: false).as_json } - let(:admin_json) { UserSerializer.new(user, scope: Guardian.new(Fabricate(:admin)), root: false).as_json } - - it "includes the correct fields for each audience" do - expect(admin_json[:user_fields].keys).to contain_exactly(*fields.map { |f| f.id.to_s }) - expect(other_user_json[:user_fields].keys).to contain_exactly(*fields[2..5].map { |f| f.id.to_s }) - expect(self_json[:user_fields].keys).to contain_exactly(*fields.map { |f| f.id.to_s }) - end - - end - context "with user_api_keys" do let(:user) { Fabricate(:user) } diff --git a/spec/services/search_indexer_spec.rb b/spec/services/search_indexer_spec.rb index 2df395930a8..3886eb025a6 100644 --- a/spec/services/search_indexer_spec.rb +++ b/spec/services/search_indexer_spec.rb @@ -63,27 +63,6 @@ describe SearchIndexer do expect(scrubbed).to eq("Discourse 51%20PM Untitled design (21).jpg Untitled%20design%20(21) Untitled design (21).jpg 1280x1136 472 KB") end - it "doesn't index local files" do - html = <<~HTML - <p><img src="https://www.discourse.org/logo.png" alt="Discourse"></p> - <p><img src="#{Discourse.base_url_no_prefix}/uploads/episodeinteractive/original/3X/0/f/0f40b818356bdc1d80acfa905034e95cfd112a3a.png" alt="51%20PM" width="289" height="398"></p> - <div class="lightbox-wrapper"> - <a class="lightbox" href="#{Discourse.base_url_no_prefix}/uploads/episodeinteractive/original/3X/1/6/16790095df3baf318fb2eb1d7e5d7860dc45d48b.jpg" data-download-href="#{Discourse.base_url_no_prefix}/uploads/episodeinteractive/16790095df3baf318fb2eb1d7e5d7860dc45d48b" title="Untitled design (21).jpg" rel="nofollow noopener"> - <img src="#{Discourse.base_url_no_prefix}/uploads/episodeinteractive/optimized/3X/1/6/16790095df3baf318fb2eb1d7e5d7860dc45d48b_1_563x500.jpg" alt="Untitled%20design%20(21)" width="563" height="500"> - <div class="meta"> - <span class="filename">Untitled design (21).jpg</span> - <span class="informations">1280x1136 472 KB</span> - <span class="expand"></span> - </div> - </a> - </div> - HTML - - scrubbed = SearchIndexer::HtmlScrubber.scrub(html).gsub(/\s+/, " ") - - expect(scrubbed).to eq(" Discourse 51%20PM Untitled design (21).jpg Untitled%20design%20(21) Untitled design (21).jpg 1280x1136 472 KB ") - end - it 'correctly indexes a post according to version' do # Preparing so that they can be indexed to right version SearchIndexer.update_posts_index(post_id, "dummy", "", nil, nil)