[rubygem-passenger] Update to 4.0.18

tdawson tdawson at fedoraproject.org
Tue Sep 24 20:54:52 UTC 2013


commit 7c62abbc4c897d97c628eda693db0205868fd67f
Author: Troy Dawson <tdawson at redhat.com>
Date:   Tue Sep 24 15:54:28 2013 -0500

    Update to 4.0.18

 .gitignore                                         |    1 +
 passenger_apache_fix_autofoo.patch                 |   14 -
 passenger_fixdeps.patch                            |   36 ---
 passenger_rspec2_helper.patch                      |  103 --------
 passenger_tests_default_config_example.patch       |   44 ++++
 rubygem-passenger-3.0.12-force-native.patch        |   81 ------
 rubygem-passenger-3.0.12-spawn-ip.patch            |  272 --------------------
 ...-passenger-3.0.14-gcc47-include-sys_types.patch |   44 ----
 rubygem-passenger-3.0.19-requires-fix-ruby2.patch  |   30 ---
 ...senger-3.0.21-CVE-2013-4136-tmp-directory.patch |  144 -----------
 ...gem-passenger-4.0.18-GLIBC_HAVE_LONG_LONG.patch |    7 +-
 rubygem-passenger-4.0.18-correct_docs.patch        |   12 +
 ...-passenger-4.0.18-gcc47-include-sys_types.patch |   45 ++++
 rubygem-passenger-4.0.18_apache_fix_autofoo.patch  |   12 +
 ...em-passenger-4.0.18_remove_fastthread_dep.patch |   16 ++
 rubygem-passenger.spec                             |  101 +++++---
 sources                                            |    2 +-
 17 files changed, 203 insertions(+), 761 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 3547b5e..f22d7d5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
 /release-3.0.19.tar.gz
 /release-3.0.21.tar.gz
 /results_*
+/release-4.0.18.tar.gz
diff --git a/passenger_tests_default_config_example.patch b/passenger_tests_default_config_example.patch
new file mode 100644
index 0000000..0615303
--- /dev/null
+++ b/passenger_tests_default_config_example.patch
@@ -0,0 +1,44 @@
+diff -up ./test/config.json.example.lindefault ./test/config.json.example
+--- ./test/config.json.example.lindefault	2013-05-30 16:04:41.206533618 +0200
++++ ./test/config.json.example	2013-05-30 16:04:34.070449358 +0200
+@@ -10,24 +10,24 @@
+   // otherwise the tests will fail.
+ 
+   //// Good values for OS X:
+-  "normal_user_1": "_www",
+-  "normal_user_2": "daemon",
+-  // Must not be "nobody".
+-  "default_user": "_sandbox",
+-  // Must not be normal_user_1's primary group.
+-  "normal_group_1": "daemon",
+-  // Must not be normal_user_2's primary group.
+-  "normal_group_2": "_sandbox",
+-  // Must not be default_user's primary group. Must not be "nobody".
+-  "default_group": "_www",
+-
+-  ///// Good values for Linux and FreeBSD. Same restrictions apply.
+-  //"normal_user_1": "games",
++  //"normal_user_1": "_www",
+   //"normal_user_2": "daemon",
+-  //"default_user": "man",
++  //// Must not be "nobody".
++  //"default_user": "_sandbox",
++  //// Must not be normal_user_1's primary group.
+   //"normal_group_1": "daemon",
+-  //"normal_group_2": "man",
+-  //"default_group": "games",
++  //// Must not be normal_user_2's primary group.
++  //"normal_group_2": "_sandbox",
++  //// Must not be default_user's primary group. Must not be "nobody".
++  //"default_group": "_www",
++
++  ///// Good values for Linux and FreeBSD. Same restrictions apply.
++  "normal_user_1": "games",
++  "normal_user_2": "daemon",
++  "default_user": "man",
++  "normal_group_1": "daemon",
++  "normal_group_2": "man",
++  "default_group": "games",
+ 
+   // A nonexistant username, group name, user ID and group ID.
+   "nonexistant_user": "xxxxxxxxxxxxxxxxxxx",
diff --git a/rubygem-passenger-3.0.21-GLIBC_HAVE_LONG_LONG.patch b/rubygem-passenger-4.0.18-GLIBC_HAVE_LONG_LONG.patch
similarity index 70%
rename from rubygem-passenger-3.0.21-GLIBC_HAVE_LONG_LONG.patch
rename to rubygem-passenger-4.0.18-GLIBC_HAVE_LONG_LONG.patch
index 81d1b98..cb76bdf 100644
--- a/rubygem-passenger-3.0.21-GLIBC_HAVE_LONG_LONG.patch
+++ b/rubygem-passenger-4.0.18-GLIBC_HAVE_LONG_LONG.patch
@@ -1,6 +1,6 @@
-diff -urp passenger-release-3.0.21.orig/ext/boost/cstdint.hpp passenger-release-3.0.21/ext/boost/cstdint.hpp
---- passenger-release-3.0.21.orig/ext/boost/cstdint.hpp	2013-05-29 07:09:31.000000000 -0500
-+++ passenger-release-3.0.21/ext/boost/cstdint.hpp	2013-09-19 09:17:04.030716291 -0500
+diff -urp passenger-release-4.0.18.orig/ext/boost/cstdint.hpp passenger-release-4.0.18/ext/boost/cstdint.hpp
+--- passenger-release-4.0.18.orig/ext/boost/cstdint.hpp	2013-09-17 13:47:54.000000000 -0500
++++ passenger-release-4.0.18/ext/boost/cstdint.hpp	2013-09-23 16:34:02.074450639 -0500
 @@ -41,7 +41,15 @@
  // so we disable use of stdint.h when GLIBC does not define __GLIBC_HAVE_LONG_LONG.
  // See https://svn.boost.org/trac/boost/ticket/3548 and http://sources.redhat.com/bugzilla/show_bug.cgi?id=10990
