Code Monkey home page Code Monkey logo

xmlwrapp's People

Contributors

sergeysatskiy avatar tbrowder avatar thesiv avatar thriqon avatar vadz avatar vslavik avatar wangito33 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

xmlwrapp's Issues

Make the manual available online

It would be nice to have the manual available online, e.g. at http://vslavik.github.io/xmlwrapp/

Ideal would be to update it automatically, of course, but even if this can't be done, it would still be useful to have it, it doesn't change that often so keeping it up to date manually shouldn't be a big problem.

[Patch] add xml::node::get_namespace()

Converted from SourceForge issue 2102276, submitted by vaclavslavik

Attached patch adds xml::node::get_namespace() for accessing XML node's namespace URL.

Without it, it's not possible to access namespace information using xmlwrapp, because there's no interface to use libxml2 directly and libxml2 is namespaces aware and so hides xmlns attributes.

installation fails

installing on OS X El Capitan 10.11.2

I have libxml2 and libxslt installed using homebrew and since the installations are keg-only (not symlinked), I hade to provide LDFLAGS and CPPFLAGS for ./configure to work properly. Here is the command that succeeded:

./configure LDFLAGS=-L/usr/local/opt/libxml2/lib CPPFLAGS=-I/usr/local/opt/libxml2/include

and then I ran make and the following error showed up:

Making all in include
make[1]: Nothing to be done for `all'.
Making all in src
  CXX      libxml/libxmlwrapp_la-ait_impl.lo
In file included from libxml/ait_impl.cxx:34:

libxml/ait_impl.h:42:10: fatal error: 'libxml/tree.h' file not found
#include <libxml/tree.h>

         ^
1 error generated.
make[1]: *** [libxml/libxmlwrapp_la-ait_impl.lo] Error 1
      make: *** [all-recursive] Error 1

Please advise.

Error message enhancements

Converted from SourceForge issue 2787840, submitted by mgrundberg

The line number is appended to the error message AND
If an error message is set by the user when parsing with the SAX parser, do not overwrite it with the general error message from libxml2

Build fails because cpp11.h is not included

It looks like the released xmlwrapp-0.8.0.tar.gz does not contain the cpp11.h file? Is this intentional? How am I supposed to build this?

Jeroens-MacBook-Pro:xmlwrapp-0.8.0 jeroen$ make
Making all in include
make[1]: Nothing to be done for `all'.
Making all in src
  CXX    libxml/libxmlwrapp_la-ait_impl.lo
  CXX    libxml/libxmlwrapp_la-attributes.lo
  CXX    libxml/libxmlwrapp_la-document.lo
libxml/document.cxx:42:10: fatal error: 'cpp11.h' file not found
#include "cpp11.h"
         ^
1 error generated.
make[1]: *** [libxml/libxmlwrapp_la-document.lo] Error 1
make: *** [all-recursive] Error 1

build issues

Ubuntu 12.04

checking for the Boost iostreams library... grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory
grep: *+: No such file or directory

[Patch] Remove xmlwrapp dependency on libxslt

Converted from SourceForge issue 1927398, submitted by vadz

Currently the applications using (only) libxmlwrapp (and not libxsltwrapp) still have a dependency on libxslt because of the use of xsltSaveResultTo{Filename,String} functions in xml::document.

This patch introduces an intermediate class called xslt::result which allows to move these functions calls to libxsltwrapp, thus removing this unwanted dependency. It doesn't change neither the library public API nor its behaviour.

Fix (attr) iterators to return references to real objects, not temporary proxies

Attributes iterators, in particular, return a reference to an internal attr object owned by the iterator. This means that the reference is only valid for the lifetime of the iterator and code like this is invalid:

xml::attributes::attr& a = *(root.get_attributes().begin());
// iterator freed, including its attr object, 'a' no longer valid
a.set_namespace(xml::namespaces::ns("href2", "p2"));

This is extremely unexpected for a C++ programmer.

"make dist" doesn't work under Ubuntu 20.04 which uses Python 3

Running bkl in dist-hook target fails under 20.04 because python is now Python 3 and we need Python 2 for it.

Unfortunately using python2 doesn't work everywhere neither (e.g. it fails under Ubuntu 18.04). Other than porting bkl to Python 3 (which is not trivial), is there any way to run it under all systems? All I can think about is to define PYTHON2 env var and use it in the makefile, which is a bit ugly but probably ought to work.

How can I define ns for xpath

Hello,

How can I work with namespaces xmlwrapp ? I only have default namespace in my XML document and I need to use XPATH.

Thanks,

Jean-Marc

./configure --disable-tests not working

./configure --disable-tests gives warning

configure: WARNING: unrecognized options: --disable-tests

and make fails:

Making all in tests
CXX test_main.o
In file included from test_main.cxx:34:
./test.h:39:10: fatal error: 'boost/test/unit_test.hpp' file not found

include <boost/test/unit_test.hpp>

     ^

1 error generated.
make[1]: *** [test_main.o] Error 1
make: *** [all-recursive] Error 1

Information on exception

Hello,

Is it possible to have more information about an exception?

When I catch an exception, I get the error message but not the number of the line at fault.

Thank you for your help.

Jean-Marc

[Patch] Fix build-failure with >=gcc-4.2

Converted from SourceForge issue 1748887, submitted by tiziano

The attached patch fixes the following failure:

