@jhass jhass released this May 3, 2015 · 3906 commits to develop since this release

Assets 2

Major Sidekiq update

This release includes a major upgrade of the background processing system Sidekiq. To upgrade cleanly:

  1. Stop diaspora*
  2. Run RAILS_ENV=production bundle exec sidekiq and wait 5-10 minutes, then stop it again (hit CTRL+C)
  3. Do a normal upgrade of diaspora*
  4. Start diaspora*

Rails 4 - Manual action required

Please edit config/initializers/secret_token.rb, replacing secret_token with
secret_key_base.

# Old
Rails.application.config.secret_token = '***********...'

# New
Diaspora::Application.config.secret_key_base = '*************...'

You also need to take care to set RAILS_ENV and to clear the cache while precompiling assets: RAILS_ENV=production bundle exec rake tmp:cache:clear assets:precompile

Supported Ruby versions

This release drops official support for the Ruby 1.9 series. This means we will no longer test against this Ruby version or take care to choose libraries
that work with it. However that doesn't mean we won't accept patches that improve running diaspora* on it.

At the same time we adopt support for the Ruby 2.1 series and recommend running on the latest Ruby version of that branch. We continue to support the Ruby 2.0
series and run our comprehensive test suite against it.

Change in defaults.yml

The default for including jQuery from a CDN has changed. If you want to continue to include it from a CDN, please explicitly set the jquery_cdn setting to true in diaspora.yml.

Change in database.yml

For MySQL databases, replace charset: utf8 with encoding: utf8mb4 and change collation from utf8_bin to utf8mb4_bin in the file config/database.yml.
This is enables full UTF8 support (4bytes characters), including standard emoji characters.
See database.yml.example for reference.
Please make sure to stop Diaspora prior running this migration!

Experimental chat feature

This release adds experimental integration with XMPP for real-time chat. Please see our wiki for further informations.

Change in statistics.json schema

The way services are shown in the statistics.json route is changing. The keys relating to showing whether services are enabled or not are moving to their own container as "services": {....}, instead of having them all in the root level of the JSON.

The keys will still be available in the root level within the 0.5 release. The old keys will be removed in the 0.6 release.

New maintenance feature to automatically expire inactive accounts

Removing of old inactive users can now be done automatically by background processing. The amount of inactivity is set by after_days. A warning email will be sent to the user and after an additional warn_days, the account will be automatically closed.

This maintenance is not enabled by default. Podmins can enable it by for example copying over the new settings under settings.maintenance to their diaspora.yml file and setting it enabled. The default setting is to expire accounts that have been inactive for 2 years (no login).

Camo integration to proxy external assets

It is now possible to enable an automatic proxying of external assets, for example images embedded via Markdown or OpenGraph thumbnails loaded from insecure third party servers through a Camo proxy.

This is disabled by default since it requires the installation of additional packages and might cause some traffic. Check the wiki page for more information and detailed installation instructions.

Paypal unhosted button and currency

Podmins can now set the currency for donations, and use an unhosted button if they can't use
a hosted one. Note: you need to copy the new settings from diaspora.yml.example to your
diaspora.yml file
. The existing settings from 0.4.x and before will not work any more.

Custom splash page changes

diaspora* no longer adds a div.container to wrap custom splash pages. This adds the ability for podmins to write home pages using Bootstrap's fluid design. Podmins who added a custom splash page in app/views/home/_show.{html,mobile}.haml need to wrap the contents into a div.container to keep the old design. You will find updated examples in our wiki.

Refactor

  • Redesign contacts page #5153
  • Improve profile page design on mobile #5084
  • Port test suite to RSpec 3 #5170
  • Port tag stream to Bootstrap #5138
  • Consolidate migrations, if you need a migration prior 2013, checkout the latest release in the 0.4.x series first #5173
  • Add tests for mobile sign up #5185
  • Display new conversation form on conversations/index #5178
  • Port profile page to Backbone #5180
  • Pull punycode.js from rails-assets.org #5263
  • Redesign profile page and port to Bootstrap #4657
  • Unify stream selection links in the left sidebar #5271
  • Refactor schema of statistics.json regarding services #5296
  • Pull jquery.idle-timer.js from rails-assets.org #5310
  • Pull jquery.placeholder.js from rails-assets.org #5299
  • Pull jquery.textchange.js from rails-assets.org #5297
  • Pull jquery.hotkeys.js from rails-assets.org #5368
  • Reduce amount of useless background job retries and pull public posts when missing #5209
  • Updated Weekly User Stats admin page to show data for the most recent week including reversing the order of the weeks in the drop down to show the most recent. #5331
  • Convert some cukes to RSpec tests #5289
  • Hidden overflow for long names on tag pages #5279
  • Always reshare absolute root of a post #5276
  • Convert remaining SASS stylesheets to SCSS #5342
  • Update rack-protection #5403
  • Cleanup diaspora.yml #5426
  • Replace opengraph_parser with open_graph_reader #5462
  • Make sure conversations without any visibilities left are deleted #5478
  • Change tooltip for delete button in conversations view #5477
  • Replace a modifier-rescue with a specific rescue #5491
  • Port contacts page to backbone #5473
  • Replace CSS vendor prefixes automatically #5532
  • Use sentence case consistently throughout UI #5588
  • Hide sign up button when registrations are disabled #5612
  • Standardize capitalization throughout the UI #5588
  • Display photos on the profile page as thumbnails #5521
  • Unify not connected pages (sign in, sign up, forgot password) #5391
  • Port remaining stream pages to Bootstrap #5715
  • Port notification dropdown to Backbone #5707 #5761
  • Add rounded corners for avatars #5733
  • Move registration form to a partial #5764
  • Add tests for liking and unliking posts #5741
  • Rewrite slide effect in conversations as css transition for better performance #5776
  • Various cleanups and improvements in the frontend code #5781 #5769 #5763 #5762 #5758 #5755 #5747 #5734 #5786 #5768
  • Add specs and validations to the role model #5792
  • Replace 'Make something' text by diaspora ball logo on registration page #5743