@@ -18,3 +18,4 @@ diff -urp passenger-release-3.0.21.orig/ext/boost/cstdint.hpp passenger-release-
  
  // The following #include is an implementation artifact; not part of interface.
  # ifdef __hpux
+Only in passenger-release-4.0.18/ext/boost: cstdint.hpp.glibc-long
diff --git a/rubygem-passenger-4.0.18-correct_docs.patch b/rubygem-passenger-4.0.18-correct_docs.patch
new file mode 100644
index 0000000..dd98a5b
--- /dev/null
+++ b/rubygem-passenger-4.0.18-correct_docs.patch
@@ -0,0 +1,12 @@
+diff -urp passenger-release-4.0.18.orig/lib/phusion_passenger/packaging.rb passenger-release-4.0.18/lib/phusion_passenger/packaging.rb
+--- passenger-release-4.0.18.orig/lib/phusion_passenger/packaging.rb	2013-09-17 13:47:54.000000000 -0500
++++ passenger-release-4.0.18/lib/phusion_passenger/packaging.rb	2013-09-24 14:42:54.126310781 -0500
+@@ -36,7 +36,7 @@ module Packaging
+ 	# Files that must be generated before packaging.
+ 	PREGENERATED_FILES = [
+ 		'ext/common/Constants.h',
+-		'doc/Packaging.html'
++		'doc/Packaging.txt.md'
+ 	] + ASCII_DOCS
+ 	
+ 	USER_EXECUTABLES = [
diff --git a/rubygem-passenger-4.0.18-gcc47-include-sys_types.patch b/rubygem-passenger-4.0.18-gcc47-include-sys_types.patch
new file mode 100644
index 0000000..2be2151
--- /dev/null
+++ b/rubygem-passenger-4.0.18-gcc47-include-sys_types.patch
@@ -0,0 +1,45 @@
+diff -urp passenger-release-4.0.18.orig/ext/common/EventedMessageServer.h passenger-release-4.0.18/ext/common/EventedMessageServer.h
+--- passenger-release-4.0.18.orig/ext/common/EventedMessageServer.h	2013-09-17 13:47:54.000000000 -0500
++++ passenger-release-4.0.18/ext/common/EventedMessageServer.h	2013-09-23 13:59:23.012484647 -0500
+@@ -27,6 +27,7 @@
+ 
+ #include <boost/shared_ptr.hpp>
+ #include <ev++.h>
++#include <sys/types.h>
+ #include <cstdarg>
+ #include <cstdlib>
+ #include <EventedServer.h>
+diff -urp passenger-release-4.0.18.orig/ext/common/FileDescriptor.h passenger-release-4.0.18/ext/common/FileDescriptor.h
+--- passenger-release-4.0.18.orig/ext/common/FileDescriptor.h	2013-09-17 13:47:54.000000000 -0500
++++ passenger-release-4.0.18/ext/common/FileDescriptor.h	2013-09-23 13:59:23.013484647 -0500
+@@ -30,6 +30,7 @@
+ #include <oxt/system_calls.hpp>
+ 
+ #include <utility>
++#include <sys/types.h>
+ #include <unistd.h>
+ #include <cerrno>
+ 
+diff -urp passenger-release-4.0.18.orig/ext/common/Utils/BufferedIO.h passenger-release-4.0.18/ext/common/Utils/BufferedIO.h
+--- passenger-release-4.0.18.orig/ext/common/Utils/BufferedIO.h	2013-09-17 13:47:54.000000000 -0500
++++ passenger-release-4.0.18/ext/common/Utils/BufferedIO.h	2013-09-23 13:59:23.014484646 -0500
+@@ -1,6 +1,7 @@
+ #ifndef _PASSENGER_BUFFERED_IO_H_
+ #define _PASSENGER_BUFFERED_IO_H_
+ 
++#include <sys/types.h>
+ #include <string>
+ #include <utility>
+ #include <algorithm>
+diff -urp passenger-release-4.0.18.orig/ext/common/Utils/StreamBoyerMooreHorspool.h passenger-release-4.0.18/ext/common/Utils/StreamBoyerMooreHorspool.h
+--- passenger-release-4.0.18.orig/ext/common/Utils/StreamBoyerMooreHorspool.h	2013-09-17 13:47:54.000000000 -0500
++++ passenger-release-4.0.18/ext/common/Utils/StreamBoyerMooreHorspool.h	2013-09-23 13:59:23.015484645 -0500
+@@ -189,7 +189,7 @@
+ 	#endif
+ #endif
+ 
+-
++#include <sys/types.h>
+ #include <cstddef>
+ #include <cstring>
+ #include <cassert>
diff --git a/rubygem-passenger-4.0.18_apache_fix_autofoo.patch b/rubygem-passenger-4.0.18_apache_fix_autofoo.patch
new file mode 100644
index 0000000..dfe51ad
--- /dev/null
+++ b/rubygem-passenger-4.0.18_apache_fix_autofoo.patch
@@ -0,0 +1,12 @@
+diff -urp passenger-release-4.0.18.orig/build/basics.rb passenger-release-4.0.18/build/basics.rb
+--- passenger-release-4.0.18.orig/build/basics.rb	2013-09-17 13:47:54.000000000 -0500
++++ passenger-release-4.0.18/build/basics.rb	2013-09-23 16:11:12.926455965 -0500
+@@ -138,7 +138,7 @@ LIBEXT   = PlatformInfo.library_extensio
+ USE_DMALLOC = boolean_option('USE_DMALLOC')
+ USE_EFENCE  = boolean_option('USE_EFENCE')
+ USE_ASAN    = boolean_option('USE_ASAN')
+-OPTIMIZATION_FLAGS = "#{PlatformInfo.debugging_cflags} -DPASSENGER_DEBUG -DBOOST_DISABLE_ASSERTS -fcommon".strip
++OPTIMIZATION_FLAGS = "#{ENV['CXXFLAGS']} #{PlatformInfo.debugging_cflags} -DPASSENGER_DEBUG -DBOOST_DISABLE_ASSERTS -fcommon".strip
+ OPTIMIZATION_FLAGS << " -O" if OPTIMIZE
+ OPTIMIZATION_FLAGS << " -feliminate-unused-debug-symbols -feliminate-unused-debug-types" if PlatformInfo.compiler_supports_feliminate_unused_debug?
+ OPTIMIZATION_FLAGS << " -fvisibility=hidden -DVISIBILITY_ATTRIBUTE_SUPPORTED" if PlatformInfo.compiler_supports_visibility_flag?
diff --git a/rubygem-passenger-4.0.18_remove_fastthread_dep.patch b/rubygem-passenger-4.0.18_remove_fastthread_dep.patch
new file mode 100644
index 0000000..3517f2e
--- /dev/null
+++ b/rubygem-passenger-4.0.18_remove_fastthread_dep.patch
@@ -0,0 +1,16 @@
+diff -urp passenger-release-4.0.18.orig/lib/phusion_passenger/platform_info/depcheck_specs/gems.rb passenger-release-4.0.18/lib/phusion_passenger/platform_info/depcheck_specs/gems.rb
+--- passenger-release-4.0.18.orig/lib/phusion_passenger/platform_info/depcheck_specs/gems.rb	2013-09-17 13:47:54.000000000 -0500
++++ passenger-release-4.0.18/lib/phusion_passenger/platform_info/depcheck_specs/gems.rb	2013-09-23 16:27:59.963267382 -0500
+@@ -1,11 +1,3 @@
+-define 'fastthread' do
+-	name 'fastthread'
+-	define_checker do
+-		check_for_ruby_library('fastthread')
+-	end
+-	gem_install 'fastthread'
+-end
+-
+ define 'rack' do
+ 	name 'rack'
+ 	define_checker do
+Only in passenger-release-4.0.18/lib/phusion_passenger/platform_info/depcheck_specs: gems.rb.fastthread
diff --git a/rubygem-passenger.spec b/rubygem-passenger.spec
index 83cdc1b..6e36df7 100644
--- a/rubygem-passenger.spec
+++ b/rubygem-passenger.spec
@@ -12,8 +12,8 @@
 
 Summary: Passenger Ruby web application server
 Name: rubygem-%{gem_name}
-Version: 3.0.21
-Release: 9%{?dist}
+Version: 4.0.18
+Release: 1%{?dist}
 Group: System Environment/Daemons
 # Passenger code uses MIT license.
 # Bundled(Boost) uses Boost Software License
@@ -31,44 +31,60 @@ Source2: rubygem-passenger.tmpfiles
 Source10: apache-passenger.conf.in
 #Source20: nginx-passenger.conf.in
 
+## Native support was completely rewritten
+## Patch no longer needed
 # Get passenger to recognize our path preferences
-Patch1:         rubygem-passenger-3.0.12-force-native.patch
+#Patch1:         rubygem-passenger-3.0.12-force-native.patch
 
 # Include sys/types.h for GCC 4.7
-Patch2:         rubygem-passenger-3.0.14-gcc47-include-sys_types.patch
+Patch2:         rubygem-passenger-4.0.18-gcc47-include-sys_types.patch
+
+## Not needed, use SKIP_SIGNING=1 instead
+# Remove signing gems with GPG, requires rubygem-openpgp >= 0.3.0
+#Patch3:        passenger_do_not_sign_gem.patch
+
+# Make example config for tests ready for linux by default
+Patch4:        passenger_tests_default_config_example.patch
 
 #Patch10:        rubygem-passenger-3.0.12-spoof-nginx-install.patch
 
-# Support spawnIpAddress option to allow binding to a particular IP.
-Patch20:        rubygem-passenger-3.0.12-spawn-ip.patch
+## SpawnIP was redone on passenger 4
+## Support spawnIpAddress option to allow binding to a particular IP.
+#Patch20:        rubygem-passenger-3.0.12-spawn-ip.patch
 
 # Honor CXXFLAGS in the environment.
-Patch100:       passenger_apache_fix_autofoo.patch
+Patch100:       rubygem-passenger-4.0.18_apache_fix_autofoo.patch
 
 # Test tries to spawn 1000 threads with 256kb stacks. Default Linux settings
 # deny allocating so much, causing test to fail. Let's use 8kb stacks instead.
 Patch102:       passenger_dynamic_thread_group.patch
 
+## No longer needed
 # Use rspec2 conventions
-Patch103:       passenger_rspec2_helper.patch
+#Patch103:       passenger_rspec2_helper.patch
 
 # Remove checking for fastthread on F17+
-Patch104:       passenger_fixdeps.patch
+Patch104:       rubygem-passenger-4.0.18_remove_fastthread_dep.patch
 
+## We are on passenger 4.x, removing patch
 # Fix gem-requires for ruby2
 # This is a hack until we move to passenger 4.x
 # https://github.com/FooBarWidget/passenger/pull/71
-Patch105:       rubygem-passenger-3.0.19-requires-fix-ruby2.patch
+#Patch105:       rubygem-passenger-3.0.19-requires-fix-ruby2.patch
 
+## This is already in passenger 4.0.18
 # Fix for CVE-2013-4136
 # https://bugzilla.redhat.com/show_bug.cgi?id=985634
 # Note: This is a combination of both
 # https://github.com/phusion/passenger/commit/5483b3292cc2af1c83033eaaadec20dba4dcfd9b
 # https://github.com/phusion/passenger/commit/9dda49f4a3ebe9bafc48da1bd45799f30ce19566
-Patch106:       rubygem-passenger-3.0.21-CVE-2013-4136-tmp-directory.patch
+#Patch106:       rubygem-passenger-3.0.21-CVE-2013-4136-tmp-directory.patch
 
 # https://bugzilla.redhat.com/show_bug.cgi?id=985634
-Patch107:       rubygem-passenger-3.0.21-GLIBC_HAVE_LONG_LONG.patch
+Patch107:       rubygem-passenger-4.0.18-GLIBC_HAVE_LONG_LONG.patch
+
+# Until rubygem-bluecloth is in Fedora, don't use it
+Patch201:       rubygem-passenger-4.0.18-correct_docs.patch
 
 Requires: rubygems
 # XXX: Needed to run passenger standalone
@@ -179,28 +195,34 @@ rebuilding this package.
 %prep
 %setup -q -n %{gem_name}-release-%{version}
 
-%patch1   -p1 -b .force-native
+#%patch1   -p1 -b .force-native
 %patch2   -p1 -b .include-sys-types
-%patch20  -p1 -b .spawnip
-%patch100 -p0 -b .autofoo
+#%patch3   -p1 -b .nosign
+%patch4   -p1 -b .lindefault
+#%patch20  -p1 -b .spawnip
+%patch100 -p1 -b .autofoo
 %patch102 -p1 -b .threadtest
-%patch103 -p1 -b .rspec2
+#%patch103 -p1 -b .rspec2
 
 # remove fastthread checking
 %if 0%{?fedora} >= 17
 %patch104 -p1 -b .fastthread
 %endif
 
-# fix requires for ruby2
-%if 0%{?fedora} >= 19
-%patch105 -p1 -b .requires
-%endif
-%patch106 -p1 -b .tmpdir
+## fix requires for ruby2
+#%if 0%{?fedora} >= 19
+#%patch105 -p1 -b .requires
+#%endif
+#%patch106 -p1 -b .tmpdir
+
 # fix passenger boost for glibc >= 2.18
 %if 0%{?fedora} >= 20
 %patch107 -p1 -b .glibc-long
 %endif
 
+# Until bluecloth is in Fedora, don't use it
+%patch201 -p1 -b .docs
+
 # Don't use bundled libev
 %{__rm} -rf ext/libev
 
@@ -233,7 +255,8 @@ export USE_VENDORED_LIBEV=false
 CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ;
 CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ;
 FFLAGS="${FFLAGS:-%optflags}" ; export FFLAGS ;
-rake package
+
+rake package:gem SKIP_SIGNING=1
 rake apache2
 #rake nginx
 
@@ -251,7 +274,7 @@ gem install -V \
 
 # Install Apache module.
 %{__mkdir_p} %{buildroot}/%{_httpd_moddir}
-install -pm 0755 ext/apache2/mod_passenger.so %{buildroot}/%{_httpd_moddir}
+install -pm 0755 buildout/apache2/mod_passenger.so %{buildroot}/%{_httpd_moddir}
 
 # Install Apache config.
 %{__mkdir_p} %{buildroot}%{_httpd_confdir} %{buildroot}%{_httpd_modconfdir}
@@ -274,9 +297,10 @@ install -pm 0644 passenger.conf %{buildroot}%{_httpd_confdir}/passenger.conf
 rmdir %{buildroot}%{gem_instdir}/man
 
 # The agents aren't in the gem for some reason...
-%{__chmod} -R 0755 agents/*
+%{__chmod} -R 0755 buildout/agents/*
 %{__mkdir_p} %{buildroot}%{gem_extdir}
-%{__cp} -a agents %{buildroot}%{gem_extdir}
+%{__cp} -a buildout/agents %{buildroot}%{gem_extdir}
+%{__rm} -f %{buildroot}%{gem_extdir}/agents/*.o
 
 # Make our ghost log and run directories...
 %{__mkdir_p} %{buildroot}%{_localstatedir}/log/passenger-analytics
@@ -302,10 +326,14 @@ done
 
 # Bring over just the native binaries
 %{__mkdir_p} %{buildroot}%{gem_extdir}/lib/native
-install -m 0755 ext/ruby/ruby*linux/passenger_native_support.so %{buildroot}%{gem_extdir}/lib/native
+install -m 0755 buildout/ruby/ruby*linux/passenger_native_support.so %{buildroot}%{gem_extdir}/lib/native
 
-# Remove zero-length files
+# Remove zero-length and non-needed files
 find %{buildroot}%{gem_instdir} -type f -size 0c -delete
+%{__rm} -rf %{buildroot}%{gem_instdir}/.gitignore
+%{__rm} -rf %{buildroot}%{gem_instdir}/.yardoc
+%{__rm} -rf %{buildroot}%{gem_instdir}/rpm/
+
 
 # Don't install the installation scripts and Rakefile. That's why we have packaging.
 %{__rm} %{buildroot}%{gem_instdir}/bin/%{gem_name}-install-apache2-module
@@ -328,13 +356,14 @@ sed -i \
     "s|return locate_ruby_tool('spec')|return locate_ruby_tool('rspec')|" \
     lib/phusion_passenger/platform_info/ruby.rb
 
-%{__cp} test/config.yml.example test/config.yml
+%{__cp} test/config.json.example test/config.json
 
 rake test --trace ||:
 
 %files
-%doc %{gem_instdir}/README
-%doc %{gem_instdir}/DEVELOPERS.TXT
+%doc %{gem_instdir}/README.md
+%doc %{gem_instdir}/CONTRIBUTING.md
+%doc %{gem_instdir}/CONTRIBUTORS
 %doc %{gem_instdir}/LICENSE
 %doc %{gem_instdir}/NEWS
 %{gem_cache}
@@ -343,7 +372,9 @@ rake test --trace ||:
 %{gem_instdir}/bin
 %{gem_instdir}/helper-scripts
 %{gem_instdir}/lib
+%{gem_instdir}/passenger.gemspec
 %{gem_instdir}/resources
+%{gem_instdir}/.travis.yml
 %{_bindir}/%{gem_name}*
 %{_mandir}/man1/%{gem_name}-*
 %{_mandir}/man8/%{gem_name}-*
@@ -354,7 +385,7 @@ rake test --trace ||:
 %dir %{_localstatedir}/run/rubygem-passenger
 %endif
 %exclude %{gem_instdir}/configure
-%exclude %{gem_instdir}/debian/
+%exclude %{gem_instdir}/debian.template/
 %exclude %{gem_cache}
 
 %files doc
@@ -362,8 +393,7 @@ rake test --trace ||:
 %doc %{gem_instdir}/doc
 
 %files devel
-%doc %{gem_instdir}/INSTALL
-%doc %{gem_instdir}/PACKAGING.TXT
+%doc %{gem_instdir}/INSTALL.md
 %{gem_instdir}/test
 %{gem_instdir}/build
 %{gem_instdir}/dev
@@ -387,6 +417,11 @@ rake test --trace ||:
 %{gem_extdir}/lib
 
 %changelog
+* Tue Sep 24 2013 Troy Dawson <tdawson at redhat.com> - 4.0.18-1
+- Update to 4.0.18
+- Remove patches no longer needed
+- Update patches that need updating
+
 * Mon Sep 23 2013 Brett Lentz <blentz at redhat.com> - 3.0.21-9
 - finish fixing bz#999384
 
diff --git a/sources b/sources
index e713e50..01b5436 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-7ad27dd8eb0235eddeea24e3bbba32fa  release-3.0.21.tar.gz
+8ddbc3fae662f04bf6996aaed16d42ff  release-4.0.18.tar.gz


More information about the scm-commits mailing list