diff --git a/Changelog.md b/Changelog.md
index 41c0f5bb8..017f575a8 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -15,15 +15,17 @@
# 0.7.8.0
## Refactor
-
* Make setting up a development environment 9001% easier by adding a Docker-based setup [#7870](https://github.com/diaspora/diaspora/pull/7870)
* Improve `web+diaspora://` handler description [#7909](https://github.com/diaspora/diaspora/pull/7909)
+* Move comment timestamp next to author name [#7905](https://github.com/diaspora/diaspora/pull/7905)
+* Sharpen small and medium thumbnails [#7924](https://github.com/diaspora/diaspora/pull/7924)
## Bug fixes
+* Ignore invalid URLs for camo [#7922](https://github.com/diaspora/diaspora/pull/7922)
## Features
-
* Add the ability to assign roles in the admin panel [#7868](https://github.com/diaspora/diaspora/pull/7868)
+* Improve memory usage with libjemalloc if available [#7919](https://github.com/diaspora/diaspora/pull/7919)
# 0.7.7.0
diff --git a/app/assets/stylesheets/comments.scss b/app/assets/stylesheets/comments.scss
index a91414e94..88d4b16b5 100644
--- a/app/assets/stylesheets/comments.scss
+++ b/app/assets/stylesheets/comments.scss
@@ -44,6 +44,19 @@
}
}
+ .permalink {
+ @include transition(opacity);
+ opacity: 0;
+ }
+
+ .comment:hover .permalink {
+ opacity: .8;
+
+ &:hover {
+ opacity: 1;
+ }
+ }
+
.comment.new-comment-form-wrapper { padding-bottom: 0; }
.submit-button {
diff --git a/app/assets/stylesheets/stream_element.scss b/app/assets/stylesheets/stream_element.scss
index a411c423e..6f876ba15 100644
--- a/app/assets/stylesheets/stream_element.scss
+++ b/app/assets/stylesheets/stream_element.scss
@@ -122,9 +122,12 @@
opacity: 0;
}
- &:hover .permalink {
+ &:hover .post-timestamp .permalink {
opacity: .8;
- &:hover { opacity: 1; }
+
+ &:hover {
+ opacity: 1;
+ }
}
div.reshare {
diff --git a/app/assets/templates/comment_tpl.jst.hbs b/app/assets/templates/comment_tpl.jst.hbs
index 2f8a9ae14..81c2d5064 100644
--- a/app/assets/templates/comment_tpl.jst.hbs
+++ b/app/assets/templates/comment_tpl.jst.hbs
@@ -20,18 +20,21 @@
{{/if}}
- {{#linkToAuthor author}}
- {{name}}
- {{/linkToAuthor}}
+
+ {{#linkToAuthor author}}
+ {{name}}
+ {{/linkToAuthor}}
+ -
+
+
+
+
+
-
-
-
-
diff --git a/app/assets/templates/stream-element_tpl.jst.hbs b/app/assets/templates/stream-element_tpl.jst.hbs
index ed6b8083c..9240a3bfd 100644
--- a/app/assets/templates/stream-element_tpl.jst.hbs
+++ b/app/assets/templates/stream-element_tpl.jst.hbs
@@ -19,7 +19,7 @@
{{~name~}}
{{/linkToAuthor}}
-
+
-
diff --git a/app/uploaders/processed_image.rb b/app/uploaders/processed_image.rb
index a9cae6216..9d614f466 100644
--- a/app/uploaders/processed_image.rb
+++ b/app/uploaders/processed_image.rb
@@ -20,10 +20,10 @@ class ProcessedImage < CarrierWave::Uploader::Base
end
version :thumb_small do
- process resize_to_fill: [50, 50]
+ process resize_to_fill: [50, 50, combine_options: {unsharp: "1.5x1+0.7+0.02"}]
end
version :thumb_medium do
- process resize_to_limit: [100, 100]
+ process resize_to_limit: [100, 100, combine_options: {unsharp: "1.5x1+0.7+0.02"}]
end
version :thumb_large do
process resize_to_limit: [300, 1500]
diff --git a/lib/diaspora/camo.rb b/lib/diaspora/camo.rb
index b7c0d78b3..3fa519f01 100644
--- a/lib/diaspora/camo.rb
+++ b/lib/diaspora/camo.rb
@@ -17,7 +17,11 @@ module Diaspora
return unless url
return url unless self.url_eligible?(url)
- url = Addressable::URI.encode(Addressable::URI.unencode(url))
+ begin
+ url = Addressable::URI.encode(Addressable::URI.unencode(url))
+ rescue Addressable::URI::InvalidURIError
+ return url
+ end
digest = OpenSSL::HMAC.hexdigest(
OpenSSL::Digest.new('sha1'),
diff --git a/script/server b/script/server
index eb8b92294..9cc8ee51a 100755
--- a/script/server
+++ b/script/server
@@ -202,6 +202,21 @@ diaspora.yml.example
"
fi
+# Use libjemalloc if it's available for better memory usage
+command -v ldconfig > /dev/null 2>&1
+if [ $? -eq 0 ]; then
+ ldconfig=ldconfig
+elif [ -x /sbin/ldconfig ]; then
+ ldconfig=/sbin/ldconfig
+fi
+if [ -n "${ldconfig}" ]; then
+ jemalloc_path=$(${ldconfig} -p | grep jemalloc | tr ' ' '\n' | grep '^/' | head -1)
+
+ if [ -n "${jemalloc_path}" ]; then
+ export LD_PRELOAD="${jemalloc_path}"
+ fi
+fi
+
# Start Diaspora
printf "Starting Diaspora in $RAILS_ENV mode "
if [ -n "$PORT" ]
diff --git a/spec/lib/diaspora/camo_spec.rb b/spec/lib/diaspora/camo_spec.rb
index 58df5bead..faea22987 100644
--- a/spec/lib/diaspora/camo_spec.rb
+++ b/spec/lib/diaspora/camo_spec.rb
@@ -48,6 +48,10 @@ describe Diaspora::Camo do
expect(Diaspora::Camo.image_url("https://example.com/%C3%A1%C3%A9%C3%B3?foo=%C3%A4%C3%BC%C3%B6&bar=a%CC%80"))
.to eq(camo_image_url)
end
+
+ it "ignores invalid urls" do
+ expect(Diaspora::Camo.image_url("https://")).to eq("https://")
+ end
end
end