2015-03-06  Daniel P. Berrange  <berrange@redhat.com>

	Update NEWS for 0.0.2 release

	Add devel-doc sub-RPM

	Add vala bindings to RPM

	Remove unused  with_python variable in RPM spec

2015-03-04  Michal Privoznik  <mprivozn@redhat.com>

	Makefile: Build tests at the same time as the rest
	Currently, since we were using check_PROGRAMS in the Makefile
	template, the test program build was postponed until 'make check'
	was run. That's not optimal. Lets build (not run!) test program
	in the 'make all' phase.

2015-03-04  Christophe Fergeau  <cfergeau@redhat.com>

	Fix gvir_designer_domain_get_guest_full() leak
	One GVirConfigCapabilitiesGuestArch instance was created for each loop
	iteration, but it was never unref'ed, causing a memory leak.

	Fix gvir_designer_domain_get_fallback_disk_controller leak
	When the list of devices is empty (osinfo_list_get_length(devices) ==
	0), the 'devices' object would be leaked.

2015-03-04  Michal Privoznik  <mprivozn@redhat.com>

	test: Add new SimpleDisk test
	This test is meant for adding CDROM, floppy and disk to a domain.
	For now, each method has _file and _device variant, which are
	tested for now.

2015-03-03  Christophe Fergeau  <cfergeau@redhat.com>

	Fix GVirConfigDomainDiskDriver leak
	A GVirConfigDomainDiskDriver is created in
	gvir_designer_domain_add_disk_full but it's never unref'ed. This commit
	fixes that, including when an error occurs.

	Add gvir_designer_domain_interface_{bridge,user} methods
	These cover 2 additional types of libvirt interfaces: usermode/SLIRP
	networking and bridge.

	Add more preconditions to gvir_designer_domain_add_interface_network()

	Don't return uninitialized memory from gvir_designer_domain_add_interface_full()
	When an unknown NIC type is passed to
	gvir_designer_domain_add_interface_full(), 'ret' would be returned
	uninitialized to the caller.

	virtxml: Don't leak 'iface' in add_iface()
	The caller of gvir_designer_domain_add_interface_network() owns a reference
	on the returned GVirConfigDomainInterface instance, so it needs to be
	released when no longer needed.

	build-sys: Update manywarnings.m4 from gnulib
	This fixes gcc warning about -Wmudflap on fedora 21

	build-sys: Use AM_CPPFLAGS instead of INCLUDES
	The latter is deprecated in favour of the former.

2014-01-30  Michal Privoznik  <mprivozn@redhat.com>

	virtxml: Rename to virt-designer
	Our example utility is called virtxml. However with Cole's latest work,
	where he introduced virt-xml binary for editing libvirt XML on CLI [1].
	It would be better if our example is called virt-designer so we don't
	confuse users.

	1: https://www.redhat.com/archives/libvir-list/2014-January/msg01226.html

	gvir_designer_domain_add_disk_full: Adapt to latest libvirt-glib
	With libvirt-glib update, I've noticed a deprecation warning:

	libvirt-designer-domain.c: In function 'gvir_designer_domain_add_disk_full':
	libvirt-designer-domain.c:1610:9: error: 'gvir_config_domain_disk_set_driver_type' is deprecated (declared at /usr/include/libvirt-gconfig-1.0/libvirt-gconfig/libvirt-gconfig-domain-disk.h:145): Use 'gvir_config_domain_disk_set_driver_format' instead [-Werror=deprecated-declarations]
	         gvir_config_domain_disk_set_driver_type(disk, format);
	         ^
	cc1: all warnings being treated as errors

2013-09-26  Christophe Fergeau  <cfergeau@redhat.com>

	Use latest warnings.m4 from gnulib
	The one we were using does not work properly with clang, causing
	the build process to try to use -f/-W options that are not
	supported by clang.

2013-08-27  Christophe Fergeau  <cfergeau@redhat.com>

	Fix typo in error message

