On 6/26/23 15:55, K Shiva wrote: > Adds the following to Network Object: > - <metadata>, <title> and <description> to the Network Schema, > along with appropriate XML parse methods. > - Get and Set APIs to access or modify the above. > - An async callback that notifies of metadata changes. > > Resolves (GSoC 2023): https://wiki.libvirt.org/Google_Summer_of_Code_Ideas.html > Signed-off-by: K Shiva <shiva_kr@xxxxxxxxxx> > > K Shiva (8): > Parser and Schema definitions > Metadata change APIs and related enums > Added Metadata change events > virsh: Added Methods to print metadata changes > Methods to relay metadata change callbacks > Test driver implementations > Error code and message for NO_NETWORK_METADATA > Test program for network metadata > > include/libvirt/libvirt-domain.h | 2 +- > include/libvirt/libvirt-network.h | 51 ++++ > include/libvirt/virterror.h | 2 + > po/POTFILES | 1 + > src/conf/network_conf.c | 3 + > src/conf/network_conf.h | 2 + > src/conf/network_event.c | 115 +++++++++ > src/conf/network_event.h | 11 + > src/conf/virnetworkobj.c | 347 ++++++++++++++++++++++++++-- > src/conf/virnetworkobj.h | 56 +++++ > src/driver-network.h | 16 ++ > src/libvirt-network.c | 167 +++++++++++++ > src/libvirt_public.syms | 6 + > src/remote/remote_daemon_dispatch.c | 39 ++++ > src/remote/remote_driver.c | 32 +++ > src/remote/remote_protocol.x | 15 +- > src/remote_protocol-structs | 6 + > src/test/test_driver.c | 74 ++++++ > src/util/virerror.c | 3 + > tests/meson.build | 1 + > tests/networkmetadatatest.c | 297 ++++++++++++++++++++++++ > tools/virsh-network.c | 78 ++++++- > 22 files changed, 1299 insertions(+), 25 deletions(-) > create mode 100644 tests/networkmetadatatest.c > What I didn't mention in my previous replies was: make sure that code compiles and tests pass after each individual commit. I believe reading the following article might be helpful: https://libvirt.org/api_extension.html Splitting a patch into smaller ones doesn't mean placing first N hunks into one patch, next M into the other patch. A patch is (ideally) one semantic change. We do see huge patches, occasionally, on the list too, e.g.: https://listman.redhat.com/archives/libvir-list/2023-March/238421.html but those are one semantic change. Michal