Hi all, Here is a v4 of my series. It includes the changes according to Pino and Richard's comments. However, the perrorf/debug problem is addressed differently: instead of adding an implementation for the internal function names when building for mllib, I redefine these macros. Obviously this is not perfect, but at least easier to understand. Pino's comment about the Notes regex wasn't quite right... thus I added a unit test for the Index_parser.write_entry As some more code has been moved around, the number of commits in the series increased a little bit ;) Cédric Bosdonnat (9): lib/osinfo.c: Extract xml processing into a callback lib: extract osinfo DB traversing API mllib: ocaml wrapper for lib/osinfo builder: rename docs test script builder: add Index_parser.write_entry function builder: add a template parameter to get_index dib: move do_cp to mllib.Commun_utils mllib: add do_mv helper function to Common_utils Add a virt-builder-repository tool .gitignore | 4 + builder/Makefile.am | 121 +++++- builder/builder.ml | 2 +- builder/index.mli | 3 + builder/index_parser.ml | 72 +++- builder/index_parser.mli | 8 +- builder/index_parser_tests.ml | 95 ++++ builder/repository_main.ml | 466 ++++++++++++++++++++ .../{test-virt-builder-docs.sh => test-docs.sh} | 2 + builder/virt-builder-repository.pod | 183 ++++++++ dib/utils.ml | 4 - lib/Makefile.am | 2 + lib/osinfo-iso.c | 462 ++++++++++++++++++++ lib/osinfo.c | 476 ++------------------- lib/osinfo.h | 27 ++ mllib/Makefile.am | 11 +- mllib/common_utils.ml | 11 + mllib/common_utils.mli | 6 + mllib/osinfo-c.c | 100 +++++ mllib/osinfo.ml | 26 ++ mllib/osinfo.mli | 31 ++ 21 files changed, 1654 insertions(+), 458 deletions(-) create mode 100644 builder/index_parser_tests.ml create mode 100644 builder/repository_main.ml rename builder/{test-virt-builder-docs.sh => test-docs.sh} (93%) create mode 100644 builder/virt-builder-repository.pod create mode 100644 lib/osinfo-iso.c create mode 100644 lib/osinfo.h create mode 100644 mllib/osinfo-c.c create mode 100644 mllib/osinfo.ml create mode 100644 mllib/osinfo.mli -- 2.11.0