- botch-dose2html: The --packages option can now be specified more than once
   to supply multiple Packages files
 - botch-extract-scc, botch-graph-ancestors, botch-graph-descendants,
   botch-graph-neighborhood, botch-graph-shortest-path, botch-graph2text: These
   tools previously allowed one to select vertices by supplying multiple
   options to a single argument (--vertex or similar). This meant that these
   arguments had to come *after* all positional arguments so that they would
   not be confused with them. This inconvenience is now fixed by allowing to
   specify these options more than once instead.


This is mostly a bugfix release. User-visible changes are:

 - botch-create-graph: rename option --num_cores to -j, --jobs
 - add --progress option
 - botch-y-u-b-d-transitive-essential runs botch-create-graph with


 - add options --timers, --ignoresrclessbin, --online, --sapsb and
   --allowsrcmismatch to botch-cross
 - botch-print-stats doesn't prettify the JSON anymore. Pipe its output to
   a tool like ydump to restore the old behaviour. This change is due to OCaml
   string length limitations, especially on 32 bit architectures.
 - change --drop-b-d-indep to --deb-drop-b-d-indep to comply with dose3
 - remove --noarchall option from botch-bin2src. To not turn Architecture:all
   packages into their source packages, use grep-dctrl to filter the input.
   This way, even more complex filters can be applied. A fitting filter to
   remove Architecture:all packages with grep-dctrl would be:
       grep-dctrl --not -X -FArchitecture all
 - update to work with dose >= 5.0.1
 - the --tmp option of botch-native, botch-cross, botch-y-u-no-bootstrap and
   botch-y-u-b-d-transitive-essential now implies --keep
 - botch-optuniv doesn't implicitly start from the essential set anymore but
   instead starts from the foreground packages. This also introduces the --fg
   and --bg options and makes the botch-optuniv interface more similar to the
   one of botch-create-graph or botch-src2bin.


 - add new test case "misc" for testing of various botch tools
 - botch-multiarch-interpreter-problem: add --html option and output text by
 - The mysterious test case failure that prompted "update test cases to build
   with latest Debian Sid" in version 0.16 is finally fixed and understood.
   This was a bug in clasp 3.1.3-1 which was fixed in 3.1.3-2 so those changes
   are now reverted with this version.
 - add option --wwwroot to botch-dose2html


 - update test cases to build with latest Debian Sid
 - botch-dose2html: allow --timestamp argument to contain a freeform string


 - update to work with dose >= 4.0 (hard version requirement)
 - botch-y-u-b-d-transitive-essential: allow to limit output to a single
 - botch-y-u-no-bootstrap: add --allowsrcmismatch option


 - all tools by default now *keep* Build-Depends-Indep dependencies. The old
   option --keep-indep has been replaced by --drop-b-d-indep
 - add botch-graph-sinks and botch-graph-sources
 - allow general graph tools to read both: GraphML and dot
 - add options --outfnameattr and --outfnameverts to botch-extract-scc
 - rename botch-extract-neighborhood to botch-graph-neighborhood
 - add botch-filter-src-builds-for
 - add botch-graph2text
 - add botch-y-u-no-bootstrap
 - add --keep option to botch-cross
 - prevent botch-native and botch-cross to accidentally remove the user's home
   directory by requiring output directories to be empty
 - add botch-y-u-b-d-transitive-essential
 - botch-remove-virtual-disjunctions: add --remove-nonvirtual option


 - botch-bin2src by default now turns *all* binary packages into their source
   packages, including Architecture:all packages. To restore the old behavior,
   pass the --noarchall option. This also means that the --all option is


 - add botch-graph-ancestors, botch-graph-descendants,
   botch-graph-shortest-path and botch-graph-tred
 - botch-graphml2dot and botch-extract-neighborhood:
      * read/write from/to standard input/output if positional arguments are
 - botch-extract-neighborhood:
      * allow finer grained selection of center vertex using the --target
 - botch-graphml2dot:
      * print name/arch/version in dot output


 - json/html output: instead of printing cudf package names, print in Debian
 - go back to using sysvinit-core to provide init because it's the only init
   system working on all arches and because the choice has no influence
   otherwise (sysvinit uses udev and systemd uses initscripts)
 - add --timestamp option to dose2html and do not print timestamps by default
 - improve dose2html output by printing vpkg information
 - make compatible with python3-networkx 1.9.1
 - calcportmetric: make output sorted


 - add botch-buildgraph2packages
 - remove botch-build-closure
 - adjust to dose3.3-2


 - create-graph: generate minimal installation sets
 - allow parallel creation of dependency graphs


 - use systemd-sysv instead of sysvinit-core in the minimal build system


 - make botch-create-graph include Essential:yes packages in installation sets
 - replace gitorious urls with


 - make the ocaml tools parse input graphML in sorted order to behave the same
   way independent of nodes and edges order in the input graphML


 - botch-remove-virtual-disjunctions: update man page
 - use Multi-Arch:no instead of the wrong "none"
 - upgrade to dose3 3.3
 - use pyyaml CLoader by default to reduce memory requirement from 233 times
   the input file size to 65 times the input file size
 - add botch-buildcheck-more-problems
 - add botch-distcheck-more-problems
 - add botch-multiarch-interpreter-problem
 - botch-cross-problems/botch-dose2html:
      * rename botch-cross-problems to botch-dose2html
      * rearrange the columns and group and sort
      * display a top 10 summary of the results at the top
      * remove --online
      * add --desc, --btsuser and --btstag to become more generic
      * do not output custom json for botch-fix-cross-problems
      * add --srcsdir and --packages to allow generation of individual source
        package pages
      * add --wnpp to allow retrieving RFH, RFA and O bugs
      * display if packages are arch:all
 - botch-fix-cross-problems: instead of investing our own json format, re-use
   the dose yaml format


 - Makefile: use botch-graph-difference to compare graphs when testing
 - find-fvs: make output independent from input graph order
 - run pylint3 and pep8 in test target and make all Python scripts compliant
 - graph-difference: rewrite and simplify comparison algorithm
 - make build-closure and clean-repository a bit more verbose


 - Makefile: fix test and install target for arches without ocamlopt


 - botch-cross/native: move to tools directory
 - botch-cross/native: fall back to *.d.byte tools if *.native is not available
 - botch-cross/native: use system version of botch-download-pkgsrc
 - add man page for botch-download-pkgsrc
 - fix man page generation for tools/*.sh files and delete two useless scripts in the process
 - add tools/


 - initial release