Hello community, here is the log from the commit of package rubygem-actionview-4_2 for openSUSE:Factory checked in at 2016-03-01 09:41:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-actionview-4_2 (Old) and /work/SRC/openSUSE:Factory/.rubygem-actionview-4_2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "rubygem-actionview-4_2" Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-actionview-4_2/rubygem-actionview-4_2.changes 2015-12-14 10:13:31.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.rubygem-actionview-4_2.new/rubygem-actionview-4_2.changes 2016-03-01 09:41:50.000000000 +0100 @@ -1,0 +2,6 @@ +Tue Jan 26 05:30:06 UTC 2016 - coolo@suse.com + +- updated to version 4.2.5.1 + see installed CHANGELOG.md + +------------------------------------------------------------------- Old: ---- actionview-4.2.5.gem New: ---- actionview-4.2.5.1.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-actionview-4_2.spec ++++++ --- /var/tmp/diff_new_pack.jksV0S/_old 2016-03-01 09:41:51.000000000 +0100 +++ /var/tmp/diff_new_pack.jksV0S/_new 2016-03-01 09:41:51.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package rubygem-actionview-4_2 # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,7 +24,7 @@ # Name: rubygem-actionview-4_2 -Version: 4.2.5 +Version: 4.2.5.1 Release: 0 %define mod_name actionview %define mod_full_name %{mod_name}-%{version} ++++++ actionview-4.2.5.gem -> actionview-4.2.5.1.gem ++++++ Files old/checksums.yaml.gz and new/checksums.yaml.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/action_view/gem_version.rb new/lib/action_view/gem_version.rb --- old/lib/action_view/gem_version.rb 2015-11-12 18:05:50.000000000 +0100 +++ new/lib/action_view/gem_version.rb 2016-01-25 19:25:06.000000000 +0100 @@ -8,7 +8,7 @@ MAJOR = 4 MINOR = 2 TINY = 5 - PRE = nil + PRE = "1" STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".") end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/action_view/lookup_context.rb new/lib/action_view/lookup_context.rb --- old/lib/action_view/lookup_context.rb 2015-11-12 18:05:50.000000000 +0100 +++ new/lib/action_view/lookup_context.rb 2016-01-25 19:25:06.000000000 +0100 @@ -122,6 +122,10 @@ end alias :find_template :find + def find_file(name, prefixes = [], partial = false, keys = [], options = {}) + @view_paths.find_file(*args_for_lookup(name, prefixes, partial, keys, options)) + end + def find_all(name, prefixes = [], partial = false, keys = [], options = {}) @view_paths.find_all(*args_for_lookup(name, prefixes, partial, keys, options)) end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/action_view/path_set.rb new/lib/action_view/path_set.rb --- old/lib/action_view/path_set.rb 2015-11-12 18:05:50.000000000 +0100 +++ new/lib/action_view/path_set.rb 2016-01-25 19:25:06.000000000 +0100 @@ -46,23 +46,35 @@ find_all(*args).first || raise(MissingTemplate.new(self, *args)) end + def find_file(path, prefixes = [], *args) + _find_all(path, prefixes, args, true).first || raise(MissingTemplate.new(self, path, prefixes, *args)) + end + def find_all(path, prefixes = [], *args) + _find_all path, prefixes, args, false + end + + def exists?(path, prefixes, *args) + find_all(path, prefixes, *args).any? + end + + private + + def _find_all(path, prefixes, args, outside_app) prefixes = [prefixes] if String === prefixes prefixes.each do |prefix| paths.each do |resolver| - templates = resolver.find_all(path, prefix, *args) + if outside_app + templates = resolver.find_all_anywhere(path, prefix, *args) + else + templates = resolver.find_all(path, prefix, *args) + end return templates unless templates.empty? end end [] end - def exists?(path, prefixes, *args) - find_all(path, prefixes, *args).any? - end - - private - def typecast(paths) paths.map do |path| case path diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/action_view/renderer/abstract_renderer.rb new/lib/action_view/renderer/abstract_renderer.rb --- old/lib/action_view/renderer/abstract_renderer.rb 2015-11-12 18:05:50.000000000 +0100 +++ new/lib/action_view/renderer/abstract_renderer.rb 2016-01-25 19:25:06.000000000 +0100 @@ -15,7 +15,7 @@ # that new object is called in turn. This abstracts the setup and rendering # into a separate classes for partials and templates. class AbstractRenderer #:nodoc: - delegate :find_template, :template_exists?, :with_fallbacks, :with_layout_format, :formats, :to => :@lookup_context + delegate :find_template, :find_file, :template_exists?, :with_fallbacks, :with_layout_format, :formats, :to => :@lookup_context def initialize(lookup_context) @lookup_context = lookup_context diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/action_view/renderer/template_renderer.rb new/lib/action_view/renderer/template_renderer.rb --- old/lib/action_view/renderer/template_renderer.rb 2015-11-12 18:05:50.000000000 +0100 +++ new/lib/action_view/renderer/template_renderer.rb 2016-01-25 19:25:06.000000000 +0100 @@ -29,7 +29,7 @@ elsif options.key?(:html) Template::HTML.new(options[:html], formats.first) elsif options.key?(:file) - with_fallbacks { find_template(options[:file], nil, false, keys, @details) } + with_fallbacks { find_file(options[:file], nil, false, keys, @details) } elsif options.key?(:inline) handler = Template.handler_for_extension(options[:type] || "erb") Template.new(options[:inline], "inline template", handler, :locals => keys) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/action_view/template/resolver.rb new/lib/action_view/template/resolver.rb --- old/lib/action_view/template/resolver.rb 2015-11-12 18:05:50.000000000 +0100 +++ new/lib/action_view/template/resolver.rb 2016-01-25 19:25:06.000000000 +0100 @@ -113,7 +113,13 @@ # Normalizes the arguments and passes it on to find_templates. def find_all(name, prefix=nil, partial=false, details={}, key=nil, locals=[]) cached(key, [name, prefix, partial], details, locals) do - find_templates(name, prefix, partial, details) + find_templates(name, prefix, partial, details, false) + end + end + + def find_all_anywhere(name, prefix, partial=false, details={}, key=nil, locals=[]) + cached(key, [name, prefix, partial], details, locals) do + find_templates(name, prefix, partial, details, true) end end @@ -174,15 +180,16 @@ private - def find_templates(name, prefix, partial, details) + def find_templates(name, prefix, partial, details, outside_app_allowed = false) path = Path.build(name, prefix, partial) - query(path, details, details[:formats]) + query(path, details, details[:formats], outside_app_allowed) end - def query(path, details, formats) + def query(path, details, formats, outside_app_allowed) query = build_query(path, details) template_paths = find_template_paths query + template_paths = reject_files_external_to_app(template_paths) unless outside_app_allowed template_paths.map { |template| handler, format, variant = extract_handler_and_format_and_variant(template, formats) @@ -197,6 +204,10 @@ } end + def reject_files_external_to_app(files) + files.reject { |filename| !inside_path?(@path, filename) } + end + if RUBY_VERSION >= '2.2.0' def find_template_paths(query) Dir[query].reject { |filename| @@ -217,6 +228,12 @@ end end + def inside_path?(path, filename) + filename = File.expand_path(filename) + path = File.join(path, '') + filename.start_with?(path) + end + # Helper for building query glob string based on resolver's pattern. def build_query(path, details) query = @pattern.dup diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/action_view/testing/resolvers.rb new/lib/action_view/testing/resolvers.rb --- old/lib/action_view/testing/resolvers.rb 2015-11-12 18:05:50.000000000 +0100 +++ new/lib/action_view/testing/resolvers.rb 2016-01-25 19:25:06.000000000 +0100 @@ -19,7 +19,7 @@ private - def query(path, exts, formats) + def query(path, exts, formats, _) query = "" EXTENSIONS.each_key do |ext| query << '(' << exts[ext].map {|e| e && Regexp.escape(".#{e}") }.join('|') << '|)' @@ -44,7 +44,7 @@ end class NullResolver < PathResolver - def query(path, exts, formats) + def query(path, exts, formats, _) handler, format, variant = extract_handler_and_format_and_variant(path, formats) [ActionView::Template.new("Template generated by Null Resolver", path, handler, :virtual_path => path, :format => format, :variant => variant)] end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2015-11-12 18:05:50.000000000 +0100 +++ new/metadata 2016-01-25 19:25:06.000000000 +0100 @@ -1,14 +1,14 @@ --- !ruby/object:Gem::Specification name: actionview version: !ruby/object:Gem::Version - version: 4.2.5 + version: 4.2.5.1 platform: ruby authors: - David Heinemeier Hansson autorequire: bindir: bin cert_chain: [] -date: 2015-11-12 00:00:00.000000000 Z +date: 2016-01-25 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: activesupport @@ -16,14 +16,14 @@ requirements: - - '=' - !ruby/object:Gem::Version - version: 4.2.5 + version: 4.2.5.1 type: :runtime prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - '=' - !ruby/object:Gem::Version - version: 4.2.5 + version: 4.2.5.1 - !ruby/object:Gem::Dependency name: builder requirement: !ruby/object:Gem::Requirement @@ -98,28 +98,28 @@ requirements: - - '=' - !ruby/object:Gem::Version - version: 4.2.5 + version: 4.2.5.1 type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - '=' - !ruby/object:Gem::Version - version: 4.2.5 + version: 4.2.5.1 - !ruby/object:Gem::Dependency name: activemodel requirement: !ruby/object:Gem::Requirement requirements: - - '=' - !ruby/object:Gem::Version - version: 4.2.5 + version: 4.2.5.1 type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - '=' - !ruby/object:Gem::Version - version: 4.2.5 + version: 4.2.5.1 description: Simple, battle-tested conventions and helpers for building web pages. email: david@loudthinking.com executables: [] @@ -248,7 +248,7 @@ requirements: - none rubyforge_project: -rubygems_version: 2.4.5.1 +rubygems_version: 2.5.1 signing_key: specification_version: 4 summary: Rendering framework putting the V in MVC (part of Rails).