diff options
author | Go MAEDA <maeda@farend.jp> | 2019-03-17 16:36:34 +0000 |
---|---|---|
committer | Go MAEDA <maeda@farend.jp> | 2019-03-17 16:36:34 +0000 |
commit | 30e341db6963d71fccf2d1bf24744ab828bee151 (patch) | |
tree | 48d0d989256c847c81fa69712da986803c63c30f /lib | |
parent | bd5977d97eaf92f852c1bfe499052b6b07ab8aae (diff) | |
download | redmine-30e341db6963d71fccf2d1bf24744ab828bee151.tar.gz redmine-30e341db6963d71fccf2d1bf24744ab828bee151.zip |
Support frozen_string_literal in lib/**/*.rb (#26561).
Contributed by Pavel Rosický.
git-svn-id: http://svn.redmine.org/redmine/trunk@17988 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'lib')
40 files changed, 99 insertions, 98 deletions
diff --git a/lib/plugins/acts_as_activity_provider/init.rb b/lib/plugins/acts_as_activity_provider/init.rb index 781bd3f47..465ab3b9b 100644 --- a/lib/plugins/acts_as_activity_provider/init.rb +++ b/lib/plugins/acts_as_activity_provider/init.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true require File.dirname(__FILE__) + '/lib/acts_as_activity_provider' ActiveRecord::Base.send(:include, Redmine::Acts::ActivityProvider) diff --git a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb index 325176ddf..e92f68146 100644 --- a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb +++ b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/plugins/acts_as_attachable/init.rb b/lib/plugins/acts_as_attachable/init.rb index 66ecc7849..fad72214c 100644 --- a/lib/plugins/acts_as_attachable/init.rb +++ b/lib/plugins/acts_as_attachable/init.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true require File.dirname(__FILE__) + '/lib/acts_as_attachable' ActiveRecord::Base.send(:include, Redmine::Acts::Attachable) diff --git a/lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb b/lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb index b895a9f55..4a2ce9055 100644 --- a/lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb +++ b/lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/plugins/acts_as_customizable/init.rb b/lib/plugins/acts_as_customizable/init.rb index 2139e96c6..c44db3df0 100644 --- a/lib/plugins/acts_as_customizable/init.rb +++ b/lib/plugins/acts_as_customizable/init.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true require File.dirname(__FILE__) + '/lib/acts_as_customizable' ActiveRecord::Base.send(:include, Redmine::Acts::Customizable) diff --git a/lib/plugins/acts_as_customizable/lib/acts_as_customizable.rb b/lib/plugins/acts_as_customizable/lib/acts_as_customizable.rb index 5413a456f..a5568f635 100644 --- a/lib/plugins/acts_as_customizable/lib/acts_as_customizable.rb +++ b/lib/plugins/acts_as_customizable/lib/acts_as_customizable.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/plugins/acts_as_event/init.rb b/lib/plugins/acts_as_event/init.rb index 2a78cd2d3..2c025f2c0 100644 --- a/lib/plugins/acts_as_event/init.rb +++ b/lib/plugins/acts_as_event/init.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true require File.dirname(__FILE__) + '/lib/acts_as_event' ActiveRecord::Base.send(:include, Redmine::Acts::Event) diff --git a/lib/plugins/acts_as_event/lib/acts_as_event.rb b/lib/plugins/acts_as_event/lib/acts_as_event.rb index f77c12d70..2ff1eea12 100644 --- a/lib/plugins/acts_as_event/lib/acts_as_event.rb +++ b/lib/plugins/acts_as_event/lib/acts_as_event.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/plugins/acts_as_searchable/init.rb b/lib/plugins/acts_as_searchable/init.rb index 204d0ce36..661b0203d 100644 --- a/lib/plugins/acts_as_searchable/init.rb +++ b/lib/plugins/acts_as_searchable/init.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true require File.dirname(__FILE__) + '/lib/acts_as_searchable' ActiveRecord::Base.send(:include, Redmine::Acts::Searchable) diff --git a/lib/plugins/acts_as_searchable/lib/acts_as_searchable.rb b/lib/plugins/acts_as_searchable/lib/acts_as_searchable.rb index 79a3f88fb..61c1704fe 100644 --- a/lib/plugins/acts_as_searchable/lib/acts_as_searchable.rb +++ b/lib/plugins/acts_as_searchable/lib/acts_as_searchable.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/plugins/acts_as_tree/Rakefile b/lib/plugins/acts_as_tree/Rakefile index 255df7de4..bf194199a 100644 --- a/lib/plugins/acts_as_tree/Rakefile +++ b/lib/plugins/acts_as_tree/Rakefile @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true require 'rake' require 'rake/testtask' diff --git a/lib/plugins/acts_as_tree/lib/active_record/acts/tree.rb b/lib/plugins/acts_as_tree/lib/active_record/acts/tree.rb index 668c600c4..14dce355a 100644 --- a/lib/plugins/acts_as_tree/lib/active_record/acts/tree.rb +++ b/lib/plugins/acts_as_tree/lib/active_record/acts/tree.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true module ActiveRecord module Acts diff --git a/lib/plugins/acts_as_tree/test/acts_as_tree_test.rb b/lib/plugins/acts_as_tree/test/acts_as_tree_test.rb index 81a0033c5..9ee4b8a42 100644 --- a/lib/plugins/acts_as_tree/test/acts_as_tree_test.rb +++ b/lib/plugins/acts_as_tree/test/acts_as_tree_test.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true require 'test/unit' diff --git a/lib/plugins/acts_as_watchable/init.rb b/lib/plugins/acts_as_watchable/init.rb index 4a9a14237..d91feec41 100644 --- a/lib/plugins/acts_as_watchable/init.rb +++ b/lib/plugins/acts_as_watchable/init.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Include hook code here require File.dirname(__FILE__) + '/lib/acts_as_watchable' diff --git a/lib/plugins/acts_as_watchable/lib/acts_as_watchable.rb b/lib/plugins/acts_as_watchable/lib/acts_as_watchable.rb index 8890326d1..1ebe9e2fc 100644 --- a/lib/plugins/acts_as_watchable/lib/acts_as_watchable.rb +++ b/lib/plugins/acts_as_watchable/lib/acts_as_watchable.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # ActsAsWatchable module Redmine diff --git a/lib/plugins/gravatar/init.rb b/lib/plugins/gravatar/init.rb index 65c9fce00..5bf49923d 100644 --- a/lib/plugins/gravatar/init.rb +++ b/lib/plugins/gravatar/init.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true require 'gravatar' ActionView::Base.send :include, GravatarHelper::PublicMethods diff --git a/lib/plugins/open_id_authentication/lib/open_id_authentication.rb b/lib/plugins/open_id_authentication/lib/open_id_authentication.rb index 7754afece..711a38d43 100644 --- a/lib/plugins/open_id_authentication/lib/open_id_authentication.rb +++ b/lib/plugins/open_id_authentication/lib/open_id_authentication.rb @@ -89,7 +89,7 @@ module OpenIdAuthentication # dodge XRIs -- TODO: validate, don't just skip. unless ['=', '@', '+', '$', '!', '('].include?(identifier.at(0)) # does it begin with http? if not, add it. - identifier = "http://#{identifier}" unless identifier =~ /^http/i + identifier = +"http://#{identifier}" unless identifier =~ /^http/i # strip any fragments identifier.gsub!(/\#(.*)$/, '') diff --git a/lib/redmine/field_format.rb b/lib/redmine/field_format.rb index 29be3c9fd..e1aba49f5 100644 --- a/lib/redmine/field_format.rb +++ b/lib/redmine/field_format.rb @@ -185,7 +185,7 @@ module Redmine def parse_keyword(custom_field, keyword, &block) separator = Regexp.escape "," - keyword = keyword.to_s + keyword = keyword.dup.to_s if custom_field.multiple? values = [] diff --git a/lib/redmine/helpers/diff.rb b/lib/redmine/helpers/diff.rb index 6f61e3e52..1217121ad 100644 --- a/lib/redmine/helpers/diff.rb +++ b/lib/redmine/helpers/diff.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -46,7 +46,7 @@ module Redmine add_at = nil add_to = nil del_at = nil - deleted = "" + deleted = +"" diff.each do |change| pos = change[1] if change[0] == "+" diff --git a/lib/redmine/helpers/gantt.rb b/lib/redmine/helpers/gantt.rb index abe783267..ac2b34e3d 100644 --- a/lib/redmine/helpers/gantt.rb +++ b/lib/redmine/helpers/gantt.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -76,8 +76,8 @@ module Redmine end @date_from = Date.civil(@year_from, @month_from, 1) @date_to = (@date_from >> @months) - 1 - @subjects = '' - @lines = '' + @subjects = +'' + @lines = +'' @number_of_rows = nil @truncated = false if options.has_key?(:max_rows) @@ -198,8 +198,8 @@ module Redmine :indent_increment => 20, :render => :subject, :format => :html}.merge(options) indent = options[:indent] || 4 - @subjects = '' unless options[:only] == :lines - @lines = '' unless options[:only] == :subjects + @subjects = +'' unless options[:only] == :lines + @lines = +'' unless options[:only] == :subjects @number_of_rows = 0 begin Project.project_tree(projects) do |project, level| @@ -652,7 +652,7 @@ module Redmine case object when Issue issue = object - css_classes = '' + css_classes = +'' css_classes << ' issue-overdue' if issue.overdue? css_classes << ' issue-behind-schedule' if issue.behind_schedule? css_classes << ' icon icon-issue' unless Setting.gravatar_enabled? && issue.assigned_to @@ -663,7 +663,7 @@ module Redmine css_classes << ' behind-start-date' if progress_date < self.date_from css_classes << ' over-end-date' if progress_date > self.date_to end - s = "".html_safe + s = (+"").html_safe if issue.assigned_to.present? assigned_string = l(:field_assigned_to) + ": " + issue.assigned_to.name s << view.avatar(issue.assigned_to, @@ -676,7 +676,7 @@ module Redmine view.content_tag(:span, s, :class => css_classes).html_safe when Version version = object - html_class = "" + html_class = +"" html_class << 'icon icon-package ' html_class << (version.behind_schedule? ? 'version-behind-schedule' : '') << " " html_class << (version.overdue? ? 'version-overdue' : '') @@ -691,7 +691,7 @@ module Redmine view.content_tag(:span, s, :class => html_class).html_safe when Project project = object - html_class = "" + html_class = +"" html_class << 'icon icon-projects ' html_class << (project.overdue? ? 'project-overdue' : '') s = view.link_to_project(project).html_safe @@ -727,7 +727,7 @@ module Redmine end if has_children content = view.content_tag(:span, nil, :class => :expander) + content - tag_options[:class] << ' open' + tag_options[:class] += ' open' else if params[:indent] params = params.dup @@ -735,7 +735,7 @@ module Redmine end end style = "position: absolute;top:#{params[:top]}px;left:#{params[:indent]}px;" - style << "width:#{params[:subject_width] - params[:indent]}px;" if params[:subject_width] + style += "width:#{params[:subject_width] - params[:indent]}px;" if params[:subject_width] tag_options[:style] = style output = view.content_tag(:div, content, tag_options) @subjects << output @@ -774,7 +774,7 @@ module Redmine end def html_task(params, coords, markers, label, object) - output = '' + output = +'' data_options = {} data_options[:collapse_expand] = "#{object.class}-#{object.id}".downcase if object @@ -792,7 +792,7 @@ module Redmine # Renders the task bar, with progress and late if coords[:bar_start] && coords[:bar_end] width = coords[:bar_end] - coords[:bar_start] - 2 - style = "" + style = +"" style << "top:#{params[:top]}px;" style << "left:#{coords[:bar_start]}px;" style << "width:#{width}px;" @@ -812,7 +812,7 @@ module Redmine output << view.content_tag(:div, ' '.html_safe, content_opt) if coords[:bar_late_end] width = coords[:bar_late_end] - coords[:bar_start] - 2 - style = "" + style = +"" style << "top:#{params[:top]}px;" style << "left:#{coords[:bar_start]}px;" style << "width:#{width}px;" @@ -823,7 +823,7 @@ module Redmine end if coords[:bar_progress_end] width = coords[:bar_progress_end] - coords[:bar_start] - 2 - style = "" + style = +"" style << "top:#{params[:top]}px;" style << "left:#{coords[:bar_start]}px;" style << "width:#{width}px;" @@ -839,7 +839,7 @@ module Redmine # Renders the markers if markers if coords[:start] - style = "" + style = +"" style << "top:#{params[:top]}px;" style << "left:#{coords[:start]}px;" style << "width:15px;" @@ -849,7 +849,7 @@ module Redmine :data => data_options) end if coords[:end] - style = "" + style = +"" style << "top:#{params[:top]}px;" style << "left:#{coords[:end] + params[:zoom]}px;" style << "width:15px;" @@ -861,7 +861,7 @@ module Redmine end # Renders the label on the right if label - style = "" + style = +"" style << "top:#{params[:top]}px;" style << "left:#{(coords[:bar_end] || 0) + 8}px;" style << "width:15px;" @@ -876,7 +876,7 @@ module Redmine view.render_issue_tooltip(object).html_safe, :class => "tip") s += view.content_tag(:input, nil, :type => 'checkbox', :name => 'ids[]', :value => object.id, :style => 'display:none;', :class => 'toggle-selection') - style = "" + style = +"" style << "position: absolute;" style << "top:#{params[:top]}px;" style << "left:#{coords[:bar_start]}px;" diff --git a/lib/redmine/info.rb b/lib/redmine/info.rb index 276c72d40..a51deb227 100644 --- a/lib/redmine/info.rb +++ b/lib/redmine/info.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true module Redmine module Info @@ -9,7 +9,7 @@ module Redmine def versioned_name; "#{app_name} #{Redmine::VERSION}" end def environment - s = "Environment:\n" + s = +"Environment:\n" s << [ ["Redmine version", Redmine::VERSION], ["Ruby version", "#{RUBY_VERSION}-p#{RUBY_PATCHLEVEL} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"], diff --git a/lib/redmine/pagination.rb b/lib/redmine/pagination.rb index f549897ac..b51251b69 100644 --- a/lib/redmine/pagination.rb +++ b/lib/redmine/pagination.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -159,7 +159,7 @@ module Redmine per_page_links = false if count.nil? page_param = paginator.page_param - html = '<ul class="pages">' + html = +'<ul class="pages">' if paginator.multiple_pages? # \xc2\xab(utf-8) = « diff --git a/lib/redmine/scm/adapters/abstract_adapter.rb b/lib/redmine/scm/adapters/abstract_adapter.rb index 7665b0d84..55753d27e 100644 --- a/lib/redmine/scm/adapters/abstract_adapter.rb +++ b/lib/redmine/scm/adapters/abstract_adapter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -214,7 +214,7 @@ module Redmine path = Redmine::Configuration['scm_stderr_log_file'].presence path ||= Rails.root.join("log/#{Rails.env}.scm.stderr.log").to_s if File.exists?(path) - if File.file?(path) && File.writable?(path) + if File.file?(path) && File.writable?(path) writable = true else logger.warn("SCM log file (#{path}) is not writable") @@ -276,8 +276,9 @@ module Redmine end def scm_iconv(to, from, str) - return nil if str.nil? + return if str.nil? return str if to == from && str.encoding.to_s == from + str = str.dup str.force_encoding(from) begin str.encode(to) diff --git a/lib/redmine/scm/adapters/bazaar_adapter.rb b/lib/redmine/scm/adapters/bazaar_adapter.rb index 2c5996b34..af48a9d0f 100644 --- a/lib/redmine/scm/adapters/bazaar_adapter.rb +++ b/lib/redmine/scm/adapters/bazaar_adapter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -154,7 +154,7 @@ module Redmine parsing = $1 elsif line =~ /^ (.*)$/ if parsing == 'message' - revision.message << "#{$1}\n" + revision.message += "#{$1}\n" else if $1 =~ /^(.*)\s+(\S+)$/ path_locale = $1.strip diff --git a/lib/redmine/scm/adapters/cvs_adapter.rb b/lib/redmine/scm/adapters/cvs_adapter.rb index 730ee5caa..c45987f33 100644 --- a/lib/redmine/scm/adapters/cvs_adapter.rb +++ b/lib/redmine/scm/adapters/cvs_adapter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # redMine - project management software # Copyright (C) 2006-2007 Jean-Philippe Lang @@ -93,7 +93,7 @@ module Redmine def entries(path=nil, identifier=nil, options={}) logger.debug "<cvs> entries '#{path}' with identifier '#{identifier}'" path_locale = scm_iconv(@path_encoding, 'UTF-8', path) - path_locale.force_encoding("ASCII-8BIT") + path_locale = path_locale.dup.force_encoding("ASCII-8BIT") entries = Entries.new cmd_args = %w|-q rls -e| cmd_args << "-D" << time_to_cvstime_rlog(identifier) if identifier @@ -161,7 +161,7 @@ module Redmine cmd_args << path_with_project_utf8 scm_cmd(*cmd_args) do |io| state = "entry_start" - commit_log = String.new + commit_log = "" revision = nil date = nil author = nil @@ -171,7 +171,7 @@ module Redmine branch_map = nil io.each_line() do |line| if state != "revision" && /^#{ENDLOG}/ =~ line - commit_log = String.new + commit_log = "" revision = nil state = "entry_start" end @@ -186,7 +186,7 @@ module Redmine elsif /^symbolic names:/ =~ line state = "symbolic" #unless entry.nil? elsif /^#{STARTLOG}/ =~ line - commit_log = String.new + commit_log = "" state = "revision" end next @@ -230,7 +230,7 @@ module Redmine }] }) end - commit_log = String.new + commit_log = "" revision = nil if /^#{ENDLOG}/ =~ line state = "entry_start" @@ -261,7 +261,7 @@ module Redmine # version.line_minus = 0 # end else - commit_log << line unless line =~ /^\*\*\* empty log message \*\*\*/ + commit_log += line unless line =~ /^\*\*\* empty log message \*\*\*/ end end end diff --git a/lib/redmine/scm/adapters/filesystem_adapter.rb b/lib/redmine/scm/adapters/filesystem_adapter.rb index 0ff289df4..4335244be 100644 --- a/lib/redmine/scm/adapters/filesystem_adapter.rb +++ b/lib/redmine/scm/adapters/filesystem_adapter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/scm/adapters/git_adapter.rb b/lib/redmine/scm/adapters/git_adapter.rb index 3a9103360..1889dcda6 100644 --- a/lib/redmine/scm/adapters/git_adapter.rb +++ b/lib/redmine/scm/adapters/git_adapter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -203,7 +203,7 @@ module Redmine cmd_args << "--" << scm_iconv(@path_encoding, 'UTF-8', path) if path && !path.empty? revisions = [] if identifier_from || identifier_to - revisions << "" + revisions << +"" revisions[0] << "#{identifier_from}.." if identifier_from revisions[0] << "#{identifier_to}" if identifier_to else @@ -261,7 +261,7 @@ module Redmine end elsif (parsing_descr == 0) && line.chomp.to_s == "" parsing_descr = 1 - changeset[:description] = "" + changeset[:description] = +"" elsif (parsing_descr == 1 || parsing_descr == 2) \ && line =~ /^:\d+\s+\d+\s+[0-9a-f.]+\s+[0-9a-f.]+\s+(\w)\t(.+)$/ parsing_descr = 2 diff --git a/lib/redmine/scm/adapters/mercurial_adapter.rb b/lib/redmine/scm/adapters/mercurial_adapter.rb index 32637b2f1..fceebf035 100644 --- a/lib/redmine/scm/adapters/mercurial_adapter.rb +++ b/lib/redmine/scm/adapters/mercurial_adapter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/scm/adapters/subversion_adapter.rb b/lib/redmine/scm/adapters/subversion_adapter.rb index 79276feb6..ad99217c3 100644 --- a/lib/redmine/scm/adapters/subversion_adapter.rb +++ b/lib/redmine/scm/adapters/subversion_adapter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -61,7 +61,7 @@ module Redmine # Get info about the svn repository def info - cmd = "#{self.class.sq_bin} info --xml #{target}" + cmd = +"#{self.class.sq_bin} info --xml #{target}" cmd << credentials_string info = nil shellout(cmd) do |io| @@ -91,7 +91,7 @@ module Redmine path ||= '' identifier = (identifier and identifier.to_i > 0) ? identifier.to_i : "HEAD" entries = Entries.new - cmd = "#{self.class.sq_bin} list --xml #{target(path)}@#{identifier}" + cmd = +"#{self.class.sq_bin} list --xml #{target(path)}@#{identifier}" cmd << credentials_string shellout(cmd) do |io| output = io.read.force_encoding('UTF-8') @@ -130,7 +130,7 @@ module Redmine return nil unless self.class.client_version_above?([1, 5, 0]) identifier = (identifier and identifier.to_i > 0) ? identifier.to_i : "HEAD" - cmd = "#{self.class.sq_bin} proplist --verbose --xml #{target(path)}@#{identifier}" + cmd = +"#{self.class.sq_bin} proplist --verbose --xml #{target(path)}@#{identifier}" cmd << credentials_string properties = {} shellout(cmd) do |io| @@ -152,7 +152,7 @@ module Redmine identifier_from = (identifier_from && identifier_from.to_i > 0) ? identifier_from.to_i : "HEAD" identifier_to = (identifier_to && identifier_to.to_i > 0) ? identifier_to.to_i : 1 revisions = Revisions.new - cmd = "#{self.class.sq_bin} log --xml -r #{identifier_from}:#{identifier_to}" + cmd = +"#{self.class.sq_bin} log --xml -r #{identifier_from}:#{identifier_to}" cmd << credentials_string cmd << " --verbose " if options[:with_paths] cmd << " --limit #{options[:limit].to_i}" if options[:limit] @@ -192,7 +192,7 @@ module Redmine identifier_to = (identifier_to and identifier_to.to_i > 0) ? identifier_to.to_i : (identifier_from.to_i - 1) - cmd = "#{self.class.sq_bin} diff -r " + cmd = +"#{self.class.sq_bin} diff -r " cmd << "#{identifier_to}:" cmd << "#{identifier_from}" cmd << " #{target(path)}@#{identifier_from}" @@ -209,7 +209,7 @@ module Redmine def cat(path, identifier=nil) identifier = (identifier and identifier.to_i > 0) ? identifier.to_i : "HEAD" - cmd = "#{self.class.sq_bin} cat #{target(path)}@#{identifier}" + cmd = +"#{self.class.sq_bin} cat #{target(path)}@#{identifier}" cmd << credentials_string cat = nil shellout(cmd) do |io| @@ -222,7 +222,7 @@ module Redmine def annotate(path, identifier=nil) identifier = (identifier and identifier.to_i > 0) ? identifier.to_i : "HEAD" - cmd = "#{self.class.sq_bin} blame #{target(path)}@#{identifier}" + cmd = +"#{self.class.sq_bin} blame #{target(path)}@#{identifier}" cmd << credentials_string blame = Annotate.new shellout(cmd) do |io| @@ -244,7 +244,7 @@ module Redmine private def credentials_string - str = '' + str = +'' str << " --username #{shell_quote(@login)}" unless @login.blank? str << " --password #{shell_quote(@password)}" unless @login.blank? || @password.blank? str << " --no-auth-cache --non-interactive" diff --git a/lib/redmine/unified_diff.rb b/lib/redmine/unified_diff.rb index d4c93db0e..7fa818751 100644 --- a/lib/redmine/unified_diff.rb +++ b/lib/redmine/unified_diff.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -274,7 +274,7 @@ module Redmine def line_to_html_raw(line, offsets) if offsets - s = '' + s = +'' unless offsets.first == 0 s << CGI.escapeHTML(line[0..offsets.first-1]) end diff --git a/lib/redmine/wiki_formatting.rb b/lib/redmine/wiki_formatting.rb index 22309b228..5152cc752 100644 --- a/lib/redmine/wiki_formatting.rb +++ b/lib/redmine/wiki_formatting.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/wiki_formatting/html_parser.rb b/lib/redmine/wiki_formatting/html_parser.rb index d1c90b502..62445ff3b 100644 --- a/lib/redmine/wiki_formatting/html_parser.rb +++ b/lib/redmine/wiki_formatting/html_parser.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/wiki_formatting/macros.rb b/lib/redmine/wiki_formatting/macros.rb index c1e3ee4e5..48c91b6e8 100644 --- a/lib/redmine/wiki_formatting/macros.rb +++ b/lib/redmine/wiki_formatting/macros.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/wiki_formatting/markdown/formatter.rb b/lib/redmine/wiki_formatting/markdown/formatter.rb index f605e94b7..20c18bcaf 100644 --- a/lib/redmine/wiki_formatting/markdown/formatter.rb +++ b/lib/redmine/wiki_formatting/markdown/formatter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -83,7 +83,7 @@ module Redmine end def extract_sections(index) - sections = ['', '', ''] + sections = [+'', +'', +''] offset = 0 i = 0 l = 1 diff --git a/lib/redmine/wiki_formatting/markdown/helper.rb b/lib/redmine/wiki_formatting/markdown/helper.rb index 0a5998cf4..4f79acdd7 100644 --- a/lib/redmine/wiki_formatting/markdown/helper.rb +++ b/lib/redmine/wiki_formatting/markdown/helper.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/wiki_formatting/markdown/html_parser.rb b/lib/redmine/wiki_formatting/markdown/html_parser.rb index 7cf0a1d37..d3900a2bd 100644 --- a/lib/redmine/wiki_formatting/markdown/html_parser.rb +++ b/lib/redmine/wiki_formatting/markdown/html_parser.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/wiki_formatting/textile/formatter.rb b/lib/redmine/wiki_formatting/textile/formatter.rb index 313595c58..aec94bc6e 100644 --- a/lib/redmine/wiki_formatting/textile/formatter.rb +++ b/lib/redmine/wiki_formatting/textile/formatter.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang @@ -65,9 +65,9 @@ module Redmine @pre_list = [] text = self.dup rip_offtags text, false, false - before = '' - s = '' - after = '' + before = +'' + s = +'' + after = +'' i = 0 l = 1 started = false diff --git a/lib/redmine/wiki_formatting/textile/helper.rb b/lib/redmine/wiki_formatting/textile/helper.rb index b29ade8be..3d8c2d163 100644 --- a/lib/redmine/wiki_formatting/textile/helper.rb +++ b/lib/redmine/wiki_formatting/textile/helper.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/wiki_formatting/textile/html_parser.rb b/lib/redmine/wiki_formatting/textile/html_parser.rb index 467281d87..35215a336 100644 --- a/lib/redmine/wiki_formatting/textile/html_parser.rb +++ b/lib/redmine/wiki_formatting/textile/html_parser.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # Redmine - project management software # Copyright (C) 2006-2017 Jean-Philippe Lang diff --git a/lib/redmine/wiki_formatting/textile/redcloth3.rb b/lib/redmine/wiki_formatting/textile/redcloth3.rb index 1cd5e0580..c4dc4c25e 100644 --- a/lib/redmine/wiki_formatting/textile/redcloth3.rb +++ b/lib/redmine/wiki_formatting/textile/redcloth3.rb @@ -1,4 +1,4 @@ -# frozen_string_literal: false +# frozen_string_literal: true # vim:ts=4:sw=4: # = RedCloth - Textile and Markdown Hybrid for Ruby @@ -467,7 +467,7 @@ class RedCloth3 < String # Parses Textile attribute lists and builds an HTML attribute string def pba( text_in, element = "" ) - return '' unless text_in + return +'' unless text_in style = [] text = text_in.dup @@ -505,7 +505,7 @@ class RedCloth3 < String id = id.starts_with?('wiki-id-') ? id : "wiki-id-#{id}" if id - atts = '' + atts = +'' atts << " style=\"#{ style.join }\"" unless style.empty? atts << " class=\"#{ cls }\"" unless cls.to_s.empty? atts << " lang=\"#{ lang }\"" if lang @@ -586,9 +586,9 @@ class RedCloth3 < String depth << tl atts = pba( atts ) atts = shelve( atts ) if atts - lines[line_id] = "\t<#{ lT(tl) }l#{ atts }>\n\t<li>#{ content }" + lines[line_id] = +"\t<#{ lT(tl) }l#{ atts }>\n\t<li>#{ content }" else - lines[line_id] = "\t\t<li>#{ content }" + lines[line_id] = +"\t\t<li>#{ content }" end last_line = line_id @@ -611,7 +611,7 @@ class RedCloth3 < String def block_textile_quotes( text ) text.gsub!( QUOTES_RE ) do |match| lines = match.split( /\n/ ) - quotes = '' + quotes = +'' indent = 0 lines.each do |line| line =~ QUOTES_CONTENT_RE @@ -639,7 +639,7 @@ class RedCloth3 < String text.gsub!( CODE_RE ) do |m| before,lang,code,after = $~[1..4] lang = " lang=\"#{ lang }\"" if lang - rip_offtags( "#{ before }<code#{ lang }>#{ code }</code>#{ after }", false ) + rip_offtags( +"#{ before }<code#{ lang }>#{ code }</code>#{ after }", false ) end end @@ -851,7 +851,7 @@ class RedCloth3 < String post = ")"+post # add closing parenth to post end atts = pba( atts ) - atts = " href=\"#{ htmlesc url }#{ slash }\"#{ atts }" + atts = +" href=\"#{ htmlesc url }#{ slash }\"#{ atts }" atts << " title=\"#{ htmlesc title }\"" if title atts = shelve( atts ) if atts @@ -962,7 +962,7 @@ class RedCloth3 < String stln,algn,atts,url,title,href,href_a1,href_a2 = $~[1..8] htmlesc title atts = pba( atts ) - atts = " src=\"#{ htmlesc url.dup }\"#{ atts }" + atts = +" src=\"#{ htmlesc url.dup }\"#{ atts }" atts << " title=\"#{ title }\"" if title atts << " alt=\"#{ title }\"" # size = @getimagesize($url); @@ -973,7 +973,7 @@ class RedCloth3 < String next m unless uri_with_safe_scheme?(url) - out = '' + out = +'' out << "<a#{ shelve( " href=\"#{ href }\"" ) }>" if href out << "<img#{ shelve( atts ) } />" out << "</a>#{ href_a1 }#{ href_a2 }" if href @@ -1096,25 +1096,25 @@ class RedCloth3 < String if codepre - used_offtags.length > 0 htmlesc( line, :NoQuotes ) if escape_line @pre_list.last << line - line = "" + line = +"" else ### htmlesc is disabled between CODE tags which will be parsed with highlighter ### Regexp in formatter.rb is : /<code\s+class="(\w+)">\s?(.+)/m ### NB: some changes were made not to use $N variables, because we use "match" ### and it breaks following lines htmlesc( aftertag, :NoQuotes ) if aftertag && escape_aftertag && !first.match(/<code\s+class="(\w+)">/) - line = "<redpre##{ @pre_list.length }>" + line = +"<redpre##{ @pre_list.length }>" first.match(/<#{ OFFTAGS }([^>]*)>/) tag = $1 $2.to_s.match(/(class\=("[^"]+"|'[^']+'))/i) tag << " #{$1}" if $1 && tag == 'code' - @pre_list << "<#{ tag }>#{ aftertag }" + @pre_list << +"<#{ tag }>#{ aftertag }" end elsif $1 and codepre > 0 if codepre - used_offtags.length > 0 htmlesc( line, :NoQuotes ) if escape_line @pre_list.last << line - line = "" + line = +"" end codepre -= 1 unless codepre.zero? used_offtags = {} if codepre.zero? |