diaspora* v0.1.0.0 Release Notes

  • ๐Ÿ”จ Refactor

    Replaced Resque with Sidekiq - Migration guide - #3993

    We replaced our queue system with Sidekiq. You might know that Resque needs Redis. ๐Ÿšš Sidekiq does too, so don't remove it, it's still required. Sidekiq uses a threaded model so you'll need far less processes than with Resque to do the same amount of work.

    โšก๏ธ To update do the following:

    โšก๏ธ 1. Before updating (even before the git pull!) stop your application server (Unicorn by default, started through Foreman).

    1. In case you did already run git pull checkout v0.0.3.4:
       git fetch origin
       git checkout v0.0.3.4
       bundle
    

    ๐ŸŒ 3. Start Resque web (you'll need temporary access to port 5678, check your Firewall if needed!):

       bundle exec resque-web
    

    In case you need it you can adjust the port with the -p flag. ๐Ÿ‘ท 4. One last time, start a Resque worker:

       RAILS_ENV=production QUEUE=* bundle exec rake resque:work
    

    Visit Resque web via http://your_host:5678, wait until all queues but the failed one are empty (show 0 jobs). ๐Ÿ‘ท 5. Kill the Resque worker by hitting Ctrl+C. Kill Resque web with:

       bundle exec resque-web -k
    

    Don't forget to close the port on the Firewall again, if you had to open it.

    1. In case you needed to do step 2., run:
       git checkout master
       bundle
    

    โšก๏ธ 7. Proceed with the update as normal (migrate database, precompile assets).

    1. Before starting Diaspora again ensure that you reviewed the new environment.sidekiq section in config/diaspora.yml.example and, if wanted, transfered it to your config/diaspora.yml and made any needed changes. In particular increase the environment.sidekiq.concurrency setting on any medium sized pod. If you do change that value, edit your config/database.yml and add a matching pool: n to your database configuration. n should be equal or higher than the amount of threads per Sidekiq worker. This sets how many concurrent connections to the database ActiveRecord allows.

    If you aren't using script/server but for example passenger, you no ๐Ÿ‘ท longer need to start a Resque worker, but a Sidekiq worker now. The command for that is:

    bundle exec sidekiq
    

    Heroku

    The only gotcha for Heroku single gear setups is that the setting name ๐Ÿ‘ท to spawn a background worker from the unicorn process changed. Run

    heroku config:remove SERVER_EMBED_RESQUE_WORKER
    heroku config:set SERVER_EMBED_SIDEKIQ_WORKER=true
    

    We're automatically adjusting the ActiveRecord connection pool size for you.

    Larger Heroku setups should have enough expertise to figure out what to do by them self.

    Removal of Capistrano

    ๐Ÿš€ The Capistrano deployment scripts were removed from the main source code repository, since they were no longer working. ๐Ÿšš They will be moved into their own repository with a new maintainer, you'll be able to find them under the Diaspora* Github organization once everything is set up.

    Other

    • Cleaned up requires of our own libraries #3993
    • Refactor people_controller#show and photos_controller#index #4002
    • Modularize layout #3944
    • โž• Add header to the sign up page #3944
    • โž• Add a configuration entry to set max-age header to Amazon S3 resources. #4048
    • Load images via sprites #4039
    • โœ‚ Delete unnecessary javascript views. #4059
    • Cleanup of script/server
    • Attempt to stabilize federation of attached photos (fix #3033 #3940 )
    • ๐Ÿ”จ Refactor develop install script #4111
    • โœ‚ Remove special hacks for supporting Ruby 1.8 #4113
    • ๐Ÿšš Moved custom oEmbed providers to config/oembed_providers.yml #4131
    • Add specs for Post#find_by_guid_or_id_with_user

    ๐Ÿ› Bug fixes

    • ๐Ÿ›  Fix mass aspect selection #4127
    • ๐Ÿ›  Fix posting functionality on tags show view #4112
    • ๐Ÿ›  Fix cancel button on getting_started confirmation box #4073
    • Reset comment box height after posting a comment. #4030
    • Fade long tag names. #3899
    • Avoid posting empty comments. #3836
    • Delegate parent_author to the target of a RelayableRetraction
    • Do not fail on receiving a SignedRetraction via the public route
    • Pass the real values to stderr_path and stdout_path in unicorn.rb since it runs a case statement on them.
    • Decode tag name before passing it into a TagFollowingAction #4027
    • ๐Ÿ›  Fix reshares in single post-view #4056
    • ๐Ÿ›  Fix mobile view of deleted reshares. #4063
    • Hide comment button in the mobile view when not signed in. #4065
    • Send profile alongside notification #3976
    • ๐Ÿ›  Fix off-center close button image on intro popovers #3841
    • โœ‚ Remove unnecessary dotted CSS borders. #2940
    • ๐Ÿ›  Fix default image url in profiles table. #3795
    • ๐Ÿ›  Fix mobile buttons are only clickable when scrolled to the top. #4102
    • ๐Ÿ›  Fix regression in bookmarklet causing uneditable post contents. #4057
    • Redirect all mixed case tags to the lower case equivalents #4058
    • ๐Ÿ›  Fix wrong message on infinite scroll on contacts page #3681
    • My Activity mobile doesn't show second page when clicking "more". #4109
    • โœ‚ Remove unnecessary navigation bar to access mobile site and re-add flash warning to mobile registrations. #4085
    • ๐Ÿ›  Fix broken reactions link on mobile page #4125
    • ๐ŸŒ Missing translation "Back to top". #4138
    • ๐Ÿ›  Fix preview with locator feature. #4147
    • ๐Ÿ›  Fix mentions at end of post. #3746
    • ๐Ÿ›  Fix missing indent to correct logged-out-header container relative positioning #4134
    • Private post dont show error 404 when you are not authorized on mobile page #4129
    • ๐Ÿ‘€ Show 404 instead of 500 if a not signed in user wants to see a non public or non existing post.

    ๐Ÿ”‹ Features

    • Deleting a post that was shared to Facebook now deletes it from Facebook too #3980
    • Include reshares in a users public atom feed #1781
    • โž• Add the ability to upload photos from the mobile site. #4004
    • ๐Ÿ‘‰ Show timestamp when hovering on comment time-ago string. #4042
    • If sharing a post with photos to Facebook, always include URL to post #3706
    • โž• Add possibiltiy to upload multiple photos from mobile. #4067
    • โž• Add hotkeys to navigate in stream #4089
    • โž• Add a brief explanatory text about external services connections to services index page #3064
    • โž• Add a preview for posts in the stream #4099
    • โž• Add shortcut key Shift to submit comments and publish posts. #4096
    • ๐Ÿ‘‰ Show the service username in a tooltip next to the publisher icons #4126
    • Ability to add location when creating a post #3803
    • โž• Added oEmbed provider for MixCloud. #4131

    โšก๏ธ Gem updates

    • โฌ‡๏ธ Dropped everything related to Capistrano in preparation for maintaining it in a separate repository
    • ๐Ÿ‘€ Replaced Resque with Sidekiq, see above. Added Sinatra and Slim for the Sidekiq Monitor interface
    • โž• Added sinon-rails, compass-rails
    • acts-as-taggable-on 2.3.3 -> 2.4.0
    • โž• addressable 2.3.2 -> 2.3.4
    • client_side_validations 3.2.1 -> 3.2.5
    • ๐Ÿ”ง configurate 0.0.2 -> 0.0.7
    • ๐Ÿš… cucumber-rails 1.3.0 -> 1.3.1
    • faraday 0.8.5 -> 0.8.7
    • fog 1.9.0 -> 1.10.1
    • foreigner 1.3.0 -> 1.4.1
    • foreman 0.61 -> 0.62
    • gon 4.0.2 -> 4.1.0
    • guard 1.6.2 -> 1.7.0
    • guard-cucumber 1.3.2 -> 1.4.0
    • guard-rspec 2.4.0 -> 2.5.3
    • guard-spork 1.4.2 -> 1.5.0
    • haml 4.0.0 -> 4.0.2
    • ๐Ÿฑ handlebars_assets 0.11.0 -> 0.1.2.0
    • jasmine 1.3.1 -> 1.3.2
    • nokogiri 1.5.6 -> 1.5.9
    • oauth2 0.8.0 -> 0.8.1
    • omniauth 1.1.3 -> 1.1.4
    • omniauth-twitter 0.0.14 -> 0.0.16
    • pg 0.14.1 -> 0.15.1
    • rack-piwik 0.1.3 -> 0.2.2
    • ๐Ÿš… rails-i18n 0.7.2 -> 0.7.3
    • ๐Ÿš… rails_admin 0.4.5 -> 0.4.7
    • ๐Ÿš€ roxml git release -> 3.1.6
    • ๐Ÿš… rspec-rails 2.12.2 -> 2.13.0
    • safe_yaml 0.8.0 -> 0.9.1
    • selenium-webdriver 2.29.0 -> 2.32.1
    • timecop 0.5.9.2 -> 0.6.1
    • twitter 4.5.0 -> 4.6.2
    • uglifier 1.3.0 -> 2.0.1
    • unicorn 4.6.0 -> 4.6.2