Hello community, here is the log from the commit of package tidy for openSUSE:Factory checked in at 2016-06-09 15:54:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/tidy (Old) and /work/SRC/openSUSE:Factory/.tidy.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tidy" Changes: -------- --- /work/SRC/openSUSE:Factory/tidy/tidy.changes 2015-07-20 11:20:28.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.tidy.new/tidy.changes 2016-06-09 15:54:28.000000000 +0200 @@ -1,0 +2,30 @@ +Thu Jun 2 12:28:27 UTC 2016 - [email protected] + +- new upstream version 5.2.0 + + added support for HTML5 +- new upstream authors at https://github.com/htacg/tidy-html5 +- remove tidy_generate_tarball.sh + + not needed +- remove tidy-fix-buffer-overflow.patch + + upstreamed +- add fix_doxygen_paths.diff + + patch Doxygen config file to build documentation from buld + directory +- add test_fixes.diff + + fix build paths + + remove pauses via `read` bash builtin + + don't hide logging in log files +- add dynamic_library_build.diff + + use standard cmake BUILD_SHARED_LIBS instead of BUILD_SHARED_LIB + + build both static and dynamic libraries by default, instead + of just static + + link vs. dynamic by default +- add tidy_fetch_docs.sh + + used to fetch latest documentation configuration sources +- add compat_headers.diff + + upstream changed some header names, so provide compatible header + wrappers with a compile time warning +- change library subpackage according to new soname +- build libtidy-devel instead of having soname in devel package name + +------------------------------------------------------------------- Old: ---- tidy-20100204cvs.tar.bz2 tidy-fix-buffer-overflow.patch tidy_generate_tarball.sh New: ---- 5.2.0.tar.gz a510b54.tar.gz compat_headers.diff dynamic_library_build.diff fix_doxygen_paths.diff test_fixes.diff tidy-html5-doxygen-a8e47dc.tar.gz tidy_fetch_docs.sh ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ tidy.spec ++++++ --- /var/tmp/diff_new_pack.P3BvhB/_old 2016-06-09 15:54:29.000000000 +0200 +++ /var/tmp/diff_new_pack.P3BvhB/_new 2016-06-09 15:54:29.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package tidy # -# 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 @@ -16,19 +16,31 @@ # -%define snapshot 20100204cvs +%define regression_tests a510b54 +%define documentation a8e47dc + Name: tidy -Version: 1.0.%{snapshot} +Version: 5.2.0 Release: 0 Summary: Utility to Clean Up and Pretty-print HTML, XHTML or XML Markup License: W3C Group: Productivity/Publishing/HTML/Tools -Url: http://tidy.sourceforge.net/ -Source0: tidy-%{snapshot}.tar.bz2 -Source10: tidy_generate_tarball.sh -# PATCH-FIX-UPSTREAM tidy-fix-buffer-overflow.patch gh#htacg/tidy-html5#217 boo#933588 gber -- Fix heap-based buffer overflow -Patch0: tidy-fix-buffer-overflow.patch +Url: https://github.com/htacg/tidy-html5 +Source0: https://github.com/htacg/tidy-html5/archive/%{version}.tar.gz +# Latest version of unit tests +Source1: https://github.com/htacg/tidy-html5-tests/archive/%{regression_tests}.tar.gz +# Documentation generation files, extracted from +# https://github.com/htacg/tidy-html5-tests/archive/%%{documentation}.tar.gz +# using tidy_generate_documentation.sh +Source2: tidy-html5-doxygen-%{documentation}.tar.gz +Source10: tidy_fetch_docs.sh +Patch0: dynamic_library_build.diff +Patch1: test_fixes.diff +Patch2: fix_doxygen_paths.diff +Patch3: compat_headers.diff +BuildRequires: cmake BuildRequires: doxygen +BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: libxslt BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -43,7 +55,7 @@ limited to correcting basic well-formedness errors and pretty printing. %package doc -Summary: Documentation for tidy and libtidy-0_99-0 +Summary: Documentation for tidy and libtidy5 Group: Productivity/Publishing/HTML/Tools %if 0%{?suse_version} >= 1120 BuildArch: noarch @@ -52,13 +64,13 @@ %description doc This package contains the documentation for both tidy and libtidy. -%package -n libtidy-0_99-0 +%package -n libtidy5 Summary: Library to Clean Up and Pretty-print HTML, XHTML or XML Markup Group: Productivity/Publishing/HTML/Tools Provides: libtidy = %{version} Obsoletes: libtidy <= 1.0 -%description -n libtidy-0_99-0 +%description -n libtidy5 TidyLib is a library for cleaning up and pretty printing HTML, XHTML and XML markup in a variety of file encodings. For HTML variants, it can detect and report proprietary elements as well as many common coding errors, correct them @@ -70,58 +82,55 @@ There is a commandline frontend for this library, contained in the package "tidy". -%package -n libtidy-0_99-0-devel +%package -n libtidy-devel Summary: Include Files and Libraries for Development Group: Development/Libraries/C and C++ Requires: glibc-devel -Requires: libtidy-0_99-0 = %{version} -Provides: libtidy-devel = %{version} -Obsoletes: libtidy-devel <= 1.0 +Requires: libtidy5 = %{version} +Obsoletes: libtidy-0_99-0-devel +Conflicts: libtidy-0_99-0-devel +Conflicts: tidy-html5-devel -%description -n libtidy-0_99-0-devel +%description -n libtidy-devel This package contains all necessary include files and libraries needed to develop applications using functions provided by the TidyLib library. %prep -%setup -q -n %{name}-%{snapshot} +%setup -q -a 1 -a 2 -n tidy-html5-%{version} +mv tidy-html5-tests-* tests %patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 %build -export CFLAGS="%{optflags} -fno-strict-aliasing" -/bin/sh build/gnuauto/setup.sh -%configure --disable-static --with-pic --disable-dependency-tracking \ - --includedir=%{_includedir}/%{name} -make all -# generate quickref.html and tidy(1) manpage -make -C build/gmake/ doc -# generate API documentation -doxygen htmldoc/doxygen.cfg +%cmake \ + -DCMAKE_SKIP_RPATH:BOOL=OFF \ + -DINCLUDE_INSTALL_DIR:PATH=include/%{name} +make %{?_smp_mflags} +../tidy-html5-doxygen/build_docs.sh %install -make DESTDIR=%{buildroot} install %{?_smp_mflags} -install -D -p -m 644 htmldoc/tidy.1 %{buildroot}%{_mandir}/man1/tidy.1 -rm -f %{buildroot}%{_libdir}/libtidy.la +%cmake_install -%post -n libtidy-0_99-0 -p /sbin/ldconfig +%post -n libtidy5 -p /sbin/ldconfig -%postun -n libtidy-0_99-0 -p /sbin/ldconfig +%postun -n libtidy5 -p /sbin/ldconfig %files %defattr(-, root, root) %{_bindir}/tidy -%{_bindir}/tab2space %{_mandir}/man1/tidy.1* %files -n tidy-doc %defattr(-, root, root) -%doc htmldoc/*.gif htmldoc/*.css htmldoc/*.html -%doc htmldoc/api/ +%doc build/docs/api/ -%files -n libtidy-0_99-0 +%files -n libtidy5 %defattr(-, root, root) %{_libdir}/libtidy*.so.* -%files -n libtidy-0_99-0-devel +%files -n libtidy-devel %defattr(-, root, root) %dir %{_includedir}/%{name} %{_includedir}/%{name}/*.h ++++++ compat_headers.diff ++++++ Index: tidy-html5-5.2.0/include/buffio.h =================================================================== --- /dev/null +++ tidy-html5-5.2.0/include/buffio.h @@ -0,0 +1,3 @@ +#warning "FIXME: Using compatibility tidy header (tidy/buffio.h) that will go away!" +#include "tidybuffio.h" + Index: tidy-html5-5.2.0/include/platform.h =================================================================== --- /dev/null +++ tidy-html5-5.2.0/include/platform.h @@ -0,0 +1,3 @@ +#warning "FIXME: Using compatibility tidy header (tidy/platform.h) that will go away!" +#include "tidyplatform.h" + Index: tidy-html5-5.2.0/CMakeLists.txt =================================================================== --- tidy-html5-5.2.0.orig/CMakeLists.txt +++ tidy-html5-5.2.0/CMakeLists.txt @@ -139,7 +139,8 @@ set ( CFILES ${SRCDIR}/language.c ) set ( HFILES ${INCDIR}/tidyplatform.h ${INCDIR}/tidy.h ${INCDIR}/tidyenum.h - ${INCDIR}/tidybuffio.h ) + ${INCDIR}/tidybuffio.h + ${INCDIR}/buffio.h ${INCDIR}/platform.h ) set ( LIBHFILES ${SRCDIR}/access.h ${SRCDIR}/attrs.h ${SRCDIR}/attrdict.h ${SRCDIR}/charsets.h ${SRCDIR}/clean.h ${SRCDIR}/config.h ${SRCDIR}/entities.h ++++++ dynamic_library_build.diff ++++++ Index: tidy-html5-5.2.0/CMakeLists.txt =================================================================== --- tidy-html5-5.2.0.orig/CMakeLists.txt +++ tidy-html5-5.2.0/CMakeLists.txt @@ -37,17 +37,17 @@ else () endif () # By default, BOTH library types built, Allow turning OFF shared if not needed -set( LIB_TYPE STATIC ) # set default message -option( BUILD_SHARED_LIB "Set OFF to NOT build shared library" ON ) +option( BUILD_STATIC_LIBS "Set ON to build static library" ON ) +option( BUILD_SHARED_LIBS "Set OFF to NOT build shared library" ON ) option( BUILD_TAB2SPACE "Set ON to build utility app, tab2space" OFF ) option( BUILD_SAMPLE_CODE "Set ON to build the sample code" OFF ) if (NOT MAN_INSTALL_DIR) set(MAN_INSTALL_DIR share/man/man1) endif () # Issue #326 - Allow linkage choice of console app tidy -option( TIDY_CONSOLE_SHARED "Set ON to link with shared(DLL) lib." OFF ) +option( TIDY_CONSOLE_SHARED "Set OFF to link with static lib." ON ) if (TIDY_CONSOLE_SHARED) - if (NOT BUILD_SHARED_LIB) + if (NOT BUILD_SHARED_LIBS) message(FATAL_ERROR "Enable shared build for this tidy linkage!") endif () endif () @@ -112,7 +112,7 @@ if (SUPPORT_GETPWNAM) add_definitions( -DSUPPORT_GETPWNAM=1 ) endif () -if(BUILD_SHARED_LIB) +if(BUILD_SHARED_LIBS) set(LIB_TYPE SHARED) message(STATUS "*** Also building DLL library ${LIB_TYPE}, version ${LIBTIDY_VERSION}, date ${LIBTIDY_DATE}") else() @@ -167,28 +167,28 @@ if (NOT INCLUDE_INSTALL_DIR) set(INCLUDE_INSTALL_DIR include) endif () -# Always build the STATIC library -set(name tidy-static) -add_library ( ${name} STATIC ${CFILES} ${HFILES} ${LIBHFILES} ) -set_target_properties( ${name} PROPERTIES - OUTPUT_NAME ${LIB_NAME}s - ) -if (NOT TIDY_CONSOLE_SHARED) # user wants default static linkage - list ( APPEND add_LIBS ${name} ) -endif () -install(TARGETS ${name} - RUNTIME DESTINATION ${BIN_INSTALL_DIR} - ARCHIVE DESTINATION ${LIB_INSTALL_DIR} - LIBRARY DESTINATION ${LIB_INSTALL_DIR} +if (BUILD_STATIC_LIBS) + set(name tidy-static) + add_library ( ${name} STATIC ${CFILES} ${HFILES} ${LIBHFILES} ) + set_target_properties( ${name} PROPERTIES + OUTPUT_NAME ${LIB_NAME} ) + if (NOT TIDY_CONSOLE_SHARED) # user wants static linkage + list ( APPEND add_LIBS ${name} ) + endif () + install(TARGETS ${name} + ARCHIVE DESTINATION ${LIB_INSTALL_DIR} + LIBRARY DESTINATION ${LIB_INSTALL_DIR} + ) +endif () + install( FILES ${HFILES} DESTINATION ${INCLUDE_INSTALL_DIR} ) ######################################## -# if user option still on -if (BUILD_SHARED_LIB) +if (BUILD_SHARED_LIBS) set(name tidy-share) add_library ( ${name} SHARED ${CFILES} ${HFILES} ${LIBHFILES} ) set_target_properties( ${name} PROPERTIES - OUTPUT_NAME ${LIB_NAME} ) + OUTPUT_NAME ${LIB_NAME} ) set_target_properties( ${name} PROPERTIES VERSION ${LIBTIDY_VERSION} SOVERSION ${TIDY_MAJOR_VERSION} ) ++++++ fix_doxygen_paths.diff ++++++ Index: tidy-html5-5.2.0/tidy-html5-doxygen/build_docs.sh =================================================================== --- tidy-html5-5.2.0.orig/tidy-html5-doxygen/build_docs.sh +++ tidy-html5-5.2.0/tidy-html5-doxygen/build_docs.sh @@ -18,18 +18,18 @@ ########################################################### SCRIPT=$(basename $0) -PATH_TIDY_HTML5="../../tidy-html5" +PATH_TIDY_HTML5="../tidy-html5-doxygen" -TIDY_PATH="$PATH_TIDY_HTML5/build/cmake/tidy" -OUTP_DIR="./output" +TIDY_PATH="$PATH_TIDY_HTML5/../build/tidy" +OUTP_DIR="./docs" -DOXY_CFG="./doxygen.cfg" -PATH_EXAMPLES="./examples" +DOXY_CFG="$PATH_TIDY_HTML5/doxygen.cfg" +PATH_EXAMPLES="$PATH_TIDY_HTML5/examples" NAME_LICENSE="LICENSE.md" -PATH_LICENSE="$PATH_TIDY_HTML5/README/$NAME_LICENSE" -PATH_SRC="$PATH_TIDY_HTML5/src" -PATH_INC="$PATH_TIDY_HTML5/include" +PATH_LICENSE="$PATH_TIDY_HTML5/../README/$NAME_LICENSE" +PATH_SRC="$PATH_TIDY_HTML5/../src" +PATH_INC="$PATH_TIDY_HTML5/../include" ########################################################### @@ -142,8 +142,8 @@ TIDY_VERSION="$(echo $TIDY_VERSION_STRIN ########################################################### # Additional variables needed by the configuration: ########################################################### -PATH_QUICKREF="quickref_$TIDY_VERSION.html" -PATH_WEBSITE="tidylib_api_$TIDY_VERSION" +PATH_QUICKREF="quickref.html" +PATH_WEBSITE="api" PATH_QUICKREF_INCLUDE="$PATH_EXAMPLES/quickref_include.html" @@ -153,8 +153,7 @@ PATH_QUICKREF_INCLUDE="$PATH_EXAMPLES/qu cat << HEREDOC The script is generating the versioned 'quickref.html' file and the Tidy API - reference website for Tidy $TIDY_VERSION_STRING, - which is located at $TIDY_PATH. + reference website for Tidy, which is located at $TIDY_PATH. The following files/directories will be placed into $OUTP_DIR/: @@ -186,11 +185,11 @@ $TIDY_PATH -xml-config > "$OUTP_DIR/tidy # 'quickref.html' # 'quickref_include.html' for the Doxygen build -xsltproc "./quickref.xsl" "$OUTP_DIR/tidy-config.xml" > "$OUTP_DIR/$PATH_QUICKREF" -xsltproc "./quickref.include.xsl" "$OUTP_DIR/tidy-config.xml" > "$PATH_QUICKREF_INCLUDE" +xsltproc "$PATH_TIDY_HTML5/quickref.xsl" "$OUTP_DIR/tidy-config.xml" > "$OUTP_DIR/$PATH_QUICKREF" +xsltproc "$PATH_TIDY_HTML5/quickref.include.xsl" "$OUTP_DIR/tidy-config.xml" > "$PATH_QUICKREF_INCLUDE" # Tidy quickref.html -$TIDY_PATH -quiet -config "./tidy.cfg" -modify "$OUTP_DIR/$PATH_QUICKREF" >& /dev/null +$TIDY_PATH -quiet -config "$PATH_TIDY_HTML5/tidy.cfg" -modify "$OUTP_DIR/$PATH_QUICKREF" >& /dev/null # Cleanup rm "$OUTP_DIR/tidy-config.xml" @@ -217,16 +216,20 @@ cp "$PATH_LICENSE" "$PATH_EXAMPLES" # - echoes and catches output of the doxygen config # - overwrites some vars but appending some to config at end # - which are then passed to doxygen as stdin (instead of the path to a config.file) + ( cat "$DOXY_CFG"; \ - echo "INPUT=\"$PATH_INC\" \"./\" \"./pages\"" + echo "INPUT=\"$PATH_INC\" \"$PATH_TIDY_HTML5\" \"$PATH_TIDY_HTML5/pages\""; \ + echo "HTML_EXTRA_STYLESHEET=\"$PATH_TIDY_HTML5/style.css\""; \ + echo "LAYOUT_FILE=\"$PATH_TIDY_HTML5/DoxygenLayout.xml\""; \ + echo "EXAMPLE_PATH=\"$PATH_TIDY_HTML5/examples/\""; \ echo "INCLUDE_PATH=\"$PATH_SRC\""; \ - echo "EXCLUDE=\"$PATH_INC/tidyplatform.h\"" - echo "OUTPUT_DIRECTORY=\"$OUTP_DIR\"" + echo "EXCLUDE=\"$PATH_INC/tidyplatform.h\""; \ + echo "OUTPUT_DIRECTORY=\"$OUTP_DIR\""; \ echo "PROJECT_NUMBER=$TIDY_VERSION"; \ echo "HTML_OUTPUT=\"$PATH_WEBSITE\"" echo "GENERATE_TAGFILE=\"$OUTP_DIR/$PATH_WEBSITE/tidy.tags\""; \ - echo "HTML_EXTRA_FILES= $PATH_EXAMPLES/tidy.help.txt $PATH_EXAMPLES/tidy.config.txt"; ) \ -| doxygen - > /dev/null + echo "HTML_EXTRA_FILES=\"$PATH_EXAMPLES/tidy.help.txt\" \"$PATH_EXAMPLES/tidy.config.txt\""; ) \ +| doxygen - # cleanup rm "$PATH_EXAMPLES/tidy.help.txt" ++++++ test_fixes.diff ++++++ Index: tidy-html5-5.2.0/tests/html5/testhtml5.sh =================================================================== --- tidy-html5-5.2.0.orig/tests/html5/testhtml5.sh +++ tidy-html5-5.2.0/tests/html5/testhtml5.sh @@ -19,7 +19,7 @@ failed() TMPCNT3=$((${TMPCNT3} + 1)); } -TMPEXE="../../build/cmake/tidy" +TMPEXE="../../build/tidy" [ -e ${TMPEXE} ] || noexe TMPINP=temphtml5.cfg @@ -29,7 +29,6 @@ ${TMPEXE} -h > /dev/null || noexe if [ ! -e "${TMPDIR}" ]; then echo "Will create the folder ${TMPDIR} for output" - read mkdir ${TMPDIR} || noout fi @@ -41,7 +40,6 @@ fi if [ ! -e "${TMPINP}" ]; then echo "Creating a CONFIG file ${TMPINP}" - read cat <<EOF > ${TMPINP} wrap: 99 @@ -93,5 +91,6 @@ if [ "${TMPCNT3}" = 0 ]; then echo "With NO WARNINGS or ERRORS! This is a *** SUCCESS ***" else echo "However have ${TMPCNT3} WARNINGS or ERRORS! This is a *** FAILURE ***" + exit 1 fi echo Index: tidy-html5-5.2.0/tests/t1.sh =================================================================== --- tidy-html5-5.2.0.orig/tests/t1.sh +++ tidy-html5-5.2.0/tests/t1.sh @@ -20,7 +20,7 @@ BN=`basename $0` #@REM ================================================================= #@REM setup the ENVIRONMENT -TIDY="../build/cmake/tidy" +TIDY="../build/tidy" TIDYOUT="tmp" TMPLOG="temptest1.txt" @@ -210,6 +210,7 @@ if [ "$ERRCNT" = "0" ]; then else echo "$BN: Carefully REVIEW the above differences on $TMPCASE $TMPEXIT! *** ACTION REQUIRED ***" echo "$BN: Carefully REVIEW the above differences on $TMPCASE $TMPEXIT! *** ACTION REQUIRED ***" >> $TMPLOG + exit 1 fi echo "" echo "# eof" >> $TMPLOG Index: tidy-html5-5.2.0/tests/testaccessone.sh =================================================================== --- tidy-html5-5.2.0.orig/tests/testaccessone.sh +++ tidy-html5-5.2.0/tests/testaccessone.sh @@ -20,7 +20,7 @@ TESTNO=$1 TESTEXPECTED=$2 ACCESSLEVEL=$3 -TIDY=../build/cmake/tidy +TIDY=../build/tidy INFILES=./accessTest/$1.*ml CFGFILE=./accessTest/cfg_$1.txt Index: tidy-html5-5.2.0/tests/testall.sh =================================================================== --- tidy-html5-5.2.0.orig/tests/testall.sh +++ tidy-html5-5.2.0/tests/testall.sh @@ -18,7 +18,7 @@ d_now() # testone.sh uses tempall.txt, so TMPLOG="tempall.txt" # same EXE -TMPTIDY=../build/cmake/tidy +TMPTIDY=../build/tidy TMPNOW=`d_now` TMPINP="testcases.txt" @@ -57,7 +57,7 @@ echo "================================== while read bugNo expected do # echo Testing $bugNo | tee -a $TMPLOG - ./testone.sh $bugNo $expected | tee -a $TMPLOG + ./testone.sh $bugNo $expected || exit 1 done < $TMPINP echo "========================================" >> $TMPLOG Index: tidy-html5-5.2.0/tests/testone.sh =================================================================== --- tidy-html5-5.2.0.orig/tests/testone.sh +++ tidy-html5-5.2.0/tests/testone.sh @@ -19,7 +19,7 @@ set +f TESTNO=$1 EXPECTED=$2 #TIDY=../bin/tidy -TIDY=../build/cmake/tidy +TIDY=../build/tidy if [ ! -f "$TIDY" ]; then echo "$BN: Can NOT locate binary '$TIDY'!" echo "$BN: Fix me with the correct location of the binary to run." ++++++ tidy_fetch_docs.sh ++++++ #!/bin/bash # # Updates documentation generation files to latest upstream version export PATH=/bin:/usr/bin rx='^%define documentation[[:space:]]+([a-f0-9]+)[[:space:]]*$' ver=`cat tidy.spec | grep '^%define documentation'` [[ $ver =~ $rx ]] ver=${BASH_REMATCH[1]} git clone https://github.com/htacg/html-tidy.org.api.git new_ver=`cd html-tidy.org.api; git log -1 --pretty=%h` if [[ $new_ver = $ver ]]; then echo "Currently up to date." exit 0 fi cd html-tidy.org.api osc log -p $ver..$new_ver -- tidy-html5-doxygen/ echo "Last chance to abort before update .... and abort if upstream did nothing interesting" read if [ $? -ne 0 ]; then echo "Aborting update." exit 1 fi echo "Updating version $ver to $new_ver" cd html-tidy.org.api git archive --format=tar $new_ver tidy-html5-doxygen/ | gzip -9 > ../tidy-html5-doxygen-$new_ver.tar.gz cd .. sed -ie "s/\(define documentation\)\(\W\+\)\($ver\)/\1\2$new_ver/" tidy.spec osc rm tidy-html5-doxygen-$ver.tar.gz osc add tidy-html5-doxygen-$new_ver.tar.gz