2013-06-06  Christophe Fergeau  <cfergeau@redhat.com>

	Implement gvir_designer_domain_add_video()
	This takes into account the devices specified by the deployment, if
	this fails, consider the intersection of devices supported by
	the OS and by the platform, and if this still fails, falls back
	to a hardcoded hypervisor type -> video model mapping.

	Implement gvir_designer_domain_add_smartcard()
	This setups smartcard redirection to the guest.
	I'm not yet fully sure what users could want to tweak there
	(there are various ways of setting up the smartcard redirection),
	so this code may need to be made more flexible.
	The current code is also not checking whether the hypervisor
	supports this kind of redirection or not.

	Implement gvir_designer_domain_add_usb_redir()
	This will add an USB redirection channel to the VM. This can
	be called multiple times to redirect several USB devices at once.
	This will also add the needed controllers if they are not already
	present in the VM.
	The current code has 2 shortcomings:
	- USB redirection is only supported with SPICE, but this is not
	  checked for
	- the USB controller added to the VM are hardcoded, no check if they
	  are supported by the OS, hypervisor, ...

	Check for vioserial availability before adding a SPICE agent
	This makes use of the new gvir_designer_domain_get_supported_devices()
	method.

	Automatically add SPICE channel with SPICE graphics
	When the user sets up the graphical framebuffer to use SPICE,
	we now add automatically the SPICE agent channel if it's not present
	already.

	Implement gvir_designer_domain_add_graphics()
	This allows to choose between SPICE, VNC or a local display, which
	will go through SDL or 'desktop' depending on the hypervisor.

2013-06-05  Christophe Fergeau  <cfergeau@redhat.com>

	Update copyright notice

	Implement gvir_designer_domain_add_sound()

