From a077786a42ac035c9a509b938ee9a038eec11dc3 Mon Sep 17 00:00:00 2001 From: Packit Date: Sep 04 2020 12:37:31 +0000 Subject: libvirt-glib-3.0.0 base --- diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..144ff9c --- /dev/null +++ b/AUTHORS @@ -0,0 +1,39 @@ + libvirt-glib Authors + ==================== + +The primary maintainers of libvirt-glib are: + + Christophe Fergeau + Daniel P. Berrange + Marc-André Lureau + Zeeshan Ali (Khattak) + +Patches have been received from: + +Alexander Larsson +Andrea Bolognani +Christophe Fergeau +Claudio Bley +Cédric Bosdonnat +Daniel P. Berrange +Daniel P. Berrangé +Fabiano Fidêncio +Guido Günther +Ian Main +Jovanka Gulicoska +Marc-André Lureau +Marek Kasik +Martin Kletzander +Michael Catanzaro +Michal Privoznik +Nirbheek Chauhan +Pavel Hrdina +Richa Sehgal +Stefano Facchini +T A Mahadevan +Timm Bäder +Timo Juhani Lindfors +Zeeshan Ali (Khattak) +Zeeshan Ali + + ... send patches to get your name added ... diff --git a/AUTHORS.in b/AUTHORS.in new file mode 100644 index 0000000..6ee6c9c --- /dev/null +++ b/AUTHORS.in @@ -0,0 +1,15 @@ + libvirt-glib Authors + ==================== + +The primary maintainers of libvirt-glib are: + + Christophe Fergeau + Daniel P. Berrange + Marc-André Lureau + Zeeshan Ali (Khattak) + +Patches have been received from: + +#authorslist# + + ... send patches to get your name added ... diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..4362b49 --- /dev/null +++ b/COPYING @@ -0,0 +1,502 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..e627289 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,4337 @@ +2019-11-26 Daniel P. Berrangé + + Bump version & update NEWS for 3.0.0 release + +2019-10-01 Fabiano Fidêncio + + gconfig-domain-video: Add bochs video device + https://bugzilla.redhat.com/show_bug.cgi?id=1753670 + + Reviewed-by: Daniel P. Berrangé + +2019-09-05 Fabiano Fidêncio + + tests,test-gconfig: Check _domain_os_get_machine() + Let's add one more simple check for gvir_config_domain_os_get_machine(). + + Reviewed-by: Michal Privoznik + + gconfig: Add _domain_os_get_firmware() + Add a way to get the value of which has been + set to the domain XML. + + Reviewed-by: Michal Privoznik + +2019-08-19 Daniel P. Berrangé + + Set desired glib min/max API versions + Setting GLIB_VERSION_MAX_ALLOWED ensures we get warnings if + we use APIs that are newer than our declared minimum glib + version. + + Setting GLIB_VERSION_MIN_REQUIRED ensures that we get + warnings if we use APIs deprecated in versions preceeding + this. + + If the latter is omitted then we get warnings for all + deprecations in glib, which is undesirable if we want to + keep compat with older versions. + + This avoids a build error with latest glib + + ./../libvirt-gconfig/libvirt-gconfig-capabilities-cpu-model.c: In function 'gvir_config_capabilities_cpu_model_init': + ../../libvirt-gconfig/libvirt-gconfig-capabilities-cpu-model.c:44:13: error: G_ADD_PRIVATE [-Werror] + 44 | model->priv = GVIR_CONFIG_CAPABILITIES_CPU_MODEL_GET_PRIVATE(model); + | ^~~~~~~~~~~~~~~ + + Caused by G_TYPE_INSTANCE_GET_PRIVATE being deprecated. + + Reviewed-by: Michal Privoznik + + gobject: remove use of G_PARAM_PRIVATE + This enum field is a deprecated synonym for G_PARAM_STATIC_NAME + which is already set by G_PARAM_STATIC_STRINGS. + + Reviewed-by: Michal Privoznik + +2019-05-27 Fabiano Fidêncio + + gtk-doc.make: Remove the file + Now that we're using gtkdocisze as part of autogen.sh, there's no reason + to keep our own gtk-doc.make file. + + Reviewed-by: Michal Privoznik + + autogen.sh: Simplify autogen.sh + Let's use an autogen.sh based on libosinfo's one, which is cleaner and + matches the current GNOME guidelines. + + Reviewed-by: Michal Privoznik + + docs: explicitly link against libvirt-g{config,lib,object} + Let's explicitly link against the built libvirt-gconfig, libvirt-glib, + and libvirt-gobject libtool files for introspecting the gobjects. + + In case it's *not* done we can run into some issues when where we try to + link against installed library, causing failures related to undefined + reference of the new symbols. + + Reviewed-by: Andrea Bolognani + +2019-05-23 Fabiano Fidêncio + + event-test: Change sha-bang line to use python3 + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + event-test: Handle exceptions in a py3 compatible way + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + event-test: Use print() in a py3 compatible way + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + event-test: Ensure the right versions of LibvirtGLib and Gtk get loaded + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + event-test: Don't use ";" in the end of lines + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + event-test: LibvirtGLib.init() takes (at maximum) 1 argment + The previous behaviour with pygobject required 2 arguments to be passed + to LibvirtGLib.init(). + + As it's been changed, whenever we try to run event-test we'd get: + ``` + Using uri:qemu:///system + Traceback (most recent call last): + File "event-test.py", line 62, in + main() + File "event-test.py", line 51, in main + LibvirtGLib.init(0, "") + TypeError: LibvirtGLib.init() takes exactly 1 argument (2 given) + ``` + + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + +2019-05-20 Fabiano Fidêncio + + conn-test: Change sha-bang line to use python3 + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + conn-test: Handle exceptions in a py3 compatible way + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + conn-test: Use print() in a py3 compatible way + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + conn-test: Ensure the right versions of LibvirtGObject and Gtk get loaded + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + conn-test: Don't use ";" in the end of lines + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + config-demo: Change sha-bang line to use python3 + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + config-demo: Use octal when setting mode + Basically, just change 0744 to 0o744 in order to be compatible with + python3. + + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + config-demo: Use print() in a py3 compatible way + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + config-demo: Ensure the right LibvirtGConfig version gets loaded + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + config-demo: Don't use ";" in the end of lines + Reviewed-by: Daniel P. Berrangé + Reviewed-by: Michal Privoznik + + gobject: Wrap virConnectGetDomainCapabilities() + In order to do so, 3 new APIs have been added: + - gvir_connection_get_domain_capabilities(); + - gvir_connection_get_domain_capabilities_async(); + - gvir_connection_get_domain_capabilities_finish(); + + The returned object is a GVirConfigDomainCapabilities, from which + consumers will be able to access a few other objects representing the + XML returned by virConnectGetDomainCapabilities(). + + Reviewed-by: Michal Privoznik + + tests: Add basic test for domain capabilities + This basic test only ensures that we can properly parse: + + + + bios + efi + + + + + Reviewed-by: Michal Privoznik + + gconfig: Add _domain_capabilities_os_get_firmwares() + Add a way to access the element's conent from + . + + Reviewed-by: Michal Privoznik + + gconfig: Add _domain_capabilities_get_os() + Add a way to access the object which represents the element from + the . + + Reviewed-by: Michal Privoznik + + gconfig: Add GVirConfigDomainCapabilitiesOs + GVirConfigDomainCapabilitiesOs object has been introduced in order to + represent the element under . + + For now it's not used anywhere, but it's addition allows us to start + building the needed machinery for: + - Returning a representation os element; + - Having the most basic machinery to start adding functions to return + any child element we may need to query from element; + + Reviewed-by: Michal Privoznik + + gconfig: Add GVirConfigDomainCapabilities + GVirConfigDomainCapabilities object has been introduced in order to + represent the output of virConnectGetDomainCapabilities(). + + For now it's not used anywhere, but its addition allows us to start + building the needed machinery for: + - Creating a wrapper around virConnectGetDomainCapabilities(); + - Creating new objects that will be used to return each of the elements + present in the output of virConnectGetDomainCapabilities(), + accordingly to the consumers of this library's need; + + Reviewed-by: Michal Privoznik + + gobject: Use the proper return type in _connection_get_capabilities_finish() + Instead of returning FALSE, return NULL. + + Reviewed-by: Michal Privoznik + + gconfig: Add _domain_os_set_firmware() + Add a way to set to the domain XML. + + Reviewed-by: Michal Privoznik + +2019-02-20 Daniel P. Berrangé + + po: refresh translations from zanata + + po: minimize uk ur vi wba yo zh_CN zh_HK zh_TW zu + + po: minimize sq sr@latin sr sv ta te tg th tr tw + + po: minimize or pa pl pt_BR pt ro ru si sk sl + + po: minimize mn mr ms nb nds ne nl nn nso + + po: minimize kw_GB kw@kkcor kw kw@uccor ky lt lv mai mk ml + + po: minimize id ilo is it ja ka kk km kn ko + + po: minimize fr gl gu he hi hr hu ia + + po: minimize de el en_GB eo es et eu fa fi + + po: minimize bn bo br brx bs ca cs cy da de_CH + + po: minimize af am anp ar as ast bal be bg bn_IN + + po: minimize & canonicalize translations stored in git + Similar to the libvirt-glib.pot, .po files contain line numbers and file + names identifying where in the source a translatable string comes from. + The source locations in the .po files are thrown away and replaced with + content from the libvirt-glib.pot whenever msgmerge is run, so this is not + precious information that needs to be stored in git. + + When msgmerge processes a .po file, it will add in any msgids from the + libvirt-glib.pot that were not already present. Thus, if a particular msgid + currently has no translation, it can be considered redundant and again + does not need storing in git. + + When msgmerge processes a .po file and can't find an exact existing + translation match, it will try todo fuzzy matching instead, marking such + entries with a "# fuzzy" comment to alert the translator to take a + look and either discard, edit or accept the match. Looking at the + existing fuzzy matches in .po files shows that the quality is awful, + with many having a completely different set of printf format specifiers + between the msgid and fuzzy msgstr entry. Fortunately when msgfmt + generates the .gmo, the fuzzy entries are all ignored anyway. The fuzzy + entries could be useful to translators if they were working on the .po + files directly from git, but Libvirt-Glib outsourced translation to the + Fedora Zanata system, so keeping fuzzy matches in git is not much help. + + Finally, by default msgids are sorted based on source location. Thus, if + a bit of code with translatable text is moved from one file to another, + it may shift around in the .po file, despite the msgid not itself changing. + If the msgids were sorted alphabetically, the .po files would have + stable ordering when code is refactored. + + This patch takes advantage of the above observations to canonicalize + and minimize the content stored for .po files in git. Instead of storing + the real .po files, we now store .mini.po files. + + The .mini.po files are the same file format as .po files, but have no + source location comments, are sorted alphabetically, and all fuzzy + msgstrs and msgids with no translation are discarded. This cuts the size + of content in the po directory. + + Users working from a libvirt-glib git checkout who need the full .po files + can run "make update-po", which merges the libvirt-glib.pot and .mini.po + file to create a .po file containing all the content previously stored + in git. + + Conversely if a full .po file has been modified, for example, by + downloading new content from Zanata, the .mini.po files can be updated + by running "make update-mini-po". The resulting diffs of the .mini.po + file will clearly show the changed translations without any of the noise + that previously obscured content. Being able to see content changes + clearly actually identified a bug in the zanata python client where it + was adding bogus "fuzzy" annotations to many messages: + + https://bugzilla.redhat.com/show_bug.cgi?id=1564497 + + Users working from libvirt-glib releases should not see any difference in + behaviour, since the tarballs only contain the full .po files, not the + .mini.po files. + + As an added benefit, generating tarballs with "make dist", will no + longer cause creation of dirty files in git, since it won't touch the + .mini.po files, only the .po files which are no longer kept in git. + + The languages are minimized in the following commit since it is a + large mechanical process. + + po: add rules for integration with zanata + Add rules to handle pushing libvirt-glib.pot to zanata, and refreshing .po + files with new content from zanata. + + po: remove language list from zanata configuration + The element in zanata.xml is no longer relevant as this info + is recorded server side. + + po: provide custom make rules for po file management + Historically we have relied on intltool to install a standard + po/Makefile.in.in which has very limited scope for customization. + intltool is deprecated in favour of standard gettextize tools, + but these share the same disadvantages. + + Writing make rules for po file management is no more difficult + than any other rules libvirt-glib has, so stop using intltool + and don't use gettextize ether. + +2019-02-14 Christophe Fergeau + + events: Mark 'eventlock' as static + It's not used outside of the libvirt-glib-event.c file, so there is no + good reason for not having it static. As it was not listed in + libvirt-glib.sym, this will make no change to the publicly exported + symbols (ie this is not an ABI change). + + Reviewed-by: Fabiano Fidêncio + + object: Fix gvir_connection_create_storage_pool() leak + We need to free the string returned by gvir_config_object_to_xml() after + using it. + + Reviewed-by: Fabiano Fidêncio + + config: Fix gvir_config_xml_node_to_string() leak + If xmlNodeDump() fails, we would be leaking the xmlBuffer we created. + This commit ensures we don't return early before this buffer is freed. + + Reviewed-by: Fabiano Fidêncio + +2019-02-12 Christophe Fergeau + + gconfig: Add gvir_config_storage_vol_target_set_features + Only one feature is supported at the moment, 'lazy refcount' + + Reviewed-by: Cole Robinson + +2018-10-12 Daniel P. Berrangé + + Bump version to 2.0.0 for new release + + Re-add script for doing release build testing + + Refresh translations from zanata + +2018-10-12 Fabiano Fidêncio + + tests: Add tests for _domain_os_{set, get}_machine() + Reviewed-by: Cole Robinson + Reviewed-by: Daniel P. Berrangé + + gconfig: add _domain_os_get_machine() + Reviewed-by: Cole Robinson + Reviewed-by: Daniel P. Berrangé + + gconfig-domain-sound: Add ich9 sound device + Reviewed-by: Cole Robinson + Reviewed-by: Daniel P. Berrangé + +2018-10-03 Fabiano Fidêncio + + domain: Introduce gvir_config_domain_set_custom_xml_ns_children() + gvir_config_domain_set_custom_xml_ns_children() basically has the same + functionallity as gvir_config_domain_set_custom_xml() but also sets the + namespace to the nodes' children. + + object: Also add the ns to the node's children + With the current code, we can only create a custom XML that looks like: + + + installed + http://centos.org/centos/7.0:0 + /home/fidencio/Downloads/CentOS-7-x86_64-DVD-1804.iso + + + + Although it works well for some use cases, there are use cases where + we'd like to have something a bit more complex libosinfo or nova + examples: + + + + + + + 512 + 10 + + + + + And for the latter case we'd have to go through the node's children and + also set the namespace for each children. + + gconfig, gobject: Use G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE + Commit 7190c5024d introduced the usage of new GObject define macros with + private. However as the conversion hasn't been done for abstract types + (G_DEFINE_ABSTRACT_TYPE) and the addition of the private classes for the + abstract types has been removed as part of the commit, crashes can be + seen in Apps consuming libvirt-glib, as this one from GNOME Boxes: + + Thread 1 "gnome-boxes" received signal SIGSEGV, Segmentation fault. + 0x00007ffff7ef2b35 in g_type_check_instance_is_fundamentally_a () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 + (gdb) bt + #0 0x00007ffff7ef2b35 in g_type_check_instance_is_fundamentally_a () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 + #1 0x00007ffff7ed2e75 in g_object_unref () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 + #2 0x00007ffff6ef094e in gvir_domain_device_set_property (object=0x555556680950, prop_id=2, value=0x7fffffffcbe0, + pspec=0x555556772540) at libvirt-gobject-domain-device.c:89 + #3 0x00007ffff7ed3b19 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 + #4 0x00007ffff7ed5624 in g_object_new_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 + #5 0x00007ffff7ed5959 in g_object_new () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 + #6 0x00005555555d8257 in boxes_libvirt_machine_get_domain_disk (self=0x5555560e6790, error=0x55555615a630) + at /run/build/gnome-boxes/src/libvirt-machine.vala:547 + #7 0x00005555555d0e7e in boxes_libvirt_machine_update_io_stat_co (_data_=0x55555615a320) + at /run/build/gnome-boxes/src/libvirt-machine.vala:280 + #8 0x00005555555d09b2 in boxes_libvirt_machine_update_io_stat (self=0x5555560e6790, info=0x555555f25990, stat=0x555556736a90, + _callback_=0x5555555d2992 , _user_data_=0x555556736a50) + at /run/build/gnome-boxes/src/libvirt-machine.vala:5 + #9 0x00005555555d3120 in boxes_libvirt_machine_update_stats_co (_data_=0x555556736a50) + at /run/build/gnome-boxes/src/libvirt-machine.vala:332 + #10 0x00005555555d29dd in boxes_libvirt_machine_update_stats_ready (source_object=0x5555567bb840, _res_=0x55555677ae00, + _user_data_=0x555556736a50) at /run/build/gnome-boxes/src/libvirt-machine.vala:328 + #11 0x00007ffff72adc89 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 + #12 0x00007ffff72adcc9 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 + #13 0x00007ffff7dec948 in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 + #14 0x00007ffff7decd38 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 + #15 0x00007ffff7decdcc in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 + #16 0x00007ffff72c2dbd in g_application_run () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 + #17 0x00005555556004b6 in _vala_main (args=0x7fffffffd4f8, args_length1=1) at /run/build/gnome-boxes/src/main.vala:84 + #18 0x0000555555600517 in main (argc=1, argv=0x7fffffffd4f8) at /run/build/gnome-boxes/src/main.vala:68 + + In order to solve the issue, let's just replace G_DEFINE_ABSTRACT_TYPE + by G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE. + +2018-08-16 Michal Privoznik + + configure: Drop GLIB2_TEST_REQUIRED + Introduced in eb1f97a4b49a6e it is not needed anymore. The + minimal required version of glib is now the same as the one + required for tests. + + This practically reverts the referenced commit. + + Reviewed-by: Andrea Bolognani + + Use new GObject define macros with private + G_ADD_PRIVATE was added in 2.38 and older functions are getting deprecated: + https://gitlab.gnome.org/GNOME/glib/merge_requests/7/commits + + This also means, that the minimal required glib version is + increased to 2.38. + + Reviewed-by: Andrea Bolognani + +2018-04-24 Daniel P. Berrangé + + git: add config file telling git-publish how to send patches + The "git-publish" tool is a useful git extension for sending patch + series for code review. It automatically creates versioned tags + each time code on a branch is sent, so that there is a record of + each version. It also remembers the cover letter so it does not + need re-entering each time the series is reposted. + + With this config file present it is now sufficient[1] to run + + $ git publish + + to send all patches in a branch to the list for review, with the + correct subject prefix added for this non-core libvirt module. + + [1] Assuming your $HOME/.gitconfig has an SMTP server listed + at least e.g. + + [sendemail] + smtpserver = smtp.example.com + +2018-02-20 Daniel P. Berrangé + + m4: disable gcc8 -Wcast-function-type warnings from -Wextra + The -Wextra flag bundle gained a new warning -Wcast-function-type. + This complains if you cast between two function prototypes where + the number of parameters or their data types are not compatible. + Unfortunately we need such "bad" function casts for our event + callbacks. It is possible to silence the warning by first casting + to the generic "void (*)(void)" function prototype, but that is + rather ugly to add throughout libvirt code. + +2018-01-17 Daniel P. Berrange + + remove bogus casts of arg to g_object_ref + Latest version of glib uses typeof() magic to cast the + return value of g_object_ref to match its argument, + instead of returning a 'void *'. A few places in the + code were casting the arg to G_OBJECT() which was then + incompatible with the variable we assigned the result + to. The parameter casts were always redundant so just + remove them. + +2017-12-04 Daniel P. Berrange + + Refresh po files from zanata + +2017-10-30 Marek Kasik + + spec: Enable unit tests during build + Enable unit tests so that we can catch some problems soon enough + before the package gets to the users. + Show test suite log if a test fail. + +2017-09-21 Andrea Bolognani + + scripts: Fix sha-bang lines + This is particularly useful on operating systems that don't ship + Perl or Python as part of the base system (eg. FreeBSD) while still + working just as well as it did before on Linux. + + While at it, make it explicit that our scripts are only going to + work with Python 2, add a couple of missing sha-bang lines and + tweak a couple more that just didn't look very nice. + + Reviewed-by: Daniel P. Berrange + + tests: Don't rely on non-portable paths + The test-events program sets up a watch on /bin/true; however, + that path is not portable: FreeBSD uses /usr/bin/true for example. + + Remove the portability issue by using /dev/null instead. + + Reviewed-by: Daniel P. Berrange + + configure: Look for Perl interpreter path + The $(PERL) variable is used in several places, but configure is + not actually looking for the Perl interpreter path, so it will + always end up being empty. + + Reviewed-by: Daniel P. Berrange + + configure: Bump required libvirt version to 1.2.5 + That's the version that introduced VIR_DOMAIN_TIME_SYNC, which we + use in the library. + + Reviewed-by: Daniel P. Berrange + + maint: Drop autobuild.sh + The Test-AutoBuild project, that this script is supposed to be used + with, hasn't seen any activity in ~6 years; libvirt's own CI, which + also performs periodic builds of libvirt-glib, is running on Jenkins + with a completely independent setup that doesn't use the script at + all. + + Reviewed-by: Daniel P. Berrange + +2017-08-14 Daniel P. Berrange + + Set LC_CTYPE when running glib-mkenums + + Revert "Don't set LC_ALL=C during build as that breaks python apps" + This reverts commit dae25f53293919bb2c22419c236bef5aa628e9be. + +2017-07-25 Daniel P. Berrange + + Don't set LC_ALL=C during build as that breaks python apps + Setting LC_ALL=C breaks python apps doing I/O on UTF-8 source + files. In particular this broke glib-mkenums + + GEN libvirt-gconfig-enum-types.h + Traceback (most recent call last): + File "/usr/bin/glib-mkenums", line 669, in + process_file(fname) + File "/usr/bin/glib-mkenums", line 406, in process_file + line = curfile.readline() + File "/usr/lib64/python3.6/encodings/ascii.py", line 26, in decode + return codecs.ascii_decode(input, self.errors)[0] + UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 849: ordinal not in range(128) + +2017-05-30 Daniel P. Berrange + + Add missing dep on intltool + Libvirt-glib requires intltool at build time. Previously it + was pulled in transitively via another RPM dependancy. As of + Fedora 26, this no longer happens, exposing the missing RPM + dep. + +2017-03-25 Guido Günther + + examples: make detail strings match event details + +2016-11-04 Daniel P. Berrange + + Post release version bump to 1.1.0 + NB, this will change to 2.0.0 if no new release is made + during 2016 + + Update NEWS for 1.0.0 release + + bump release to 1.0.0 to match libvirt numbering scheme + Switch to follow the libvirt release numbering scheme + + - Major is incremented at start of each year + - Minor is incremented each release during a year + - Micro is reserved for stable branch releases (if any) + +2016-11-04 Christophe Fergeau + + tests: Don't leak xml data in test-gconfig-device-unknown + +2016-11-04 Zeeshan Ali + + gconfig,tests: Add test case for unknown devices + +2016-11-03 Zeeshan Ali + + gconfig,tests: Separate XML loading function + We'll need to load XML from file in another function, that will be added + in a following patch. + + gconfig: Create objects for all domain device nodes + Currently we can and do get into serious trouble with this kind of code: + + devices = gvir_config_domain_get_devices(domain); + gvir_config_domain_set_devices(domain, domain); + + since the first call above won't return a complete list of objects present + in the domain but only the ones we have specific classes for and the + second call above overwrites all device nodes under the domain. This + lately made Boxes break against the latest libvirt, where a new device + node was made compulsory[1]. + + Although we should add support for all know domain devices ASAP, new + devices will be added in future and this can happen again. So let's first + ensure that gvir_config_domain_get_devices() always returns all devices + under the domain. All unknown/unimplemented devices will now be returned + as the very generic DomainDevice objects. Once we add support for a + particular device, there will be no API/ABI breakage since the new class + will inherit from DomainDevice class. + + [1] https://bugzilla.redhat.com/show_bug.cgi?id=1388091 + +2016-11-01 Zeeshan Ali + + gconfig: DomainDevice now instantiable + We'll need to instatiate DomainDevice baseclass itself for unknown (think + new devices added to libvirt XML) devices in a following patch. This + change makes that possible. + + This doesn't break any API or ABI to the best of my knowledge and this + assumption was confirmed by Emmanuele Bassi and Tim-Philipp Muller. + + gconfig: Allow schema to be NULL + Validation (if attempted) should just fail in this case instead of + crashing. + +2016-08-02 Daniel P. Berrange + + Delete the manually written python binding + The python binding only supports python2, only supports + 1 single API in libvirt-glib and has not even been enabled + in RPM builds since Fedora 15. Any distro these days should + have gobject introspection and pygobject available, so + there's no compelling reason to continue to have the python + binding exist. + +2016-07-28 Daniel P. Berrange + + Remove accidental debug code which changed version + + Fix check for libvirt optional functions + The checks for virDomainOpenGraphicsFD and + virNetworkGetDHCPLeases in configure are simply trying + to compile and link a test program. This was assuming + that libvirt was installed in /usr/lib & /usr/include, + which is not always the case. Using a pkg-config version + check avoids needing to compile and thus avoids the + bad assumptions about install locations. + + Avoid unused variable in DHCP lease finalize method + If the network DHCP lease support is not detected, the build + will generate a warning / error: + + libvirt-gobject-network-dhcp-lease.c: In function 'gvir_network_dhcp_lease_finalize': + libvirt-gobject-network-dhcp-lease.c:99:27: error: unused variable 'lease' [-Werror=unused-variable] + GVirNetworkDHCPLease *lease = GVIR_NETWORK_DHCP_LEASE(object); + ^~~~~ + cc1: all warnings being treated as errors + +2016-07-27 Guido Günther + + docs: Document gvir_connection_get_{storage_pools,networks,domains} + In contrast to libvirt itself all get_* methods need to prefetch the + corresponding information first so document this. + + Acked-by: Christophe Fergeau + +2016-07-25 Zeeshan Ali (Khattak) + + tests: Add test for GVirConfigDomainHostdevPci API + +2016-07-25 Christophe Fergeau + + gconfig: Add GVirConfigDomainAddressPci getters + They will be useful to do more checks in the GVirDomainDeviceHostdev + unit test. + +2016-07-25 Zeeshan Ali (Khattak) + + gconfig: Add GVirConfigDomainHostdevPci + Add API to read and write PCI hostdev nodes. + +2016-07-22 Zeeshan Ali (Khattak) + + gconfig: Add GVirConfigDomainHostdev + Add API to read and write domain/devices/hostdev nodes. This patch only + adds the baseclass and hence is not useful on it's own. A more specific + subclass to represent PCI devices will be added in a following patch. + +2016-07-21 Christophe Fergeau + + gconfig: Add gvir_config_object_has_child + +2016-07-21 Zeeshan Ali (Khattak) + + gconfig: Add gvir_config_domain_video_get_model() + Add a getter for model of domain video device. + +2016-02-26 Marc-André Lureau + + config: add accel3d setter + Learn to set the accel3d attribute on video model. + + config: add virtio video model + + config: add spice gl child + Learn to set "gl" on spice (to have -spice gl=on on qemu) + + tests: fix potential crash + The idle source is not always removed and may crash next tests + +2016-02-14 Marc-André Lureau + + build-sys: fix gir introspection warnings + Enable GIR warnings and fix them, since they are all useful. + +2015-12-26 Michal Privoznik + + libvirt-glib-1.0.pc.in: Correctly mark variable + In the pkg-config file for libvirt-glib we have a typo: + + Libs.private: @LIBVIRT_LIBS @GLIB2_LIBS@ + + Noticed the missing '@' after LIBVIRT_LIBS? Well, I just did. + +2015-12-16 Daniel P. Berrange + + Post release version bump + + Update NEWS for 0.2.3 release + + Refresh translations from zanata + +2015-12-07 Michal Privoznik + + Drop unused finalize function + After 1225a160ac3b4 where I'm dropping some unused variables, the + functions I was touching became sort of redundant too. + Specifically, gvir_domain_disk_finalize() and + gvir_domain_interface_finalize(). + +2015-12-05 Michal Privoznik + + gobject: Drop some unused variables + After abe983ddf8a569 there are some variables, that are unused: + + CC libvirt_gobject_1_0_la-libvirt-gobject-domain-disk.lo + CC libvirt_gobject_1_0_la-libvirt-gobject-domain-interface.lo + CC libvirt_gobject_1_0_la-libvirt-gobject-domain.lo + CC libvirt_gobject_1_0_la-libvirt-gobject-interface.lo + ../../libvirt-gobject/libvirt-gobject-domain-interface.c: In function 'gvir_domain_interface_finalize': + ../../libvirt-gobject/libvirt-gobject-domain-interface.c:54:26: error: unused variable 'self' [-Werror=unused-variable] + GVirDomainInterface *self = GVIR_DOMAIN_INTERFACE(object); + ^ + cc1: all warnings being treated as errors + Makefile:724: recipe for target 'libvirt_gobject_1_0_la-libvirt-gobject-domain-interface.lo' failed + make[3]: *** [libvirt_gobject_1_0_la-libvirt-gobject-domain-interface.lo] Error 1 + make[3]: *** Waiting for unfinished jobs.... + ../../libvirt-gobject/libvirt-gobject-domain-disk.c: In function 'gvir_domain_disk_finalize': + ../../libvirt-gobject/libvirt-gobject-domain-disk.c:54:21: error: unused variable 'self' [-Werror=unused-variable] + GVirDomainDisk *self = GVIR_DOMAIN_DISK(object); + ^ + cc1: all warnings being treated as errors + Makefile:717: recipe for target 'libvirt_gobject_1_0_la-libvirt-gobject-domain-disk.lo' failed + +2015-12-04 Zeeshan Ali (Khattak) + + gobject,gconfig: Drop redundant debug logging + The g_debug messages in libvirt-gobject creation/destruction were to aid + troubleshooting of object reference leaks. GObject has built-in systemtap + probes that allow the same to be achieved in a more flexible manner, so + the g_debug calls can be removed + +2015-11-26 Zeeshan Ali (Khattak) + + gobject: Port to GTask API + Drop usage of deprecated GSimpleAsyncResult API. + +2015-11-23 Zeeshan Ali (Khattak) + + gobject,gconfig: Drop redundant glib compatibility code + We already require and use glib >= 2.36 so there is no reason to keep + around code to ensure compatibility with glib older than that. + + gobject: Add wrapper virDomainSetTime() + +2015-09-23 Zeeshan Ali (Khattak) + + gobject: Correct docs for gvir_storage_pool_get_info() + The returned GVirStoragePoolInfo pointer is not a GObject so it must not + be unrefed using g_object_unref(). Since gvir_storage_pool_info_free() + is private function, callers must either use g_slice_free() or + g_boxed_free(). + +2015-07-24 Daniel P. Berrange + + configure.ac: update min required versions + Based on the distro target policy we have the following + min versions in various distros + + libvirt glib2 gobject-introspection + RHEL 7.0: 1.1.1 2.36.3 1.36.0 + Fedora 21: 1.2.9 2.42.1 1.42.0 + Ubuntu 14.10: 1.2.8 2.42.0 1.41.0 + Ubuntu LTS 14.04: 1.2.2 2.40.0 1.40.0 + Suse 12.0: 1.2.5 2.38.2 1.38.0 + OpenSUSE 13.1: 1.1.2 2.38.2 1.38.0 + Debian 8: 1.2.9 2.42.0 1.42.0 + + Which means we can reasonably depend on + + libvirt >= 1.1.1 + glib2 >= 2.36.0 + gobject-introspection >= 1.36.0 + + NB, choosen 2.36.0 rather than 2.36.3 because they are + API compatible, the micro digit just indicates a bug + fix release. + + README: formally document intended platform support targets + Give users an indication of what distro platforms the project + intends to be buildable on. This policy will be used to decide + when it is appropriate to increase the minimum required versions + of external dependancies. + + As an example, as of July 1st 2015, this policy would aim to pick the + min versions based on what's available across the following sample + distros: + + - RHEL: 7.0, 7.1 + - Fedora: 21, 22 + - Ubuntu LTS: 14.04 (Trusty) + - Ubuntu: 14.10 (Utopic), 15.04 (Vivid) + - Suse: 12.0 + - OpenSUSE: 13.1, 13.2 + - Debian: 8.0 (Jessie) + +2015-07-22 Christophe Fergeau + + examples: Don't leak mainloop in conn-test.c + The program exits right after this, so it's no big deal, but this gives + us a clean valgrind --leak-check=full output. + + gconfig: Use GVirConfigObject helpers for