NetBSD Problem Report #45690
From gson@gson.org Tue Dec 6 20:01:49 2011
Return-Path: <gson@gson.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by www.NetBSD.org (Postfix) with ESMTP id DC50863B9C6
for <gnats-bugs@gnats.NetBSD.org>; Tue, 6 Dec 2011 20:01:48 +0000 (UTC)
Message-Id: <20111206200146.6962175E39@guava.gson.org>
Date: Tue, 6 Dec 2011 22:01:46 +0200 (EET)
From: gson@gson.org (Andreas Gustafsson)
Reply-To: gson@gson.org (Andreas Gustafsson)
To: gnats-bugs@gnats.NetBSD.org
Subject: "atf-report -o xml" can generate malformed XML
X-Send-Pr-Version: 3.95
>Number: 45690
>Category: bin
>Synopsis: "atf-report -o xml" can generate malformed XML
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: bin-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Dec 06 20:05:00 +0000 2011
>Closed-Date:
>Last-Modified: Thu Jun 18 01:42:41 +0000 2015
>Originator: Andreas Gustafsson
>Release: NetBSD-current
>Organization:
>Environment:
System: NetBSD
Architecture: i386
Machine: i386
>Description:
When the standard error output of an ATF case test contains bytes that
are not valid UTF-8 encoded text, "atf-report -o xml" generates XML
output that is not accepted as input by xsltproc, causing the
generation of HTML test reports to fail.
>How-To-Repeat:
ftp http://www.gson.org/netbsd/bugs/build.i386-debug/build/2011.10.06.16.03.48/test.tps
cat test.tps | atf-report -o xml:test.xml
xsltproc --nonet --novalid /usr/share/xsl/atf/tests-results.xsl test.xml
This gives the error message:
test.xml:10896: parser error : Input is not proper UTF-8, indicate encoding !
Bytes: 0xB9 0xBB 0x22 0x29
<se>#5 0xbb95b015 in vpanic (fmt=0xbbb916fc "lfs_rescount", ap=0xb67ff8c0 "X4??
^
unable to parse test.xml
(in the above error message, two non-ASCII characters have been
replaced with question marks to avoid email encoding issues).
>Fix:
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: bin-bug-people->jmmv
Responsible-Changed-By: jmmv@NetBSD.org
Responsible-Changed-When: Mon, 16 Jan 2012 19:11:00 +0000
Responsible-Changed-Why:
Looking (first time I see this PR).
From: "Julio Merino" <jmmv@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/45690 CVS commit: pkgsrc/devel/atf
Date: Mon, 16 Jan 2012 22:26:56 +0000
Module Name: pkgsrc
Committed By: jmmv
Date: Mon Jan 16 22:26:56 UTC 2012
Modified Files:
pkgsrc/devel/atf: Makefile PLIST distinfo
Removed Files:
pkgsrc/devel/atf/patches: patch-atf-c_detail_process__test.c
Log Message:
Update to 0.15:
Experimental version released on January 16th, 2012.
* Respect stdin in atf-check. The previous release silenced stdin for any
processes spawned by atf, not only test programs, which caused breakage
in tests that pipe data through atf-check.
* Performance improvements to atf-sh.
* Enabled detection of unused parameters and variables in the code and
fixed all warnings.
* Changed the behavior of "developer mode". Compiler warnings are now
enabled unconditionally regardless of whether we are in developer mode or
not; developer mode is now only used to perform strict warning checks and
to enable assertions. Additionally, developer mode is now only
automatically enabled when building from the repository, not for formal
releases.
* Added new Autoconf M4 macros (ATF_ARG_WITH, ATF_CHECK_C and
ATF_CHECK_CXX) to provide a consistent way of defining a --with-arg flag
in configure scripts and detecting the presence of any of the ATF
bindings. Note that ATF_CHECK_SH was already introduced in 0.14, but it
has now been modified to also honor --with-atf if instantiated.
* Added timing support to atf-run / atf-report.
* Added support for a 'require.memory' property, to specify the minimum
amount of physical memory needed by the test case to yield valid results.
* PR bin/45690: Force an ISO-8859-1 encoding in the XML files generated by
atf-report so that invalid data in the output of test cases does not
mangle our report.
To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 pkgsrc/devel/atf/Makefile
cvs rdiff -u -r1.16 -r1.17 pkgsrc/devel/atf/PLIST
cvs rdiff -u -r1.15 -r1.16 pkgsrc/devel/atf/distinfo
cvs rdiff -u -r1.1 -r0 \
pkgsrc/devel/atf/patches/patch-atf-c_detail_process__test.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: "Julio Merino" <jmmv@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/45690 CVS commit: src/external/bsd/atf/dist
Date: Mon, 16 Jan 2012 22:37:01 +0000
Module Name: src
Committed By: jmmv
Date: Mon Jan 16 22:37:01 UTC 2012
Update of /cvsroot/src/external/bsd/atf/dist
In directory ivanova.netbsd.org:/tmp/cvs-serv22655
Log Message:
Import atf 0.15: the major goal of this import is to reconcile any local
changes to the atf codebase with upstream code. All local changes should
have been backported, with appropriate portability workarounds where
necessary.
This new release also includes other changes though, such as performance
improvements and bug fixes, and also a major new feature partially
implemented by pgoyette@: the time to execute each test cases and test
program is now recorded and included in the output reports.
The import into NetBSD has been tested natively on amd64 and macppc, and
the full test suite has also been run through anita on amd64 and i386.
No regressions observed... but you never know.
From the NEWS file, the changes in this version are as follows:
Experimental version released on January 16th, 2012.
* Respect stdin in atf-check. The previous release silenced stdin for any
processes spawned by atf, not only test programs, which caused breakage
in tests that pipe data through atf-check.
* Performance improvements to atf-sh.
* Enabled detection of unused parameters and variables in the code and
fixed all warnings.
* Changed the behavior of "developer mode". Compiler warnings are now
enabled unconditionally regardless of whether we are in developer mode or
not; developer mode is now only used to perform strict warning checks and
to enable assertions. Additionally, developer mode is now only
automatically enabled when building from the repository, not for formal
releases.
* Added new Autoconf M4 macros (ATF_ARG_WITH, ATF_CHECK_C and
ATF_CHECK_CXX) to provide a consistent way of defining a --with-arg flag
in configure scripts and detecting the presence of any of the ATF
bindings. Note that ATF_CHECK_SH was already introduced in 0.14, but it
has now been modified to also honor --with-atf if instantiated.
* Added timing support to atf-run / atf-report.
* Added support for a 'require.memory' property, to specify the minimum
amount of physical memory needed by the test case to yield valid results.
* PR bin/45690: Force an ISO-8859-1 encoding in the XML files generated by
atf-report so that invalid data in the output of test cases does not
mangle our report.
Status:
Vendor Tag: TNF
Release Tags: atf-0-15
U src/external/bsd/atf/dist/README
U src/external/bsd/atf/dist/Atffile
U src/external/bsd/atf/dist/atf-c.h
U src/external/bsd/atf/dist/atf-c++.hpp
U src/external/bsd/atf/dist/AUTHORS
U src/external/bsd/atf/dist/COPYING
U src/external/bsd/atf/dist/NEWS
U src/external/bsd/atf/dist/Kyuafile
U src/external/bsd/atf/dist/atf-c/error_fwd.h
U src/external/bsd/atf/dist/atf-c/build.h
U src/external/bsd/atf/dist/atf-c/check.h
U src/external/bsd/atf/dist/atf-c/config.h
U src/external/bsd/atf/dist/atf-c/error.h
U src/external/bsd/atf/dist/atf-c/atf-c-api.3
U src/external/bsd/atf/dist/atf-c/macros.h
C src/external/bsd/atf/dist/atf-c/tc.h
U src/external/bsd/atf/dist/atf-c/tp.h
U src/external/bsd/atf/dist/atf-c/utils.h
U src/external/bsd/atf/dist/atf-c/pkg_config_test.sh
C src/external/bsd/atf/dist/atf-c/defs.h.in
U src/external/bsd/atf/dist/atf-c/build.c
U src/external/bsd/atf/dist/atf-c/check.c
U src/external/bsd/atf/dist/atf-c/config.c
U src/external/bsd/atf/dist/atf-c/error.c
C src/external/bsd/atf/dist/atf-c/tc.c
U src/external/bsd/atf/dist/atf-c/tp.c
U src/external/bsd/atf/dist/atf-c/utils.c
U src/external/bsd/atf/dist/atf-c/h_build.h
U src/external/bsd/atf/dist/atf-c/atf_c_test.c
U src/external/bsd/atf/dist/atf-c/build_test.c
U src/external/bsd/atf/dist/atf-c/check_test.c
U src/external/bsd/atf/dist/atf-c/config_test.c
U src/external/bsd/atf/dist/atf-c/tc_test.c
U src/external/bsd/atf/dist/atf-c/error_test.c
U src/external/bsd/atf/dist/atf-c/macros_test.c
U src/external/bsd/atf/dist/atf-c/tp_test.c
U src/external/bsd/atf/dist/atf-c/utils_test.c
U src/external/bsd/atf/dist/atf-c/atf-c.pc.in
U src/external/bsd/atf/dist/atf-c/Atffile
U src/external/bsd/atf/dist/atf-c/Kyuafile
U src/external/bsd/atf/dist/atf-c/macros_h_test.c
U src/external/bsd/atf/dist/atf-c/detail/process_helpers.c
C src/external/bsd/atf/dist/atf-c/detail/test_helpers.c
U src/external/bsd/atf/dist/atf-c/detail/test_helpers.h
U src/external/bsd/atf/dist/atf-c/detail/dynstr.c
U src/external/bsd/atf/dist/atf-c/detail/dynstr.h
U src/external/bsd/atf/dist/atf-c/detail/env.c
U src/external/bsd/atf/dist/atf-c/detail/env.h
U src/external/bsd/atf/dist/atf-c/detail/fs.c
U src/external/bsd/atf/dist/atf-c/detail/fs.h
U src/external/bsd/atf/dist/atf-c/detail/list.c
U src/external/bsd/atf/dist/atf-c/detail/list.h
U src/external/bsd/atf/dist/atf-c/detail/map.c
U src/external/bsd/atf/dist/atf-c/detail/map.h
C src/external/bsd/atf/dist/atf-c/detail/process.c
C src/external/bsd/atf/dist/atf-c/detail/process.h
U src/external/bsd/atf/dist/atf-c/detail/sanity.c
U src/external/bsd/atf/dist/atf-c/detail/sanity.h
U src/external/bsd/atf/dist/atf-c/detail/text.c
U src/external/bsd/atf/dist/atf-c/detail/text.h
U src/external/bsd/atf/dist/atf-c/detail/tp_main.c
U src/external/bsd/atf/dist/atf-c/detail/user.c
U src/external/bsd/atf/dist/atf-c/detail/user.h
U src/external/bsd/atf/dist/atf-c/detail/dynstr_test.c
U src/external/bsd/atf/dist/atf-c/detail/env_test.c
U src/external/bsd/atf/dist/atf-c/detail/fs_test.c
U src/external/bsd/atf/dist/atf-c/detail/list_test.c
U src/external/bsd/atf/dist/atf-c/detail/map_test.c
U src/external/bsd/atf/dist/atf-c/detail/test_helpers_test.c
C src/external/bsd/atf/dist/atf-c/detail/process_test.c
U src/external/bsd/atf/dist/atf-c/detail/sanity_test.c
U src/external/bsd/atf/dist/atf-c/detail/text_test.c
U src/external/bsd/atf/dist/atf-c/detail/user_test.c
U src/external/bsd/atf/dist/atf-c/detail/Atffile
U src/external/bsd/atf/dist/atf-c/detail/Kyuafile
U src/external/bsd/atf/dist/atf-c++/atf-c++-api.3
U src/external/bsd/atf/dist/atf-c++/build.hpp
U src/external/bsd/atf/dist/atf-c++/check.hpp
U src/external/bsd/atf/dist/atf-c++/config.hpp
U src/external/bsd/atf/dist/atf-c++/macros.hpp
C src/external/bsd/atf/dist/atf-c++/tests.hpp
U src/external/bsd/atf/dist/atf-c++/utils.hpp
U src/external/bsd/atf/dist/atf-c++/build.cpp
U src/external/bsd/atf/dist/atf-c++/check.cpp
U src/external/bsd/atf/dist/atf-c++/config.cpp
C src/external/bsd/atf/dist/atf-c++/tests.cpp
U src/external/bsd/atf/dist/atf-c++/atf_c++_test.cpp
U src/external/bsd/atf/dist/atf-c++/build_test.cpp
U src/external/bsd/atf/dist/atf-c++/check_test.cpp
U src/external/bsd/atf/dist/atf-c++/config_test.cpp
U src/external/bsd/atf/dist/atf-c++/macros_test.cpp
U src/external/bsd/atf/dist/atf-c++/tests_test.cpp
U src/external/bsd/atf/dist/atf-c++/utils_test.cpp
U src/external/bsd/atf/dist/atf-c++/macros_hpp_test.cpp
U src/external/bsd/atf/dist/atf-c++/atf-c++.pc.in
U src/external/bsd/atf/dist/atf-c++/Atffile
U src/external/bsd/atf/dist/atf-c++/Kyuafile
U src/external/bsd/atf/dist/atf-c++/pkg_config_test.sh
U src/external/bsd/atf/dist/atf-c++/detail/test_helpers.cpp
U src/external/bsd/atf/dist/atf-c++/detail/test_helpers.hpp
U src/external/bsd/atf/dist/atf-c++/detail/application.cpp
U src/external/bsd/atf/dist/atf-c++/detail/application.hpp
U src/external/bsd/atf/dist/atf-c++/detail/env.cpp
U src/external/bsd/atf/dist/atf-c++/detail/env.hpp
U src/external/bsd/atf/dist/atf-c++/detail/exceptions.cpp
U src/external/bsd/atf/dist/atf-c++/detail/exceptions.hpp
U src/external/bsd/atf/dist/atf-c++/detail/expand.cpp
U src/external/bsd/atf/dist/atf-c++/detail/expand.hpp
U src/external/bsd/atf/dist/atf-c++/detail/fs.cpp
U src/external/bsd/atf/dist/atf-c++/detail/fs.hpp
U src/external/bsd/atf/dist/atf-c++/detail/parser.cpp
U src/external/bsd/atf/dist/atf-c++/detail/parser.hpp
U src/external/bsd/atf/dist/atf-c++/detail/process.cpp
C src/external/bsd/atf/dist/atf-c++/detail/process.hpp
U src/external/bsd/atf/dist/atf-c++/detail/sanity.hpp
C src/external/bsd/atf/dist/atf-c++/detail/text.cpp
C src/external/bsd/atf/dist/atf-c++/detail/text.hpp
U src/external/bsd/atf/dist/atf-c++/detail/ui.cpp
U src/external/bsd/atf/dist/atf-c++/detail/ui.hpp
U src/external/bsd/atf/dist/atf-c++/detail/application_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/Atffile
U src/external/bsd/atf/dist/atf-c++/detail/env_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/exceptions_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/expand_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/fs_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/parser_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/process_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/sanity_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/text_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/ui_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/Kyuafile
U src/external/bsd/atf/dist/atf-config/atf-config.1
C src/external/bsd/atf/dist/atf-config/integration_test.sh
U src/external/bsd/atf/dist/atf-config/atf-config.cpp
U src/external/bsd/atf/dist/atf-config/Atffile
U src/external/bsd/atf/dist/atf-config/Kyuafile
U src/external/bsd/atf/dist/atf-report/atf-report.1
C src/external/bsd/atf/dist/atf-report/tests-results.css
C src/external/bsd/atf/dist/atf-report/atf-report.cpp
U src/external/bsd/atf/dist/atf-report/reader.cpp
U src/external/bsd/atf/dist/atf-report/reader.hpp
U src/external/bsd/atf/dist/atf-report/fail_helper.cpp
U src/external/bsd/atf/dist/atf-report/misc_helpers.cpp
U src/external/bsd/atf/dist/atf-report/pass_helper.cpp
U src/external/bsd/atf/dist/atf-report/reader_test.cpp
U src/external/bsd/atf/dist/atf-report/tests-results.dtd
C src/external/bsd/atf/dist/atf-report/tests-results.xsl
U src/external/bsd/atf/dist/atf-report/Atffile
U src/external/bsd/atf/dist/atf-report/Kyuafile
U src/external/bsd/atf/dist/atf-report/integration_test.sh
U src/external/bsd/atf/dist/atf-run/atf-run.1
C src/external/bsd/atf/dist/atf-run/requirements.cpp
C src/external/bsd/atf/dist/atf-run/atf-run.cpp
U src/external/bsd/atf/dist/atf-run/atffile.cpp
U src/external/bsd/atf/dist/atf-run/atffile.hpp
U src/external/bsd/atf/dist/atf-run/config.cpp
U src/external/bsd/atf/dist/atf-run/config.hpp
C src/external/bsd/atf/dist/atf-run/fs.cpp
U src/external/bsd/atf/dist/atf-run/fs.hpp
U src/external/bsd/atf/dist/atf-run/io.cpp
U src/external/bsd/atf/dist/atf-run/io.hpp
U src/external/bsd/atf/dist/atf-run/bad_metadata_helper.c
U src/external/bsd/atf/dist/atf-run/requirements.hpp
U src/external/bsd/atf/dist/atf-run/signals.cpp
U src/external/bsd/atf/dist/atf-run/signals.hpp
C src/external/bsd/atf/dist/atf-run/test-program.cpp
U src/external/bsd/atf/dist/atf-run/test-program.hpp
C src/external/bsd/atf/dist/atf-run/timer.cpp
C src/external/bsd/atf/dist/atf-run/timer.hpp
U src/external/bsd/atf/dist/atf-run/user.cpp
U src/external/bsd/atf/dist/atf-run/user.hpp
U src/external/bsd/atf/dist/atf-run/Atffile
U src/external/bsd/atf/dist/atf-run/atffile_test.cpp
U src/external/bsd/atf/dist/atf-run/requirements_test.cpp
U src/external/bsd/atf/dist/atf-run/config_test.cpp
U src/external/bsd/atf/dist/atf-run/expect_helpers.c
U src/external/bsd/atf/dist/atf-run/fs_test.cpp
C src/external/bsd/atf/dist/atf-run/io_test.cpp
U src/external/bsd/atf/dist/atf-run/misc_helpers.cpp
U src/external/bsd/atf/dist/atf-run/pass_helper.cpp
C src/external/bsd/atf/dist/atf-run/test_program_test.cpp
U src/external/bsd/atf/dist/atf-run/several_tcs_helper.c
U src/external/bsd/atf/dist/atf-run/signals_test.cpp
U src/external/bsd/atf/dist/atf-run/zero_tcs_helper.c
U src/external/bsd/atf/dist/atf-run/user_test.cpp
U src/external/bsd/atf/dist/atf-run/Kyuafile
C src/external/bsd/atf/dist/atf-run/integration_test.sh
U src/external/bsd/atf/dist/atf-run/sample/atf-run.hooks
U src/external/bsd/atf/dist/atf-run/sample/common.conf
U src/external/bsd/atf/dist/atf-run/share/atf-run.hooks
U src/external/bsd/atf/dist/atf-sh/atf-check.1
U src/external/bsd/atf/dist/atf-sh/atf-sh.1
U src/external/bsd/atf/dist/atf-sh/atf-sh-api.3
U src/external/bsd/atf/dist/atf-sh/atf_check_test.sh
C src/external/bsd/atf/dist/atf-sh/atf-check.cpp
U src/external/bsd/atf/dist/atf-sh/atf-sh.cpp
U src/external/bsd/atf/dist/atf-sh/libatf-sh.subr
U src/external/bsd/atf/dist/atf-sh/atf-sh.pc.in
U src/external/bsd/atf/dist/atf-sh/Atffile
U src/external/bsd/atf/dist/atf-sh/Kyuafile
U src/external/bsd/atf/dist/atf-sh/misc_helpers.sh
C src/external/bsd/atf/dist/atf-sh/atf-check_test.sh
U src/external/bsd/atf/dist/atf-sh/config_test.sh
U src/external/bsd/atf/dist/atf-sh/integration_test.sh
U src/external/bsd/atf/dist/atf-sh/normalize_test.sh
U src/external/bsd/atf/dist/atf-sh/tc_test.sh
U src/external/bsd/atf/dist/atf-sh/tp_test.sh
U src/external/bsd/atf/dist/atf-version/generate-revision.sh
U src/external/bsd/atf/dist/atf-version/atf-version.1
C src/external/bsd/atf/dist/atf-version/atf-version.cpp
U src/external/bsd/atf/dist/doc/atf-test-program.1
U src/external/bsd/atf/dist/doc/atf-formats.5
C src/external/bsd/atf/dist/doc/atf-test-case.4
U src/external/bsd/atf/dist/doc/atf.7.in
U src/external/bsd/atf/dist/test-programs/meta_data_test.sh
U src/external/bsd/atf/dist/test-programs/c_helpers.c
U src/external/bsd/atf/dist/test-programs/cpp_helpers.cpp
U src/external/bsd/atf/dist/test-programs/Atffile
U src/external/bsd/atf/dist/test-programs/Kyuafile
U src/external/bsd/atf/dist/test-programs/common.sh
U src/external/bsd/atf/dist/test-programs/sh_helpers.sh
U src/external/bsd/atf/dist/test-programs/config_test.sh
U src/external/bsd/atf/dist/test-programs/expect_test.sh
U src/external/bsd/atf/dist/test-programs/fork_test.sh
U src/external/bsd/atf/dist/test-programs/result_test.sh
U src/external/bsd/atf/dist/test-programs/srcdir_test.sh
29 conflicts created by this import.
Use the following command to help the merge:
cvs checkout -jTNF:yesterday -jTNF src/external/bsd/atf/dist
State-Changed-From-To: open->closed
State-Changed-By: jmmv@NetBSD.org
State-Changed-When: Mon, 16 Jan 2012 22:44:46 +0000
State-Changed-Why:
This should be fixed now after the import of 0.15.
From: Andreas Gustafsson <gson@gson.org>
To: gnats-bugs@NetBSD.org
Cc: jmmv@NetBSD.org,
netbsd-bugs@netbsd.org,
gnats-admin@netbsd.org,
gson@gson.org (Andreas Gustafsson)
Subject: Re: bin/45690 ("atf-report -o xml" can generate malformed XML)
Date: Thu, 14 Feb 2013 00:04:50 +0200
In January 2012, jmmv@NetBSD.org wrote:
> State-Changed-From-To: open->closed
> State-Changed-By: jmmv@NetBSD.org
> State-Changed-When: Mon, 16 Jan 2012 22:44:46 +0000
> State-Changed-Why:
> This should be fixed now after the import of 0.15.
It's not actually fixed. With today's test output, xsltproc
again fails:
/bracket/i386/test/2013.02.13.08.00.47/anita/atf/test.xml:19542: parser error : PCDATA invalid Char value 27
--
Andreas Gustafsson, gson@gson.org
State-Changed-From-To: closed->open
State-Changed-By: gson@NetBSD.org
State-Changed-When: Wed, 13 Feb 2013 22:06:47 +0000
State-Changed-Why:
Fails again with today's test output.
From: Julio Merino <julio@meroh.net>
To: gnats-bugs@netbsd.org
Cc: netbsd-bugs@netbsd.org, gnats-admin@netbsd.org, gson@netbsd.org
Subject: Re: bin/45690 ("atf-report -o xml" can generate malformed XML)
Date: Wed, 13 Feb 2013 22:40:47 -0500
On Wed, Feb 13, 2013 at 5:06 PM, <gson@netbsd.org> wrote:
> Synopsis: "atf-report -o xml" can generate malformed XML
>
> State-Changed-From-To: closed->open
> State-Changed-By: gson@NetBSD.org
> State-Changed-When: Wed, 13 Feb 2013 22:06:47 +0000
> State-Changed-Why:
> Fails again with today's test output.
Easy to reproduce. Taking a look.
--
Julio Merino / @jmmv
From: "Julio Merino" <jmmv@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/45690 CVS commit: pkgsrc/devel
Date: Thu, 14 Feb 2013 18:36:12 +0000
Module Name: pkgsrc
Committed By: jmmv
Date: Thu Feb 14 18:36:12 UTC 2013
Modified Files:
pkgsrc/devel/atf: Makefile Makefile.common distinfo
pkgsrc/devel/atf-libs: PLIST
Log Message:
Update atf and atf-libs to 0.17:
* Added the atf_utils_cat_file, atf_utils_compare_file,
atf_utils_copy_file, atf_utils_create_file, atf_utils_file_exists,
atf_utils_fork, atf_utils_grep_file, atf_utils_grep_string,
atf_utils_readline, atf_utils_redirect and atf_utils_wait utility
functions to atf-c-api. Documented the already-public
atf_utils_free_charpp function.
* Added the cat_file, compare_file, copy_file, create_file, file_exists,
fork, grep_collection, grep_file, grep_string, redirect and wait
functions to the atf::utils namespace of atf-c++-api. These are
wrappers around the same functions added to the atf-c-api library.
* Added the ATF_CHECK_MATCH, ATF_CHECK_MATCH_MSG, ATF_REQUIRE_MATCH and
ATF_REQUIRE_MATCH_MSG macros to atf-c to simplify the validation of a
string against a regular expression.
* Miscellaneous fixes for manpage typos and compilation problems with
clang.
* Added caching of the results of those configure tests that rely on
executing a test program. This should help crossbuild systems by
providing a mechanism to pre-specify what the results should be.
* PR bin/45690: Make atf-report convert any non-printable characters to
a plain-text representation (matching their corresponding hexadecimal
entities) in XML output files. This is to prevent the output of test
cases from breaking xsltproc later.
To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 pkgsrc/devel/atf/Makefile
cvs rdiff -u -r1.3 -r1.4 pkgsrc/devel/atf/Makefile.common
cvs rdiff -u -r1.17 -r1.18 pkgsrc/devel/atf/distinfo
cvs rdiff -u -r1.2 -r1.3 pkgsrc/devel/atf-libs/PLIST
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: "Julio Merino" <jmmv@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/45690 CVS commit: src/external/bsd/atf/dist
Date: Fri, 15 Feb 2013 17:04:22 +0000
Module Name: src
Committed By: jmmv
Date: Fri Feb 15 17:04:22 UTC 2013
Update of /cvsroot/src/external/bsd/atf/dist
In directory ivanova.netbsd.org:/tmp/cvs-serv9795
Log Message:
Import atf 0.17:
Experimental version released on February 14th, 2013.
* Added the atf_utils_cat_file, atf_utils_compare_file,
atf_utils_copy_file, atf_utils_create_file, atf_utils_file_exists,
atf_utils_fork, atf_utils_grep_file, atf_utils_grep_string,
atf_utils_readline, atf_utils_redirect and atf_utils_wait utility
functions to atf-c-api. Documented the already-public
atf_utils_free_charpp function.
* Added the cat_file, compare_file, copy_file, create_file, file_exists,
fork, grep_collection, grep_file, grep_string, redirect and wait
functions to the atf::utils namespace of atf-c++-api. These are
wrappers around the same functions added to the atf-c-api library.
* Added the ATF_CHECK_MATCH, ATF_CHECK_MATCH_MSG, ATF_REQUIRE_MATCH and
ATF_REQUIRE_MATCH_MSG macros to atf-c to simplify the validation of a
string against a regular expression.
* Miscellaneous fixes for manpage typos and compilation problems with
clang.
* Added caching of the results of those configure tests that rely on
executing a test program. This should help crossbuild systems by
providing a mechanism to pre-specify what the results should be.
* PR bin/45690: Make atf-report convert any non-printable characters to
a plain-text representation (matching their corresponding hexadecimal
entities) in XML output files. This is to prevent the output of test
cases from breaking xsltproc later.
Status:
Vendor Tag: TNF
Release Tags: atf-0-17
U src/external/bsd/atf/dist/README
U src/external/bsd/atf/dist/Kyuafile
U src/external/bsd/atf/dist/atf-c.h
U src/external/bsd/atf/dist/atf-c++.hpp
U src/external/bsd/atf/dist/AUTHORS
U src/external/bsd/atf/dist/COPYING
U src/external/bsd/atf/dist/NEWS
U src/external/bsd/atf/dist/Atffile
U src/external/bsd/atf/dist/atf-c/error_fwd.h
U src/external/bsd/atf/dist/atf-c/build.h
U src/external/bsd/atf/dist/atf-c/check.h
U src/external/bsd/atf/dist/atf-c/config.h
U src/external/bsd/atf/dist/atf-c/error.h
C src/external/bsd/atf/dist/atf-c/atf-c-api.3
U src/external/bsd/atf/dist/atf-c/macros.h
U src/external/bsd/atf/dist/atf-c/tc.h
U src/external/bsd/atf/dist/atf-c/tp.h
U src/external/bsd/atf/dist/atf-c/utils.h
U src/external/bsd/atf/dist/atf-c/pkg_config_test.sh
U src/external/bsd/atf/dist/atf-c/defs.h.in
U src/external/bsd/atf/dist/atf-c/build.c
U src/external/bsd/atf/dist/atf-c/check.c
U src/external/bsd/atf/dist/atf-c/config.c
U src/external/bsd/atf/dist/atf-c/error.c
U src/external/bsd/atf/dist/atf-c/tc.c
U src/external/bsd/atf/dist/atf-c/tp.c
U src/external/bsd/atf/dist/atf-c/utils.c
U src/external/bsd/atf/dist/atf-c/h_build.h
U src/external/bsd/atf/dist/atf-c/atf_c_test.c
U src/external/bsd/atf/dist/atf-c/build_test.c
U src/external/bsd/atf/dist/atf-c/check_test.c
U src/external/bsd/atf/dist/atf-c/config_test.c
U src/external/bsd/atf/dist/atf-c/tc_test.c
U src/external/bsd/atf/dist/atf-c/error_test.c
C src/external/bsd/atf/dist/atf-c/macros_test.c
U src/external/bsd/atf/dist/atf-c/tp_test.c
U src/external/bsd/atf/dist/atf-c/utils_test.c
U src/external/bsd/atf/dist/atf-c/atf-c.pc.in
U src/external/bsd/atf/dist/atf-c/Atffile
U src/external/bsd/atf/dist/atf-c/Kyuafile
U src/external/bsd/atf/dist/atf-c/macros_h_test.c
U src/external/bsd/atf/dist/atf-c/unused_test.c
U src/external/bsd/atf/dist/atf-c/detail/process_helpers.c
C src/external/bsd/atf/dist/atf-c/detail/test_helpers.c
U src/external/bsd/atf/dist/atf-c/detail/test_helpers.h
U src/external/bsd/atf/dist/atf-c/detail/dynstr.c
U src/external/bsd/atf/dist/atf-c/detail/dynstr.h
U src/external/bsd/atf/dist/atf-c/detail/env.c
U src/external/bsd/atf/dist/atf-c/detail/env.h
U src/external/bsd/atf/dist/atf-c/detail/fs.c
U src/external/bsd/atf/dist/atf-c/detail/fs.h
U src/external/bsd/atf/dist/atf-c/detail/list.c
U src/external/bsd/atf/dist/atf-c/detail/list.h
U src/external/bsd/atf/dist/atf-c/detail/map.c
U src/external/bsd/atf/dist/atf-c/detail/map.h
U src/external/bsd/atf/dist/atf-c/detail/process.c
U src/external/bsd/atf/dist/atf-c/detail/process.h
U src/external/bsd/atf/dist/atf-c/detail/sanity.c
U src/external/bsd/atf/dist/atf-c/detail/sanity.h
U src/external/bsd/atf/dist/atf-c/detail/text.c
U src/external/bsd/atf/dist/atf-c/detail/text.h
U src/external/bsd/atf/dist/atf-c/detail/tp_main.c
U src/external/bsd/atf/dist/atf-c/detail/user.c
U src/external/bsd/atf/dist/atf-c/detail/user.h
U src/external/bsd/atf/dist/atf-c/detail/dynstr_test.c
U src/external/bsd/atf/dist/atf-c/detail/env_test.c
U src/external/bsd/atf/dist/atf-c/detail/fs_test.c
U src/external/bsd/atf/dist/atf-c/detail/list_test.c
U src/external/bsd/atf/dist/atf-c/detail/map_test.c
C src/external/bsd/atf/dist/atf-c/detail/process_test.c
U src/external/bsd/atf/dist/atf-c/detail/sanity_test.c
U src/external/bsd/atf/dist/atf-c/detail/text_test.c
U src/external/bsd/atf/dist/atf-c/detail/user_test.c
U src/external/bsd/atf/dist/atf-c/detail/Atffile
U src/external/bsd/atf/dist/atf-c/detail/Kyuafile
N src/external/bsd/atf/dist/atf-c++/noncopyable.hpp
U src/external/bsd/atf/dist/atf-c++/build.hpp
U src/external/bsd/atf/dist/atf-c++/check.hpp
U src/external/bsd/atf/dist/atf-c++/config.hpp
U src/external/bsd/atf/dist/atf-c++/macros.hpp
U src/external/bsd/atf/dist/atf-c++/atf-c++-api.3
C src/external/bsd/atf/dist/atf-c++/tests.hpp
U src/external/bsd/atf/dist/atf-c++/utils.hpp
U src/external/bsd/atf/dist/atf-c++/macros_hpp_test.cpp
U src/external/bsd/atf/dist/atf-c++/build.cpp
U src/external/bsd/atf/dist/atf-c++/check.cpp
U src/external/bsd/atf/dist/atf-c++/config.cpp
C src/external/bsd/atf/dist/atf-c++/tests.cpp
N src/external/bsd/atf/dist/atf-c++/utils.cpp
U src/external/bsd/atf/dist/atf-c++/atf_c++_test.cpp
U src/external/bsd/atf/dist/atf-c++/build_test.cpp
U src/external/bsd/atf/dist/atf-c++/check_test.cpp
U src/external/bsd/atf/dist/atf-c++/config_test.cpp
U src/external/bsd/atf/dist/atf-c++/macros_test.cpp
U src/external/bsd/atf/dist/atf-c++/tests_test.cpp
U src/external/bsd/atf/dist/atf-c++/utils_test.cpp
U src/external/bsd/atf/dist/atf-c++/atf-c++.pc.in
U src/external/bsd/atf/dist/atf-c++/Atffile
U src/external/bsd/atf/dist/atf-c++/Kyuafile
U src/external/bsd/atf/dist/atf-c++/pkg_config_test.sh
U src/external/bsd/atf/dist/atf-c++/unused_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/env_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/test_helpers.cpp
U src/external/bsd/atf/dist/atf-c++/detail/test_helpers.hpp
U src/external/bsd/atf/dist/atf-c++/detail/application.cpp
U src/external/bsd/atf/dist/atf-c++/detail/application.hpp
N src/external/bsd/atf/dist/atf-c++/detail/auto_array.hpp
U src/external/bsd/atf/dist/atf-c++/detail/env.cpp
U src/external/bsd/atf/dist/atf-c++/detail/env.hpp
U src/external/bsd/atf/dist/atf-c++/detail/exceptions.cpp
U src/external/bsd/atf/dist/atf-c++/detail/exceptions.hpp
U src/external/bsd/atf/dist/atf-c++/detail/expand.cpp
U src/external/bsd/atf/dist/atf-c++/detail/expand.hpp
U src/external/bsd/atf/dist/atf-c++/detail/fs.cpp
U src/external/bsd/atf/dist/atf-c++/detail/fs.hpp
U src/external/bsd/atf/dist/atf-c++/detail/parser.cpp
U src/external/bsd/atf/dist/atf-c++/detail/parser.hpp
U src/external/bsd/atf/dist/atf-c++/detail/process.cpp
C src/external/bsd/atf/dist/atf-c++/detail/process.hpp
U src/external/bsd/atf/dist/atf-c++/detail/sanity.hpp
U src/external/bsd/atf/dist/atf-c++/detail/text.cpp
U src/external/bsd/atf/dist/atf-c++/detail/text.hpp
U src/external/bsd/atf/dist/atf-c++/detail/ui.cpp
U src/external/bsd/atf/dist/atf-c++/detail/ui.hpp
U src/external/bsd/atf/dist/atf-c++/detail/application_test.cpp
N src/external/bsd/atf/dist/atf-c++/detail/auto_array_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/exceptions_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/expand_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/fs_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/parser_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/process_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/sanity_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/text_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/ui_test.cpp
U src/external/bsd/atf/dist/atf-c++/detail/Atffile
U src/external/bsd/atf/dist/atf-c++/detail/Kyuafile
U src/external/bsd/atf/dist/atf-config/atf-config.1
U src/external/bsd/atf/dist/atf-config/integration_test.sh
U src/external/bsd/atf/dist/atf-config/atf-config.cpp
U src/external/bsd/atf/dist/atf-config/Atffile
U src/external/bsd/atf/dist/atf-config/Kyuafile
U src/external/bsd/atf/dist/atf-report/atf-report.1
U src/external/bsd/atf/dist/atf-report/tests-results.css
C src/external/bsd/atf/dist/atf-report/atf-report.cpp
U src/external/bsd/atf/dist/atf-report/reader.cpp
U src/external/bsd/atf/dist/atf-report/reader.hpp
U src/external/bsd/atf/dist/atf-report/fail_helper.cpp
U src/external/bsd/atf/dist/atf-report/misc_helpers.cpp
U src/external/bsd/atf/dist/atf-report/pass_helper.cpp
U src/external/bsd/atf/dist/atf-report/reader_test.cpp
U src/external/bsd/atf/dist/atf-report/tests-results.dtd
U src/external/bsd/atf/dist/atf-report/tests-results.xsl
U src/external/bsd/atf/dist/atf-report/Atffile
U src/external/bsd/atf/dist/atf-report/Kyuafile
U src/external/bsd/atf/dist/atf-report/integration_test.sh
U src/external/bsd/atf/dist/atf-run/atf-run.1
U src/external/bsd/atf/dist/atf-run/requirements.cpp
U src/external/bsd/atf/dist/atf-run/atf-run.cpp
U src/external/bsd/atf/dist/atf-run/atffile.cpp
U src/external/bsd/atf/dist/atf-run/atffile.hpp
U src/external/bsd/atf/dist/atf-run/config.cpp
U src/external/bsd/atf/dist/atf-run/config.hpp
C src/external/bsd/atf/dist/atf-run/fs.cpp
U src/external/bsd/atf/dist/atf-run/fs.hpp
U src/external/bsd/atf/dist/atf-run/io.cpp
U src/external/bsd/atf/dist/atf-run/io.hpp
U src/external/bsd/atf/dist/atf-run/bad_metadata_helper.c
U src/external/bsd/atf/dist/atf-run/requirements.hpp
U src/external/bsd/atf/dist/atf-run/signals.cpp
U src/external/bsd/atf/dist/atf-run/signals.hpp
U src/external/bsd/atf/dist/atf-run/test-program.cpp
U src/external/bsd/atf/dist/atf-run/test-program.hpp
U src/external/bsd/atf/dist/atf-run/timer.cpp
C src/external/bsd/atf/dist/atf-run/timer.hpp
U src/external/bsd/atf/dist/atf-run/user.cpp
U src/external/bsd/atf/dist/atf-run/user.hpp
U src/external/bsd/atf/dist/atf-run/Atffile
U src/external/bsd/atf/dist/atf-run/atffile_test.cpp
U src/external/bsd/atf/dist/atf-run/requirements_test.cpp
U src/external/bsd/atf/dist/atf-run/config_test.cpp
U src/external/bsd/atf/dist/atf-run/expect_helpers.c
U src/external/bsd/atf/dist/atf-run/fs_test.cpp
U src/external/bsd/atf/dist/atf-run/io_test.cpp
U src/external/bsd/atf/dist/atf-run/misc_helpers.cpp
U src/external/bsd/atf/dist/atf-run/pass_helper.cpp
U src/external/bsd/atf/dist/atf-run/test_program_test.cpp
U src/external/bsd/atf/dist/atf-run/several_tcs_helper.c
U src/external/bsd/atf/dist/atf-run/signals_test.cpp
U src/external/bsd/atf/dist/atf-run/zero_tcs_helper.c
U src/external/bsd/atf/dist/atf-run/user_test.cpp
U src/external/bsd/atf/dist/atf-run/Kyuafile
U src/external/bsd/atf/dist/atf-run/integration_test.sh
U src/external/bsd/atf/dist/atf-run/sample/atf-run.hooks
U src/external/bsd/atf/dist/atf-run/sample/common.conf
U src/external/bsd/atf/dist/atf-run/share/atf-run.hooks
U src/external/bsd/atf/dist/atf-sh/atf-check.1
U src/external/bsd/atf/dist/atf-sh/atf-sh.1
U src/external/bsd/atf/dist/atf-sh/atf-sh-api.3
U src/external/bsd/atf/dist/atf-sh/atf_check_test.sh
C src/external/bsd/atf/dist/atf-sh/atf-check.cpp
U src/external/bsd/atf/dist/atf-sh/atf-sh.cpp
U src/external/bsd/atf/dist/atf-sh/libatf-sh.subr
U src/external/bsd/atf/dist/atf-sh/atf-sh.pc.in
U src/external/bsd/atf/dist/atf-sh/Atffile
U src/external/bsd/atf/dist/atf-sh/Kyuafile
U src/external/bsd/atf/dist/atf-sh/misc_helpers.sh
C src/external/bsd/atf/dist/atf-sh/atf-check_test.sh
U src/external/bsd/atf/dist/atf-sh/config_test.sh
U src/external/bsd/atf/dist/atf-sh/integration_test.sh
U src/external/bsd/atf/dist/atf-sh/normalize_test.sh
U src/external/bsd/atf/dist/atf-sh/tc_test.sh
U src/external/bsd/atf/dist/atf-sh/tp_test.sh
U src/external/bsd/atf/dist/atf-version/generate-revision.sh
U src/external/bsd/atf/dist/atf-version/atf-version.1
U src/external/bsd/atf/dist/atf-version/atf-version.cpp
U src/external/bsd/atf/dist/doc/atf-test-program.1
C src/external/bsd/atf/dist/doc/atf-test-case.4
U src/external/bsd/atf/dist/doc/atf-formats.5
U src/external/bsd/atf/dist/doc/atf.7.in
U src/external/bsd/atf/dist/test-programs/meta_data_test.sh
U src/external/bsd/atf/dist/test-programs/c_helpers.c
U src/external/bsd/atf/dist/test-programs/cpp_helpers.cpp
U src/external/bsd/atf/dist/test-programs/Atffile
U src/external/bsd/atf/dist/test-programs/Kyuafile
U src/external/bsd/atf/dist/test-programs/common.sh
U src/external/bsd/atf/dist/test-programs/sh_helpers.sh
U src/external/bsd/atf/dist/test-programs/config_test.sh
U src/external/bsd/atf/dist/test-programs/expect_test.sh
U src/external/bsd/atf/dist/test-programs/result_test.sh
U src/external/bsd/atf/dist/test-programs/srcdir_test.sh
13 conflicts created by this import.
Use the following command to help the merge:
cvs checkout -jTNF:yesterday -jTNF src/external/bsd/atf/dist
State-Changed-From-To: open->closed
State-Changed-By: jmmv@NetBSD.org
State-Changed-When: Fri, 15 Feb 2013 17:14:15 +0000
State-Changed-Why:
I think this should be fixed by the just-imported atf 0.17.
From: Andreas Gustafsson <gson@gson.org>
To: jmmv@NetBSD.org
Cc: gnats-bugs@NetBSD.org
Subject: Re: bin/45690 ("atf-report -o xml" can generate malformed XML)
Date: Tue, 12 Aug 2014 14:48:30 +0300
Julio Merino wrote:
> * PR bin/45690: Make atf-report convert any non-printable characters to
> a plain-text representation (matching their corresponding hexadecimal
> entities) in XML output files. This is to prevent the output of test
> cases from breaking xsltproc later.
Looks like this is still not fully fixed, because the output from a
test case just broke xsltproc again:
xsltproc --nonet --novalid /bracket/i386/test/2014.08.11.01.54.12/anita/atf/tests-results.xsl /bracket/i386/test/2014.08.11.01.54.12/anita/atf/test.xml >/bracket/i386/test/2014.08.11.01.54.12/anita/atf/test.html
/bracket/i386/test/2014.08.11.01.54.12/anita/atf/test.xml:1310: parser error : PCDATA invalid Char value 12
255;::zz&#187;&#187;&#251;&#251;&#3;&#3;&#8;&#8;
^
/bracket/i386/test/2014.08.11.01.54.12/anita/atf/test.xml:1310: parser error : PCDATA invalid Char value 12
55;::zz&#187;&#187;&#251;&#251;&#3;&#3;&#8;&#8;
^
/bracket/i386/test/2014.08.11.01.54.12/anita/atf/test.xml:1312: parser error : PCDATA invalid Char value 11
p;#254;%&#254;q&#254;q&#254;&#189;&#254;&#189;&#254;
^
The offending characters are control-K (11 decimal) and control-L (12 decimal).
--
Andreas Gustafsson, gson@gson.org
State-Changed-From-To: closed->open
State-Changed-By: gson@NetBSD.org
State-Changed-When: Tue, 12 Aug 2014 11:53:30 +0000
State-Changed-Why:
Problem still occurs.
Responsible-Changed-From-To: jmmv->bin-bug-people
Responsible-Changed-By: dholland@NetBSD.org
Responsible-Changed-When: Thu, 18 Jun 2015 01:42:41 +0000
Responsible-Changed-Why:
jmmv quit a while back and shouldn't own PRs
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.