aboutsummaryrefslogtreecommitdiffstats
path: root/redmine
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2018-05-30 12:24:32 +0000
committerHarald Welte <laforge@gnumonks.org>2018-05-30 14:28:25 +0000
commit0f0fd8c41e3f68504f11528928e7bc57cc5b2539 (patch)
treea945ac7782c75439bcfaf5d069fd3b2bb04873a1 /redmine
parentda04310dd957dda4ed4781a689d9d6ae2fb09b96 (diff)
redmine: Migrate from 3.2 to 3.4
Diffstat (limited to 'redmine')
-rw-r--r--redmine/Dockerfile12
-rw-r--r--redmine/redmine-image-content-disposition.diff64
-rw-r--r--redmine/redmine-issue-2047-svg-image-support.diff24
-rw-r--r--redmine/redmine-openid-hmac-digest.diff46
4 files changed, 2 insertions, 144 deletions
diff --git a/redmine/Dockerfile b/redmine/Dockerfile
index 1d8362d..25f6308 100644
--- a/redmine/Dockerfile
+++ b/redmine/Dockerfile
@@ -1,17 +1,9 @@
-FROM redmine:3.2
+FROM redmine:3.4
RUN apt-get update && \
apt-get install -y --no-install-recommends \
graphviz \
+ imagemagick \
mscgen \
patch && \
apt-get clean
-
-COPY redmine-issue-2047-svg-image-support.diff /tmp/redmine-issue-2047-svg-image-support.diff
-RUN cd app && patch -p1 < /tmp/redmine-issue-2047-svg-image-support.diff
-
-COPY redmine-openid-hmac-digest.diff /tmp/
-RUN cd /usr/local/bundle/gems/ruby-openid-2.3.0 && patch -p0 < /tmp/redmine-openid-hmac-digest.diff
-
-COPY redmine-image-content-disposition.diff /tmp/
-RUN patch -p1 < /tmp/redmine-image-content-disposition.diff
diff --git a/redmine/redmine-image-content-disposition.diff b/redmine/redmine-image-content-disposition.diff
deleted file mode 100644
index 50d83db..0000000
--- a/redmine/redmine-image-content-disposition.diff
+++ /dev/null
@@ -1,64 +0,0 @@
-From 6c94d485cb3e23559da8f0356a1052a620d7a2c2 Mon Sep 17 00:00:00 2001
-From: Harald Welte <laforge@gnumonks.org>
-Date: Mon, 14 May 2018 23:16:51 +0200
-Subject: [PATCH] chagnge content-disposition of pdf/image/text/patch to
- 'inline'
-
-Related: https://osmocom.org/issues/3264
----
- app/controllers/attachments_controller.rb | 9 ++++++++-
- app/models/attachment.rb | 8 ++++++++
- 2 files changed, 16 insertions(+), 1 deletion(-)
-
-diff --git a/app/controllers/attachments_controller.rb b/app/controllers/attachments_controller.rb
-index c2b5fa9c8..f2a57c31d 100644
---- a/app/controllers/attachments_controller.rb
-+++ b/app/controllers/attachments_controller.rb
-@@ -57,7 +57,7 @@ class AttachmentsController < ApplicationController
- # images are sent inline
- send_file @attachment.diskfile, :filename => filename_for_content_disposition(@attachment.filename),
- :type => detect_content_type(@attachment),
-- :disposition => 'attachment'
-+ :disposition => disposition(@attachment)
- end
- end
-
-@@ -188,4 +188,12 @@ class AttachmentsController < ApplicationController
- end
- content_type.to_s
- end
-+
-+ def disposition(attachment)
-+ if attachment.is_pdf? || attachment.is_image? || attachment.is_diff? || attachment.is_text?
-+ 'inline'
-+ else
-+ 'attachment'
-+ end
-+ end
- end
-diff --git a/app/models/attachment.rb b/app/models/attachment.rb
-index 3d16f57cc..a2520b0d5 100644
---- a/app/models/attachment.rb
-+++ b/app/models/attachment.rb
-@@ -236,10 +236,18 @@ class Attachment < ActiveRecord::Base
- Redmine::MimeType.is_type?('text', filename)
- end
-
-+ def is_image?
-+ Redmine::MimeType.is_type?('image', filename)
-+ end
-+
- def is_diff?
- self.filename =~ /\.(patch|diff)$/i
- end
-
-+ def is_pdf?
-+ Redmine::MimeType.of(filename) == "application/pdf"
-+ end
-+
- # Returns true if the file is readable
- def readable?
- File.readable?(diskfile)
---
-2.17.0
-
diff --git a/redmine/redmine-issue-2047-svg-image-support.diff b/redmine/redmine-issue-2047-svg-image-support.diff
deleted file mode 100644
index 23fc1e2..0000000
--- a/redmine/redmine-issue-2047-svg-image-support.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -ru app.orig/helpers/application_helper.rb app/helpers/application_helper.rb
---- app.orig/helpers/application_helper.rb 2018-01-08 19:37:37.000000000 +0000
-+++ app/helpers/application_helper.rb 2018-05-14 08:15:11.558390732 +0000
-@@ -637,7 +637,7 @@
- attachments = options[:attachments] || []
- attachments += obj.attachments if obj.respond_to?(:attachments)
- if attachments.present?
-- text.gsub!(/src="([^\/"]+\.(bmp|gif|jpg|jpe|jpeg|png))"(\s+alt="([^"]*)")?/i) do |m|
-+ text.gsub!(/src="([^\/"]+\.(bmp|gif|jpg|jpe|jpeg|png|svg))"(\s+alt="([^"]*)")?/i) do |m|
- filename, ext, alt, alttext = $1.downcase, $2, $3, $4
- # search for the picture in attachments
- if found = Attachment.latest_attach(attachments, CGI.unescape(filename))
-diff -ru app.orig/models/attachment.rb app/models/attachment.rb
---- app.orig/models/attachment.rb 2018-01-08 19:37:37.000000000 +0000
-+++ app/models/attachment.rb 2018-05-14 08:14:49.542526978 +0000
-@@ -193,7 +193,7 @@
- end
-
- def image?
-- !!(self.filename =~ /\.(bmp|gif|jpg|jpe|jpeg|png)$/i)
-+ !!(self.filename =~ /\.(bmp|gif|jpg|jpe|jpeg|png|svg)$/i)
- end
-
- def thumbnailable?
diff --git a/redmine/redmine-openid-hmac-digest.diff b/redmine/redmine-openid-hmac-digest.diff
deleted file mode 100644
index e5b22dc..0000000
--- a/redmine/redmine-openid-hmac-digest.diff
+++ /dev/null
@@ -1,46 +0,0 @@
-diff -Nurd lib/openid/cryptutil.rb
-/usr/local/lib/ruby/gems/2.3/gems/ruby-openid-2.3.0/lib/openid/cryptutil.rb
---- lib/openid/cryptutil.rb 1970-01-01 00:00:00.000000000 +0000
-+++ /usr/local/lib/ruby/gems/2.3/gems/ruby-openid-2.3.0/lib/openid/cryptutil.rb 2017-07-17
-18:25:45.146746571 +0000
-@@ -2,7 +2,7 @@
- require "digest/sha1"
- require "digest/sha2"
- begin
-- require "digest/hmac"
-+ require "openssl"
- rescue LoadError
- begin
- # Try loading the ruby-hmac files if they exist
-@@ -33,27 +33,19 @@
- end
-
- def CryptUtil.sha1(text)
-- return Digest::SHA1.digest(text)
-+ return OpenSSL::Digest.new('sha1').digest(text)
- end
-
- def CryptUtil.hmac_sha1(key, text)
-- if Digest.const_defined? :HMAC
-- Digest::HMAC.new(key,Digest::SHA1).update(text).digest
-- else
-- return HMAC::SHA1.digest(key, text)
-- end
-+ return OpenSSL::HMAC.digest('sha1', key, text)
- end
-
- def CryptUtil.sha256(text)
-- return Digest::SHA256.digest(text)
-+ return OpenSSL::Digest.new('sha256').digest(text)
- end
-
- def CryptUtil.hmac_sha256(key, text)
-- if Digest.const_defined? :HMAC
-- Digest::HMAC.new(key,Digest::SHA256).update(text).digest
-- else
-- return HMAC::SHA256.digest(key, text)
-- end
-+ return OpenSSL::HMAC.digest('sha256', key, text)
- end
-
- # Generate a random string of the given length, composed of the