|
|
f833e9 |
%{?scl:%scl_package rubygem-%{gem_name}}
|
|
|
f833e9 |
%{!?scl:%global pkg_name %{name}}
|
|
|
f833e9 |
|
|
|
f833e9 |
# Generated from sprockets-2.4.5.gem by gem2rpm -*- rpm-spec -*-
|
|
|
f833e9 |
%global gem_name sprockets
|
|
|
f833e9 |
|
|
|
f833e9 |
# Fallback to rh-nodejs4 rh-nodejs4-scldevel is probably not available in
|
|
|
f833e9 |
# the buildroot.
|
|
|
f833e9 |
%{!?scl_nodejs:%global scl_nodejs rh-nodejs4}
|
|
|
f833e9 |
%{!?scl_prefix_nodejs:%global scl_prefix_nodejs %{scl_nodejs}-}
|
|
|
f833e9 |
|
|
|
f833e9 |
Name: %{?scl_prefix}rubygem-%{gem_name}
|
|
|
f833e9 |
Version: 3.2.0
|
|
|
5d04a7 |
Release: 5%{?dist}
|
|
|
f833e9 |
Summary: Rack-based asset packaging system
|
|
|
f833e9 |
Group: Development/Languages
|
|
|
f833e9 |
License: MIT
|
|
|
f833e9 |
URL: https://github.com/rails/sprockets
|
|
|
f833e9 |
Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem
|
|
|
f833e9 |
# to get tests:
|
|
|
f833e9 |
# git clone https://github.com/rails/sprockets.git && cd sprockets/
|
|
|
f833e9 |
# git checkout v3.2.0 && tar czf sprockets-3.2.0-tests.tgz test/
|
|
|
f833e9 |
Source1: sprockets-%{version}-tests.tgz
|
|
|
f833e9 |
|
|
|
5d04a7 |
# Fix CVE-2018-3760: Path traversal in sprockets/server.rb:forbidden_request?()
|
|
|
5d04a7 |
# https://bugzilla.redhat.com/show_bug.cgi?id=1595901
|
|
|
5d04a7 |
# https://github.com/rails/sprockets/commit/9c34fa05900b968d74f08ccf40917848a7be9441
|
|
|
5d04a7 |
Patch0: rubygem-sprockets-2.12.4-CVE-2018-3760-Fix-Path-traversal-in-sprockets-server.patch
|
|
|
5d04a7 |
Patch1: rubygem-sprockets-2.12.4-CVE-2018-3760-Fix-Path-traversal-in-sprockets-server-tests.patch
|
|
|
5d04a7 |
|
|
|
f833e9 |
Requires: %{?scl_prefix_ruby}ruby(release)
|
|
|
f833e9 |
Requires: %{?scl_prefix_ruby}ruby(rubygems)
|
|
|
f833e9 |
Requires: %{?scl_prefix}rubygem(rack) > 1
|
|
|
f833e9 |
Requires: %{?scl_prefix}rubygem(rack) < 3
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix_ruby}ruby(release)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix_ruby}rubygems-devel
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix_ruby}ruby >= 1.9.3
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix}rubygem(coffee-script)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix}rubygem(ejs)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix}rubygem(execjs)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix_ruby}rubygem(minitest)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix}rubygem(nokogiri)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix}rubygem(rack-test)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix_ruby}rubygem(rake)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix}rubygem(sass)
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix}rubygem(uglifier)
|
|
|
f833e9 |
BuildArch: noarch
|
|
|
f833e9 |
Provides: %{?scl_prefix}rubygem(%{gem_name}) = %{version}
|
|
|
f833e9 |
|
|
|
5d04a7 |
# Explicitly require runtime subpackage, as long as older scl-utils do not generate it
|
|
|
5d04a7 |
Requires: %{?scl_prefix}runtime
|
|
|
5d04a7 |
|
|
|
f833e9 |
BuildRequires: %{?scl_prefix_nodejs}nodejs
|
|
|
f833e9 |
|
|
|
f833e9 |
%description
|
|
|
f833e9 |
Sprockets is a Rack-based asset packaging system that concatenates and serves
|
|
|
f833e9 |
JavaScript, CoffeeScript, CSS, LESS, Sass, and SCSS.
|
|
|
f833e9 |
|
|
|
f833e9 |
%package doc
|
|
|
f833e9 |
Summary: Documentation for %{pkg_name}
|
|
|
f833e9 |
Group: Documentation
|
|
|
f833e9 |
Requires: %{?scl_prefix}%{pkg_name} = %{version}-%{release}
|
|
|
f833e9 |
BuildArch: noarch
|
|
|
f833e9 |
|
|
|
f833e9 |
%description doc
|
|
|
f833e9 |
Documentation for %{pkg_name}.
|
|
|
f833e9 |
|
|
|
f833e9 |
%prep
|
|
|
f833e9 |
%setup -n %{pkg_name}-%{version} -q -c -T
|
|
|
f833e9 |
%{?scl:scl enable %{scl} - << \EOF}
|
|
|
f833e9 |
%gem_install -n %{SOURCE0}
|
|
|
f833e9 |
%{?scl:EOF}
|
|
|
f833e9 |
|
|
|
5d04a7 |
pushd .%{gem_instdir}
|
|
|
5d04a7 |
%patch0 -p1
|
|
|
5d04a7 |
popd
|
|
|
5d04a7 |
|
|
|
f833e9 |
%build
|
|
|
f833e9 |
|
|
|
f833e9 |
%install
|
|
|
f833e9 |
mkdir -p %{buildroot}%{gem_dir}
|
|
|
f833e9 |
cp -a .%{gem_dir}/* \
|
|
|
f833e9 |
%{buildroot}%{gem_dir}/
|
|
|
f833e9 |
|
|
|
f833e9 |
|
|
|
f833e9 |
mkdir -p %{buildroot}%{_bindir}
|
|
|
f833e9 |
cp -a .%{_bindir}/* \
|
|
|
f833e9 |
%{buildroot}%{_bindir}/
|
|
|
f833e9 |
|
|
|
f833e9 |
find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x
|
|
|
f833e9 |
|
|
|
f833e9 |
# Run the test suite
|
|
|
f833e9 |
|
|
|
f833e9 |
%check
|
|
|
f833e9 |
pushd .%{gem_instdir}
|
|
|
f833e9 |
tar xzf %{SOURCE1}
|
|
|
f833e9 |
|
|
|
5d04a7 |
cat %{PATCH1} | patch -p1 -F 0
|
|
|
5d04a7 |
|
|
|
f833e9 |
# We don't have rubygem(closure-compiler) yet.
|
|
|
f833e9 |
# https://bugzilla.redhat.com/show_bug.cgi?id=725733
|
|
|
f833e9 |
mv test/test_closure_compressor.rb{,.disabled}
|
|
|
f833e9 |
mv lib/sprockets/autoload/closure.rb{,.disabled}
|
|
|
f833e9 |
sed -i '/:Closure/ s/^/#/' lib/sprockets/autoload.rb
|
|
|
f833e9 |
|
|
|
f833e9 |
# We don't have rubygem(eco) yet.
|
|
|
f833e9 |
mv test/test_eco_processor.rb{,.disabled}
|
|
|
f833e9 |
mv lib/sprockets/autoload/eco.rb{,.disabled}
|
|
|
f833e9 |
sed -i '/:Eco/ s/^/#/' lib/sprockets/autoload.rb
|
|
|
f833e9 |
sed -i '/test "eco templates" do/,/^ end/ s/^/#/' test/test_environment.rb
|
|
|
f833e9 |
|
|
|
f833e9 |
# We don't have rubygem(yui-compressor) yet.
|
|
|
f833e9 |
# https://bugzilla.redhat.com/show_bug.cgi?id=725768
|
|
|
f833e9 |
mv test/test_yui_compressor.rb{,.disabled}
|
|
|
f833e9 |
mv lib/sprockets/autoload/yui.rb{,.disabled}
|
|
|
f833e9 |
sed -i '/:YUI/ s/^/#/' lib/sprockets/autoload.rb
|
|
|
f833e9 |
|
|
|
f833e9 |
# Required by TestPathUtils#test_find_upwards test.
|
|
|
f833e9 |
touch Gemfile
|
|
|
f833e9 |
|
|
|
f833e9 |
%{?scl:scl enable %{scl} %{scl_nodejs} - << \EOF}
|
|
|
f833e9 |
# Tests are failing, investigate.
|
|
|
f833e9 |
ruby -Ilib:test -e 'Dir.glob "./test/**/test_*.rb", &method(:require)' | grep "assertions, 39 failures"
|
|
|
f833e9 |
%{?scl:EOF}
|
|
|
f833e9 |
popd
|
|
|
f833e9 |
|
|
|
f833e9 |
%files
|
|
|
f833e9 |
%dir %{gem_instdir}
|
|
|
f833e9 |
%{_bindir}/sprockets
|
|
|
5d04a7 |
%{gem_instdir}/LICENSE
|
|
|
f833e9 |
%{gem_instdir}/bin
|
|
|
f833e9 |
%{gem_libdir}
|
|
|
f833e9 |
%exclude %{gem_cache}
|
|
|
f833e9 |
%{gem_spec}
|
|
|
f833e9 |
|
|
|
f833e9 |
%files doc
|
|
|
f833e9 |
%doc %{gem_docdir}
|
|
|
f833e9 |
%doc %{gem_instdir}/README.md
|
|
|
f833e9 |
|
|
|
f833e9 |
%changelog
|
|
|
5d04a7 |
* Tue Jul 03 2018 Pavel Valena <pvalena@redhat.com> - 3.2.0-5
|
|
|
5d04a7 |
- Fix: Path traversal in sprockets server
|
|
|
5d04a7 |
Resolves: rhbz#1595901
|
|
|
5d04a7 |
Resolves: CVE-2018-3760
|
|
|
5d04a7 |
|
|
|
f833e9 |
* Wed Feb 17 2016 Pavel Valena <pvalena@redhat.com> - 3.2.0-4
|
|
|
f833e9 |
- Update to 3.2.0
|
|
|
f833e9 |
|
|
|
f833e9 |
* Tue Jan 27 2015 Josef Stribny <jstribny@redhat.com> - 2.12.3-3
|
|
|
f833e9 |
- Revert back to multi_json as it is now part of SCL
|
|
|
f833e9 |
|
|
|
f833e9 |
* Mon Jan 26 2015 Josef Stribny <jstribny@redhat.com> - 2.12.3-2
|
|
|
f833e9 |
- Fix: properly delete any multi_json mention in gemspec
|
|
|
f833e9 |
|
|
|
f833e9 |
* Mon Jan 26 2015 Josef Stribny <jstribny@redhat.com> - 2.12.3-1
|
|
|
f833e9 |
- Update to 2.12.3
|
|
|
f833e9 |
|
|
|
f833e9 |
* Mon Feb 17 2014 Josef Stribny <jstribny@redhat.com> - 2.8.2-3
|
|
|
f833e9 |
- Depend on scldevel(v8) virtual provide
|
|
|
f833e9 |
|
|
|
f833e9 |
* Tue Nov 26 2013 Josef Stribny <jstribny@redhat.com> - 2.8.2-2
|
|
|
f833e9 |
- Use v8 scl macro
|
|
|
f833e9 |
|
|
|
f833e9 |
* Wed Oct 16 2013 Josef Stribny <jstribny@redhat.com> - 2.8.2-1
|
|
|
f833e9 |
- Upgrade to version 2.8.2
|
|
|
f833e9 |
- Added rubygem-uglifier build dependency
|
|
|
f833e9 |
|
|
|
f833e9 |
* Wed Jun 12 2013 Josef Stribny <jstribny@redhat.com> - 2.4.5-3
|
|
|
f833e9 |
- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0
|
|
|
f833e9 |
|
|
|
f833e9 |
* Thu Jul 26 2012 Bohuslav Kabrda <bkabrda@redhat.com> - 2.4.5-2
|
|
|
f833e9 |
- Imported from Fedora again.
|
|
|
f833e9 |
|
|
|
f833e9 |
* Wed Jul 18 2012 Bohuslav Kabrda <bkabrda@redhat.com> - 2.4.5-1
|
|
|
f833e9 |
- Initial package
|