2013-06-04  Christophe Fergeau  <cfergeau@redhat.com>

	Improve VM skeleton created by gvir_designer_domain_setup_guest()
	Add various devices/configuration to libvirt XML config when
	creating the VM. This configuration is generic enough that it
	should be useful on all created VMs, that's why no public API is
	added to set them up. However, they are split in several helpers
	that can easily be exported if needed.

	What this commit adds is:
	- clock
	- input device (a tablet which will act as a mouse)
	- a console (Boxes is adding one, not sure if it's required...)

	For maximum flexibility, we may want to let applications decide whether
	they want a console or not.

	In addition to these devices, gvir_designer_domain_setup_guest()
	now disables power management, and sets the domain to stop on
	power off/crash, and to restart on reboots.

2013-04-22  Christophe Fergeau  <cfergeau@redhat.com>

	Add missing files to EXTRA_DIST
	This fixes make distcheck

	Rework disk bus type handling
	The current handling of bus types has some issues:
	- it assumes that if the design uses a disk controller hanging off
	  a PCI bus, then it can use virtio, which is not true for
	  Windows for example unless an additional driver is installed
	- it checks for "ide", "sata", "virtio" bus names, but they are not
	  used in libosinfo, and "sata is not mentioned in libosinfo.rng
	- if the bus type could not determined, falling back to an IDE
	  bus should be a safe guess

	This commit changes the code to guessing the best disk controller
	to use, and then derives the bus type from it when needed.
	One limitation of this approach is that we are currently limited to
	virtio or IDE as libosinfo is not expressive enough for us to tell
	if a given disk controller is IDE/SATA/SCSI/...
	One way of making this distinction possible would be to attach the
	PCI subclass to libosinfo device descriptions as this contains the
	information we need.

	Add gvir_designer_domain_get_supported_devices()
	This method gathers the list of devices supported by the hypervisor,
	and intersects this list with the list of devices supported
	by the OS, natively or using a driver (added with
	gvir_designer_domain_add_driver()). The lists can be filtered if
	needed.

	This commit changes gvir_designer_domain_get_supported_disk_bus_types()
	to make use of that new helper. This will slightly change its behaviour
	as before this commit, it will consider any block devices from
	GVirDesignerDomain::os, while after this commit, it will only
	consider block devices from GVirDesignerDomain::os that are supported
	by GVirDesignerDomain::platform.

	This will cause a change for example for OSes that only list
	virtio-block as a supported block device, such as Fedora as
	described in libosinfo v0.2.6-9-g7a8deb4

	Add driver handling methods to GVirDesignerDomain
	They are useful to tell libvirt-designer about which drivers
	are install/will be installed in the OS associated with the domain.
	This in turns allows libvirt-designer code to use these devices
	when it's making some guesses about what to enable/not enable
	in the VM being created.

	Set min versions from configure in .spec file
	Minimum libvirt-gobject, libvirt-gconfig and libosinfo versions
	are set in configure.ac, it's better not to duplicate them in
	libvirt-designer.spec.in, it's too easy to get them out of sync.

	Automatically set min versions in README
	Minimum libvirt-gconfig and libosinfo versions appear in both
	README and configure.ac, which means they easily get out of sync.
	This commit renames README to README.in so that we can substitute
	the configure.ac version in the README file. This way they are always
	in sync.

	Fix 'dependancy' typo in README file

2013-04-19  Michal Privoznik  <mprivozn@redhat.com>

	libvirt-designer-main.c: Re-indent function headers

	cfg.mk: Update list of syntax-check exceptions
	The bindtextdomain syntax-check macro is doing some dumb
	checking: each file containing '\<main *(' must call
	bindtextdomain. Even if it's mentioned inside a comment block,
	which we do as of e71ad8e13e7.

2013-04-19  Daniel P. Berrange  <berrange@redhat.com>

	Increment soname + symbol versions
	The ABI of some methods was explicitly broken, so the soname
	and symbol versions must all be incremented to reflect the
	ABI incompatibility

	Adapt saner libtool versioning scheme from libvirt
	The current way libtool versioning is calculated has a timebomb
	when the package version number changes to 1.0.0, which will
	cause the library soname to change. Adapt to the latest libvirt
	macros for libtool versioning, which use an explicit variable
	LIBVIRT_DESIGNER_SONUM setting for changing soname.

2013-04-18  Christophe Fergeau  <cfergeau@redhat.com>

	Add support for floppies and CDROMs
	This mirrors disk_file/disk_device API so that it's possible to
	add CDROMs and floppies to a GVirDesignerDomain.
	This also adds the corresponding -C/-F options to virtxml

2013-04-17  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>

	Add Vala API
	This is mostly (modified) copy&paste from libvirt-glib.

	Add transfer annotation to *init.argv
	Add transfer annotation to argv parameter of library init functions.

2013-04-12  Christophe Fergeau  <cfergeau@redhat.com>

	Fix 'be find' typo in error message

2013-04-11  Christophe Fergeau  <cfergeau@redhat.com>

	virtxml: Fix 2 memory leaks

	Fix some wrong gtk-doc transfer annotations

2013-04-11  Michal Privoznik  <mprivozn@redhat.com>

	test: Adapt to new gvir_designer_domain_new signature
	After 46be1aed the signature of gvir_designer_domain_new has changed.
	The OsinfoDb parameter appeared there. However, the test suite hasn't
	been adapted.

	Don't redefine _FORTIFY_SOURCE macro
	If the _FORTIFY_SOURCE has been already defined, we unconditionally
	redefine it, leaving us with warning/error thrown at compilation time.

2013-04-08  Daniel P. Berrange  <berrange@redhat.com>

	Auto-generate AUTHORS file from GIT logs
	Rather than trying to manually keep track of authors,
	just auto-generate the list from GIT logs

2013-04-08  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>

	Add myself to AUTHORS file

2013-04-06  Zeeshan Ali (Khattak)  <zeeshanak@gnome.org>

	build: No need to set PKG_CONFIG_PATH for g-ir-scanner
	I don't see any need for this and it actually breaks the build here:

	GEN      LibvirtDesigner-1.0.gir
	Package libvirt-gconfig-1.0 was not found in the pkg-config search path.
	Perhaps you should add the directory containing `libvirt-gconfig-1.0.pc'
	to the PKG_CONFIG_PATH environment variable
	No package 'libvirt-gconfig-1.0' found
	In file included from <stdin>:4:0:
	/extra-data/checkout/gnome/libvirt-designer/libvirt-designer/libvirt-designer.h:27:45:
	fatal error: libvirt-gconfig/libvirt-gconfig.h: No such file or
	directory
	compilation terminated.
	Error while processing the source.
	make[3]: *** [LibvirtDesigner-1.0.gir] Error 1

2013-03-29  Christophe Fergeau  <cfergeau@redhat.com>

	Fix leaks of libosinfo data

	Fix several leaks of libvirt-gconfig data

2013-03-22  Christophe Fergeau  <cfergeau@redhat.com>

	Add GvirDesignerDomain::osinfo-db
	virtxml was doing its own loading of the libosinfo database,
	and gvir_designer_init() was loading it a second time.
	By adding a GVirDesignerDomain::osinfo_db property, applications
	can share the same OsinfoDb as libvirt-designer. The association
	is made per libvirt-designer domain for more flexibility.

2013-03-19  Christophe Fergeau  <cfergeau@redhat.com>

	Fix libvirt caps -> libosinfo platform short id mapping
	The code was building an id starting with kvm- while libosinfo qemu
	description uses qemu-kvm-. Also, starting from qemu 1.2.0, there is
	no separate qemu-kvm tarball.
	guess_platform_from_connect is starting to be a bit magic, it may
	be better to add a <machine> attribute to libosinfo <platform>
	description and to use this to improve the matching between
	libosinfo data and libvirt caps.

2013-03-12  Christophe Fergeau  <cfergeau@redhat.com>

	Remove FSF address from a few files
	It was wrong after the FSF moved, and this is not how the
	licensing boilerplate is written in other source files.

2013-01-23  Christophe Fergeau  <cfergeau@redhat.com>

	virtxml: Errors loading the Osinfo DB are not fatal
	An error will be reported even if loading partially worked (for
	example when the system DB could be loaded, but the user DB failed
	to load). Since the code will still work correctly even if the DB
	could not be loaded at all, we can ignore the error when DB loading
	failed. (code still works but virtxml cannot do a lot of useful stuff
	as it needs an OS and an hypervisor).

	virtxml: Fix various memory leaks
	All memory was not cleaned up properly upon exit, and a string
	could be leaked from guess_os_from_disk when we issue a
	continue/break early during the loop iteration.

	virtxml: Switch to use osinfo_db_identify_media
	virtxml is using osinfo_db_guess_os_from_media for that which
	is deprecated.

2012-12-30  Christophe Fergeau  <cfergeau@redhat.com>

	virtxml: Make global var local
	OsinfoLoader is declared as a global variable in virtxml.c but
	is only used in one function, so it can be made local.

2012-10-09  Michal Privoznik  <mprivozn@redhat.com>

	spec: Update Source0 path
	under which the sources are accessible. It's supposed to be
	http://libvirt.org/sources/designer.

2012-10-09  Daniel P. Berrange  <berrange@redhat.com>

	Post release version bump

	Update deps in README and date in NEWS

	Add missing BR on libosinfo-devel to RPM spec

2012-09-20  Michal Privoznik  <mprivozn@redhat.com>

	spec: Cleanup for rpmlint
	In order to prevent warnings and errors from rpmlint we need
	to cleanup spec file: capitalization summary and spell check
	(s/runtime/run-time/)

	Create manpage for virtxml

2012-09-18  Michal Privoznik  <mprivozn@redhat.com>

	spec: Remove unused rules
	and update to reflect virtxml binary.

	domain.c: Document @error on public APIs
	to prevent warnings when generating the documentation.

	Create basic documentation
	In fact, it's only bare skeleton for gtkdoc

2012-09-17  Michal Privoznik  <mprivozn@redhat.com>

	Implement resources setting
	Users can choose between minimum and recommended values
	for VCPU count and amount of RAM. Moreover, recommended
	values should inherit defaults from the minimum.

	virtxml: Detect platform from libvirt connection URI
	as in nearly all cases users will install the guest
	on current libvirt we've just obtained capabilities from.

	virtxml: Detect OS from given ISO
	In some cases telling OS version is redundant as ISO image
	with specified OS is passed some arguments later as disk.
	Don't require --os then.

	virtxml: Init variables
	to avoid their uninitialized usage.

2012-09-14  Christophe Fergeau  <cfergeau@redhat.com>

	build: allow building with newer glibc-headers and -O0
	Fix copied from libvirt, commit by Eric Blake.

	glibc 2.15 (on Fedora 17) coupled with explicit disabling of
	optimization during development dies a painful death:

	/usr/include/features.h:314:4: error: #warning _FORTIFY_SOURCE requires
	compiling with optimization (-O) [-Werror=cpp]

	Work around this by only conditionally defining _FORTIFY_SOURCE,
	in the case where glibc can actually use it.  The trick is using
	AH_VERBATIM instead of AC_DEFINE.

2012-09-12  Michal Privoznik  <mprivozn@redhat.com>

	add_disk_full: Only set error if !NULL

	get_supported_disk_bus_types: NULL is valid list
	There is no need to check return value of g_hash_table_get_keys()
	which is passed to g_list_copy as even NULL is valid list in glib.

	init_check: Ignore DB loading errors
	Osinfo DB loader returns an error if users have a malformed XML file.
	However, it doesn't affect loading of other files, so we should not
	make those errors fatal. In addition, if osinfo DB is empty users
	will obtain appropriate error on very next API involving querying
	the DB.

2012-09-11  Michal Privoznik  <mprivozn@redhat.com>

	virtxml: Drop direct libvirt usage
	and switch to libvirt-gobject when connecting to libvirtd
	and fetching capabilities.

	style: Use two blank lines between functions

	disk_add: Don't hardcode 'qemu' driver
	but depend on domain virt type instead.

2012-09-10  Michal Privoznik  <mprivozn@redhat.com>

	domain: Introduce interface support
	Let users add NICs to domains.

	examples: Create an example of usage program

	domain: Introduce disk support
	Let users add either files or devices as disks to domains.

	Load osinfo DB on init
	as we need this DB later to find an OS or hypervisor and supported
	devices.

2012-07-31  Daniel P. Berrange  <berrange@redhat.com>

	Add GIT ignore file

	Introduce APIs for setting up optimal virt type / os type / arch

2012-07-30  Daniel P. Berrange  <berrange@redhat.com>

	Import basic library framework
