diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f801ecc929a..8c0964a1a18 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -44,7 +44,7 @@ jobs: - 5432:5432 steps: - name: Install system dependencies - run: sudo apt-get install -y build-essential curl git gsfonts imagemagick libcurl4-openssl-dev libidn11-dev libmagickwand-dev libssl-dev libxml2-dev libxslt1-dev + run: sudo apt update && sudo apt install -y build-essential curl git gsfonts imagemagick libcurl4-openssl-dev libidn11-dev libmagickwand-dev libssl-dev libxml2-dev libxslt1-dev - name: Start MySQL run: sudo systemctl start mysql.service if: matrix.db == 'mysql' diff --git a/.rubocop.yml b/.rubocop.yml index 71c3b4bd0a2..e1a7219a2cd 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -179,8 +179,6 @@ Layout/DotPosition: Style/HashEachMethods: Enabled: true -# TODO: Enable with Ruby 2.5 -Style/HashTransformKeys: - Enabled: false -Style/HashTransformValues: +# It makes more sense to allow to structure and group them how it makes sense in the code +Style/AccessorGrouping: Enabled: false diff --git a/Changelog.md b/Changelog.md index abe0252aaca..7514bf9996b 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,3 +1,34 @@ +# 0.7.16.0 + +## Security + +* Update rails to fix [CVE-2022-23633](https://github.com/advisories/GHSA-wh98-p28r-vrc9) [#8336](https://github.com/diaspora/diaspora/pull/8336) + +## Refactor +* Cache local posts/comments count for statistics [#8241](https://github.com/diaspora/diaspora/pull/8241) +* Fix html-syntax in some handlebars templates [#8251](https://github.com/diaspora/diaspora/pull/8251) +* Remove `chat_enabled` flag from archive export [#8265](https://github.com/diaspora/diaspora/pull/8265) +* Change thumbnails in image slideshow to squares [#8275](https://github.com/diaspora/diaspora/pull/8275) +* Replace uglifier with terser for JS compression [#8268](https://github.com/diaspora/diaspora/pull/8268) + +## Bug fixes +* Ensure the log folder exists [#8287](https://github.com/diaspora/diaspora/pull/8287) +* Limit name length in header [#8313](https://github.com/diaspora/diaspora/pull/8313) +* Fix fallback avatar in hovercards [#8316](https://github.com/diaspora/diaspora/pull/8316) +* Use old person private key for export if relayable author migrated away [#8310](https://github.com/diaspora/diaspora/pull/8310) + +## Features +* Add tags to tumblr posts [#8244](https://github.com/diaspora/diaspora/pull/8244) +* Add blocks to the archive export [#8263](https://github.com/diaspora/diaspora/pull/8263) +* Allow points and dashes in the username [#8266](https://github.com/diaspora/diaspora/pull/8266) +* Add support for footnotes in markdown [#8277](https://github.com/diaspora/diaspora/pull/8277) +* Send `AccountMigration` if receiving message to a migrated account [#8288](https://github.com/diaspora/diaspora/pull/8288) +* Add podmin mail address to the footer [#8242](https://github.com/diaspora/diaspora/pull/8242) +* Add username to password-reset mail [#8037](https://github.com/diaspora/diaspora/pull/8037) +* Resend account migration and deletion for closed recipients [#8309](https://github.com/diaspora/diaspora/pull/8309) +* Add sharing status to hovercards [#8317](https://github.com/diaspora/diaspora/pull/8317) +* Migrate photo URLs and cleanup old uploaded photos [#8314](https://github.com/diaspora/diaspora/pull/8314) + # 0.7.15.0 ## Refactor diff --git a/Gemfile b/Gemfile index ac98f6f8235..7dbd9f9397e 100644 --- a/Gemfile +++ b/Gemfile @@ -2,7 +2,7 @@ source "https://rubygems.org" -gem "rails", "5.2.5" +gem "rails", "5.2.6.2" # Legacy Rails features, remove me! # responders (class level) @@ -15,8 +15,8 @@ gem "unicorn-worker-killer", "0.4.5" # Federation -gem "diaspora_federation-json_schema", "0.2.6" -gem "diaspora_federation-rails", "0.2.6" +gem "diaspora_federation-json_schema", "0.2.7" +gem "diaspora_federation-rails", "0.2.7" # API and JSON @@ -26,10 +26,10 @@ gem "json-schema", "2.8.1" # Authentication -gem "devise", "4.7.3" -gem "devise-two-factor", "4.0.0" +gem "devise", "4.8.0" gem "devise_lastseenable", "0.0.6" -gem "rqrcode", "1.1.2" +gem "devise-two-factor", "4.0.1" +gem "rqrcode", "2.1.0" # Captcha @@ -37,8 +37,8 @@ gem "simple_captcha2", "0.5.0", require: "simple_captcha" # Background processing -gem "redis", "4.2.5" -gem "sidekiq", "6.2.1" +gem "redis", "4.5.1" +gem "sidekiq", "6.2.2" # Scheduled processing @@ -46,12 +46,12 @@ gem "sidekiq-cron", "1.2.0" # Compression -gem "uglifier", "4.2.0" +gem "terser", "1.1.7" # Configuration gem "configurate", "0.5.0" -gem "toml-rb", "2.0.1" +gem "toml-rb", "2.1.0" # Cross-origin resource sharing @@ -59,12 +59,12 @@ gem "rack-cors", "1.1.1", require: "rack/cors" # CSS -gem "autoprefixer-rails", "10.2.4.0" +gem "autoprefixer-rails", "10.3.3.0" gem "bootstrap-sass", "3.4.1" gem "bootstrap-switch-rails", "3.3.3" # 3.3.4 and 3.3.5 is broken, see https://github.com/Bttstrp/bootstrap-switch/issues/691 gem "compass-rails", "3.1.0" gem "sass-rails", "5.0.7" -gem "sprockets-rails", "3.2.1" +gem "sprockets-rails", "3.2.2" # Database @@ -75,14 +75,13 @@ group :postgresql, optional: true do gem "pg", "1.2.3" end - -gem "activerecord-import", "1.0.4" +gem "activerecord-import", "1.1.0" # File uploading -gem "carrierwave", "1.3.2" -gem "fog-aws", "3.5.2" -gem "mini_magick", "4.10.1" +gem "carrierwave", "2.2.2" +gem "fog-aws", "3.12.0" +gem "mini_magick", "4.11.0" # GUID generation gem "uuid", "2.3.9" @@ -93,21 +92,22 @@ gem "entypo-rails", "3.0.0" # JavaScript -gem "handlebars_assets", "0.23.8" -gem "jquery-rails", "4.3.5" -gem "js-routes", "1.4.9" +gem "handlebars_assets", "0.23.9" +gem "jquery-rails", "4.4.0" +gem "js-routes", "2.1.2" gem "js_image_paths", "0.1.1" source "https://gems.diasporafoundation.org" do - gem "rails-assets-jquery", "3.4.1" # Should be kept in sync with jquery-rails + gem "rails-assets-jquery", "3.5.1" # Should be kept in sync with jquery-rails gem "rails-assets-jquery.ui", "1.11.4" gem "rails-assets-highlightjs", "9.12.0" gem "rails-assets-markdown-it", "8.4.2" - gem "rails-assets-markdown-it-hashtag", "0.4.0" gem "rails-assets-markdown-it-diaspora-mention", "1.2.0" - gem "rails-assets-markdown-it-sanitizer", "0.4.3" + gem "rails-assets-markdown-it-footnote", "3.0.3" + gem "rails-assets-markdown-it-hashtag", "0.4.0" gem "rails-assets-markdown-it--markdown-it-for-inline", "0.1.1" + gem "rails-assets-markdown-it-sanitizer", "0.4.3" gem "rails-assets-markdown-it-sub", "1.0.0" gem "rails-assets-markdown-it-sup", "1.0.0" @@ -139,14 +139,14 @@ gem "rails-i18n", "5.1.3" gem "markerb", "1.1.0" # Map -gem "leaflet-rails", "1.6.0" +gem "leaflet-rails", "1.7.0" # Parsing -gem "nokogiri", "1.11.3" -gem "open_graph_reader", "0.7.1" # also update User-Agent in features/support/webmock.rb and open_graph_cache_spec.rb +gem "nokogiri", "1.12.5" +gem "open_graph_reader", "0.7.2" # also update User-Agent in features/support/webmock.rb and open_graph_cache_spec.rb gem "redcarpet", "3.5.1" -gem "ruby-oembed", "0.12.0" +gem "ruby-oembed", "0.15.0" gem "twitter-text", "1.14.7" # RTL support @@ -155,18 +155,19 @@ gem "string-direction", "1.2.2" # Security Headers -gem "secure_headers", "6.3.2" +gem "secure_headers", "6.3.3" # Services -gem "omniauth", "1.9.1" -gem "omniauth-tumblr", "1.2" -gem "omniauth-twitter", "1.4.0" -gem "omniauth-wordpress", "0.2.2" -gem "twitter", "7.0.0" +gem "omniauth", "2.0.4" +gem "omniauth-rails_csrf_protection", "1.0.0" +gem "omniauth-tumblr", "1.2" +gem "omniauth-twitter", "1.4.0" +gem "omniauth-wordpress", "0.2.2" +gem "twitter", "7.0.0" # OpenID Connect -gem "openid_connect", "1.1.8" +gem "openid_connect", "1.3.0" # Serializers @@ -178,23 +179,23 @@ gem "rails-assets-diaspora_jsxc", "0.1.5.develop.7", source: "https://gems.diasp # Tags -gem "acts-as-taggable-on", "6.5.0" +gem "acts-as-taggable-on", "8.1.0" # URIs and HTTP -gem "addressable", "2.7.0", require: "addressable/uri" -gem "faraday", "0.15.4" -gem "faraday_middleware", "0.13.1" -gem "faraday-cookie_jar", "0.0.6" +gem "addressable", "2.8.0", require: "addressable/uri" +gem "faraday", "0.17.4" +gem "faraday-cookie_jar", "0.0.7" +gem "faraday_middleware", "0.14.0" gem "typhoeus", "1.4.0" # Views -gem "gon", "6.3.2" -gem "hamlit", "2.14.6" +gem "gon", "6.4.0" +gem "hamlit", "2.15.1" gem "mobile-fu", "1.4.0" -gem "rails-timeago", "2.18.0" -gem "will_paginate", "3.3.0" +gem "rails-timeago", "2.19.1" +gem "will_paginate", "3.3.1" # Logging @@ -202,7 +203,7 @@ gem "logging-rails", "0.6.0", require: "logging/rails" # Reading and writing zip files -gem "rubyzip", "2.3.0", require: "zip" +gem "rubyzip", "2.3.2", require: "zip" # Prevent occasions where minitest is not bundled in # packaged versions of ruby. See following issues/prs: @@ -237,12 +238,12 @@ group :production do # we don"t install these on travis to speed up test runs # Third party asset hosting - gem "asset_sync", "2.11.0", require: false + gem "asset_sync", "2.15.0", require: false end group :development do # Linters - gem "haml_lint", "0.37.0", require: false + gem "haml_lint", "0.37.1", require: false gem "pronto", "0.11.0", require: false gem "pronto-eslint", "0.11.0", require: false gem "pronto-haml", "0.11.0", require: false @@ -275,7 +276,7 @@ group :test do gem "apparition", "0.6.0" gem "capybara", "3.35.3" - gem "database_cleaner-active_record", "1.8.0" + gem "database_cleaner-active_record", "2.0.1" gem "cucumber-api-steps", "0.14", require: false @@ -284,25 +285,25 @@ group :test do gem "factory_girl_rails", "4.9.0" gem "shoulda-matchers", "4.5.1" gem "timecop", "0.9.4" - gem "webmock", "3.12.2", require: false + gem "webmock", "3.14.0", require: false - gem "diaspora_federation-test", "0.2.6" + gem "diaspora_federation-test", "0.2.7" end group :development, :test do # RSpec (unit tests, some integration tests) - gem "rspec-rails", "5.0.1" + gem "rspec-rails", "5.0.2" # Cucumber (integration tests) - gem "cucumber-rails", "2.3.0", require: false + gem "cucumber-rails", "2.4.0", require: false # Jasmine (client side application tests (JS)) gem "chrome_remote", "0.3.0" - gem "jasmine", "3.7.0" + gem "jasmine", "3.10.0" gem "jasmine-jquery-rails", "2.0.3" gem "rails-assets-jasmine-ajax", "4.0.0", source: "https://gems.diasporafoundation.org" gem "sinon-rails", "1.15.0" # For `assigns` in controller specs - gem "rails-controller-testing", "1.0.4" + gem "rails-controller-testing", "1.0.5" end diff --git a/Gemfile.lock b/Gemfile.lock index 730320fb328..ae2d4898158 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,25 +2,25 @@ GEM remote: https://rubygems.org/ remote: https://gems.diasporafoundation.org/ specs: - actioncable (5.2.5) - actionpack (= 5.2.5) + actioncable (5.2.6.2) + actionpack (= 5.2.6.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailer (5.2.5) - actionpack (= 5.2.5) - actionview (= 5.2.5) - activejob (= 5.2.5) + actionmailer (5.2.6.2) + actionpack (= 5.2.6.2) + actionview (= 5.2.6.2) + activejob (= 5.2.6.2) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (5.2.5) - actionview (= 5.2.5) - activesupport (= 5.2.5) + actionpack (5.2.6.2) + actionview (= 5.2.6.2) + activesupport (= 5.2.6.2) rack (~> 2.0, >= 2.0.8) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.0.2) - actionview (5.2.5) - activesupport (= 5.2.5) + actionview (5.2.6.2) + activesupport (= 5.2.6.2) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) @@ -28,40 +28,40 @@ GEM active_model_serializers (0.9.7) activemodel (>= 3.2) concurrent-ruby (~> 1.0) - activejob (5.2.5) - activesupport (= 5.2.5) + activejob (5.2.6.2) + activesupport (= 5.2.6.2) globalid (>= 0.3.6) - activemodel (5.2.5) - activesupport (= 5.2.5) - activerecord (5.2.5) - activemodel (= 5.2.5) - activesupport (= 5.2.5) + activemodel (5.2.6.2) + activesupport (= 5.2.6.2) + activerecord (5.2.6.2) + activemodel (= 5.2.6.2) + activesupport (= 5.2.6.2) arel (>= 9.0) - activerecord-import (1.0.4) + activerecord-import (1.1.0) activerecord (>= 3.2) - activestorage (5.2.5) - actionpack (= 5.2.5) - activerecord (= 5.2.5) + activestorage (5.2.6.2) + actionpack (= 5.2.6.2) + activerecord (= 5.2.6.2) marcel (~> 1.0.0) - activesupport (5.2.5) + activesupport (5.2.6.2) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 0.7, < 2) minitest (~> 5.1) tzinfo (~> 1.1) - acts-as-taggable-on (6.5.0) - activerecord (>= 5.0, < 6.1) + acts-as-taggable-on (8.1.0) + activerecord (>= 5.0, < 6.2) acts_as_api (1.0.1) activemodel (>= 3.0.0) activesupport (>= 3.0.0) rack (>= 1.1.0) - addressable (2.7.0) + addressable (2.8.0) public_suffix (>= 2.0.2, < 5.0) aes_key_wrap (1.1.0) apparition (0.6.0) capybara (~> 3.13, < 4) websocket-driver (>= 0.6.5) arel (9.0.0) - asset_sync (2.11.0) + asset_sync (2.15.0) activemodel (>= 4.1.0) fog-core mime-types (>= 2.99) @@ -70,10 +70,10 @@ GEM attr_encrypted (3.1.0) encryptor (~> 3.0.0) attr_required (1.0.1) - autoprefixer-rails (10.2.4.0) - execjs + autoprefixer-rails (10.3.3.0) + execjs (~> 2) bcrypt (3.1.16) - bindata (2.4.8) + bindata (2.4.10) bootstrap-sass (3.4.1) autoprefixer-rails (>= 5.2.1) sassc (>= 2.0.0) @@ -89,10 +89,13 @@ GEM rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) - carrierwave (1.3.2) - activemodel (>= 4.0.0) - activesupport (>= 4.0.0) - mime-types (>= 1.16) + carrierwave (2.2.2) + activemodel (>= 5.0.0) + activesupport (>= 5.0.0) + addressable (~> 2.6) + image_processing (~> 1.1) + marcel (~> 1.0.0) + mini_mime (>= 0.1.3) ssrf_filter (~> 1.0) celluloid (0.17.4) celluloid-essentials @@ -136,63 +139,65 @@ GEM compass (~> 1.0.0) sass-rails (< 5.1) sprockets (< 4.0) - concurrent-ruby (1.1.8) + concurrent-ruby (1.1.9) configurate (0.5.0) - connection_pool (2.2.3) + connection_pool (2.2.5) crack (0.4.5) rexml crass (1.0.6) - cucumber (5.3.0) + cucumber (7.1.0) builder (~> 3.2, >= 3.2.4) - cucumber-core (~> 8.0, >= 8.0.1) - cucumber-create-meta (~> 2.0, >= 2.0.2) - cucumber-cucumber-expressions (~> 10.3, >= 10.3.0) - cucumber-gherkin (~> 15.0, >= 15.0.2) - cucumber-html-formatter (~> 9.0, >= 9.0.0) - cucumber-messages (~> 13.1, >= 13.1.0) - cucumber-wire (~> 4.0, >= 4.0.1) + cucumber-core (~> 10.1, >= 10.1.0) + cucumber-create-meta (~> 6.0, >= 6.0.1) + cucumber-cucumber-expressions (~> 14.0, >= 14.0.0) + cucumber-gherkin (~> 22.0, >= 22.0.0) + cucumber-html-formatter (~> 17.0, >= 17.0.0) + cucumber-messages (~> 17.1, >= 17.1.1) + cucumber-wire (~> 6.2, >= 6.2.0) diff-lcs (~> 1.4, >= 1.4.4) + mime-types (~> 3.3, >= 3.3.1) multi_test (~> 0.1, >= 0.1.2) - sys-uname (~> 1.2, >= 1.2.1) + sys-uname (~> 1.2, >= 1.2.2) cucumber-api-steps (0.14.0) cucumber (>= 2.0.2) jsonpath (>= 0.1.2) - cucumber-core (8.0.1) - cucumber-gherkin (~> 15.0, >= 15.0.2) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-tag-expressions (~> 2.0, >= 2.0.4) - cucumber-create-meta (2.0.4) - cucumber-messages (~> 13.1, >= 13.1.0) - sys-uname (~> 1.2, >= 1.2.1) - cucumber-cucumber-expressions (10.3.0) - cucumber-gherkin (15.0.2) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-html-formatter (9.0.0) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-messages (13.2.1) - protobuf-cucumber (~> 3.10, >= 3.10.8) - cucumber-rails (2.3.0) + cucumber-core (10.1.0) + cucumber-gherkin (~> 22.0, >= 22.0.0) + cucumber-messages (~> 17.1, >= 17.1.1) + cucumber-tag-expressions (~> 4.0, >= 4.0.2) + cucumber-create-meta (6.0.2) + cucumber-messages (~> 17.1, >= 17.1.1) + sys-uname (~> 1.2, >= 1.2.2) + cucumber-cucumber-expressions (14.0.0) + cucumber-gherkin (22.0.0) + cucumber-messages (~> 17.1, >= 17.1.1) + cucumber-html-formatter (17.0.0) + cucumber-messages (~> 17.1, >= 17.1.0) + cucumber-messages (17.1.1) + cucumber-rails (2.4.0) capybara (>= 2.18, < 4) - cucumber (>= 3.0.2, < 6) - mime-types (~> 3.2) - nokogiri (~> 1.8) + cucumber (>= 3.2, < 8) + mime-types (~> 3.3) + nokogiri (~> 1.10) railties (>= 5.0, < 7) - cucumber-tag-expressions (2.0.4) - cucumber-wire (4.0.1) - cucumber-core (~> 8.0, >= 8.0.1) - cucumber-cucumber-expressions (~> 10.3, >= 10.3.0) - cucumber-messages (~> 13.0, >= 13.0.1) - database_cleaner (1.8.5) - database_cleaner-active_record (1.8.0) - activerecord - database_cleaner (~> 1.8.0) - devise (4.7.3) + rexml (~> 3.0) + webrick (~> 1.7) + cucumber-tag-expressions (4.1.0) + cucumber-wire (6.2.0) + cucumber-core (~> 10.1, >= 10.1.0) + cucumber-cucumber-expressions (~> 14.0, >= 14.0.0) + cucumber-messages (~> 17.1, >= 17.1.1) + database_cleaner-active_record (2.0.1) + activerecord (>= 5.a) + database_cleaner-core (~> 2.0.0) + database_cleaner-core (2.0.1) + devise (4.8.0) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) - devise-two-factor (4.0.0) + devise-two-factor (4.0.1) activesupport (< 6.2) attr_encrypted (>= 1.3, < 4, != 2) devise (~> 4.0) @@ -202,22 +207,22 @@ GEM devise rails (>= 3.0.4) diaspora-prosody-config (0.0.7) - diaspora_federation (0.2.6) - faraday (>= 0.9.0, < 0.16.0) - faraday_middleware (>= 0.10.0, < 0.14.0) + diaspora_federation (0.2.7) + faraday (>= 0.9.0, < 1.0) + faraday_middleware (>= 0.10.0, < 1.0) nokogiri (~> 1.6, >= 1.6.8) typhoeus (~> 1.0) valid (~> 1.0) - diaspora_federation-json_schema (0.2.6) - diaspora_federation-rails (0.2.6) + diaspora_federation-json_schema (0.2.7) + diaspora_federation-rails (0.2.7) actionpack (>= 4.2, < 6) - diaspora_federation (= 0.2.6) - diaspora_federation-test (0.2.6) - diaspora_federation (= 0.2.6) + diaspora_federation (= 0.2.7) + diaspora_federation-test (0.2.7) + diaspora_federation (= 0.2.7) fabrication (~> 2.16) uuid (~> 2.3, >= 2.3.8) diff-lcs (1.4.4) - docile (1.3.5) + docile (1.4.0) domain_name (0.5.20190701) unf (>= 0.0.5, < 1.0.0) encryptor (3.0.0) @@ -229,12 +234,12 @@ GEM execjs multi_json (>= 1.3) rake - et-orbi (1.2.4) + et-orbi (1.2.6) tzinfo - ethon (0.12.0) - ffi (>= 1.3.0) - excon (0.79.0) - execjs (2.7.0) + ethon (0.15.0) + ffi (>= 1.15.0) + excon (0.88.0) + execjs (2.8.1) eye (0.10.0) celluloid (~> 0.17.3) celluloid-io (~> 0.17.0) @@ -247,14 +252,14 @@ GEM factory_girl_rails (4.9.0) factory_girl (~> 4.9.0) railties (>= 3.0.0) - faraday (0.15.4) + faraday (0.17.4) multipart-post (>= 1.2, < 3) - faraday-cookie_jar (0.0.6) - faraday (>= 0.7.4) + faraday-cookie_jar (0.0.7) + faraday (>= 0.8.0) http-cookie (~> 1.0.0) - faraday_middleware (0.13.1) + faraday_middleware (0.14.0) faraday (>= 0.7.4, < 1.0) - ffi (1.15.0) + ffi (1.15.4) ffi-compiler (1.0.1) ffi (>= 1.0.0) rake @@ -262,12 +267,12 @@ GEM activerecord (>= 2) activesupport (>= 2) hashdiff - fog-aws (3.5.2) + fog-aws (3.12.0) fog-core (~> 2.1) fog-json (~> 1.1) fog-xml (~> 0.1) ipaddress (~> 0.8) - fog-core (2.2.3) + fog-core (2.2.4) builder excon (~> 0.71) formatador (~> 0.2) @@ -275,11 +280,11 @@ GEM fog-json (1.2.0) fog-core multi_json (~> 1.10) - fog-xml (0.1.3) + fog-xml (0.1.4) fog-core nokogiri (>= 1.5.11, < 2.0.0) - formatador (0.2.5) - fugit (1.4.4) + formatador (0.3.0) + fugit (1.5.2) et-orbi (~> 1.1, >= 1.1.8) raabro (~> 1.4) fuubar (2.5.1) @@ -290,27 +295,27 @@ GEM gitlab (4.17.0) httparty (~> 0.18) terminal-table (~> 1.5, >= 1.5.1) - globalid (0.4.2) - activesupport (>= 4.2.0) - gon (6.3.2) + globalid (1.0.0) + activesupport (>= 5.0) + gon (6.4.0) actionpack (>= 3.0.20) i18n (>= 0.7) multi_json request_store (>= 1.0) - haml (5.2.1) + haml (5.2.2) temple (>= 0.8.0) tilt - haml_lint (0.37.0) + haml_lint (0.37.1) haml (>= 4.0, < 5.3) parallel (~> 1.10) rainbow rubocop (>= 0.50.0) sysexits (~> 1.1) - hamlit (2.14.6) + hamlit (2.15.1) temple (>= 0.8.2) thor tilt - handlebars_assets (0.23.8) + handlebars_assets (0.23.9) execjs (~> 2.0) sprockets (>= 2.0.0) tilt (>= 1.2) @@ -321,18 +326,18 @@ GEM http-cookie (~> 1.0) http-form_data (~> 2.2) http-parser (~> 1.2.0) - http-cookie (1.0.3) + http-cookie (1.0.4) domain_name (~> 0.5) http-form_data (2.3.0) http-parser (1.2.3) ffi-compiler (>= 1.0, < 2.0) http_accept_language (2.1.1) http_parser.rb (0.6.0) - httparty (0.18.1) + httparty (0.20.0) mime-types (~> 3.0) multi_xml (>= 0.5.2) httpclient (2.8.3) - i18n (1.8.10) + i18n (1.9.1) concurrent-ruby (~> 1.0) i18n-inflector (2.6.7) i18n (>= 0.4.1) @@ -340,21 +345,24 @@ GEM actionpack (>= 3.0.0) i18n-inflector (~> 2.6) railties (>= 3.0.0) + image_processing (1.12.1) + mini_magick (>= 4.9.5, < 5) + ruby-vips (>= 2.0.17, < 3) ipaddress (0.8.3) - jasmine (3.7.0) - jasmine-core (~> 3.7.0) + jasmine (3.10.0) + jasmine-core (~> 3.10.0) phantomjs - rack (>= 1.2.1) + rack (>= 2.1.4) rake - jasmine-core (3.7.1) + webrick + jasmine-core (3.10.1) jasmine-jquery-rails (2.0.3) - jquery-rails (4.3.5) + jquery-rails (4.4.0) rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) - js-routes (1.4.9) + js-routes (2.1.2) railties (>= 4) - sprockets-rails js_image_paths (0.1.1) rails (>= 4.0, < 6.0) sprockets (>= 3.0.0) @@ -370,10 +378,10 @@ GEM rspec jsonpath (1.1.0) multi_json - jwt (2.2.2) - kgio (2.11.3) - kostya-sigar (2.0.8) - leaflet-rails (1.6.0) + jwt (2.3.0) + kgio (2.11.4) + kostya-sigar (2.0.10) + leaflet-rails (1.7.0) rails (>= 4.2.0) listen (3.5.1) rb-fsevent (~> 0.10, >= 0.10.3) @@ -384,27 +392,26 @@ GEM multi_json (~> 1.14) logging-rails (0.6.0) logging (>= 1.8) - loofah (2.9.1) + loofah (2.14.0) crass (~> 1.0.2) nokogiri (>= 1.5.9) macaddr (1.7.2) systemu (~> 2.6.5) mail (2.7.1) mini_mime (>= 0.1.1) - marcel (1.0.1) + marcel (1.0.2) markdown-it-html5-embed (1.0.0) markerb (1.1.0) memoizable (0.4.2) thread_safe (~> 0.3, >= 0.3.1) method_source (1.0.0) - middleware (0.1.0) mime-types (3.3.1) mime-types-data (~> 3.2015) - mime-types-data (3.2021.0225) - mini_magick (4.10.1) - mini_mime (1.1.0) - mini_portile2 (2.5.0) - minitest (5.14.4) + mime-types-data (3.2021.0901) + mini_magick (4.11.0) + mini_mime (1.1.2) + mini_portile2 (2.6.1) + minitest (5.15.0) mobile-fu (1.4.0) rack-mobile-detect rails @@ -414,29 +421,33 @@ GEM multipart-post (2.1.1) mysql2 (0.5.3) naught (1.1.0) - nio4r (2.5.7) - nokogiri (1.11.3) - mini_portile2 (~> 2.5.0) + nio4r (2.5.8) + nokogiri (1.12.5) + mini_portile2 (~> 2.6.1) racc (~> 1.4) - oauth (0.5.6) + oauth (0.5.7) oauth2 (1.4.7) faraday (>= 0.8, < 2.0) jwt (>= 1.0, < 3.0) multi_json (~> 1.3) multi_xml (~> 0.5) rack (>= 1.2, < 3) - octokit (4.20.0) + octokit (4.21.0) faraday (>= 0.9) sawyer (~> 0.8.0, >= 0.5.3) - omniauth (1.9.1) + omniauth (2.0.4) hashie (>= 3.4.6) rack (>= 1.6.2, < 3) + rack-protection omniauth-oauth (1.2.0) oauth omniauth (>= 1.0, < 3) - omniauth-oauth2 (1.7.1) + omniauth-oauth2 (1.7.2) oauth2 (~> 1.4) omniauth (>= 1.9, < 3) + omniauth-rails_csrf_protection (1.0.0) + actionpack (>= 4.2) + omniauth (~> 2.0) omniauth-tumblr (1.2) multi_json omniauth-oauth (~> 1.0) @@ -445,10 +456,10 @@ GEM rack omniauth-wordpress (0.2.2) omniauth-oauth2 (>= 1.1.0) - open_graph_reader (0.7.1) + open_graph_reader (0.7.2) faraday (>= 0.9.0) nokogiri (~> 1.6) - openid_connect (1.1.8) + openid_connect (1.3.0) activemodel attr_required (>= 1.0.0) json-jwt (>= 1.5.0) @@ -459,8 +470,8 @@ GEM validate_url webfinger (>= 1.0.1) orm_adapter (0.5.0) - parallel (1.20.1) - parser (3.0.1.0) + parallel (1.21.0) + parser (3.0.2.0) ast (~> 2.4.1) pg (1.2.3) phantomjs (2.1.1.0) @@ -485,20 +496,15 @@ GEM pronto-scss (0.11.0) pronto (~> 0.11.0) scss_lint (~> 0.43, >= 0.43.0) - protobuf-cucumber (3.10.8) - activesupport (>= 3.2) - middleware - thor - thread_safe - pry (0.13.1) + pry (0.14.1) coderay (~> 1.1) method_source (~> 1.0) - pry-byebug (3.9.0) + pry-byebug (3.8.0) byebug (~> 11.0) - pry (~> 0.13.0) + pry (~> 0.10) public_suffix (4.0.6) raabro (1.4.0) - racc (1.5.2) + racc (1.6.0) rack (2.2.3) rack-cors (1.1.1) rack (>= 2.0.0) @@ -507,30 +513,32 @@ GEM activesupport rack-mobile-detect (0.4.0) rack - rack-oauth2 (1.16.0) + rack-oauth2 (1.19.0) activesupport attr_required httpclient json-jwt (>= 1.11.0) rack (>= 2.1.0) rack-piwik (0.3.0) + rack-protection (2.1.0) + rack rack-rewrite (1.5.1) rack-ssl (1.4.1) rack rack-test (1.1.0) rack (>= 1.0, < 3) - rails (5.2.5) - actioncable (= 5.2.5) - actionmailer (= 5.2.5) - actionpack (= 5.2.5) - actionview (= 5.2.5) - activejob (= 5.2.5) - activemodel (= 5.2.5) - activerecord (= 5.2.5) - activestorage (= 5.2.5) - activesupport (= 5.2.5) + rails (5.2.6.2) + actioncable (= 5.2.6.2) + actionmailer (= 5.2.6.2) + actionpack (= 5.2.6.2) + actionview (= 5.2.6.2) + activejob (= 5.2.6.2) + activemodel (= 5.2.6.2) + activerecord (= 5.2.6.2) + activestorage (= 5.2.6.2) + activesupport (= 5.2.6.2) bundler (>= 1.3.0) - railties (= 5.2.5) + railties (= 5.2.6.2) sprockets-rails (>= 2.0.0) rails-assets-autosize (4.0.2) rails-assets-backbone (1.3.3) @@ -556,7 +564,7 @@ GEM rails-assets-jasmine (3.4.0) rails-assets-jasmine-ajax (4.0.0) rails-assets-jasmine (~> 3) - rails-assets-jquery (3.4.1) + rails-assets-jquery (3.5.1) rails-assets-jquery-colorbox (1.6.4) rails-assets-jquery (>= 1.3.2) rails-assets-jquery-fullscreen-plugin (0.5.0) @@ -572,41 +580,42 @@ GEM rails-assets-markdown-it--markdown-it-for-inline (0.1.1) rails-assets-markdown-it (8.4.2) rails-assets-markdown-it-diaspora-mention (1.2.0) + rails-assets-markdown-it-footnote (3.0.3) rails-assets-markdown-it-hashtag (0.4.0) rails-assets-markdown-it-sanitizer (0.4.3) rails-assets-markdown-it-sub (1.0.0) rails-assets-markdown-it-sup (1.0.0) rails-assets-underscore (1.9.1) rails-assets-utatti-perfect-scrollbar (1.4.0) - rails-controller-testing (1.0.4) - actionpack (>= 5.0.1.x) - actionview (>= 5.0.1.x) - activesupport (>= 5.0.1.x) + rails-controller-testing (1.0.5) + actionpack (>= 5.0.1.rc1) + actionview (>= 5.0.1.rc1) + activesupport (>= 5.0.1.rc1) rails-dom-testing (2.0.3) activesupport (>= 4.2.0) nokogiri (>= 1.6) - rails-html-sanitizer (1.3.0) + rails-html-sanitizer (1.4.2) loofah (~> 2.3) rails-i18n (5.1.3) i18n (>= 0.7, < 2) railties (>= 5.0, < 6) - rails-timeago (2.18.0) + rails-timeago (2.19.1) actionpack (>= 3.1) activesupport (>= 3.1) - railties (5.2.5) - actionpack (= 5.2.5) - activesupport (= 5.2.5) + railties (5.2.6.2) + actionpack (= 5.2.6.2) + activesupport (= 5.2.6.2) method_source rake (>= 0.8.7) thor (>= 0.19.0, < 2.0) rainbow (3.0.0) - raindrops (0.19.1) + raindrops (0.19.2) rake (12.3.3) - rb-fsevent (0.10.4) + rb-fsevent (0.11.0) rb-inotify (0.10.1) ffi (~> 1.0) redcarpet (3.5.1) - redis (4.2.5) + redis (4.5.1) regexp_parser (2.1.1) request_store (1.5.0) rack (>= 1.4) @@ -615,10 +624,10 @@ GEM railties (>= 5.0) rexml (3.2.5) rotp (6.2.0) - rqrcode (1.1.2) + rqrcode (2.1.0) chunky_png (~> 1.0) - rqrcode_core (~> 0.1) - rqrcode_core (0.2.0) + rqrcode_core (~> 1.0) + rqrcode_core (1.2.0) rspec (3.10.0) rspec-core (~> 3.10.0) rspec-expectations (~> 3.10.0) @@ -632,7 +641,7 @@ GEM rspec-mocks (3.10.2) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.10.0) - rspec-rails (5.0.1) + rspec-rails (5.0.2) actionpack (>= 5.2) activesupport (>= 5.2) railties (>= 5.2) @@ -640,7 +649,7 @@ GEM rspec-expectations (~> 3.10) rspec-mocks (~> 3.10) rspec-support (~> 3.10) - rspec-support (3.10.2) + rspec-support (3.10.3) rubocop (0.93.1) parallel (~> 1.10) parser (>= 2.7.1.5) @@ -650,15 +659,17 @@ GEM rubocop-ast (>= 0.6.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 2.0) - rubocop-ast (1.4.1) - parser (>= 2.7.1.5) + rubocop-ast (1.7.0) + parser (>= 3.0.1.1) rubocop-rails (2.9.1) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 0.90.0, < 2.0) - ruby-oembed (0.12.0) + ruby-oembed (0.15.0) ruby-progressbar (1.11.0) - rubyzip (2.3.0) + ruby-vips (2.1.3) + ffi (~> 1.12) + rubyzip (2.3.2) rugged (1.0.1) sass (3.4.25) sass-rails (5.0.7) @@ -675,10 +686,10 @@ GEM scss_lint (0.55.0) rake (>= 0.9, < 13) sass (~> 3.4.20) - secure_headers (6.3.2) + secure_headers (6.3.3) shoulda-matchers (4.5.1) activesupport (>= 4.2.0) - sidekiq (6.2.1) + sidekiq (6.2.2) connection_pool (>= 2.2.2) rack (~> 2.0) redis (>= 4.2.0) @@ -693,20 +704,20 @@ GEM simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) - simplecov_json_formatter (0.1.2) + simplecov_json_formatter (0.1.3) sinon-rails (1.15.0) railties (>= 3.1) sprockets (3.7.2) concurrent-ruby (~> 1.0) rack (> 1, < 3) - sprockets-rails (3.2.1) + sprockets-rails (3.2.2) actionpack (>= 4.0) activesupport (>= 4.0) sprockets (>= 3.0.0) ssrf_filter (1.0.7) state_machines (0.5.0) string-direction (1.2.2) - swd (1.2.0) + swd (1.3.0) activesupport (>= 3) attr_required (>= 0.0.5) httpclient (>= 2.4) @@ -717,12 +728,14 @@ GEM temple (0.8.2) terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) - thor (1.1.0) + terser (1.1.7) + execjs (>= 0.3.0, < 3) + thor (1.2.1) thread_safe (0.3.6) tilt (2.0.10) timecop (0.9.4) timers (4.3.3) - toml-rb (2.0.1) + toml-rb (2.1.0) citrus (~> 3.0, > 3.0) turbo_dev_assets (0.0.2) twitter (7.0.0) @@ -742,12 +755,10 @@ GEM ethon (>= 0.9.0) tzinfo (1.2.9) thread_safe (~> 0.1) - uglifier (4.2.0) - execjs (>= 0.3.0, < 3) unf (0.1.4) unf_ext - unf_ext (0.0.7.7) - unicode-display_width (1.7.0) + unf_ext (0.0.8) + unicode-display_width (1.8.0) unicorn (6.0.0) kgio (~> 2.6) raindrops (~> 0.7) @@ -769,17 +780,18 @@ GEM yard (~> 0.9.20) warden (1.2.9) rack (>= 2.0.9) - webfinger (1.1.0) + webfinger (1.2.0) activesupport httpclient (>= 2.4) - webmock (3.12.2) - addressable (>= 2.3.6) + webmock (3.14.0) + addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) - websocket-driver (0.7.3) + webrick (1.7.0) + websocket-driver (0.7.5) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) - will_paginate (3.3.0) + will_paginate (3.3.1) xpath (3.2.0) nokogiri (~> 1.8) yard (0.9.26) @@ -789,69 +801,70 @@ PLATFORMS DEPENDENCIES active_model_serializers (= 0.9.7) - activerecord-import (= 1.0.4) - acts-as-taggable-on (= 6.5.0) + activerecord-import (= 1.1.0) + acts-as-taggable-on (= 8.1.0) acts_as_api (= 1.0.1) - addressable (= 2.7.0) + addressable (= 2.8.0) apparition (= 0.6.0) - asset_sync (= 2.11.0) - autoprefixer-rails (= 10.2.4.0) + asset_sync (= 2.15.0) + autoprefixer-rails (= 10.3.3.0) bootstrap-sass (= 3.4.1) bootstrap-switch-rails (= 3.3.3) capybara (= 3.35.3) - carrierwave (= 1.3.2) + carrierwave (= 2.2.2) chrome_remote (= 0.3.0) compass-rails (= 3.1.0) configurate (= 0.5.0) cucumber-api-steps (= 0.14) - cucumber-rails (= 2.3.0) - database_cleaner-active_record (= 1.8.0) - devise (= 4.7.3) - devise-two-factor (= 4.0.0) + cucumber-rails (= 2.4.0) + database_cleaner-active_record (= 2.0.1) + devise (= 4.8.0) + devise-two-factor (= 4.0.1) devise_lastseenable (= 0.0.6) diaspora-prosody-config (= 0.0.7) - diaspora_federation-json_schema (= 0.2.6) - diaspora_federation-rails (= 0.2.6) - diaspora_federation-test (= 0.2.6) + diaspora_federation-json_schema (= 0.2.7) + diaspora_federation-rails (= 0.2.7) + diaspora_federation-test (= 0.2.7) entypo-rails (= 3.0.0) eye (= 0.10.0) factory_girl_rails (= 4.9.0) - faraday (= 0.15.4) - faraday-cookie_jar (= 0.0.6) - faraday_middleware (= 0.13.1) + faraday (= 0.17.4) + faraday-cookie_jar (= 0.0.7) + faraday_middleware (= 0.14.0) fixture_builder (= 0.5.2) - fog-aws (= 3.5.2) + fog-aws (= 3.12.0) fuubar (= 2.5.1) - gon (= 6.3.2) - haml_lint (= 0.37.0) - hamlit (= 2.14.6) - handlebars_assets (= 0.23.8) + gon (= 6.4.0) + haml_lint (= 0.37.1) + hamlit (= 2.15.1) + handlebars_assets (= 0.23.9) http_accept_language (= 2.1.1) i18n-inflector-rails (= 1.0.7) - jasmine (= 3.7.0) + jasmine (= 3.10.0) jasmine-jquery-rails (= 2.0.3) - jquery-rails (= 4.3.5) - js-routes (= 1.4.9) + jquery-rails (= 4.4.0) + js-routes (= 2.1.2) js_image_paths (= 0.1.1) json (= 2.3.0) json-schema (= 2.8.1) json-schema-rspec (= 0.0.4) - leaflet-rails (= 1.6.0) + leaflet-rails (= 1.7.0) listen (= 3.5.1) logging-rails (= 0.6.0) markdown-it-html5-embed (= 1.0.0) markerb (= 1.1.0) - mini_magick (= 4.10.1) + mini_magick (= 4.11.0) minitest mobile-fu (= 1.4.0) mysql2 (= 0.5.3) - nokogiri (= 1.11.3) - omniauth (= 1.9.1) + nokogiri (= 1.12.5) + omniauth (= 2.0.4) + omniauth-rails_csrf_protection (= 1.0.0) omniauth-tumblr (= 1.2) omniauth-twitter (= 1.4.0) omniauth-wordpress (= 0.2.2) - open_graph_reader (= 0.7.1) - openid_connect (= 1.1.8) + open_graph_reader (= 0.7.2) + openid_connect (= 1.3.0) pg (= 1.2.3) pronto (= 0.11.0) pronto-eslint (= 0.11.0) @@ -865,7 +878,7 @@ DEPENDENCIES rack-piwik (= 0.3.0) rack-rewrite (= 1.5.1) rack-ssl (= 1.4.1) - rails (= 5.2.5) + rails (= 5.2.6.2) rails-assets-autosize (= 4.0.2)! rails-assets-backbone (= 1.3.3)! rails-assets-blueimp-gallery (= 2.33.0)! @@ -875,7 +888,7 @@ DEPENDENCIES rails-assets-fine-uploader (= 5.13.0)! rails-assets-highlightjs (= 9.12.0)! rails-assets-jasmine-ajax (= 4.0.0)! - rails-assets-jquery (= 3.4.1)! + rails-assets-jquery (= 3.5.1)! rails-assets-jquery-placeholder (= 2.3.1)! rails-assets-jquery-textchange (= 0.2.3)! rails-assets-jquery.are-you-sure (= 1.9.0)! @@ -883,47 +896,48 @@ DEPENDENCIES rails-assets-markdown-it (= 8.4.2)! rails-assets-markdown-it--markdown-it-for-inline (= 0.1.1)! rails-assets-markdown-it-diaspora-mention (= 1.2.0)! + rails-assets-markdown-it-footnote (= 3.0.3)! rails-assets-markdown-it-hashtag (= 0.4.0)! rails-assets-markdown-it-sanitizer (= 0.4.3)! rails-assets-markdown-it-sub (= 1.0.0)! rails-assets-markdown-it-sup (= 1.0.0)! rails-assets-utatti-perfect-scrollbar (= 1.4.0)! - rails-controller-testing (= 1.0.4) + rails-controller-testing (= 1.0.5) rails-i18n (= 5.1.3) - rails-timeago (= 2.18.0) + rails-timeago (= 2.19.1) redcarpet (= 3.5.1) - redis (= 4.2.5) + redis (= 4.5.1) responders (= 3.0.1) - rqrcode (= 1.1.2) + rqrcode (= 2.1.0) rspec-json_expectations (~> 2.1) - rspec-rails (= 5.0.1) + rspec-rails (= 5.0.2) rubocop (= 0.93.1) rubocop-rails (= 2.9.1) - ruby-oembed (= 0.12.0) - rubyzip (= 2.3.0) + ruby-oembed (= 0.15.0) + rubyzip (= 2.3.2) sass-rails (= 5.0.7) - secure_headers (= 6.3.2) + secure_headers (= 6.3.3) shoulda-matchers (= 4.5.1) - sidekiq (= 6.2.1) + sidekiq (= 6.2.2) sidekiq-cron (= 1.2.0) simple_captcha2 (= 0.5.0) simplecov (= 0.21.2) sinon-rails (= 1.15.0) - sprockets-rails (= 3.2.1) + sprockets-rails (= 3.2.2) string-direction (= 1.2.2) + terser (= 1.1.7) timecop (= 0.9.4) - toml-rb (= 2.0.1) + toml-rb (= 2.1.0) turbo_dev_assets (= 0.0.2) twitter (= 7.0.0) twitter-text (= 1.14.7) typhoeus (= 1.4.0) - uglifier (= 4.2.0) unicorn (= 6.0.0) unicorn-worker-killer (= 0.4.5) uuid (= 2.3.9) versionist (= 2.0.1) - webmock (= 3.12.2) - will_paginate (= 3.3.0) + webmock (= 3.14.0) + will_paginate (= 3.3.1) BUNDLED WITH 1.17.3 diff --git a/README.md b/README.md index 86aa402eb43..ca52287a2b2 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ ## Installation -You don't have to install diaspora\* to use the network. There are many servers connected to diaspora\*s network which are open to anyone, and you can create an account on one of these servers. Have a look at our [tips for finding a home](https://wiki.diasporafoundation.org/Choosing_a_pod), or you can just go straight to the [list of open servers](https://diaspora.podupti.me) to sign up. +You don't have to install diaspora\* to use the network. There are many servers connected to diaspora\*s network which are open to anyone, and you can create an account on one of these servers. Have a look at our [tips for finding a home](https://wiki.diasporafoundation.org/Choosing_a_pod), or you can just go straight to the [list of open servers](https://diaspora.fediverse.observer) to sign up. Want to own your data and install diaspora\*? Whether you just want to try it out, want to install it on your server or want to contribute and need a development setup, our [installation guides](https://wiki.diasporafoundation.org/Installation) will get you started! diff --git a/app/assets/javascripts/app/helpers/handlebars-helpers.js b/app/assets/javascripts/app/helpers/handlebars-helpers.js index a6ed3de0c89..0a33008ee4c 100644 --- a/app/assets/javascripts/app/helpers/handlebars-helpers.js +++ b/app/assets/javascripts/app/helpers/handlebars-helpers.js @@ -44,7 +44,7 @@ Handlebars.registerHelper('linkToPerson', function(context, block) { // relationship indicator for profile page Handlebars.registerHelper("sharingMessage", function(person) { var i18nScope = "people.helper.is_not_sharing"; - var icon = "circle"; + var icon = "entypo-record"; if( person.is_sharing ) { i18nScope = "people.helper.is_sharing"; icon = "entypo-check"; diff --git a/app/assets/javascripts/app/helpers/text_formatter.js b/app/assets/javascripts/app/helpers/text_formatter.js index 7535906643d..c9a302fe975 100644 --- a/app/assets/javascripts/app/helpers/text_formatter.js +++ b/app/assets/javascripts/app/helpers/text_formatter.js @@ -16,6 +16,9 @@ typographer: true }); + var footnote = window.markdownitFootnote; + md.use(footnote); + var inlinePlugin = window.markdownitForInline; md.use(inlinePlugin, "utf8_symbols", "text", function (tokens, idx) { tokens[idx].content = tokens[idx].content.replace(/<->/g, "↔") diff --git a/app/assets/javascripts/app/views/hovercard_view.js b/app/assets/javascripts/app/views/hovercard_view.js index 72ebe121ae5..7009917a994 100644 --- a/app/assets/javascripts/app/views/hovercard_view.js +++ b/app/assets/javascripts/app/views/hovercard_view.js @@ -19,10 +19,15 @@ app.views.Hovercard = app.views.Base.extend({ this.showMe = false; this.parent = null; // current 'hovercardable' element that caused HC to appear - this.active = true; }, + presenter: function() { + return _.extend({}, this.defaultPresenter(), { + person: this.person + }); + }, + postRenderTemplate: function() { this.$el.appendTo($("body")); @@ -102,14 +107,14 @@ app.views.Hovercard = app.views.Base.extend({ if( !person || person.length === 0 ) { throw new Error("received data is not a person object"); } - + var personModel = new app.models.Person(person); + person.is_sharing = personModel.isSharing(); + self.person = person; if (app.currentUser.authenticated()) { - self.aspectMembershipDropdown = new app.views.AspectMembership({person: new app.models.Person(person)}); + self.aspectMembershipDropdown = new app.views.AspectMembership({person: personModel}); } - self.render(); - self._populateHovercardWith(person); if( !self.showMe ) { // mouse has left element return; @@ -118,23 +123,6 @@ app.views.Hovercard = app.views.Base.extend({ }); }, - _populateHovercardWith: function(person) { - this.avatarLink.attr("href", this.href()); - this.personLink.attr("href", this.href()); - this.personLink.text(person.name); - this.personID.text(person.diaspora_id); - - if (person.profile) { - this.avatar.attr("src", person.profile.avatar); - - // set hashtags - this.hashtags.empty(); - this.hashtags.html($(_.map(person.profile.tags, function(tag) { - return $("", {href: Routes.tag(tag)}).text("#" + tag)[0]; - }))); - } - }, - _positionHovercard: function() { var p_pos = this.parent.offset(); var p_height = this.parent.height(); diff --git a/app/assets/javascripts/app/views/locator.js b/app/assets/javascripts/app/views/locator.js index 364f3fa395a..56de937463b 100644 --- a/app/assets/javascripts/app/views/locator.js +++ b/app/assets/javascripts/app/views/locator.js @@ -19,7 +19,7 @@ app.views.Location = Backbone.View.extend({ var locator = new OSM.Locator(); locator.getAddress(function(address, latlng){ $(element).empty(); - $("", + $("", { id: "location_address", value: address, type: "text", diff --git a/app/assets/javascripts/app/views/publisher_view.js b/app/assets/javascripts/app/views/publisher_view.js index 84f957395dd..3dcd4ff5048 100644 --- a/app/assets/javascripts/app/views/publisher_view.js +++ b/app/assets/javascripts/app/views/publisher_view.js @@ -351,7 +351,7 @@ app.views.Publisher = Backbone.View.extend({ }; var previewPost = new app.views.PreviewPost({model: new app.models.Post(previewMessage)}).render().el; - return $("
").append(previewPost).html(); + return $("
").append(previewPost).html(); }, keyDown : function(evt) { diff --git a/app/assets/javascripts/main.js b/app/assets/javascripts/main.js index e359ad7c2dd..a1a65d6104d 100644 --- a/app/assets/javascripts/main.js +++ b/app/assets/javascripts/main.js @@ -23,6 +23,7 @@ //= require markdown-it //= require markdown-it-diaspora-mention //= require markdown-it-for-inline +//= require markdown-it-footnote //= require markdown-it-hashtag //= require markdown-it-sanitizer //= require markdown-it-sub diff --git a/app/assets/javascripts/mobile/mobile_comments.js b/app/assets/javascripts/mobile/mobile_comments.js index 78dbe5e15d9..270799f7bd4 100644 --- a/app/assets/javascripts/mobile/mobile_comments.js +++ b/app/assets/javascripts/mobile/mobile_comments.js @@ -185,8 +185,8 @@ addNewComments: function(bottomBar, data) { if ($(".comment-container", bottomBar).length === 0) { - $(".show-comments", bottomBar).after($("
", {"class": "comment-container"})); - $(".comment-container", bottomBar).append($("
diff --git a/app/assets/templates/single-post-viewer/single-post-content_tpl.jst.hbs b/app/assets/templates/single-post-viewer/single-post-content_tpl.jst.hbs index dd96957c5ba..94995cb1222 100644 --- a/app/assets/templates/single-post-viewer/single-post-content_tpl.jst.hbs +++ b/app/assets/templates/single-post-viewer/single-post-content_tpl.jst.hbs @@ -40,11 +40,11 @@ {{#if root}} - {{else}} - {{/if}} @@ -59,12 +59,12 @@ {{/if}}
{{#unless root}} -
+
{{/unless}}
{{#unless root}} -
+
{{/unless}}
{{#if location.lat}} @@ -92,13 +92,13 @@
- - +
-
+
{{/if}} diff --git a/app/assets/templates/stream-element_tpl.jst.hbs b/app/assets/templates/stream-element_tpl.jst.hbs index 9240a3bfd93..cb860b63a37 100644 --- a/app/assets/templates/stream-element_tpl.jst.hbs +++ b/app/assets/templates/stream-element_tpl.jst.hbs @@ -22,7 +22,7 @@