Hello community, here is the log from the commit of package nghttp2 for openSUSE:Factory checked in at 2015-11-05 11:35:25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/nghttp2 (Old) and /work/SRC/openSUSE:Factory/.nghttp2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nghttp2" Changes: -------- --- /work/SRC/openSUSE:Factory/nghttp2/nghttp2.changes 2015-09-30 05:52:34.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.nghttp2.new/nghttp2.changes 2015-11-05 11:35:26.000000000 +0100 @@ -1,0 +2,43 @@ +Sat Oct 31 10:21:56 UTC 2015 - sor.ale...@meowr.ru + +- Update to 1.4.0: + * lib: Don't always expect dynamic table size update. + * lib: Shrink to the minimum table size seen in local SETTINGS. + * lib: Add new error code NGHTTP2_ERR_PAUSE to send_data_callback. + * lib: Avoid excessive WINDOW_UPDATE queuing. + * lib: Return fatal error if flooding is detected to close + session immediately. + * lib: Return type of nghttp2_submit_trailer is int. + * lib: Don't send WINDOW_UPDATE with 0 increment. + * lib: Fix bug that headers in CONTINUATION were ignored after + HEADERS with padding. + * package: Use -fvisibility=hidden for internal functions. + * package: Show more information in configure summary. + * package: Add PIDFile directive to systemd service. + * package: Fix daemon upgrade when running under systemd. + * app: Compile with BoringSSL. + * nghttp: Allow multiple -c option occurrence, and take min and + last value. + * nghttpd: Fix leak when server failed to listen to given port. + * nghttpx: Add TLS dynamic record size behaviour command line + options. + * nghttpx: Reduce default timeouts for read sockets to 1m. + * nghttpx: Fix bug that PUT is replaced with POST. + * nghttpx: Change mruby script handling. + * nghttpx: Added support for RFC 7413 (TCP Fast Open) on nghttpx + proxy listening connections. + * nghttpx: Add neverbleed support. + * h2load: Don't DOS our server! + * h2load: Use duration syntax for timeouts. + * h2load: Support subsecond rate period. + * h2load: Simplify rate mode. + * h2load: Add option for user-definable rate period. + * h2load: Reuse SSL/TLS session. + * h2load: Reconnect server on connection: close. + * h2load: Don't exit in the case of no ALPN protocol overlap. + * integration: Update go's http2 package URI. +- Add missing baselibs.conf. +- Add nghttp2-1.4.0-fix-tests.patch from commit 4825009. +- Small spec cleanup. + +------------------------------------------------------------------- Old: ---- nghttp2-1.3.4.tar.xz New: ---- baselibs.conf nghttp2-1.4.0-fix-tests.patch nghttp2-1.4.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ nghttp2.spec ++++++ --- /var/tmp/diff_new_pack.N7fUXk/_old 2015-11-05 11:35:27.000000000 +0100 +++ /var/tmp/diff_new_pack.N7fUXk/_new 2015-11-05 11:35:27.000000000 +0100 @@ -16,18 +16,23 @@ # -%define lib_name lib%{name}-14 -%define lib_name_asio lib%{name}_asio1 +%define soname libnghttp2 +%define sover 14 +%define soname_asio libnghttp2_asio +%define sover_asio 1 Name: nghttp2 -Version: 1.3.4 +Version: 1.4.0 Release: 0 Summary: Implementation of Hypertext Transfer Protocol version 2 in C License: MIT Group: Development/Libraries/C and C++ Url: https://nghttp2.org/ -#Git-Clone: git://github.com/tatsuhiro-t/nghttp2 Source: https://github.com/tatsuhiro-t/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.xz -Patch1: nghttp2-remove-python-build.patch +Source1: baselibs.conf +# PATCH-FIX-OPENSUSE nghttp2-remove-python-build.patch +Patch0: %{name}-remove-python-build.patch +# PATCH-FIX-UPSTREAM nghttp2-1.4.0-fix-tests.patch kdu...@redhat.com -- Tests: fix broken linkage with --disable-static (commit 4825009). +Patch1: %{name}-1.4.0-fix-tests.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: boost-devel @@ -44,148 +49,154 @@ BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(python) BuildRequires: pkgconfig(zlib) -BuildRoot: %{_tmppath}/%{name}-%{version}-build %description -This is an implementation of Hypertext Transfer Protocol version 2 in C. +This is an implementation of Hypertext Transfer Protocol version 2. -The framing layer of HTTP/2 is implemented as a form of reusable C library. -On top of that, we have implemented HTTP/2 client, server and proxy. -We have also developed load test and benchmarking tool for HTTP/2 and SPDY. +The framing layer of HTTP/2 is implemented as a form of reusable C +library. On top of that, we have implemented HTTP/2 client, server +and proxy. We have also developed load test and benchmarking tool +for HTTP/2. HPACK encoder and decoder are available as public API. -%package -n %{lib_name} -Summary: Shared library for %{name} +%package -n %{soname}-%{sover} +Summary: Shared library for nghttp2 Group: System/Libraries -%description -n %{lib_name} -Shared C libraries for implementation of Hypertext Transfer Protocol version 2 +%description -n %{soname}-%{sover} +Shared C libraries for implementation of +Hypertext Transfer Protocol version 2. -%package -n %{lib_name_asio} -Summary: Shared library for %{name} +%package -n %{soname_asio}%{sover_asio} +Summary: Shared library for nghttp2 Group: System/Libraries -%description -n %{lib_name_asio} -Shared librarios for asynchronous implementation of Hypertext Transfer Protocol version 2 +%description -n %{soname_asio}%{sover_asio} +Shared librarios for asynchronous implementation of +Hypertext Transfer Protocol version 2. %package -n python-%{name} -Summary: Python bindings for %{name} +Summary: Python bindings for nghttp2 Group: Development/Libraries/Python %description -n python-%{name} -Python bindings for implementation of Hypertext Transfer Protocol version 2 +Python bindings for implementation of +Hypertext Transfer Protocol version 2. -%package -n lib%{name}-devel -Summary: Development files for %{name} +%package -n %{soname}-devel +Summary: Development files for nghttp2 Group: Development/Languages/C and C++ -Requires: %{lib_name} = %{version} +Requires: %{soname_asio}%{sover_asio} = %{version} Provides: %{name}-devel -%description -n lib%{name}-devel -Development files for usage with lib%{name}, which implements Hypertext -Transfer Protocol version 2. +%description -n %{soname}-devel +Development files for usage with libnghttp2, which implements +Hypertext Transfer Protocol version 2. -%package -n lib%{name}_asio-devel -Summary: Development files for %{name} +%package -n %{soname_asio}-devel +Summary: Development files for nghttp2 Group: Development/Languages/C and C++ -Requires: %{lib_name_asio} = %{version} +Requires: %{soname_asio}%{sover_asio} = %{version} -%description -n lib%{name}_asio-devel -Development files for usage with lib%{name}_aio, which implements asynchronous -Hypertext Transfer Protocol version 2. +%description -n %{soname_asio}-devel +Development files for usage with libnghttp2_aio, which implements +asynchronous Hypertext Transfer Protocol version 2. %package doc -Summary: Documentation for %{name} +Summary: Documentation for nghttp2 Group: Documentation/HTML %description doc -Documentation for %{name}, which includes a shared C library, HTTP/2 client, -server and proxy. +Documentation for nghttp2, which includes a shared C library, +HTTP/2 client, server and proxy. %prep %setup -q +%patch0 -p1 %patch1 -p1 %build -autoreconf -fiv +autoreconf -fi %configure \ + --disable-static \ --disable-silent-rules \ --enable-asio-lib \ - --enable-python-bindings \ - --disable-static -make %{?_smp_mflags} all html + --enable-python-bindings + +make all html %{?_smp_mflags} pushd python -make %{?_smp_mflags} nghttp2.c -python setup.py build +make nghttp2.c %{?_smp_mflags} +python2 setup.py build popd -%check -make %{?_smp_mflags} check - %install -make DESTDIR=%{buildroot} install %{?_smp_mflags} +%make_install + pushd python -python setup.py install --prefix=%{_prefix} --root=%{buildroot} +python2 setup.py install \ + --root=%{buildroot} --prefix=%{_prefix} popd -# do not ship these + +# Move to the correct directory. +mkdir -p %{buildroot}%{_docdir}/ +mv -f %{buildroot}%{_datadir}/doc/%{name}/ %{buildroot}%{_docdir}/%{name}-doc/ + find %{buildroot} -type f -name "*.la" -delete -print -# none of applications using these man pages is built -rm -rf %{buildroot}%{_mandir}/man1/* -rm -rf doc/manual/html/.buildinfo -%post -n %{lib_name} -p /sbin/ldconfig +# None of applications using these man pages are built. +rm -rf %{buildroot}%{_mandir}/man1/* \ + doc/manual/html/.buildinfo + +%check +make check %{?_smp_mflags} + +%post -n %{soname}-%{sover} -p /sbin/ldconfig -%post -n %{lib_name_asio} -p /sbin/ldconfig +%post -n %{soname_asio}%{sover_asio} -p /sbin/ldconfig -%postun -n %{lib_name} -p /sbin/ldconfig +%postun -n %{soname}-%{sover} -p /sbin/ldconfig -%postun -n %{lib_name_asio} -p /sbin/ldconfig +%postun -n %{soname_asio}%{sover_asio} -p /sbin/ldconfig %files %defattr(-,root,root) %{_bindir}/deflatehd %{_bindir}/inflatehd -%{_datadir}/%{name} +%{_datadir}/%{name}/ -%files -n %{lib_name} +%files -n %{soname}-%{sover} %defattr(-,root,root) %doc COPYING -%{_libdir}/lib%{name}.so.* +%{_libdir}/%{soname}.so.%{sover}* -%files -n %{lib_name_asio} +%files -n %{soname_asio}%{sover_asio} %defattr(-,root,root) %doc COPYING -%{_libdir}/lib%{name}_asio.so.* +%{_libdir}/%{soname_asio}.so.%{sover_asio}* %files -n python-%{name} %defattr(-,root,root) %{python_sitearch}/nghttp2.so -%{python_sitearch}/python_nghttp2-%{version}-py%{py_ver}.egg-info +%{python_sitearch}/python_nghttp2-* + +%files -n %{soname}-devel +%defattr(-,root,root) +%dir %{_includedir}/%{name}/ +%{_includedir}/%{name}/%{name}*.h +%{_libdir}/%{soname}.so +%{_libdir}/pkgconfig/%{soname}.pc -%files -n lib%{name}-devel +%files -n %{soname_asio}-devel %defattr(-,root,root) -%doc ChangeLog -%dir %{_includedir}/%{name} -%{_includedir}/%{name}/nghttp2.h -%{_includedir}/%{name}/nghttp2ver.h -%{_libdir}/lib%{name}.so -%{_libdir}/pkgconfig/lib%{name}.pc - -%files -n lib%{name}_asio-devel -%defattr(-,root,root) -%dir %{_includedir}/%{name} -%{_includedir}/%{name}/asio_http2.h -%{_includedir}/nghttp2/asio_http2_client.h -%{_includedir}/nghttp2/asio_http2_server.h -%{_libdir}/lib%{name}_asio.so -%{_libdir}/pkgconfig/lib%{name}_asio.pc +%dir %{_includedir}/%{name}/ +%{_includedir}/%{name}/asio_http2*.h +%{_libdir}/%{soname_asio}.so +%{_libdir}/pkgconfig/%{soname_asio}.pc %files doc %defattr(-,root,root) -%doc AUTHORS ChangeLog -%doc doc/manual/html -%dir %{_datadir}/doc/%{name} -%doc %{_datadir}/doc/%{name}/README.rst +%doc AUTHORS ChangeLog doc/manual/html +%doc %{_docdir}/%{name}-doc/ %changelog ++++++ baselibs.conf ++++++ libnghttp2-14 libnghttp2_asio1 ++++++ nghttp2-1.4.0-fix-tests.patch ++++++ --- a/configure.ac +++ b/configure.ac @@ -695,6 +695,9 @@ if test "x$threads" != "xyes" || AC_DEFINE([NOTHREADS], [1], [Define to 1 if you want to disable threads.]) fi +# propagate $enable_static to tests/Makefile.am +AM_CONDITIONAL([ENABLE_STATIC], [test "x$enable_static" = "xyes"]) + AC_SUBST([TESTLDADD]) AC_SUBST([APPLDFLAGS]) --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -49,7 +49,15 @@ HFILES = nghttp2_pq_test.h nghttp2_map_t main_SOURCES = $(HFILES) $(OBJECTS) -main_LDADD = ${top_builddir}/lib/libnghttp2.la @CUNIT_LIBS@ @TESTLDADD@ +if ENABLE_STATIC +main_LDADD = ${top_builddir}/lib/libnghttp2.la +else +# With static lib disabled and symbol hiding enabled, we have to link object +# files directly because the tests use symbols not included in public API. +main_LDADD = ${top_builddir}/lib/.libs/*.o +endif + +main_LDADD += @CUNIT_LIBS@ @TESTLDADD@ main_LDFLAGS = -static if ENABLE_FAILMALLOC ++++++ nghttp2-1.3.4.tar.xz -> nghttp2-1.4.0.tar.xz ++++++ ++++ 25280 lines of diff (skipped)