i686-pc-linux-gnu-g++ -O2 -ggdb -march=prescott -fomit-frame-pointer -fno-ident
-pipe -fpic -shared
-I/var/tmp/portage/dev-libs/xmlwrapp-0.5.0-r1/work/xmlwrapp-0.5.0/include
-I/usr/include -I/usr/include/libxml2 -I/usr/include/libxml2 -c node.cxx
i686-pc-linux-gnu-g++ -O2 -ggdb -march=prescott -fomit-frame-pointer -fno-ident
-pipe -fpic -shared -I/var/tmp/portage/dev-libs/xmlwrapp-0.5.0-r1/work/xmlwrapp-0.5.0/include
-I/usr/include -I/usr/include/libxml2 -I/usr/include/libxml2 -c node_iterator.cxx
node.cxx:515: error: 'std::ostream& xml::operator<<(std::ostream&, const xml::node&)' should have been declared inside 'xml'
make[2]: *** [node.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory
/var/tmp/portage/dev-libs/xmlwrapp-0.5.0-r1/work/xmlwrapp-0.5.0/src/libxml' make[1]: *** [all] Error 2 make[1]: Leaving directory /var/tmp/portage/dev-libs/xmlwrapp-0.5.0-r1/work/xmlwrapp-0.5.0/src'
make: *** [all] Error 2

Fail to compile release 0.7 on Debian 6, 64-bit

Release 0.7 fails to compile on Debian 6:

./configure --enable-static=no
...
make
Making all in include
make[1]: Entering directory /usr/local/src2/xmlwrapp-0.7.0/include' make[1]: Nothing to be done forall'.
make[1]: Leaving directory /usr/local/src2/xmlwrapp-0.7.0/include' Making all in src make[1]: Entering directory/usr/local/src2/xmlwrapp-0.7.0/src'
CXX libxmlwrapp_la-schema.lo
In file included from libxml/errors_impl.h:57,
from libxml/schema.cxx:38:
/usr/include/c++/4.4/cstdarg:56: error: '::va_list' has not been declared
In file included from /usr/include/libxml2/libxml/tree.h:17,
from /usr/include/libxml2/libxml/xmlschemas.h:19,
from libxml/schema.cxx:41:
/usr/include/libxml2/libxml/xmlstring.h:106: error: 'va_list' has not been declared
libxml/schema.cxx: In constructor 'xml::impl::schema_impl::schema_impl(xmlDoc_, xml::error_handler&)':
libxml/schema.cxx:64: error: 'bad_alloc' is not a member of 'xml::impl::std'
libxml/schema.cxx: In member function 'bool xml::schema::validate(const xml::document&, xml::error_handler&) const':
libxml/schema.cxx:130: error: 'bad_alloc' is not a member of 'xml::impl::std'
make[1]: *_* [libxmlwrapp_la-schema.lo] Error 1
make[1]: Leaving directory `/usr/local/src2/xmlwrapp-0.7.0/src'
make: *** [all-recursive] Error 1

[Patch] Build errors with 0.6.1

Converted from SourceForge issue 2816324, submitted by bennison

I got build errors with 0.6.1 running on Ubuntu 9.04. One was from the Boost Test suite and one was due to the GCC 4.3 header dependency cleanup.

I updated the tests/test.h file to remove these errors.

Fail to configure on Ubuntu 16.04 LTS

I tried to install xmlwrapp-0.7.1 on Ubuntu 16.04 LTS since this is a dependency for xslt, a lightweight XSLT processing package for R. However, ./configure && make && make install fails with the following error:

andreas@X230:~/Downloads/xmlwrapp-0.7.1$ ./configure && make && make install
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/home/andreas/Downloads/xmlwrapp-0.7.1/admin/missing: Unknown `--is-lightweight' option
Try `/home/andreas/Downloads/xmlwrapp-0.7.1/admin/missing --help' for more information
configure: WARNING: 'missing' script is too old or missing
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports nested variables... (cached) yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking how to print strings... printf
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for LIBXML... yes
checking for LIBXSLT... yes
checking for LIBEXSLT... yes
checking whether to enable assertions... yes
checking for Boost headers version >= 0.0.0... yes
checking for Boost's header version...
configure: error: invalid value: boost_major_version=

Specifying ./configure --with-boost=/usr/include yields the same error.

AFAIK the dependencies for xmlwrapp-0.7.1 should be met:

andreas@X230:~$ autoconf --version
autoconf (GNU Autoconf) 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+/Autoconf: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>, <http://gnu.org/licenses/exceptions.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by David J. MacKenzie and Akim Demaille.
andreas@X230:~$ automake --version
automake (GNU automake) 1.15
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl-2.0.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Tom Tromey <[email protected]>
       and Alexandre Duret-Lutz <[email protected]>.
andreas@X230:~$ xmllint --version
xmllint: using libxml version 20903
   compiled with: Threads Tree Output Push Reader Patterns Writer SAXv1 FTP HTTP DTDValid HTML Legacy C14N Catalog XPath XPointer XInclude Iconv ISO8859X Unicode Regexps Automata Expr Schemas Schematron Modules Debug Zlib Lzma

andreas@X230:~$ xsltproc --version
Using libxml 20903, libxslt 10128 and libexslt 817
xsltproc was compiled against libxml 20902, libxslt 10128 and libexslt 817
libxslt 10128 was compiled against libxml 20902
libexslt 817 was compiled against libxml 20902
andreas@X230:~$ cat /usr/include/boost/version.hpp | grep "BOOST_LIB_VERSION"
//  BOOST_LIB_VERSION must be defined to be the same as BOOST_VERSION
#define BOOST_LIB_VERSION "1_58"

Thanks for your help.

Please clarify your license

Reading your LICENCE file i was not able to correlate it with any other existing licences.
Is this supposed to be an Apache licence? if yes could you please mention this.
Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.