Bug fixes

  • orca cannot see 'Add Contact' button #5158
  • Move submit button to the right in conversations view #4960
  • Handle long URLs and titles in OpenGraph descriptions #5208
  • Fix deformed getting started popover #5227
  • Use correct locale for invitation subject #5232
  • Initial support for IDN emails
  • Fix services settings reported by statistics.json #5256
  • Only collapse empty comment box #5328
  • Fix pagination for people/guid/contacts #5304
  • Fix poll creation on Bootstrap pages #5334
  • Show error message on invalid reset password attempt #5325
  • Fix translations on mobile password reset pages #5318
  • Handle unset user agent when signing out #5316
  • More robust URL parsing for oEmbed and OpenGraph #5347
  • Fix Publisher doesn't expand while uploading images #3098
  • Drop unneeded and too open crossdomain.xml
  • Fix hidden aspect dropdown on getting started page #5407
  • Fix a few issues on Bootstrap pages #5401
  • Improve handling of the more link on mobile stream pages #5400
  • Fix prefilling publisher after getting started #5442
  • Fix overflow in profile sidebar #5450
  • Fix code overflow in SPV and improve styling for code tags #5422
  • Correctly validate if local recipients actually want to receive a conversation #5449
  • Improve consistency of poll answer ordering #5471
  • Fix broken aspect selectbox on asynchronous search results #5488
  • Replace %{third_party_tools} by the appropriate hyperlink in tags FAQ #5509
  • Repair downloading the profile image from Facebook #5493
  • Fix localization of post and comment timestamps on mobile #5482
  • Fix mobile JS loading to quieten errors. Fixes also service buttons on mobile bookmarklet.
  • Don't error out when adding a too long location to the profile #5614
  • Correctly decrease unread count for conversations #5646
  • Fix automatic scroll for conversations #5646
  • Fix missing translation on privacy settings page #5671
  • Fix code overflow for the mobile website #5675
  • Strip Unicode format characters prior post processing #5680
  • Disable email notifications for closed user accounts #5640
  • Total user statistic no longer includes closed accounts #5041
  • Don't add a space when rendering a mention #5711
  • Fix flickering hovercards #5714 #5876
  • Improved stripping markdown in post titles #5730
  • Remove border from reply form for conversations #5744
  • Fix overflow for headings, blockquotes and other elements #5731
  • Correct photo count on profile page #5751
  • Fix mobile sign up from an invitation #5754
  • Set max-width for tag following button on tag page #5752
  • Display error messages for failed password change #5580
  • Display correct error message for too long tags #5783
  • Fix displaying reshares in the stream on mobile #5790
  • Remove bottom margin from lists that are the last element of a post. #5721
  • Fix pagination design on conversations page #5791
  • Prevent inserting posts into the wrong stream #5838
  • Update help section #5857 #5859
  • Fix asset precompilation check in script/server #5863
  • Convert MySQL databases to utf8mb4 #5530 #5624 #5865
  • Don't upcase labels on mobile sign up/sign in #5872

Features

  • Don't pull jQuery from a CDN by default #5105
  • Better character limit message #5151
  • Remember whether a AccountDeletion was performed #5156
  • Increased the number of notifications shown in drop down bar to 15 #5129
  • Increase possible captcha length #5169
  • Display visibility icon in publisher aspects dropdown #4982
  • Add a link to the reported comment in the admin panel #5337
  • Strip search query from leading and trailing whitespace #5317
  • Add the "network" key to statistics.json and set it to "Diaspora" #5308
  • Infinite scrolling in the notifications dropdown #5237
  • Maintenance feature to automatically expire inactive accounts #5288
  • Add LibreJS markers to JavaScript 5320
  • Ask for confirmation when leaving a submittable publisher #5309
  • Allow page-specific styling via individual CSS classes #5282
  • Change diaspora logo in the header on hover #5355
  • Display diaspora handle in search results #5419
  • Show a message on the ignored users page when there are none #5434
  • Truncate too long OpenGraph descriptions #5387
  • Make the source code URL configurable #5410
  • Prefill publisher on the tag pages #5442
  • Don't include the content of non-public posts into notification mails #5494
  • Allow to set unhosted button and currency for paypal donation #5452
  • Add followed tags in the mobile menu #5468
  • Replace Pagedown with markdown-it #5526
  • Do not truncate notification emails anymore #4342
  • Allows users to export their data in gzipped JSON format from their user settings page #5499
  • Strip EXIF data from newly uploaded images #5510
  • Hide user setting if the community spotlight is not enabled on the pod #5562
  • Add HTML view for pod statistics #5464
  • Added/Moved hide, block user, report and delete button in SPV #5547
  • Added keyboard shortcuts r(reshare), m(expand Post), o(open first link in post) #5602
  • Added dropdown to add/remove people from/to aspects in mobile view #5594
  • Dynamically compute minimum and maximum valid year for birthday field #5639
  • Show hovercard on mentions #5652
  • Make help sections linkable #5667
  • Add invitation link to contacts page #5655
  • Add year to notifications page #5676
  • Give admins the ability to lock & unlock accounts #5643
  • Add reshares to the stream view immediately #5699
  • Update and improve help section #5665, #5706
  • Expose participation controls in the stream view #5511
  • Reimplement photo export #5685
  • Add participation controls in the single post view #5722
  • Display polls on reshares #5782
  • Remove footer from stream pages #5816