generator: Rename java_structs to camel_structs to better reflect their purpose This map was originally included just for the java bindings, but is generally useful to any binding which uses camel case by requirement or convention.
tests: Rename capitests -> tests/c-api.
fish: Allow events to be processed in guestfish. Add 'event', 'list-events' and 'delete-event' commands so that event handlers can be registered, listed and deleted in guestfish. The event handler is a shell script snippet or host command. Cc: Pádraig Brady <P@draigBrady.com>
Add Erlang bindings.
fish: Declare run_* functions in a generated header file. Calls to these functions are generated, so there is no need to declare the functions by hand.
docs: Obsolete HACKING file, move content into guestfs(3) man page. Add a new section called "EXTENDING LIBGUESTFS" to the guestfs manual page which contains all the information previously in "HACKING".
generator: List files generated in a separate file.
lib: Make <guestfs.h> be completely generated. This removes the 'not-quite-separate' guestfs-actions.h and guestfs-structs.h files.
docs: Which API calls were first supported in which upstream versions. Run src/api-support/update-from-tarballs.sh (this won't work unless you have a local copy of the tarballs from the website). src/api-support/added contains the result of running the script, a list of pairs: (API name, version first appeared).
fish: Use a perfect hash for faster command lookups. Existing command lookups are approx O(n^2). Replace this with a perfect hash implementation which should be a lot faster.
lib: Expose errno through new API guestfs_last_errno. If either the daemon sends back an errno, or a system call fails in the library, save the errno in the handle and then make it available to callers through the guestfs_last_errno function.
daemon: Send back the errno as a string. This changes the protocol again so that if the errno is available, it is converted to a string (like "EIO") and sent back over the protocol to the library. In this commit the library just discards the string.
generator: Generate guestfish-only commands. The guestfish-only commands such as 'alloc' and 'edit' are now generated from one place in the generator instead of being spread around ad-hoc in the C code.
Split generator into separate source files. 'src/generator.ml' is no more. Instead the generator is logically split up over many different source files. Read generator/README for help and tips. We compile the generator down to bytecode, not native code. This means it will run more slowly, but is done for maximum portability.