openSUSE Commits
Threads by month
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
July 2014
- 1 participants
- 1416 discussions
Hello community,
here is the log from the commit of package evolution-ews for openSUSE:Factory checked in at 2014-07-06 22:52:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/evolution-ews (Old)
and /work/SRC/openSUSE:Factory/.evolution-ews.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "evolution-ews"
Changes:
--------
--- /work/SRC/openSUSE:Factory/evolution-ews/evolution-ews.changes 2014-05-20 14:25:58.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.evolution-ews.new/evolution-ews.changes 2014-07-06 22:52:15.000000000 +0200
@@ -1,0 +2,11 @@
+Wed Jun 18 19:48:46 UTC 2014 - zaitor(a)opensuse.org
+
+- Update to version 3.12.3:
+ + Fix g_ascii_strcasecmp: assertion 's2 != NULL'.
+ + Fix 'Unintialized pointer read'.
+ + Fix 'Uninitialized scalar variable'.
+ + Fix 'Logically dead code'.
+ + Bugs fixed: bgo#728246, bgo#730042, bgo#692780, bgo#730878.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
evolution-ews-3.12.2.tar.xz
New:
----
evolution-ews-3.12.3.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ evolution-ews.spec ++++++
--- /var/tmp/diff_new_pack.jOxQU0/_old 2014-07-06 22:52:16.000000000 +0200
+++ /var/tmp/diff_new_pack.jOxQU0/_new 2014-07-06 22:52:16.000000000 +0200
@@ -19,7 +19,7 @@
Name: evolution-ews
# This should be updated upon major version changes; it should match BASE_VERSION as defined in configure.in.
%define evolution_base_version 3.12
-Version: 3.12.2
+Version: 3.12.3
Release: 0
Summary: Exchange Connector for Evolution, compatible with Exchange 2007 and later
License: LGPL-2.1
++++++ evolution-ews-3.12.2.tar.xz -> evolution-ews-3.12.3.tar.xz ++++++
++++ 7228 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gnome-online-accounts for openSUSE:Factory checked in at 2014-07-06 22:52:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gnome-online-accounts (Old)
and /work/SRC/openSUSE:Factory/.gnome-online-accounts.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gnome-online-accounts"
Changes:
--------
--- /work/SRC/openSUSE:Factory/gnome-online-accounts/gnome-online-accounts.changes 2014-05-20 14:25:35.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.gnome-online-accounts.new/gnome-online-accounts.changes 2014-07-06 22:52:12.000000000 +0200
@@ -1,0 +2,7 @@
+Mon Jun 23 18:13:07 UTC 2014 - zaitor(a)opensuse.org
+
+- Update to version 3.12.3:
+ + Bugs fixed: bgo#699553, bgo#730041, bgo#730810.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
gnome-online-accounts-3.12.2.tar.xz
New:
----
gnome-online-accounts-3.12.3.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gnome-online-accounts.spec ++++++
--- /var/tmp/diff_new_pack.mQ7qFE/_old 2014-07-06 22:52:13.000000000 +0200
+++ /var/tmp/diff_new_pack.mQ7qFE/_new 2014-07-06 22:52:13.000000000 +0200
@@ -17,7 +17,7 @@
Name: gnome-online-accounts
-Version: 3.12.2
+Version: 3.12.3
Release: 0
Summary: GNOME service to access online accounts
License: LGPL-2.0+
++++++ gnome-online-accounts-3.12.2.tar.xz -> gnome-online-accounts-3.12.3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/NEWS new/gnome-online-accounts-3.12.3/NEWS
--- old/gnome-online-accounts-3.12.2/NEWS 2014-05-13 16:19:11.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/NEWS 2014-06-05 13:57:37.000000000 +0200
@@ -1,3 +1,15 @@
+Overview of changes in 3.12.3
+=============================
+
+* Bugs fixed:
+ 699553 ewsclient: Correctly cancel pending messages on success
+ 730041 ewsclient: Autodiscover XML can contain multiple Protocol elements
+ 730810 flickr: Use SSL
+
+* Updated translations:
+ Norwegian bokmål
+
+
Overview of changes in 3.12.2
=============================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/configure new/gnome-online-accounts-3.12.3/configure
--- old/gnome-online-accounts-3.12.2/configure 2014-05-13 16:22:09.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/configure 2014-06-05 14:01:38.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GNOME Online Accounts 3.12.2.
+# Generated by GNU Autoconf 2.69 for GNOME Online Accounts 3.12.3.
#
# Report bugs to <https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-online-accounts>.
#
@@ -591,8 +591,8 @@
# Identity of this package.
PACKAGE_NAME='GNOME Online Accounts'
PACKAGE_TARNAME='gnome-online-accounts'
-PACKAGE_VERSION='3.12.2'
-PACKAGE_STRING='GNOME Online Accounts 3.12.2'
+PACKAGE_VERSION='3.12.3'
+PACKAGE_STRING='GNOME Online Accounts 3.12.3'
PACKAGE_BUGREPORT='https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-online-accounts'
PACKAGE_URL=''
@@ -1492,7 +1492,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures GNOME Online Accounts 3.12.2 to adapt to many kinds of systems.
+\`configure' configures GNOME Online Accounts 3.12.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1563,7 +1563,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of GNOME Online Accounts 3.12.2:";;
+ short | recursive ) echo "Configuration of GNOME Online Accounts 3.12.3:";;
esac
cat <<\_ACEOF
@@ -1751,7 +1751,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-GNOME Online Accounts configure 3.12.2
+GNOME Online Accounts configure 3.12.3
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2120,7 +2120,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by GNOME Online Accounts $as_me 3.12.2, which was
+It was created by GNOME Online Accounts $as_me 3.12.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2985,7 +2985,7 @@
# Define the identity of the package.
PACKAGE='gnome-online-accounts'
- VERSION='3.12.2'
+ VERSION='3.12.3'
cat >>confdefs.h <<_ACEOF
@@ -11852,7 +11852,7 @@
GOA_MAJOR_VERSION=3
GOA_MINOR_VERSION=12
-GOA_MICRO_VERSION=2
+GOA_MICRO_VERSION=3
@@ -11877,7 +11877,7 @@
$as_echo "#define GOA_MINOR_VERSION 12" >>confdefs.h
-$as_echo "#define GOA_MICRO_VERSION 2" >>confdefs.h
+$as_echo "#define GOA_MICRO_VERSION 3" >>confdefs.h
# Initialization
@@ -16202,7 +16202,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by GNOME Online Accounts $as_me 3.12.2, which was
+This file was extended by GNOME Online Accounts $as_me 3.12.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -16268,7 +16268,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-GNOME Online Accounts config.status 3.12.2
+GNOME Online Accounts config.status 3.12.3
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/configure.ac new/gnome-online-accounts-3.12.3/configure.ac
--- old/gnome-online-accounts-3.12.2/configure.ac 2014-05-13 15:49:08.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/configure.ac 2014-06-05 13:57:51.000000000 +0200
@@ -1,6 +1,6 @@
m4_define([goa_major_version], [3])
m4_define([goa_minor_version], [12])
-m4_define([goa_micro_version], [2])
+m4_define([goa_micro_version], [3])
m4_define([goa_nano_version], [0])
m4_define([goa_base_version],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/doc/Makefile.in new/gnome-online-accounts-3.12.3/doc/Makefile.in
--- old/gnome-online-accounts-3.12.2/doc/Makefile.in 2014-05-13 16:22:10.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/doc/Makefile.in 2014-06-05 14:01:39.000000000 +0200
@@ -864,11 +864,11 @@
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-@ENABLE_GTK_DOC_FALSE@uninstall-local:
-@ENABLE_GTK_DOC_FALSE@maintainer-clean-local:
-@ENABLE_GTK_DOC_FALSE@clean-local:
@ENABLE_GTK_DOC_FALSE@install-data-local:
@ENABLE_GTK_DOC_FALSE@distclean-local:
+@ENABLE_GTK_DOC_FALSE@uninstall-local:
+@ENABLE_GTK_DOC_FALSE@clean-local:
+@ENABLE_GTK_DOC_FALSE@maintainer-clean-local:
clean: clean-recursive
clean-am: clean-generic clean-libtool clean-local mostlyclean-am
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/doc/html/goa-Version-Information.html new/gnome-online-accounts-3.12.3/doc/html/goa-Version-Information.html
--- old/gnome-online-accounts-3.12.2/doc/html/goa-Version-Information.html 2014-05-13 16:25:31.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/doc/html/goa-Version-Information.html 2014-06-05 14:03:40.000000000 +0200
@@ -275,7 +275,7 @@
<hr>
<div class="refsect2">
<a name="GOA-MICRO-VERSION:CAPS"></a><h3>GOA_MICRO_VERSION</h3>
-<pre class="programlisting">#define GOA_MICRO_VERSION 2
+<pre class="programlisting">#define GOA_MICRO_VERSION 3
</pre>
<p>The micro version number of the GOA daemon and library.</p>
<p>Like <a class="link" href="goa-Version-Information.html#goa-micro-version" title="goa_micro_version"><span class="type">goa_micro_version</span></a>, but from the headers used at
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/doc/html/index.html new/gnome-online-accounts-3.12.3/doc/html/index.html
--- old/gnome-online-accounts-3.12.2/doc/html/index.html 2014-05-13 16:25:31.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/doc/html/index.html 2014-06-05 14:03:40.000000000 +0200
@@ -32,7 +32,7 @@
</p></div></div>
</div>
</div></div>
-<div><p class="releaseinfo">Version 3.12.2
+<div><p class="releaseinfo">Version 3.12.3
</p></div>
<div><p class="copyright">Copyright © 2011, 2012 The GOA Authors</p></div>
<div><div class="legalnotice">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/po/nb.po new/gnome-online-accounts-3.12.3/po/nb.po
--- old/gnome-online-accounts-3.12.2/po/nb.po 2014-05-13 15:48:12.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/po/nb.po 2014-06-05 13:55:00.000000000 +0200
@@ -5,10 +5,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: gnome-online-accounts 3.11.x\n"
+"Project-Id-Version: gnome-online-accounts 3.12.x\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-03-18 18:27+0100\n"
-"PO-Revision-Date: 2014-03-18 18:28+0100\n"
+"POT-Creation-Date: 2014-06-03 18:54+0200\n"
+"PO-Revision-Date: 2014-06-03 18:56+0200\n"
"Last-Translator: Kjartan Maraas <kmaraas(a)gnome.org>\n"
"Language-Team: Norwegian bokmål <i18n-nb(a)lister.ping.uio.no>\n"
"Language: \n"
@@ -28,27 +28,27 @@
msgstr "Egenskap ProviderType er ikke satt for kontoen"
#. TODO: more specific
-#: ../src/goabackend/goaewsclient.c:231 ../src/goabackend/goahttpclient.c:172
+#: ../src/goabackend/goaewsclient.c:230 ../src/goabackend/goahttpclient.c:172
#, c-format
msgid "Code: %u — Unexpected response from server"
msgstr "Kode: %u - Uventet svar fra tjener"
#. TODO: more specific
-#: ../src/goabackend/goaewsclient.c:247
+#: ../src/goabackend/goaewsclient.c:246
#, c-format
msgid "Failed to parse autodiscover response XML"
msgstr "Klarte ikke å lese XML-svar for automatisk gjenkjenning"
#. TODO: more specific
#. Translators: the parameter is an XML element name.
-#: ../src/goabackend/goaewsclient.c:258 ../src/goabackend/goaewsclient.c:273
-#: ../src/goabackend/goaewsclient.c:288
+#: ../src/goabackend/goaewsclient.c:257 ../src/goabackend/goaewsclient.c:272
+#: ../src/goabackend/goaewsclient.c:287
#, c-format
msgid "Failed to find ‘%s’ element"
msgstr "Klarte ikke å finne element «%s»"
#. TODO: more specific
-#: ../src/goabackend/goaewsclient.c:305
+#: ../src/goabackend/goaewsclient.c:308
#, c-format
msgid "Failed to find ASUrl and OABUrl in autodiscover response"
msgstr "Klarte ikke å finne ASUrl og OABUrl i svar for automatisk gjenkjenning"
@@ -185,20 +185,20 @@
#. Translators: This is a label for a series of
#. * options switches. For example: “Use for Mail”.
#: ../src/goabackend/goaexchangeprovider.c:943
-#: ../src/goabackend/goafacebookprovider.c:433
+#: ../src/goabackend/goafacebookprovider.c:434
#: ../src/goabackend/goaflickrprovider.c:424
#: ../src/goabackend/goagoogleprovider.c:563
#: ../src/goabackend/goakerberosprovider.c:1727
#: ../src/goabackend/goaowncloudprovider.c:1101
#: ../src/goabackend/goapocketprovider.c:425
#: ../src/goabackend/goatelepathyprovider.c:915
-#: ../src/goabackend/goawindowsliveprovider.c:453
+#: ../src/goabackend/goawindowsliveprovider.c:427
msgid "Use for"
msgstr "Bruk for"
#: ../src/goabackend/goaexchangeprovider.c:945
#: ../src/goabackend/goagoogleprovider.c:565
-#: ../src/goabackend/goawindowsliveprovider.c:455
+#: ../src/goabackend/goawindowsliveprovider.c:429
msgid "_Mail"
msgstr "E-_post"
@@ -219,19 +219,21 @@
msgstr "Facebook"
#. Translators: the %d is a HTTP status code and the %s is a textual description of it
-#: ../src/goabackend/goafacebookprovider.c:215
+#: ../src/goabackend/goafacebookprovider.c:216
#: ../src/goabackend/goaflickrprovider.c:186
#: ../src/goabackend/goagoogleprovider.c:214
-#: ../src/goabackend/goawindowsliveprovider.c:194
+#: ../src/goabackend/goawindowsliveprovider.c:192
#: ../src/goabackend/goayahooprovider.c:184
#, c-format
msgid ""
"Expected status 200 when requesting your identity, instead got status %d (%s)"
-msgstr "Forventet status 200 ved forespørsel om din identitet, men fikk status %d (%s)"
+msgstr ""
+"Forventet status 200 ved forespørsel om din identitet, men fikk status %d "
+"(%s)"
-#: ../src/goabackend/goafacebookprovider.c:234
-#: ../src/goabackend/goafacebookprovider.c:246
-#: ../src/goabackend/goafacebookprovider.c:256
+#: ../src/goabackend/goafacebookprovider.c:235
+#: ../src/goabackend/goafacebookprovider.c:247
+#: ../src/goabackend/goafacebookprovider.c:257
#: ../src/goabackend/goaflickrprovider.c:205
#: ../src/goabackend/goaflickrprovider.c:217
#: ../src/goabackend/goaflickrprovider.c:227
@@ -242,9 +244,9 @@
#: ../src/goabackend/goaoauth2provider.c:728
#: ../src/goabackend/goaoauth2provider.c:758
#: ../src/goabackend/goaoauth2provider.c:770
-#: ../src/goabackend/goawindowsliveprovider.c:213
-#: ../src/goabackend/goawindowsliveprovider.c:225
-#: ../src/goabackend/goawindowsliveprovider.c:237
+#: ../src/goabackend/goawindowsliveprovider.c:211
+#: ../src/goabackend/goawindowsliveprovider.c:223
+#: ../src/goabackend/goawindowsliveprovider.c:235
#: ../src/goabackend/goayahooprovider.c:203
#: ../src/goabackend/goayahooprovider.c:215
#: ../src/goabackend/goayahooprovider.c:226
@@ -255,14 +257,13 @@
msgid "Could not parse response"
msgstr "Kunne ikke å lese svar"
-#: ../src/goabackend/goafacebookprovider.c:435
+#: ../src/goabackend/goafacebookprovider.c:436
#: ../src/goabackend/goagoogleprovider.c:580
#: ../src/goabackend/goatelepathyprovider.c:917
-#: ../src/goabackend/goawindowsliveprovider.c:460
msgid "C_hat"
msgstr "_Prat"
-#: ../src/goabackend/goafacebookprovider.c:440
+#: ../src/goabackend/goafacebookprovider.c:441
#: ../src/goabackend/goaflickrprovider.c:426
msgid "_Photos"
msgstr "_Bilder"
@@ -283,7 +284,7 @@
#: ../src/goabackend/goagoogleprovider.c:585
#: ../src/goabackend/goaowncloudprovider.c:1113
-#: ../src/goabackend/goawindowsliveprovider.c:465
+#: ../src/goabackend/goawindowsliveprovider.c:434
msgid "_Documents"
msgstr "_Dokumenter"
@@ -440,7 +441,7 @@
msgstr "Bedriftsdomene eller områdenavn"
#: ../src/goabackend/goakerberosprovider.c:1353
-#: ../src/goaidentity/goaidentityservice.c:1112
+#: ../src/goaidentity/goaidentityservice.c:1109
msgid "Log In to Realm"
msgstr "Logg inn i område"
@@ -471,7 +472,7 @@
#, c-format
msgid ""
"Expected status 200 when requesting access token, instead got status %d (%s)"
-msgstr ""
+msgstr "Forventet status 200 ved forespørsel om aksesstegn. Fikk i stedet status %d (%s)"
#: ../src/goabackend/goaoauth2provider.c:961
msgid "Authorization response: "
@@ -538,7 +539,7 @@
#, c-format
msgid ""
"Expected status 200 for getting a Request Token, instead got status %d (%s)"
-msgstr ""
+msgstr "Forventet status 200 for å få et forespørselstegn. Fikk i stedet status %d (%s)"
#: ../src/goabackend/goaoauthprovider.c:961
#, c-format
@@ -549,7 +550,7 @@
#: ../src/goabackend/goaoauthprovider.c:978
#, c-format
msgid "Paste token obtained from the <a href=\"%s\">authorization page</a>:"
-msgstr ""
+msgstr "Lim inn tegn kode hentet fra <a href=\"%s\">autorisasjonssiden</a>:"
#: ../src/goabackend/goaoauthprovider.c:1575
#, c-format
@@ -763,80 +764,80 @@
msgid "Expected status 200 when requesting name, instead got status %d (%s)"
msgstr "Forventet status 200 ved forespørsel om navn, men fikk status %d (%s)"
-#: ../src/goaidentity/goaalarm.c:212
+#: ../src/goaidentity/goaalarm.c:173
msgid "Time"
msgstr "Tid"
-#: ../src/goaidentity/goaalarm.c:213
+#: ../src/goaidentity/goaalarm.c:174
msgid "Time to fire"
msgstr "Tid før start"
-#: ../src/goaidentity/goaidentityservice.c:376
+#: ../src/goaidentity/goaidentityservice.c:373
msgid "initial secret passed before secret key exchange"
msgstr "Opprinnelig hemmelighet videresendt før utveksling av hemmelig nøkkel"
-#: ../src/goaidentity/goaidentityservice.c:568
+#: ../src/goaidentity/goaidentityservice.c:565
msgid "Initial secret key is invalid"
msgstr "Opprinnelig hemmelig nøkkel er ugyldig"
-#: ../src/goaidentity/goaidentityservice.c:1117
+#: ../src/goaidentity/goaidentityservice.c:1114
#, c-format
msgid "The network realm %s needs some information to sign you in."
msgstr "Nettverksområde %s trenger informasjon for å logge deg inn."
-#: ../src/goaidentity/goakerberosidentity.c:261
-#: ../src/goaidentity/goakerberosidentity.c:270
-#: ../src/goaidentity/goakerberosidentity.c:598
+#: ../src/goaidentity/goakerberosidentity.c:254
+#: ../src/goaidentity/goakerberosidentity.c:263
+#: ../src/goaidentity/goakerberosidentity.c:590
msgid "Could not find identity in credential cache: %k"
msgstr "Fant ikke identiteten i buffer for påloggingsinformasjon: %k"
-#: ../src/goaidentity/goakerberosidentity.c:611
+#: ../src/goaidentity/goakerberosidentity.c:603
msgid "Could not find identity credentials in cache: %k"
msgstr "Fant ikke påloggingsinformasjon for identiteten i buffer: %k"
-#: ../src/goaidentity/goakerberosidentity.c:651
+#: ../src/goaidentity/goakerberosidentity.c:643
msgid "Could not sift through identity credentials in cache: %k"
msgstr ""
"Kunne ikke se se gjennom påloggingsinformasjon for identitet i buffer: %k"
-#: ../src/goaidentity/goakerberosidentity.c:669
+#: ../src/goaidentity/goakerberosidentity.c:661
msgid "Could not finish up sifting through identity credentials in cache: %k"
msgstr ""
"Kunne ikke sluttføre gjennomgang av påloggingsinformasjon for identitet i "
"buffer: %k"
-#: ../src/goaidentity/goakerberosidentity.c:956
+#: ../src/goaidentity/goakerberosidentity.c:951
#, c-format
msgid "No associated identification found"
msgstr "Ingen assosiert identifikasjon funnet"
-#: ../src/goaidentity/goakerberosidentity.c:1037
+#: ../src/goaidentity/goakerberosidentity.c:1032
msgid "Could not create credential cache: %k"
msgstr "Kunne ikke lage buffer for påloggingsinformasjon: %k"
-#: ../src/goaidentity/goakerberosidentity.c:1071
+#: ../src/goaidentity/goakerberosidentity.c:1066
msgid "Could not initialize credentials cache: %k"
msgstr "Kunne ikke initiere buffer for påloggingsinformasjon: %k"
-#: ../src/goaidentity/goakerberosidentity.c:1088
+#: ../src/goaidentity/goakerberosidentity.c:1083
msgid "Could not store new credentials in credentials cache: %k"
msgstr "Klarte ikke å lagre ny påloggingsinformasjon i buffer: %k"
-#: ../src/goaidentity/goakerberosidentity.c:1363
+#: ../src/goaidentity/goakerberosidentity.c:1358
#, c-format
msgid "Could not renew identity: Not signed in"
msgstr "Kunne ikke fornye identitet: Ikke logget inn"
-#: ../src/goaidentity/goakerberosidentity.c:1375
+#: ../src/goaidentity/goakerberosidentity.c:1370
msgid "Could not renew identity: %k"
msgstr "Kunne ikke fornye identitet: %k"
-#: ../src/goaidentity/goakerberosidentity.c:1392
+#: ../src/goaidentity/goakerberosidentity.c:1387
msgid "Could not get new credentials to renew identity %s: %k"
msgstr ""
"Kunne ikke hente ny påloggingsinformasjon for å fornye identitet %s: %k"
-#: ../src/goaidentity/goakerberosidentity.c:1434
+#: ../src/goaidentity/goakerberosidentity.c:1429
msgid "Could not erase identity: %k"
msgstr "Kunne ikke slette identitet: %k"
@@ -844,6 +845,6 @@
msgid "Could not find identity"
msgstr "Fant ikke identitet"
-#: ../src/goaidentity/goakerberosidentitymanager.c:843
+#: ../src/goaidentity/goakerberosidentitymanager.c:838
msgid "Could not create credential cache for identity"
msgstr "Kunne ikke lage buffer for påloggingsinformasjon for identitet"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/src/goabackend/goaewsclient.c new/gnome-online-accounts-3.12.3/src/goabackend/goaewsclient.c
--- old/gnome-online-accounts-3.12.2/src/goabackend/goaewsclient.c 2014-05-13 15:48:12.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/src/goabackend/goaewsclient.c 2014-06-05 13:54:43.000000000 +0200
@@ -77,6 +77,7 @@
SoupMessage *msgs[2];
SoupSession *session;
gboolean accept_ssl_errors;
+ guint pending;
gulong cancellable_id;
xmlOutputBuffer *buf;
} AutodiscoverData;
@@ -200,10 +201,6 @@
xmlDoc *doc;
xmlNode *node;
- status = msg->status_code;
- if (status == SOUP_STATUS_NONE)
- return;
-
error = NULL;
op_res = FALSE;
size = sizeof (data->msgs) / sizeof (data->msgs[0]);
@@ -213,13 +210,15 @@
if (data->msgs[idx] == msg)
break;
}
- if (idx == size)
+ if (idx == size || data->pending == 0)
return;
data->msgs[idx] = NULL;
+ status = msg->status_code;
/* status == SOUP_STATUS_CANCELLED, if we are being aborted by the
- * GCancellable or due to an SSL error.
+ * GCancellable, an SSL error or another message that was
+ * successful.
*/
if (status == SOUP_STATUS_CANCELLED)
goto out;
@@ -294,7 +293,11 @@
if (ews_client_check_node (node, "Protocol"))
{
op_res = ews_client_autodiscover_parse_protocol (node);
- break;
+ /* Since the server may send back multiple <Protocol> nodes
+ * don't break unless we found the one we want.
+ */
+ if (op_res)
+ break;
}
}
if (!op_res)
@@ -314,35 +317,33 @@
* message, the callback (ie. this function) will be invoked before
* soup_session_cancel_message returns.
*/
- soup_session_cancel_message (data->session, data->msgs[idx], SOUP_STATUS_NONE);
- data->msgs[idx] = NULL;
+ soup_session_cancel_message (data->session, data->msgs[idx], SOUP_STATUS_CANCELLED);
}
}
out:
- /* error == NULL, if we are being aborted by the GCancellable or
- * due to an SSL error.
+ /* error == NULL, if we are being aborted by the GCancellable, an
+ * SSL error or another message that was successful.
*/
if (!op_res)
{
- for (idx = 0; idx < size; idx++)
- {
- if (data->msgs[idx] != NULL)
- {
- /* There's another request outstanding.
- * Hope that it has better luck.
- */
- g_clear_error (&error);
- return;
- }
- }
+ /* There's another request outstanding.
+ * Hope that it has better luck.
+ */
+ if (data->pending > 1)
+ g_clear_error (&error);
+
if (error != NULL)
g_simple_async_result_take_error (data->res, error);
}
- g_simple_async_result_set_op_res_gboolean (data->res, op_res);
- g_simple_async_result_complete_in_idle (data->res);
- g_idle_add (ews_client_autodiscover_data_free, data);
+ data->pending--;
+ if (data->pending == 0)
+ {
+ g_simple_async_result_set_op_res_gboolean (data->res, op_res);
+ g_simple_async_result_complete_in_idle (data->res);
+ g_idle_add (ews_client_autodiscover_data_free, data);
+ }
}
static xmlDoc *
@@ -469,6 +470,7 @@
data->res = g_simple_async_result_new (G_OBJECT (client), callback, user_data, goa_ews_client_autodiscover);
data->msgs[0] = ews_client_create_msg_for_url (url1, buf);
data->msgs[1] = ews_client_create_msg_for_url (url2, buf);
+ data->pending = sizeof (data->msgs) / sizeof (data->msgs[0]);
data->session = soup_session_async_new_with_options (SOUP_SESSION_SSL_USE_SYSTEM_CA_FILE, TRUE,
SOUP_SESSION_SSL_STRICT, FALSE,
SOUP_SESSION_USE_NTLM, TRUE,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/src/goabackend/goaflickrprovider.c new/gnome-online-accounts-3.12.3/src/goabackend/goaflickrprovider.c
--- old/gnome-online-accounts-3.12.2/src/goabackend/goaflickrprovider.c 2014-05-13 15:48:12.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/src/goabackend/goaflickrprovider.c 2014-06-05 13:54:44.000000000 +0200
@@ -107,19 +107,19 @@
static const gchar *
get_request_uri (GoaOAuthProvider *provider)
{
- return "http://m.flickr.com/services/oauth/request_token";
+ return "https://m.flickr.com/services/oauth/request_token";
}
static const gchar *
get_authorization_uri (GoaOAuthProvider *provider)
{
- return "http://m.flickr.com/services/oauth/authorize";
+ return "https://m.flickr.com/services/oauth/authorize";
}
static const gchar *
get_token_uri (GoaOAuthProvider *provider)
{
- return "http://m.flickr.com/services/oauth/access_token";
+ return "https://m.flickr.com/services/oauth/access_token";
}
static const gchar *
@@ -168,7 +168,7 @@
goa_oauth_provider_get_consumer_secret (provider),
access_token,
access_token_secret,
- "http://api.flickr.com/services/rest",
+ "https://api.flickr.com/services/rest",
FALSE);
call = rest_proxy_new_call (proxy);
rest_proxy_call_add_param (call, "method", "flickr.test.login");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-online-accounts-3.12.2/telepathy-account-widgets/Makefile.in new/gnome-online-accounts-3.12.3/telepathy-account-widgets/Makefile.in
--- old/gnome-online-accounts-3.12.2/telepathy-account-widgets/Makefile.in 2014-05-13 16:22:01.000000000 +0200
+++ new/gnome-online-accounts-3.12.3/telepathy-account-widgets/Makefile.in 2014-06-05 14:01:31.000000000 +0200
@@ -83,7 +83,7 @@
$(top_srcdir)/configure $(am__configure_deps) \
$(srcdir)/config.h.in \
$(srcdir)/telepathy-account-widgets-uninstalled.pc.in COPYING \
- config.guess config.sub depcomp install-sh missing ltmain.sh
+ config.guess config.sub install-sh missing ltmain.sh
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/as-compiler-flag.m4 \
$(top_srcdir)/m4/gsettings.m4 $(top_srcdir)/m4/intltool.m4 \
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package webkitgtk for openSUSE:Factory checked in at 2014-07-04 19:28:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/webkitgtk (Old)
and /work/SRC/openSUSE:Factory/.webkitgtk.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "webkitgtk"
Changes:
--------
--- /work/SRC/openSUSE:Factory/webkitgtk/webkitgtk.changes 2014-06-17 11:22:41.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.webkitgtk.new/webkitgtk.changes 2014-07-04 19:28:44.000000000 +0200
@@ -1,0 +2,14 @@
+Tue Jul 1 11:48:00 UTC 2014 - dimstar(a)opensuse.org
+
+- Update to version 2.4.3:
+ + Fix video playback rate used when resuming in GStreamer media
+ backend.
+ + Use GstMetaVideo as announced by WebKitVideoSink to fix some
+ decoders and filters that rely on buffer's meta rather that in
+ the caps structures.
+ + Do not pass a valid pointer as redirected-response parameter to
+ WebKitWebPage::send-request signal when not redirecting.
+ + Add missing files to the build required for building on
+ Windows.
+
+-------------------------------------------------------------------
webkitgtk3.changes: same change
Old:
----
webkitgtk-2.4.2.tar.xz
New:
----
webkitgtk-2.4.3.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ webkitgtk.spec ++++++
--- /var/tmp/diff_new_pack.IjYH5N/_old 2014-07-04 19:28:46.000000000 +0200
+++ /var/tmp/diff_new_pack.IjYH5N/_new 2014-07-04 19:28:46.000000000 +0200
@@ -47,7 +47,7 @@
Summary: Library for rendering web content, GTK+ Port
License: LGPL-2.0+ and BSD-3-Clause
Group: Development/Libraries/C and C++
-Version: 2.4.2
+Version: 2.4.3
Release: 0
# FIXME: at some point, figure out a way to remove the hack where we use -g0 to have successful builds
# FIXME: get upstream to fix the conflict on gtk-doc docs between gtk2 and gtk3 versions
webkitgtk3.spec: same change
++++++ webkitgtk-2.4.2.tar.xz -> webkitgtk-2.4.3.tar.xz ++++++
/work/SRC/openSUSE:Factory/webkitgtk/webkitgtk-2.4.2.tar.xz /work/SRC/openSUSE:Factory/.webkitgtk.new/webkitgtk-2.4.3.tar.xz differ: char 27, line 1
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package armadillo for openSUSE:Factory checked in at 2014-07-04 17:18:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/armadillo (Old)
and /work/SRC/openSUSE:Factory/.armadillo.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "armadillo"
Changes:
--------
--- /work/SRC/openSUSE:Factory/armadillo/armadillo.changes 2014-06-04 18:40:05.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.armadillo.new/armadillo.changes 2014-07-04 17:18:53.000000000 +0200
@@ -1,0 +2,11 @@
+Wed Jul 2 20:17:08 UTC 2014 - badshah400(a)gmail.com
+
+- Update to Version 4.320 (Daintree Tea Raider)
+ + Expanded eigs_sym() and eigs_gen() to use an optional
+ tolerance parameter
+ + Expanded eig_sym() to automatically fall back to standard
+ decomposition method if divide-and-conquer fails
+ + Automatic installer enables use of C++11 random number
+ generator when using gcc 4.8.3+ in C++11 mode.
+
+-------------------------------------------------------------------
Old:
----
armadillo-4.300.8.tar.gz
New:
----
armadillo-4.320.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ armadillo.spec ++++++
--- /var/tmp/diff_new_pack.OwuiZY/_old 2014-07-04 17:18:54.000000000 +0200
+++ /var/tmp/diff_new_pack.OwuiZY/_new 2014-07-04 17:18:54.000000000 +0200
@@ -19,7 +19,7 @@
%define soname libarmadillo4
Name: armadillo
-Version: 4.300.8
+Version: 4.320.0
Release: 0
Summary: Fast C++ matrix library with interfaces to LAPACK and ATLAS
License: MPL-2.0
++++++ armadillo-4.300.8.tar.gz -> armadillo-4.320.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/CMakeLists.txt new/armadillo-4.320.0/CMakeLists.txt
--- old/armadillo-4.300.8/CMakeLists.txt 2014-06-01 04:44:40.000000000 +0200
+++ new/armadillo-4.320.0/CMakeLists.txt 2014-07-02 09:00:14.000000000 +0200
@@ -13,10 +13,11 @@
cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
set(ARMA_MAJOR 4)
-set(ARMA_MINOR 300)
-set(ARMA_PATCH 8)
+set(ARMA_MINOR 320)
+set(ARMA_PATCH 0)
+set(ARMADILLO_VERSION ${ARMA_MAJOR}.${ARMA_MINOR}.${ARMA_PATCH})
-message(STATUS "Configuring Armadillo ${ARMA_MAJOR}.${ARMA_MINOR}.${ARMA_PATCH}")
+message(STATUS "Configuring Armadillo ${ARMADILLO_VERSION}")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/build_aux/cmake/Modules/")
@@ -34,6 +35,7 @@
set(ARMA_USE_ARPACK false)
set(ARMA_USE_CXX11_RNG false)
set(ARMA_USE_WRAPPER true )
+option(BUILD_SHARED_LIBS "build shared library" ON)
## NOTE:
## Set ARMA_USE_WRAPPER to false if you're getting linking errors when compiling your programs,
@@ -248,10 +250,10 @@
if(DEFINED CMAKE_CXX_COMPILER_ID AND DEFINED CMAKE_CXX_COMPILER_VERSION)
- if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT ${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS 4.9)
+ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT ${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS 4.8.3)
set(ARMA_USE_CXX11_RNG true)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
- message(STATUS "Detected gcc 4.9 or later. Added '-std=c++11' to compiler flags")
+ message(STATUS "Detected gcc 4.8.3 or later. Added '-std=c++11' to compiler flags")
endif()
endif()
@@ -309,7 +311,7 @@
message(STATUS "CMAKE_SHARED_LINKER_FLAGS = ${CMAKE_SHARED_LINKER_FLAGS}")
message(STATUS "CMAKE_REQUIRED_INCLUDES = ${CMAKE_REQUIRED_INCLUDES}" )
-add_library( armadillo SHARED ${PROJECT_SOURCE_DIR}/src/wrapper.cpp )
+add_library( armadillo ${PROJECT_SOURCE_DIR}/src/wrapper.cpp )
target_link_libraries( armadillo ${ARMA_LIBS} )
set_target_properties(armadillo PROPERTIES VERSION ${ARMA_MAJOR}.${ARMA_MINOR_ALT}.${ARMA_PATCH} SOVERSION ${ARMA_MAJOR})
@@ -360,8 +362,13 @@
set(INSTALL_DATA_DIR "share")
endif()
+# executables destination
+if(NOT INSTALL_BIN_DIR)
+ set(INSTALL_BIN_DIR "bin")
+endif()
+
# Make relative paths absolute so we can write them in Config.cmake files
-foreach(p LIB INCLUDE DATA)
+foreach(p LIB INCLUDE DATA BIN)
set(var INSTALL_${p}_DIR)
if(NOT IS_ABSOLUTE "${${var}}")
set(${var} "${CMAKE_INSTALL_PREFIX}/${${var}}")
@@ -372,6 +379,7 @@
message(STATUS "INSTALL_LIB_DIR = ${INSTALL_LIB_DIR}" )
message(STATUS "INSTALL_INCLUDE_DIR = ${INSTALL_INCLUDE_DIR}" )
message(STATUS "INSTALL_DATA_DIR = ${INSTALL_DATA_DIR}" )
+message(STATUS "INSTALL_BIN_DIR = ${INSTALL_BIN_DIR}" )
# Note that the trailing / character in "include/" is critical
@@ -383,10 +391,11 @@
PATTERN "*orig" EXCLUDE
)
-install(TARGETS armadillo
- DESTINATION ${INSTALL_LIB_DIR}
- EXPORT ArmadilloLibraryDepends)
-
+install(TARGETS armadillo EXPORT ArmadilloLibraryDepends
+ ARCHIVE DESTINATION ${INSTALL_LIB_DIR}
+ LIBRARY DESTINATION ${INSTALL_LIB_DIR}
+ RUNTIME DESTINATION ${INSTALL_BIN_DIR})
+
# Export the package for use from the build-tree
# (this registers the build-tree with a global CMake-registry)
export(PACKAGE armadillo)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/README.txt new/armadillo-4.320.0/README.txt
--- old/armadillo-4.300.8/README.txt 2014-05-11 15:10:28.000000000 +0200
+++ new/armadillo-4.320.0/README.txt 2014-07-01 04:38:08.000000000 +0200
@@ -25,7 +25,7 @@
6: Documentation / API Reference Manual
- 7: MEX Interface to Octave & Matlab
+ 7: MEX Interface to Octave
8: Bug Reports and Frequently Asked Questions
@@ -407,10 +407,10 @@
-=== 7: MEX Interface to Octave & Matlab ===
+=== 7: MEX Interface to Octave ===
The "mex_interface" folder contains examples of how to interface
-Octave and Matlab with C++ code that uses Armadillo matrices.
+Octave with C++ code that uses Armadillo matrices.
@@ -451,6 +451,7 @@
Contributors:
- Matthew Amidon
- Eric R. Anderson
+- Kipton Barros
- Benoît Bayol
- Salim Bcoin
- Justin Bedo
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/build_aux/rpm/armadillo.spec new/armadillo-4.320.0/build_aux/rpm/armadillo.spec
--- old/armadillo-4.300.8/build_aux/rpm/armadillo.spec 2014-04-29 07:23:58.000000000 +0200
+++ new/armadillo-4.320.0/build_aux/rpm/armadillo.spec 2014-07-02 09:04:49.000000000 +0200
@@ -1,5 +1,5 @@
Name: armadillo
-Version: 4.300.0
+Version: 4.320.0
Release: 1%{?dist}
Summary: Fast C++ matrix library with interfaces to LAPACK and ATLAS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/docs.html new/armadillo-4.320.0/docs.html
--- old/armadillo-4.300.8/docs.html 2014-05-19 08:33:48.000000000 +0200
+++ new/armadillo-4.320.0/docs.html 2014-07-02 09:00:14.000000000 +0200
@@ -114,7 +114,7 @@
<tbody>
<tr>
<td style="text-align: left; vertical-align: top;">
- <font size=+2><b>Reference for Armadillo 4.300</b></font>
+ <font size=+2><b>Reference for Armadillo 4.320</b></font>
<br>
</td>
<td style="text-align: right; vertical-align: top;">
@@ -1642,7 +1642,7 @@
Batch insertion constructors:
<ul>
<li>form 1: sp_mat(<i>locations</i>, <i>values</i>, <i>sort_locations = true</i>)</li>
-<li>form 2: sp_mat(<i>locations</i>, <i>values</i>, <i>n_rows</i>, <i>n_cols</i>, <i>sort_locations = true</i>)</li>
+<li>form 2: sp_mat(<i>locations</i>, <i>values</i>, <i>n_rows</i>, <i>n_cols</i>, <i>sort_locations = true</i>, <i>check_for_zeros = true</i>)</li>
<li>form 3: sp_mat(<i>rowind</i>, <i>colptr</i>, <i>values</i>, <i>n_rows</i>, <i>n_cols</i>)</li>
<br>
<ul>
@@ -1678,6 +1678,10 @@
<li>
If <i>sort_locations</i> is set to <i>false</i>, the <i>locations</i> matrix is assumed to contain locations that are already sorted according to column-major ordering
</li>
+<br>
+<li>
+If <i>check_for_zeros</i> is set to <i>false</i>, the <i>values</i> vector is assumed to contain no zero values
+</li>
</ul>
</ul>
<br>
@@ -9228,12 +9232,15 @@
<a name="eigs_sym"></a>
<b>vec eigval = eigs_sym( X, k )</b>
<br><b>vec eigval = eigs_sym( X, k, form )</b>
+<br><b>vec eigval = eigs_sym( X, k, form, tol )</b>
<br>
<br><b>eigs_sym( eigval, X, k )</b>
<br><b>eigs_sym( eigval, X, k, form )</b>
+<br><b>eigs_sym( eigval, X, k, form, tol )</b>
<br>
<br><b>eigs_sym( eigval, eigvec, X, k )</b>
<br><b>eigs_sym( eigval, eigvec, X, k, form )</b>
+<br><b>eigs_sym( eigval, eigvec, X, k, form, tol )</b>
<ul>
<li>Obtain a limited number of eigenvalues and eigenvectors of <b>sparse</b> symmetric real matrix <i>X</i></li>
<br>
@@ -9252,6 +9259,10 @@
</ul>
</li>
<br>
+<li>
+The argument <i>tol</i> is optional; it specifies the tolerance for convergence
+</li>
+<br>
<li>The eigenvalues and corresponding eigenvectors are stored in <i>eigval</i> and <i>eigvec</i>, respectively</li>
<br>
<li>If <i>X</i> is not square, a <i>std::logic_error</i> exception is thrown</li>
@@ -9296,12 +9307,15 @@
<a name="eigs_gen"></a>
<b>cx_vec eigval = eigs_gen( X, k )</b>
<br><b>cx_vec eigval = eigs_gen( X, k, form )</b>
+<br><b>cx_vec eigval = eigs_gen( X, k, form, tol )</b>
<br>
<br><b>eigs_gen( eigval, X, k )</b>
<br><b>eigs_gen( eigval, X, k, form )</b>
+<br><b>eigs_gen( eigval, X, k, form, tol )</b>
<br>
<br><b>eigs_gen( eigval, eigvec, X, k )</b>
<br><b>eigs_gen( eigval, eigvec, X, k, form )</b>
+<br><b>eigs_gen( eigval, eigvec, X, k, form, tol )</b>
<ul>
<li>
Obtain a limited number of eigenvalues and eigenvectors of <b>sparse</b> general (non-symmetric/non-hermitian) square matrix <i>X</i>
@@ -9327,6 +9341,10 @@
</li>
<br>
<li>
+The argument <i>tol</i> is optional; it specifies the tolerance for convergence
+</li>
+<br>
+<li>
The eigenvalues and corresponding eigenvectors are stored in <i>eigval</i> and <i>eigvec</i>, respectively
</li>
<br>
@@ -12607,12 +12625,20 @@
<br>
<ul>
+<a name="added_in_4320"></a>
+<li>Added in 4.320:
+<ul>
+<li>expanded <a href="#eigs_sym">eigs_sym()</a> and <a href="#eigs_gen">eigs_gen()</a> to use an optional tolerance parameter</li>
+<li>expanded <a href="#eig_sym">eig_sym()</a> to automatically fall back to standard decomposition method if divide-and-conquer fails</li>
+<li>cmake-based installer enables use of C++11 random number generator when using gcc 4.8.3+ in C++11 mode</li>
+</ul>
+</li>
+<br>
<a name="added_in_4300"></a>
<li>Added in 4.300:
<ul>
<li>added <a href="#find_finite">find_finite()</a> and <a href="#find_nonfinite">find_nonfinite()</a></li>
<li>expressions <i>X=<a href="#inv">inv</a>(A)*B*C</i> and <i>X=A<a href="#i_member">.i()</a>*B*C</i> are automatically converted to <i>X=<a href="#solve">solve</a>(A,B*C)</i></li>
-<li>cmake-based installer enables use of C++11 random number generator when using gcc 4.9+ in C++11 mode</li>
</ul>
</li>
<br>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/Gen_bones.hpp new/armadillo-4.320.0/include/armadillo_bits/Gen_bones.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/Gen_bones.hpp 2013-08-01 08:36:28.000000000 +0200
+++ new/armadillo-4.320.0/include/armadillo_bits/Gen_bones.hpp 2014-06-30 09:35:37.000000000 +0200
@@ -1,5 +1,5 @@
-// Copyright (C) 2011-2013 Conrad Sanderson
-// Copyright (C) 2011-2013 NICTA (www.nicta.com.au)
+// Copyright (C) 2011-2014 Conrad Sanderson
+// Copyright (C) 2011-2014 NICTA (www.nicta.com.au)
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -42,6 +42,8 @@
inline void apply_inplace_minus(Mat<elem_type>& out) const;
inline void apply_inplace_schur(Mat<elem_type>& out) const;
inline void apply_inplace_div (Mat<elem_type>& out) const;
+
+ inline void apply(subview<elem_type>& out) const;
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/Gen_meat.hpp new/armadillo-4.320.0/include/armadillo_bits/Gen_meat.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/Gen_meat.hpp 2013-11-29 07:48:03.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/Gen_meat.hpp 2014-06-30 09:35:37.000000000 +0200
@@ -1,5 +1,5 @@
-// Copyright (C) 2011-2013 Conrad Sanderson
-// Copyright (C) 2011-2013 NICTA (www.nicta.com.au)
+// Copyright (C) 2011-2014 Conrad Sanderson
+// Copyright (C) 2011-2014 NICTA (www.nicta.com.au)
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -306,5 +306,24 @@
+template<typename T1, typename gen_type>
+inline
+void
+Gen<T1, gen_type>::apply(subview<typename T1::elem_type>& out) const
+ {
+ arma_extra_debug_sigprint();
+
+ // NOTE: we're assuming that the submatrix has the same dimensions as the Gen object
+ // this is checked by subview::operator=()
+
+ if(is_same_type<gen_type, gen_ones_diag>::yes) { out.eye(); }
+ else if(is_same_type<gen_type, gen_ones_full>::yes) { out.ones(); }
+ else if(is_same_type<gen_type, gen_zeros >::yes) { out.zeros(); }
+ else if(is_same_type<gen_type, gen_randu >::yes) { out.randu(); }
+ else if(is_same_type<gen_type, gen_randn >::yes) { out.randn(); }
+ }
+
+
+
//! @}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/SpMat_bones.hpp new/armadillo-4.320.0/include/armadillo_bits/SpMat_bones.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/SpMat_bones.hpp 2014-02-22 05:03:02.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/SpMat_bones.hpp 2014-06-12 09:53:33.000000000 +0200
@@ -78,7 +78,7 @@
#endif
template<typename T1, typename T2> inline SpMat(const Base<uword,T1>& locations, const Base<eT,T2>& values, const bool sort_locations = true);
- template<typename T1, typename T2> inline SpMat(const Base<uword,T1>& locations, const Base<eT,T2>& values, const uword n_rows, const uword n_cols, const bool sort_locations = true);
+ template<typename T1, typename T2> inline SpMat(const Base<uword,T1>& locations, const Base<eT,T2>& values, const uword n_rows, const uword n_cols, const bool sort_locations = true, const bool check_for_zeros = true);
template<typename T1, typename T2, typename T3> inline SpMat(const Base<uword,T1>& rowind, const Base<uword,T2>& colptr, const Base<eT,T3>& values, const uword n_rows, const uword n_cols);
@@ -518,8 +518,6 @@
inline bool empty() const;
inline uword size() const;
- inline void remove_zeros();
-
/**
* Resize memory. You are responsible for updating the column pointers and
* filling the new memory (if the new size is larger). If the new size is
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/SpMat_iterators_meat.hpp new/armadillo-4.320.0/include/armadillo_bits/SpMat_iterators_meat.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/SpMat_iterators_meat.hpp 2013-02-21 08:16:35.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/SpMat_iterators_meat.hpp 2014-07-02 05:44:32.000000000 +0200
@@ -382,7 +382,7 @@
return;
}
- // We don't count zeroes in our position count, so we have to find the nonzero
+ // We don't count zeros in our position count, so we have to find the nonzero
// value corresponding to the given initial position. We assume initial_pos
// is valid.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/SpMat_meat.hpp new/armadillo-4.320.0/include/armadillo_bits/SpMat_meat.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/SpMat_meat.hpp 2014-02-22 16:07:03.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/SpMat_meat.hpp 2014-07-02 05:44:32.000000000 +0200
@@ -224,15 +224,48 @@
arma_debug_check( (vals.is_vec() == false), "SpMat::SpMat(): given 'values' object is not a vector" );
arma_debug_check( (locs.n_rows != 2), "SpMat::SpMat(): locations matrix must have two rows" );
arma_debug_check( (locs.n_cols != vals.n_elem), "SpMat::SpMat(): number of locations is different than number of values" );
-
+
// If there are no elements in the list, max() will fail.
if(locs.n_cols == 0) { init(0, 0); return; }
- // Automatically determine size
+ // Automatically determine size before pruning zeros.
uvec bounds = arma::max(locs, 1);
init(bounds[0] + 1, bounds[1] + 1);
- init_batch(locs, vals, sort_locations);
+ // Ensure that there are no zeros
+ const uword N_old = vals.n_elem;
+ uword N_new = 0;
+
+ for(uword i = 0; i < N_old; ++i)
+ {
+ if(vals[i] != eT(0)) { ++N_new; }
+ }
+
+ if(N_new != N_old)
+ {
+ Col<eT> filtered_vals(N_new);
+ Mat<uword> filtered_locs(2, N_new);
+
+ uword index = 0;
+ for(uword i = 0; i < N_old; ++i)
+ {
+ if(vals[i] != eT(0))
+ {
+ filtered_vals[index] = vals[i];
+
+ filtered_locs.at(0, index) = locs.at(0, i);
+ filtered_locs.at(1, index) = locs.at(1, i);
+
+ ++index;
+ }
+ }
+
+ init_batch(filtered_locs, filtered_vals, sort_locations);
+ }
+ else
+ {
+ init_batch(locs, vals, sort_locations);
+ }
}
@@ -246,7 +279,7 @@
template<typename eT>
template<typename T1, typename T2>
inline
-SpMat<eT>::SpMat(const Base<uword,T1>& locations_expr, const Base<eT,T2>& vals_expr, const uword in_n_rows, const uword in_n_cols, const bool sort_locations)
+SpMat<eT>::SpMat(const Base<uword,T1>& locations_expr, const Base<eT,T2>& vals_expr, const uword in_n_rows, const uword in_n_cols, const bool sort_locations, const bool check_for_zeros)
: n_rows(0)
, n_cols(0)
, n_elem(0)
@@ -269,8 +302,48 @@
arma_debug_check( (locs.n_cols != vals.n_elem), "SpMat::SpMat(): number of locations is different than number of values" );
init(in_n_rows, in_n_cols);
-
- init_batch(locs, vals, sort_locations);
+
+ // Ensure that there are no zeros, unless the user asked not to.
+ if(check_for_zeros)
+ {
+ const uword N_old = vals.n_elem;
+ uword N_new = 0;
+
+ for(uword i = 0; i < N_old; ++i)
+ {
+ if(vals[i] != eT(0)) { ++N_new; }
+ }
+
+ if(N_new != N_old)
+ {
+ Col<eT> filtered_vals(N_new);
+ Mat<uword> filtered_locs(2, N_new);
+
+ uword index = 0;
+ for(uword i = 0; i < N_old; ++i)
+ {
+ if(vals[i] != eT(0))
+ {
+ filtered_vals[index] = vals[i];
+
+ filtered_locs.at(0, index) = locs.at(0, i);
+ filtered_locs.at(1, index) = locs.at(1, i);
+
+ ++index;
+ }
+ }
+
+ init_batch(filtered_locs, filtered_vals, sort_locations);
+ }
+ else
+ {
+ init_batch(locs, vals, sort_locations);
+ }
+ }
+ else
+ {
+ init_batch(locs, vals, sort_locations);
+ }
}
@@ -4108,68 +4181,6 @@
{
access::rw(col_ptrs[i + 1]) += col_ptrs[i];
}
-
- remove_zeros();
- }
-
-
-
-template<typename eT>
-inline
-void
-SpMat<eT>::remove_zeros()
- {
- arma_extra_debug_sigprint();
-
- uword zeros_count = 0;
-
- for(uword i=0; i<n_nonzero; ++i)
- {
- if(values[i] == eT(0)) { zeros_count++; }
- }
-
- if(zeros_count == 0)
- {
- return;
- }
-
- const uword actual_n_nonzero = n_nonzero - zeros_count;
-
- SpMat<eT> out(n_rows, n_cols);
-
- out.mem_resize(actual_n_nonzero);
-
- const SpMat<eT>& x = (*this);
-
- typename SpMat<eT>::const_iterator x_it = x.begin();
- typename SpMat<eT>::const_iterator x_end = x.end();
-
- uword cur_val = 0;
- while(x_it != x_end)
- {
- const eT val = (*x_it);
-
- if(val != eT(0))
- {
- access::rw(out.values[cur_val]) = val;
- access::rw(out.row_indices[cur_val]) = x_it.row();
-
- ++access::rw(out.col_ptrs[x_it.col() + 1]);
- ++cur_val;
- }
-
- ++x_it;
- }
-
- const uword out_n_cols = out.n_cols;
- uword* out_col_ptrs = access::rwp(out.col_ptrs);
-
- for(uword c = 1; c <= out_n_cols; ++c)
- {
- out_col_ptrs[c] += out_col_ptrs[c - 1];
- }
-
- steal_mem(out);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/arma_cmath.hpp new/armadillo-4.320.0/include/armadillo_bits/arma_cmath.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/arma_cmath.hpp 2013-12-21 09:28:13.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/arma_cmath.hpp 2014-06-30 12:19:17.000000000 +0200
@@ -1,5 +1,5 @@
-// Copyright (C) 2008-2013 Conrad Sanderson
-// Copyright (C) 2008-2013 NICTA (www.nicta.com.au)
+// Copyright (C) 2008-2014 Conrad Sanderson
+// Copyright (C) 2008-2014 NICTA (www.nicta.com.au)
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -47,10 +47,9 @@
}
#else
{
- const bool x_is_inf = ( (x == x) && ((x - x) != float(0)) );
- const bool x_is_nan = (x != x);
+ const float y = (std::numeric_limits<float>::max)();
- return ( (x_is_inf == false) && (x_is_nan == false) );
+ return (x == x) && (x >= -y) && (x <= y);
}
#endif
}
@@ -76,10 +75,9 @@
}
#else
{
- const bool x_is_inf = ( (x == x) && ((x - x) != double(0)) );
- const bool x_is_nan = (x != x);
+ const double y = (std::numeric_limits<double>::max)();
- return ( (x_is_inf == false) && (x_is_nan == false) );
+ return (x == x) && (x >= -y) && (x <= y);
}
#endif
}
@@ -103,6 +101,72 @@
+// rudimentary wrappers for log1p()
+
+arma_inline
+float
+arma_log1p(const float x)
+ {
+ #if defined(ARMA_USE_CXX11)
+ {
+ return std::log1p(x);
+ }
+ #else
+ {
+ if((x >= float(0)) && (x < std::numeric_limits<float>::epsilon()))
+ {
+ return x;
+ }
+ else
+ if((x < float(0)) && (-x < std::numeric_limits<float>::epsilon()))
+ {
+ return x;
+ }
+ else
+ {
+ return std::log(float(1) + x);
+ }
+ }
+ #endif
+ }
+
+
+
+arma_inline
+double
+arma_log1p(const double x)
+ {
+ #if defined(ARMA_USE_CXX11)
+ {
+ return std::log1p(x);
+ }
+ #elif defined(ARMA_HAVE_LOG1P)
+ {
+ return log1p(x);
+ }
+ #else
+ {
+ if((x >= double(0)) && (x < std::numeric_limits<double>::epsilon()))
+ {
+ return x;
+ }
+ else
+ if((x < double(0)) && (-x < std::numeric_limits<double>::epsilon()))
+ {
+ return x;
+ }
+ else
+ {
+ return std::log(double(1) + x);
+ }
+ }
+ #endif
+ }
+
+
+
+
+
//
// wrappers for trigonometric functions
//
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/arma_ostream_meat.hpp new/armadillo-4.320.0/include/armadillo_bits/arma_ostream_meat.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/arma_ostream_meat.hpp 2014-02-10 06:33:09.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/arma_ostream_meat.hpp 2014-06-24 08:32:17.000000000 +0200
@@ -732,7 +732,7 @@
o.setf(ios::fixed);
- o << S.n_rows << 'x' << S.n_cols << '\n';
+ o << S.n_rows << 'x' << S.n_cols;
stream_state.restore(o);
}
@@ -753,7 +753,7 @@
o.setf(ios::fixed);
- o << S.n_rows << 'x' << S.n_cols << 'x' << S.n_slices << '\n';
+ o << S.n_rows << 'x' << S.n_cols << 'x' << S.n_slices;
stream_state.restore(o);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/arma_version.hpp new/armadillo-4.320.0/include/armadillo_bits/arma_version.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/arma_version.hpp 2014-06-01 04:44:40.000000000 +0200
+++ new/armadillo-4.320.0/include/armadillo_bits/arma_version.hpp 2014-07-02 09:00:14.000000000 +0200
@@ -12,9 +12,9 @@
#define ARMA_VERSION_MAJOR 4
-#define ARMA_VERSION_MINOR 300
-#define ARMA_VERSION_PATCH 8
-#define ARMA_VERSION_NAME "Medieval Cornea Scraper"
+#define ARMA_VERSION_MINOR 320
+#define ARMA_VERSION_PATCH 0
+#define ARMA_VERSION_NAME "Daintree Tea Raider"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/diskio_meat.hpp new/armadillo-4.320.0/include/armadillo_bits/diskio_meat.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/diskio_meat.hpp 2014-04-15 02:54:50.000000000 +0200
+++ new/armadillo-4.320.0/include/armadillo_bits/diskio_meat.hpp 2014-06-24 15:50:17.000000000 +0200
@@ -3680,7 +3680,7 @@
if(dataset >= 0)
{
- hid_t filespace = H5Dget_space(dataset);
+ hid_t filespace = arma_H5Dget_space(dataset);
// This must be <= 3 due to our search rules.
const int ndims = arma_H5Sget_simple_extent_ndims(filespace);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/fn_eig_sym.hpp new/armadillo-4.320.0/include/armadillo_bits/fn_eig_sym.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/fn_eig_sym.hpp 2014-02-06 06:42:28.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/fn_eig_sym.hpp 2014-06-14 05:18:27.000000000 +0200
@@ -1,5 +1,5 @@
-// Copyright (C) 2008-2013 Conrad Sanderson
-// Copyright (C) 2008-2013 NICTA (www.nicta.com.au)
+// Copyright (C) 2008-2014 Conrad Sanderson
+// Copyright (C) 2008-2014 NICTA (www.nicta.com.au)
// Copyright (C) 2011 Stanislav Funiak
//
// This Source Code Form is subject to the terms of the Mozilla Public
@@ -84,13 +84,25 @@
arma_extra_debug_sigprint();
arma_ignore(junk);
- arma_debug_check( void_ptr(&eigval) == void_ptr(&eigvec), "eig_sym(): eigval is an alias of eigvec" );
+ typedef typename T1::elem_type eT;
const char sig = (method != NULL) ? method[0] : char(0);
- arma_debug_check( ((sig != 's') && (sig != 'd')), "eig_sym(): unknown method specified" );
+ arma_debug_check( ((sig != 's') && (sig != 'd')), "eig_sym(): unknown method specified" );
+ arma_debug_check( void_ptr(&eigval) == void_ptr(&eigvec), "eig_sym(): eigval is an alias of eigvec" );
+
+ const Proxy<T1> P(X.get_ref());
+
+ const bool is_alias = P.is_alias(eigvec);
+
+ Mat<eT> eigvec_tmp;
+ Mat<eT>& eigvec_out = (is_alias == false) ? eigvec : eigvec_tmp;
- const bool status = (sig == 'd') ? auxlib::eig_sym_dc(eigval, eigvec, X) : auxlib::eig_sym(eigval, eigvec, X);
+ bool status = false;
+
+ if(sig == 'd') { status = auxlib::eig_sym_dc(eigval, eigvec_out, P.Q); }
+
+ if(status == false) { status = auxlib::eig_sym(eigval, eigvec_out, P.Q); }
if(status == false)
{
@@ -98,6 +110,10 @@
eigvec.reset();
arma_bad("eig_sym(): failed to converge", false);
}
+ else
+ {
+ if(is_alias) { eigvec.steal_mem(eigvec_tmp); }
+ }
return status;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/fn_eigs_gen.hpp new/armadillo-4.320.0/include/armadillo_bits/fn_eigs_gen.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/fn_eigs_gen.hpp 2014-02-08 09:18:07.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/fn_eigs_gen.hpp 2014-07-01 04:36:22.000000000 +0200
@@ -20,6 +20,7 @@
const SpBase<typename T1::elem_type, T1>& X,
const uword n_eigvals,
const char* form = "lm",
+ const typename T1::elem_type tol = 0.0,
const typename arma_blas_type_only<typename T1::elem_type>::result* junk = 0
)
{
@@ -31,7 +32,7 @@
Mat< std::complex<T> > eigvec;
Col< std::complex<T> > eigval;
- const bool status = sp_auxlib::eigs_gen(eigval, eigvec, X, n_eigvals, form);
+ const bool status = sp_auxlib::eigs_gen(eigval, eigvec, X, n_eigvals, form, tol);
if(status == false)
{
@@ -54,6 +55,7 @@
const SpBase<typename T1::elem_type, T1>& X,
const uword n_eigvals,
const char* form = "lm",
+ const typename T1::pod_type tol = 0.0,
const typename arma_blas_type_only<typename T1::elem_type>::result* junk = 0
)
{
@@ -64,7 +66,7 @@
Mat< std::complex<T> > eigvec;
- const bool status = sp_auxlib::eigs_gen(eigval, eigvec, X, n_eigvals, form);
+ const bool status = sp_auxlib::eigs_gen(eigval, eigvec, X, n_eigvals, form, tol);
if(status == false)
{
@@ -88,6 +90,7 @@
const SpBase<typename T1::elem_type, T1>& X,
const uword n_eigvals,
const char* form = "lm",
+ const typename T1::pod_type tol = 0.0,
const typename arma_blas_type_only<typename T1::elem_type>::result* junk = 0
)
{
@@ -96,7 +99,7 @@
arma_debug_check( void_ptr(&eigval) == void_ptr(&eigvec), "eigs_gen(): eigval is an alias of eigvec" );
- const bool status = sp_auxlib::eigs_gen(eigval, eigvec, X, n_eigvals, form);
+ const bool status = sp_auxlib::eigs_gen(eigval, eigvec, X, n_eigvals, form, tol);
if(status == false)
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/fn_eigs_sym.hpp new/armadillo-4.320.0/include/armadillo_bits/fn_eigs_sym.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/fn_eigs_sym.hpp 2014-02-08 07:01:59.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/fn_eigs_sym.hpp 2014-07-01 04:36:22.000000000 +0200
@@ -20,6 +20,7 @@
const SpBase<typename T1::elem_type,T1>& X,
const uword n_eigvals,
const char* form = "lm",
+ const typename T1::elem_type tol = 0.0,
const typename arma_real_only<typename T1::elem_type>::result* junk = 0
)
{
@@ -29,7 +30,7 @@
Mat<typename T1::elem_type> eigvec;
Col<typename T1::pod_type > eigval;
- const bool status = sp_auxlib::eigs_sym(eigval, eigvec, X, n_eigvals, form);
+ const bool status = sp_auxlib::eigs_sym(eigval, eigvec, X, n_eigvals, form, tol);
if(status == false)
{
@@ -52,6 +53,7 @@
const SpBase<typename T1::elem_type,T1>& X,
const uword n_eigvals,
const char* form = "lm",
+ const typename T1::elem_type tol = 0.0,
const typename arma_real_only<typename T1::elem_type>::result* junk = 0
)
{
@@ -60,7 +62,7 @@
Mat<typename T1::elem_type> eigvec;
- const bool status = sp_auxlib::eigs_sym(eigval, eigvec, X, n_eigvals, form);
+ const bool status = sp_auxlib::eigs_sym(eigval, eigvec, X, n_eigvals, form, tol);
if(status == false)
{
@@ -84,6 +86,7 @@
const SpBase<typename T1::elem_type,T1>& X,
const uword n_eigvals,
const char* form = "lm",
+ const typename T1::elem_type tol = 0.0,
const typename arma_real_only<typename T1::elem_type>::result* junk = 0
)
{
@@ -92,7 +95,7 @@
arma_debug_check( void_ptr(&eigval) == void_ptr(&eigvec), "eigs_sym(): eigval is an alias of eigvec" );
- const bool status = sp_auxlib::eigs_sym(eigval, eigvec, X, n_eigvals, form);
+ const bool status = sp_auxlib::eigs_sym(eigval, eigvec, X, n_eigvals, form, tol);
if(status == false)
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/fn_misc.hpp new/armadillo-4.320.0/include/armadillo_bits/fn_misc.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/fn_misc.hpp 2014-04-29 16:12:41.000000000 +0200
+++ new/armadillo-4.320.0/include/armadillo_bits/fn_misc.hpp 2014-06-24 07:48:53.000000000 +0200
@@ -113,11 +113,7 @@
}
else
{
- #if defined(ARMA_HAVE_LOG1P)
- return (log_a + log1p(std::exp(negdelta)));
- #else
- return (log_a + std::log(1.0 + std::exp(negdelta)));
- #endif
+ return (log_a + arma_log1p(std::exp(negdelta)));
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/sp_auxlib_bones.hpp new/armadillo-4.320.0/include/armadillo_bits/sp_auxlib_bones.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/sp_auxlib_bones.hpp 2014-02-28 06:25:49.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/sp_auxlib_bones.hpp 2014-06-12 10:40:02.000000000 +0200
@@ -27,17 +27,17 @@
// eigs_sym() via ARPACK
template<typename eT, typename T1>
- inline static bool eigs_sym(Col<eT>& eigval, Mat<eT>& eigvec, const SpBase<eT, T1>& X, const uword n_eigvals, const char* form_str);
+ inline static bool eigs_sym(Col<eT>& eigval, Mat<eT>& eigvec, const SpBase<eT, T1>& X, const uword n_eigvals, const char* form_str, const eT default_tol);
//
// eigs_gen() via ARPACK
template<typename T, typename T1>
- inline static bool eigs_gen(Col< std::complex<T> >& eigval, Mat< std::complex<T> >& eigvec, const SpBase<T, T1>& X, const uword n_eigvals, const char* form_str);
+ inline static bool eigs_gen(Col< std::complex<T> >& eigval, Mat< std::complex<T> >& eigvec, const SpBase<T, T1>& X, const uword n_eigvals, const char* form_str, const T default_tol);
template<typename T, typename T1>
- inline static bool eigs_gen(Col< std::complex<T> >& eigval, Mat< std::complex<T> >& eigvec, const SpBase< std::complex<T>, T1>& X, const uword n_eigvals, const char* form_str);
+ inline static bool eigs_gen(Col< std::complex<T> >& eigval, Mat< std::complex<T> >& eigvec, const SpBase< std::complex<T>, T1>& X, const uword n_eigvals, const char* form_str, const T default_tol);
private:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/sp_auxlib_meat.hpp new/armadillo-4.320.0/include/armadillo_bits/sp_auxlib_meat.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/sp_auxlib_meat.hpp 2014-02-28 06:25:49.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/sp_auxlib_meat.hpp 2014-06-12 10:40:02.000000000 +0200
@@ -48,7 +48,7 @@
template<typename eT, typename T1>
inline
bool
-sp_auxlib::eigs_sym(Col<eT>& eigval, Mat<eT>& eigvec, const SpBase<eT, T1>& X, const uword n_eigvals, const char* form_str)
+sp_auxlib::eigs_sym(Col<eT>& eigval, Mat<eT>& eigvec, const SpBase<eT, T1>& X, const uword n_eigvals, const char* form_str, const eT default_tol)
{
arma_extra_debug_sigprint();
@@ -69,7 +69,7 @@
arma_debug_check( (p.get_n_rows() != p.get_n_cols()), "eigs_sym(): given sparse matrix is not square");
// Make sure we aren't asking for every eigenvalue.
- arma_debug_check( (n_eigvals >= p.get_n_rows()), "eigs_sym(): n_eigvals must be less than the number of rows in the matrix");
+ arma_debug_check( (n_eigvals + 1 >= p.get_n_rows()), "eigs_sym(): n_eigvals + 1 must be less than the number of rows in the matrix");
// If the matrix is empty, the case is trivial.
if(p.get_n_cols() == 0) // We already know n_cols == n_rows.
@@ -81,7 +81,7 @@
// Set up variables that get used for neupd().
blas_int n, ncv, ldv, lworkl, info;
- eT tol;
+ eT tol = default_tol;
podarray<eT> resid, v, workd, workl;
podarray<blas_int> iparam, ipntr;
podarray<eT> rwork; // Not used in this case.
@@ -138,7 +138,7 @@
template<typename T, typename T1>
inline
bool
-sp_auxlib::eigs_gen(Col< std::complex<T> >& eigval, Mat< std::complex<T> >& eigvec, const SpBase<T, T1>& X, const uword n_eigvals, const char* form_str)
+sp_auxlib::eigs_gen(Col< std::complex<T> >& eigval, Mat< std::complex<T> >& eigvec, const SpBase<T, T1>& X, const uword n_eigvals, const char* form_str, const T default_tol)
{
arma_extra_debug_sigprint();
@@ -177,7 +177,7 @@
arma_debug_check( (p.get_n_rows() != p.get_n_cols()), "eigs_gen(): given sparse matrix is not square");
// Make sure we aren't asking for every eigenvalue.
- arma_debug_check( (n_eigvals >= p.get_n_rows()), "eigs_gen(): n_eigvals must be less than the number of rows in the matrix");
+ arma_debug_check( (n_eigvals + 1 >= p.get_n_rows()), "eigs_gen(): n_eigvals + 1 must be less than the number of rows in the matrix");
// If the matrix is empty, the case is trivial.
if(p.get_n_cols() == 0) // We already know n_cols == n_rows.
@@ -189,7 +189,7 @@
// Set up variables that get used for neupd().
blas_int n, ncv, ldv, lworkl, info;
- T tol;
+ T tol = default_tol;
podarray<T> resid, v, workd, workl;
podarray<blas_int> iparam, ipntr;
podarray<T> rwork; // Not used in the real case.
@@ -289,7 +289,7 @@
template<typename T, typename T1>
inline
bool
-sp_auxlib::eigs_gen(Col< std::complex<T> >& eigval, Mat< std::complex<T> >& eigvec, const SpBase< std::complex<T>, T1>& X, const uword n_eigvals, const char* form_str)
+sp_auxlib::eigs_gen(Col< std::complex<T> >& eigval, Mat< std::complex<T> >& eigvec, const SpBase< std::complex<T>, T1>& X, const uword n_eigvals, const char* form_str, const T default_tol)
{
arma_extra_debug_sigprint();
@@ -328,7 +328,7 @@
arma_debug_check( (p.get_n_rows() != p.get_n_cols()), "eigs_gen(): given sparse matrix is not square");
// Make sure we aren't asking for every eigenvalue.
- arma_debug_check( (n_eigvals >= p.get_n_rows()), "eigs_gen(): n_eigvals must be less than the number of rows in the matrix");
+ arma_debug_check( (n_eigvals + 1 >= p.get_n_rows()), "eigs_gen(): n_eigvals + 1 must be less than the number of rows in the matrix");
// If the matrix is empty, the case is trivial.
if(p.get_n_cols() == 0) // We already know n_cols == n_rows.
@@ -340,7 +340,7 @@
// Set up variables that get used for neupd().
blas_int n, ncv, ldv, lworkl, info;
- T tol;
+ T tol = default_tol;
podarray< std::complex<T> > resid, v, workd, workl;
podarray<blas_int> iparam, ipntr;
podarray<T> rwork;
@@ -424,12 +424,13 @@
n = p.get_n_rows(); // The size of the matrix.
blas_int nev = n_eigvals;
- tol = std::numeric_limits<eT>::epsilon(); // Machine epsilon as tolerance.
resid.set_size(n);
// "NCV must satisfy the two inequalities 2 <= NCV-NEV and NCV <= N".
// "It is recommended that NCV >= 2 * NEV".
- ncv = (2 * nev < n) ? 2 * nev : ((nev + 2 < n) ? nev + 2 : n);
+ ncv = 2 + nev;
+ if (ncv < 2 * nev) { ncv = 2 * nev; }
+ if (ncv > n) { ncv = n; }
v.set_size(n * ncv); // Array N by NCV (output).
rwork.set_size(ncv); // Work array of size NCV for complex calls.
ldv = n; // "Leading dimension of V exactly as declared in the calling program."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/subview_bones.hpp new/armadillo-4.320.0/include/armadillo_bits/subview_bones.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/subview_bones.hpp 2013-11-07 15:01:27.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/subview_bones.hpp 2014-06-30 09:35:37.000000000 +0200
@@ -1,5 +1,5 @@
-// Copyright (C) 2008-2013 Conrad Sanderson
-// Copyright (C) 2008-2013 NICTA (www.nicta.com.au)
+// Copyright (C) 2008-2014 Conrad Sanderson
+// Copyright (C) 2008-2014 NICTA (www.nicta.com.au)
// Copyright (C) 2011 James Sanders
//
// This Source Code Form is subject to the terms of the Mozilla Public
@@ -67,6 +67,10 @@
inline void operator%= (const subview& x);
inline void operator/= (const subview& x);
+ template<typename T1, typename gen_type>
+ inline typename enable_if2< is_same_type<typename T1::elem_type, eT>::value, void>::result operator=(const Gen<T1,gen_type>& x);
+
+
inline static void extract(Mat<eT>& out, const subview& in);
inline static void plus_inplace(Mat<eT>& out, const subview& in);
@@ -204,6 +208,9 @@
template<typename T1>
inline void operator= (const Base<eT,T1>& x);
+ template<typename T1, typename gen_type>
+ inline typename enable_if2< is_same_type<typename T1::elem_type, eT>::value, void>::result operator=(const Gen<T1,gen_type>& x);
+
arma_inline const Op<subview_col<eT>,op_htrans> t() const;
arma_inline const Op<subview_col<eT>,op_htrans> ht() const;
arma_inline const Op<subview_col<eT>,op_strans> st() const;
@@ -272,6 +279,9 @@
template<typename T1>
inline void operator= (const Base<eT,T1>& x);
+ template<typename T1, typename gen_type>
+ inline typename enable_if2< is_same_type<typename T1::elem_type, eT>::value, void>::result operator=(const Gen<T1,gen_type>& x);
+
arma_inline const Op<subview_row<eT>,op_htrans> t() const;
arma_inline const Op<subview_row<eT>,op_htrans> ht() const;
arma_inline const Op<subview_row<eT>,op_strans> st() const;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/include/armadillo_bits/subview_meat.hpp new/armadillo-4.320.0/include/armadillo_bits/subview_meat.hpp
--- old/armadillo-4.300.8/include/armadillo_bits/subview_meat.hpp 2013-11-29 07:48:03.000000000 +0100
+++ new/armadillo-4.320.0/include/armadillo_bits/subview_meat.hpp 2014-06-30 09:35:37.000000000 +0200
@@ -1,5 +1,5 @@
-// Copyright (C) 2008-2013 Conrad Sanderson
-// Copyright (C) 2008-2013 NICTA (www.nicta.com.au)
+// Copyright (C) 2008-2014 Conrad Sanderson
+// Copyright (C) 2008-2014 NICTA (www.nicta.com.au)
// Copyright (C) 2011 James Sanders
// Copyright (C) 2013 Ryan Curtin
//
@@ -1197,6 +1197,21 @@
+template<typename eT>
+template<typename T1, typename gen_type>
+inline
+typename enable_if2< is_same_type<typename T1::elem_type, eT>::value, void>::result
+subview<eT>::operator= (const Gen<T1,gen_type>& in)
+ {
+ arma_extra_debug_sigprint();
+
+ arma_debug_assert_same_size(n_rows, n_cols, in.n_rows, in.n_cols, "copy into submatrix");
+
+ in.apply(*this);
+ }
+
+
+
//! transform each element in the subview using a functor
template<typename eT>
template<typename functor>
@@ -2672,6 +2687,21 @@
template<typename eT>
+template<typename T1, typename gen_type>
+inline
+typename enable_if2< is_same_type<typename T1::elem_type, eT>::value, void>::result
+subview_col<eT>::operator= (const Gen<T1,gen_type>& in)
+ {
+ arma_extra_debug_sigprint();
+
+ arma_debug_assert_same_size(subview<eT>::n_rows, uword(1), in.n_rows, (in.is_col ? uword(1) : in.n_cols), "copy into submatrix");
+
+ in.apply(*this);
+ }
+
+
+
+template<typename eT>
arma_inline
const Op<subview_col<eT>,op_htrans>
subview_col<eT>::t() const
@@ -3002,6 +3032,21 @@
}
+
+template<typename eT>
+template<typename T1, typename gen_type>
+inline
+typename enable_if2< is_same_type<typename T1::elem_type, eT>::value, void>::result
+subview_row<eT>::operator= (const Gen<T1,gen_type>& in)
+ {
+ arma_extra_debug_sigprint();
+
+ arma_debug_assert_same_size(uword(1), subview<eT>::n_cols, (in.is_row ? uword(1) : in.n_rows), in.n_cols, "copy into submatrix");
+
+ in.apply(*this);
+ }
+
+
template<typename eT>
arma_inline
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.8/mex_interface/armaMex.hpp new/armadillo-4.320.0/mex_interface/armaMex.hpp
--- old/armadillo-4.300.8/mex_interface/armaMex.hpp 2014-01-04 15:39:58.000000000 +0100
+++ new/armadillo-4.320.0/mex_interface/armaMex.hpp 2014-06-05 03:52:25.000000000 +0200
@@ -1,5 +1,5 @@
// Connector for Mex files to use Armadillo for calculation
-// Version 0.2
+// Version 0.3
//
// Copyright (C) 2014 George Yammine
// Copyright (C) 2014 Conrad Sanderson
@@ -470,8 +470,6 @@
mwIndex *jc = mxGetJc(matlabMatrix);
mwIndex *ir = mxGetIr(matlabMatrix);
- mwIndex current_row_index;
-
mwSize m = mxGetM(matlabMatrix);
mwSize n = mxGetN(matlabMatrix);
@@ -479,10 +477,11 @@
umat locations = zeros<umat>(2,non_zero);
Col<Type> values = zeros< Col<Type> >(non_zero);
-
+ mwSize row = 0;
+
for(mwSize col = 0; col < n ; col++)
{
- mwSize row = 0;
+
mwIndex starting_row_index = jc[col];
mwIndex stopping_row_index = jc[col+1];
@@ -493,7 +492,7 @@
}
else
{
- for (current_row_index = starting_row_index; current_row_index < stopping_row_index; current_row_index++)
+ for (mwIndex current_row_index = starting_row_index; current_row_index < stopping_row_index; current_row_index++)
{
values[row]=pr[row];
locations.at(0,row)=ir[current_row_index];
@@ -539,9 +538,11 @@
umat locations = zeros<umat>(2,non_zero);
Col<double> values = zeros< Col<double> >(non_zero);
+ mwSize row = 0;
+
for(mwSize col = 0; col < n ; col++)
{
- mwSize row = 0;
+
mwIndex starting_row_index = jc[col];
mwIndex stopping_row_index = jc[col+1];
@@ -552,7 +553,7 @@
}
else
{
- for (mwIndex current_row_index = starting_row_index; current_row_index < stopping_row_index; current_row_index++)
+ for (mwIndex current_row_index = starting_row_index; current_row_index < stopping_row_index ; current_row_index++)
{
values[row]=pr[row];
locations.at(0,row)=ir[current_row_index];
@@ -560,8 +561,8 @@
row++;
}
}
+
}
-
return SpMat<double>(locations, values, m, n, sort_locations);
}
}
@@ -598,10 +599,10 @@
umat locations = zeros<umat>(2,non_zero);
Col<Type> values = zeros< Col<Type> >(non_zero);
-
+ mwSize row = 0;
+
for(mwSize col = 0; col < n ; col++)
{
- mwSize row = 0;
mwIndex starting_row_index = jc[col];
mwIndex stopping_row_index = jc[col+1];
@@ -657,10 +658,11 @@
umat locations = zeros<umat>(2,non_zero);
Col<double> values = zeros< Col<double> >(non_zero);
-
+
+ mwSize row = 0;
+
for(mwSize col = 0; col < n ; col++)
{
- mwSize row = 0;
mwIndex starting_row_index = jc[col];
mwIndex stopping_row_index = jc[col+1];
Files old/armadillo-4.300.8/mex_interface/armaMex_documentation.pdf and new/armadillo-4.320.0/mex_interface/armaMex_documentation.pdf differ
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package yast2-cluster for openSUSE:Factory checked in at 2014-07-04 17:18:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-cluster (Old)
and /work/SRC/openSUSE:Factory/.yast2-cluster.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-cluster"
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-cluster/yast2-cluster.changes 2014-03-12 19:09:06.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.yast2-cluster.new/yast2-cluster.changes 2014-07-04 17:18:51.000000000 +0200
@@ -1,0 +2,76 @@
+Tue Jul 1 06:53:46 UTC 2014 - nwang(a)suse.com
+
+- BNC#883228 and BNC#885113. Fix various issues with YaST
+ Cluster help and the finish progress message.
+- Version 3.1.10
+
+-------------------------------------------------------------------
+Sun Jun 22 07:08:43 UTC 2014 - nwang(a)suse.com
+
+- BNC#883235. Auot enable "two_node" when using two node cluster.
+- Version 3.1.9
+
+-------------------------------------------------------------------
+Fri May 30 13:39:43 UTC 2014 - nwang(a)suse.com
+
+- BNC#879596. Detect corosync.conf format. Notice user when using
+ old format configuration.
+- Version 3.1.8
+
+-------------------------------------------------------------------
+Fri May 30 06:12:00 UTC 2014 - nwang(a)suse.com
+
+- BNC#880491. Check nodeid behavior when auto node id is disabled.
+ NodeID must be unique positive interger.
+- Version 3.1.7
+
+-------------------------------------------------------------------
+Thu May 29 08:57:49 UTC 2014 - nwang(a)suse.com
+
+- BNC#880483. Click edit button when member list is empty
+ will crash the application.
+
+-------------------------------------------------------------------
+Thu May 29 05:31:12 UTC 2014 - nwang(a)suse.com
+
+- BNC#880242. expected votes must have value when Transport
+ protocol is using udp. Cluster name should not empty in
+ any cases.
+- Version 3.1.6
+
+-------------------------------------------------------------------
+Thu May 22 09:45:56 UTC 2014 - nwang(a)suse.com
+
+- Modify SPEC file to make ibs and github same. Version 3.1.5
+
+-------------------------------------------------------------------
+Wed May 21 06:49:25 UTC 2014 - nwang(a)suse.com
+
+- BNC#878073. Stating to run "journalctl -xn" manually for log.
+ Update version to 3.1.2 to trigger ibs/obs release.
+
+-------------------------------------------------------------------
+Wed Apr 23 07:41:49 UTC 2014 - nwang(a)suse.com
+
+- BNC#874710, Only active or passive of rrp_mode is valid
+ for multiple interface.
+
+-------------------------------------------------------------------
+Tue Apr 22 08:13:18 UTC 2014 - nwang(a)suse.com
+
+- BNC#874563,stop pacemaker could stop corosync at the same time.
+ So change behavior to stop pacemaker directly.
+
+-------------------------------------------------------------------
+Tue Apr 22 03:13:23 UTC 2014 - nwang(a)suse.com
+
+- BNC#871970.BNC#872000 could be fixed at the same time.
+ Change udpu member addresses structure and the format of
+ nodelist in "corosync.conf".
+
+-------------------------------------------------------------------
+Mon Mar 10 10:12:18 UTC 2014 - dmzhang(a)suse.com
+
+- bnc#867090, fix expected_votes showing "nil" in case of ncurse
+
+-------------------------------------------------------------------
Old:
----
yast2-cluster-3.1.1.tar.bz2
New:
----
yast2-cluster-3.1.10.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-cluster.spec ++++++
--- /var/tmp/diff_new_pack.umwNGM/_old 2014-07-04 17:18:52.000000000 +0200
+++ /var/tmp/diff_new_pack.umwNGM/_new 2014-07-04 17:18:52.000000000 +0200
@@ -16,27 +16,29 @@
#
-
Name: yast2-cluster
%define _fwdefdir /etc/sysconfig/SuSEfirewall2.d/services
-Version: 3.1.1
+Version: 3.1.10
Release: 0
-License: GPL-2.0
-Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: %{name}-%{version}.tar.bz2
Source1: cluster.fwd
-Requires: yast2
-BuildRequires: perl-XML-Writer update-desktop-files yast2 yast2-testsuite
+BuildRequires: perl-XML-Writer
+BuildRequires: update-desktop-files
+BuildRequires: yast2
BuildRequires: yast2-devtools >= 3.1.10
+BuildRequires: yast2-testsuite
BuildArch: noarch
+Requires: yast2
Requires: yast2-ruby-bindings >= 1.0.0
Summary: Configuration of cluster
+License: GPL-2.0
+Group: System/YaST
%description
-
++++++ yast2-cluster-3.1.1.tar.bz2 -> yast2-cluster-3.1.10.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-cluster-3.1.1/MAINTAINER new/yast2-cluster-3.1.10/MAINTAINER
--- old/yast2-cluster-3.1.1/MAINTAINER 2014-02-21 08:42:34.000000000 +0100
+++ new/yast2-cluster-3.1.10/MAINTAINER 2014-07-02 11:24:50.000000000 +0200
@@ -1 +1 @@
-dmzhang <dmzhang(a)suse.com>
+Nick Wang <nwang(a)suse.com>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-cluster-3.1.1/package/yast2-cluster.changes new/yast2-cluster-3.1.10/package/yast2-cluster.changes
--- old/yast2-cluster-3.1.1/package/yast2-cluster.changes 2014-02-27 10:24:58.000000000 +0100
+++ new/yast2-cluster-3.1.10/package/yast2-cluster.changes 2014-07-02 11:24:50.000000000 +0200
@@ -1,4 +1,80 @@
-------------------------------------------------------------------
+Tue Jul 1 06:53:46 UTC 2014 - nwang(a)suse.com
+
+- BNC#883228 and BNC#885113. Fix various issues with YaST
+ Cluster help and the finish progress message.
+- Version 3.1.10
+
+-------------------------------------------------------------------
+Sun Jun 22 07:08:43 UTC 2014 - nwang(a)suse.com
+
+- BNC#883235. Auot enable "two_node" when using two node cluster.
+- Version 3.1.9
+
+-------------------------------------------------------------------
+Fri May 30 13:39:43 UTC 2014 - nwang(a)suse.com
+
+- BNC#879596. Detect corosync.conf format. Notice user when using
+ old format configuration.
+- Version 3.1.8
+
+-------------------------------------------------------------------
+Fri May 30 06:12:00 UTC 2014 - nwang(a)suse.com
+
+- BNC#880491. Check nodeid behavior when auto node id is disabled.
+ NodeID must be unique positive interger.
+- Version 3.1.7
+
+-------------------------------------------------------------------
+Thu May 29 08:57:49 UTC 2014 - nwang(a)suse.com
+
+- BNC#880483. Click edit button when member list is empty
+ will crash the application.
+
+-------------------------------------------------------------------
+Thu May 29 05:31:12 UTC 2014 - nwang(a)suse.com
+
+- BNC#880242. expected votes must have value when Transport
+ protocol is using udp. Cluster name should not empty in
+ any cases.
+- Version 3.1.6
+
+-------------------------------------------------------------------
+Thu May 22 09:45:56 UTC 2014 - nwang(a)suse.com
+
+- Modify SPEC file to make ibs and github same. Version 3.1.5
+
+-------------------------------------------------------------------
+Wed May 21 06:49:25 UTC 2014 - nwang(a)suse.com
+
+- BNC#878073. Stating to run "journalctl -xn" manually for log.
+ Update version to 3.1.2 to trigger ibs/obs release.
+
+-------------------------------------------------------------------
+Wed Apr 23 07:41:49 UTC 2014 - nwang(a)suse.com
+
+- BNC#874710, Only active or passive of rrp_mode is valid
+ for multiple interface.
+
+-------------------------------------------------------------------
+Tue Apr 22 08:13:18 UTC 2014 - nwang(a)suse.com
+
+- BNC#874563,stop pacemaker could stop corosync at the same time.
+ So change behavior to stop pacemaker directly.
+
+-------------------------------------------------------------------
+Tue Apr 22 03:13:23 UTC 2014 - nwang(a)suse.com
+
+- BNC#871970.BNC#872000 could be fixed at the same time.
+ Change udpu member addresses structure and the format of
+ nodelist in "corosync.conf".
+
+-------------------------------------------------------------------
+Mon Mar 10 10:12:18 UTC 2014 - dmzhang(a)suse.com
+
+- bnc#867090, fix expected_votes showing "nil" in case of ncurse
+
+-------------------------------------------------------------------
Thu Feb 27 09:26:09 UTC 2014 - dmzhang(a)suse.com
- upstream does not maintain yast2-python-bindings any more
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-cluster-3.1.1/package/yast2-cluster.spec new/yast2-cluster-3.1.10/package/yast2-cluster.spec
--- old/yast2-cluster-3.1.1/package/yast2-cluster.spec 2014-02-27 10:24:58.000000000 +0100
+++ new/yast2-cluster-3.1.10/package/yast2-cluster.spec 2014-07-02 11:24:50.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package yast2-cluster
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,24 +18,27 @@
Name: yast2-cluster
%define _fwdefdir /etc/sysconfig/SuSEfirewall2.d/services
-Version: 3.1.1
+Version: 3.1.10
Release: 0
-License: GPL-2.0
-Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: %{name}-%{version}.tar.bz2
Source1: cluster.fwd
-Requires: yast2
-BuildRequires: perl-XML-Writer update-desktop-files yast2 yast2-testsuite
+BuildRequires: perl-XML-Writer
+BuildRequires: update-desktop-files
+BuildRequires: yast2
BuildRequires: yast2-devtools >= 3.1.10
+BuildRequires: yast2-testsuite
-BuildArchitectures: noarch
+BuildArch: noarch
+Requires: yast2
Requires: yast2-ruby-bindings >= 1.0.0
-Summary: Configuration of cluster
+Summary: Configuration of cluster
+License: GPL-2.0
+Group: System/YaST
%description
-
@@ -52,8 +55,6 @@
mkdir -p $RPM_BUILD_ROOT/%{_fwdefdir}
install -m 644 %{S:1} $RPM_BUILD_ROOT/%{_fwdefdir}/cluster
-
-
%files
%defattr(-,root,root)
%dir %{yast_yncludedir}/cluster
@@ -66,3 +67,5 @@
%{yast_agentdir}/ag_openais
%doc %{yast_docdir}
%config %{_fwdefdir}/cluster
+
+%changelog
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-cluster-3.1.1/src/include/cluster/dialogs.rb new/yast2-cluster-3.1.10/src/include/cluster/dialogs.rb
--- old/yast2-cluster-3.1.1/src/include/cluster/dialogs.rb 2014-02-25 10:14:04.000000000 +0100
+++ new/yast2-cluster-3.1.10/src/include/cluster/dialogs.rb 2014-07-02 11:24:50.000000000 +0200
@@ -1,4 +1,4 @@
-# encoding: utf-8
+#encoding: utf-8
# ------------------------------------------------------------------------------
# Copyright (c) 2006 Novell, Inc. All Rights Reserved.
@@ -25,6 +25,8 @@
# Authors: Cong Meng <cmeng(a)novell.com>
#
# $Id: wizards.ycp 27914 2006-02-13 14:32:08Z locilka $
+require 'set'
+
module Yast
module ClusterDialogsInclude
def initialize_cluster_dialogs(include_target)
@@ -67,7 +69,7 @@
@usable_interface = []
end
- # return `cacel or a string
+ # return `cancel or a string
def text_input_dialog(title, value)
ret = nil
@@ -94,20 +96,23 @@
deep_copy(ret)
end
- def addr_input_dialog(value, autoid)
+ def addr_input_dialog(value, autoid, dual)
ret = nil
value.default=""
-
+
+ # BNC#871970, change member address struct
UI.OpenDialog(
MarginBox(
1,
1,
VBox(
HBox(
- MinWidth(75, InputField(Id(:addr), _("IP Address"), value[:addr])),
+ MinWidth(40, InputField(Id(:addr1), _("IP Address"), value[:addr1])),
+ HSpacing(1),
+ MinWidth(40, InputField(Id(:addr2), _("Redundant IP Address"), value[:addr2])),
HSpacing(1),
- MinWidth(25, InputField(Id(:mynodeid), _("nodeid") , value[:nodeid]))
+ MinWidth(20, InputField(Id(:mynodeid), _("nodeid") , value[:nodeid]))
),
VSpacing(1),
Right(
@@ -120,25 +125,66 @@
)
)
-
-
if (autoid)
UI.ChangeWidget(:mynodeid, :Enabled, false)
end
+ if (!dual)
+ UI.ChangeWidget(:addr2, :Enabled, false)
+ end
+
ret = UI.UserInput
if ret == :ok
- if UI.QueryWidget(:mynodeid, :Value) != ""
- ret = {:addr=>UI.QueryWidget(:addr, :Value), :nodeid=>UI.QueryWidget(:mynodeid, :Value)}
+ if ( UI.QueryWidget(:mynodeid, :Value) != "" ) && ( UI.QueryWidget(:addr2, :Value) != "" )
+ ret = {:addr1 => UI.QueryWidget(:addr1, :Value), :addr2 => UI.QueryWidget(:addr2, :Value), :nodeid => UI.QueryWidget(:mynodeid, :Value)}
+ elsif ( UI.QueryWidget(:mynodeid, :Value) == "" ) && ( UI.QueryWidget(:addr2, :Value) != "" )
+ ret = {:addr1 => UI.QueryWidget(:addr1, :Value), :addr2 => UI.QueryWidget(:addr2, :Value)}
+ elsif ( UI.QueryWidget(:mynodeid, :Value) != "" ) && ( UI.QueryWidget(:addr2, :Value) == "" )
+ ret = {:addr1 => UI.QueryWidget(:addr1, :Value), :nodeid => UI.QueryWidget(:mynodeid, :Value)}
else
- ret = {:addr=>UI.QueryWidget(:addr, :Value)}
+ ret = {:addr1 => UI.QueryWidget(:addr1, :Value)}
end
end
UI.CloseDialog
deep_copy(ret)
end
+ def ValidNodeID
+ if Cluster.memberaddr.size <= 0
+ return true
+ end
+
+ i = 0
+ # Set need to require 'set'
+ idset = Set[]
+ Builtins.foreach(Cluster.memberaddr) do |value|
+ if value[:nodeid].to_i <= 0
+ Popup.Message("Node ID has to be fulfilled with a positive integer")
+ UI.ChangeWidget(:memberaddr, :CurrentItem, i)
+ i = 0
+ raise Break
+ end
+
+ if idset.include?(value[:nodeid].to_i)
+ Popup.Message("Node ID must be unique")
+ UI.ChangeWidget(:memberaddr, :CurrentItem, i)
+ i = 0
+ raise Break
+ end
+
+ idset << value[:nodeid].to_i
+ i = Ops.add(i, 1)
+ end
+
+ if i == 0
+ return false
+ end
+
+ true
+ end
+
+ # BNC#871970, change member address struct
def ValidateCommunication
i = 0
if IP.Check(Convert.to_string(UI.QueryWidget(Id(:bindnetaddr1), :Value))) == false
@@ -147,23 +193,36 @@
return false
end
+ if UI.QueryWidget(Id(:cluster_name), :Value) == ""
+ Popup.Message("The cluster name has to be fulfilled")
+ UI.SetFocus(:cluster_name)
+ return false
+ end
+
if UI.QueryWidget(Id(:transport), :Value) == "udpu"
i = 0
- Builtins.foreach(Cluster.memberaddr1) do |value|
- if IP.Check(value[:addr]) == false
- UI.ChangeWidget(:memberaddr1, :CurrentItem, i)
+ Builtins.foreach(Cluster.memberaddr) do |value|
+ if !IP.Check(value[:addr1]) || ( UI.QueryWidget(Id(:enable2), :Value) && !IP.Check(value[:addr2]) )
+ UI.ChangeWidget(:memberaddr, :CurrentItem, i)
i = 0
raise Break
end
i = Ops.add(i, 1)
end
if i == 0
- UI.SetFocus(:memberaddr1)
+ UI.SetFocus(:memberaddr)
Popup.Message("The Member Address has to be fulfilled")
return false
end
else
- if IP.Check(Convert.to_string(UI.QueryWidget(Id(:mcastaddr1), :Value))) == false
+ #BNC#880242, expected_votes must have value when "udp"
+ if UI.QueryWidget(Id(:expected_votes), :Value) == ""
+ Popup.Message("The Expected Votes has to be fulfilled when udp is configured")
+ UI.SetFocus(:expected_votes)
+ return false
+ end
+
+ if !IP.Check(Convert.to_string(UI.QueryWidget(Id(:mcastaddr1), :Value)))
Popup.Message("The Multicast Address has to be fulfilled")
UI.SetFocus(:mcastaddr1)
return false
@@ -179,7 +238,7 @@
return false
end
- if UI.QueryWidget(Id(:enable2), :Value) == true
+ if UI.QueryWidget(Id(:enable2), :Value)
if IP.Check(
Convert.to_string(UI.QueryWidget(Id(:bindnetaddr2), :Value))
) == false
@@ -188,22 +247,7 @@
return false
end
- if UI.QueryWidget(Id(:transport), :Value) == "udpu"
- i = 0
- Builtins.foreach(Cluster.memberaddr2) do |value|
- if IP.Check(value[:addr]) == false
- UI.ChangeWidget(:memberaddr2, :CurrentItem, i)
- i = 0
- raise Break
- end
- i = Ops.add(i, 1)
- end
- if i == 0
- UI.SetFocus(:memberaddr2)
- Popup.Message("The Member Address has to be fulfilled")
- return false
- end
- else
+ if UI.QueryWidget(Id(:transport), :Value) == "udp"
if IP.Check(
Convert.to_string(UI.QueryWidget(Id(:mcastaddr2), :Value))
) == false
@@ -221,9 +265,22 @@
UI.SetFocus(Id(:mcastport2))
return false
end
+
+ if UI.QueryWidget(Id(:rrpmode), :Value) == "none"
+ Popup.Message("Only passive or active can be chosen if multiple interface used. Set to passive.")
+ UI.ChangeWidget(Id(:rrpmode), :Value, "passive")
+ UI.SetFocus(Id(:rrpmode))
+ return false
+ end
end
- votes = UI.QueryWidget(Id(:expected_votes), :Value)
+ if !UI.QueryWidget(Id(:autoid), :Value ) && ( UI.QueryWidget(Id(:transport), :Value) == "udpu" )
+ ret = ValidNodeID()
+ if !ret
+ UI.SetFocus(Id(:memberaddr))
+ return false
+ end
+ end
true
end
@@ -242,7 +299,7 @@
Convert.to_string(UI.QueryWidget(Id(:mcastport1), :Value))
)
- if UI.QueryWidget(Id(:enable2), :Value) == false
+ if !UI.QueryWidget(Id(:enable2), :Value)
SCR.Write(path(".openais.totem.interface.interface1"), "")
else
SCR.Write(
@@ -259,7 +316,7 @@
)
end
- if UI.QueryWidget(Id(:autoid), :Value) == true
+ if UI.QueryWidget(Id(:autoid), :Value)
SCR.Write(path(".openais.totem.autoid"), "yes")
else
SCR.Write(path(".openais.totem.autoid"), "no")
@@ -301,6 +358,15 @@
UI.QueryWidget(Id(:transport), :Value)
)
+ #BNC#871970, clear second IP when redundant channel is disabled
+ if !UI.QueryWidget(Id(:enable2), :Value)
+ Cluster.memberaddr.each { |member| member[:addr2] = "" }
+ end
+
+ if UI.QueryWidget(Id(:autoid), :Value)
+ Cluster.memberaddr.each { |member| member[:nodeid] = "" }
+ end
+
nil
end
@@ -315,29 +381,27 @@
end
+ # BNC#871970, change member address struct to memberaddr
def transport_switch
- udp = Convert.to_string(UI.QueryWidget(Id(:transport), :Value)) == "udp"
- enable2 = Convert.to_boolean(UI.QueryWidget(Id(:enable2), :Value))
+ udp = UI.QueryWidget(Id(:transport), :Value) == "udp"
+ enable2 = UI.QueryWidget(Id(:enable2), :Value)
enable1 = udp
enable2 = udp && enable2
UI.ChangeWidget(Id(:mcastaddr1), :Enabled, enable1)
- UI.ChangeWidget(Id(:memberaddr1), :Enabled, !enable1)
- UI.ChangeWidget(Id(:memberaddr1_add), :Enabled, !enable1)
- UI.ChangeWidget(Id(:memberaddr1_del), :Enabled, !enable1)
- UI.ChangeWidget(Id(:memberaddr1_edit), :Enabled, !enable1)
+ UI.ChangeWidget(Id(:memberaddr), :Enabled, !enable1)
+ UI.ChangeWidget(Id(:memberaddr_add), :Enabled, !enable1)
+ UI.ChangeWidget(Id(:memberaddr_del), :Enabled, !enable1)
+ UI.ChangeWidget(Id(:memberaddr_edit), :Enabled, !enable1)
UI.ChangeWidget(Id(:mcastaddr2), :Enabled, enable2)
- UI.ChangeWidget(Id(:memberaddr2), :Enabled, !enable2)
- UI.ChangeWidget(Id(:memberaddr2_add), :Enabled, !enable2)
- UI.ChangeWidget(Id(:memberaddr2_del), :Enabled, !enable2)
- UI.ChangeWidget(Id(:memberaddr2_edit), :Enabled, !enable2)
nil
end
+ # BNC#871970, change member address struct to memberaddr
def CommunicationLayout
result = {}
@@ -391,13 +455,6 @@
_("Multicast Address:")
),
InputField(Id(:mcastport1), Opt(:hstretch), _("Multicast Port:")),
- Left(Label(_("Member Address:"))),
- Table(Id(:memberaddr1), Header("ip","nodeid"),[]),
- HBox(
- PushButton(Id(:memberaddr1_add), "Add"),
- PushButton(Id(:memberaddr1_del), "Del"),
- PushButton(Id(:memberaddr1_edit), "Edit")
- )
)
)
@@ -415,38 +472,39 @@
),
InputField(Id(:mcastaddr2), Opt(:hstretch), _("Multicast Address:")),
InputField(Id(:mcastport2), Opt(:hstretch), _("Multicast Port:")),
- Left(Label(_("Member Address:"))),
- Table(Id(:memberaddr2), Header("ip","nodeid"),[]),
- HBox(
- PushButton(Id(:memberaddr2_add), "Add"),
- PushButton(Id(:memberaddr2_del), "Del"),
- PushButton(Id(:memberaddr2_edit), "Edit")
- )
)
)
nid = VBox(
HBox(
Left(InputField(Id(:cluster_name),Opt(:hstretch), _("Cluster Name:"))),
- Left(InputField(Id(:expected_votes),Opt(:hstretch), _("expected votes:"),"")),
+ Left(InputField(Id(:expected_votes),Opt(:hstretch), _("Expected Votes:"),"")),
+ ComboBox(
+ Id(:rrpmode),
+ Opt(:hstretch),
+ _("rrp mode:"),
+ ["none", "active", "passive"]
+ )
),
Left(
CheckBox(Id(:autoid), Opt(:notify), _("Auto Generate Node ID"), true)
)
)
- rrpm = VBox(
- ComboBox(
- Id(:rrpmode),
- Opt(:hstretch),
- _("rrp mode:"),
- ["none", "active", "passive"]
+ ip_table = VBox(
+ Left(Label(_("Member Address:"))),
+ Table(Id(:memberaddr), Header("IP", "Redundant IP", "nodeid"), []),
+ Right(HBox(
+ PushButton(Id(:memberaddr_add), "Add"),
+ PushButton(Id(:memberaddr_del), "Del"),
+ PushButton(Id(:memberaddr_edit), "Edit"))
))
-
contents = VBox(
transport,
- HBox(HWeight(1,VBox(iface, nid)),HWeight(1,VBox(riface, rrpm)))
+ HBox(HWeight(1, VBox(iface)), HWeight(1, VBox(riface))),
+ ip_table,
+ HBox(nid),
)
my_SetContents("communication", contents)
@@ -473,6 +531,12 @@
UI.ChangeWidget(Id(:rrpmode), :Enabled, true)
end
+ # BNC#879596, check the corosync.conf format
+ if Cluster.config_format == "old"
+ Popup.Message(" NOTICE: Detected old corosync configuration.\n Please reconfigure the member list and confirm all other settings.")
+ Cluster.config_format = "showed"
+ end
+
transport_switch
nil
@@ -485,34 +549,22 @@
current = 0
items = []
+ # BNC#871970,change structure
# remove duplicated elements
- Cluster.memberaddr1 = Ops.add(Cluster.memberaddr1, [])
- Cluster.memberaddr2 = Ops.add(Cluster.memberaddr2, [])
+ Cluster.memberaddr = Ops.add(Cluster.memberaddr, [])
i = 0
items = []
- Builtins.foreach(Cluster.memberaddr1) do |value|
- items.push(Item(Id(i), value[:addr], value[:nodeid]))
+ Builtins.foreach(Cluster.memberaddr) do |value|
+ items.push(Item(Id(i), value[:addr1],value[:addr2], value[:nodeid]))
i += 1
end
- current = Convert.to_integer(UI.QueryWidget(:memberaddr1, :CurrentItem))
+ current = Convert.to_integer(UI.QueryWidget(:memberaddr, :CurrentItem))
current = 0 if current == nil
current = Ops.subtract(i, 1) if Ops.greater_or_equal(current, i)
- UI.ChangeWidget(:memberaddr1, :Items, items)
- UI.ChangeWidget(:memberaddr1, :CurrentItem, current)
-
- i = 0
- items = []
- Builtins.foreach(Cluster.memberaddr2) do |value|
- items.push(Item(Id(i), value[:addr], value[:nodeid]))
- i += 1
- end
- current = Convert.to_integer(UI.QueryWidget(:memberaddr2, :CurrentItem))
- current = 0 if current == nil
- current = Ops.subtract(i, 1) if Ops.greater_or_equal(current, i)
- UI.ChangeWidget(:memberaddr2, :Items, items)
- UI.ChangeWidget(:memberaddr2, :CurrentItem, current)
+ UI.ChangeWidget(:memberaddr, :Items, items)
+ UI.ChangeWidget(:memberaddr, :CurrentItem, current)
nil
end
@@ -544,66 +596,44 @@
end
if ret == :enable2
- if true == UI.QueryWidget(Id(:enable2), :Value)
+ if UI.QueryWidget(Id(:enable2), :Value)
+ # Changewidget items will change value to first one automatically
+ rrpvalue = UI.QueryWidget(Id(:rrpmode), :Value)
+ UI.ChangeWidget(Id(:rrpmode), :Items, ["passive","active"])
UI.ChangeWidget(Id(:rrpmode), :Enabled, true)
- UI.ChangeWidget(Id(:rrpmode), :Value, "passive")
+ UI.ChangeWidget(Id(:rrpmode), :Value, rrpvalue) if rrpvalue != "none"
else
+ UI.ChangeWidget(Id(:rrpmode), :Items, ["none"])
UI.ChangeWidget(Id(:rrpmode), :Value, "none")
UI.ChangeWidget(Id(:rrpmode), :Enabled, false)
end
end
- if ret == :memberaddr1_add
- ret = addr_input_dialog({}, UI.QueryWidget(Id(:autoid), :Value))
+ if ret == :memberaddr_add
+ ret = addr_input_dialog({}, UI.QueryWidget(Id(:autoid), :Value), UI.QueryWidget(Id(:enable2), :Value))
next if ret == :cancel
- Cluster.memberaddr1.push(ret)
+ Cluster.memberaddr.push(ret)
end
- if ret == :memberaddr1_edit
+ if ret == :memberaddr_edit
current = 0
str = ""
- current = Convert.to_integer(
- UI.QueryWidget(:memberaddr1, :CurrentItem)
- )
- ret = addr_input_dialog(Cluster.memberaddr1[current] || "" ,UI.QueryWidget(Id(:autoid), :Value))
- next if ret == :cancel
- Cluster.memberaddr1[current]= ret
- end
-
- if ret == :memberaddr1_del
- current = 0
- current = Convert.to_integer(
- UI.QueryWidget(:memberaddr1, :CurrentItem)
- )
- Cluster.memberaddr1 = Builtins.remove(Cluster.memberaddr1, current)
- end
-
- if ret == :memberaddr2_add
- ret = addr_input_dialog({}, UI.QueryWidget(Id(:autoid), :Value))
- next if ret == :cancel
- Cluster.memberaddr2.push(ret)
- end
+ # The value will be nil if the list is empty, however nil.to_i is 0
+ current = UI.QueryWidget(:memberaddr, :CurrentItem).to_i
- if ret == :memberaddr2_edit
- current = 0
- str = ""
-
- current = Convert.to_integer(
- UI.QueryWidget(:memberaddr2, :CurrentItem)
- )
- ret = addr_input_dialog(Cluster.memberaddr2[current] || "" ,
- UI.QueryWidget(Id(:autoid), :Value))
+ ret = addr_input_dialog(Cluster.memberaddr[current] || {} ,UI.QueryWidget(Id(:autoid), :Value ), UI.QueryWidget(Id(:enable2), :Value))
next if ret == :cancel
- Cluster.memberaddr1[current] = ret
+ Cluster.memberaddr[current]= ret
end
- if ret == :memberaddr2_del
+ if ret == :memberaddr_del
current = 0
current = Convert.to_integer(
- UI.QueryWidget(:memberaddr2, :CurrentItem)
+ UI.QueryWidget(:memberaddr, :CurrentItem)
)
- Cluster.memberaddr2 = Builtins.remove(Cluster.memberaddr2, current)
+ # Notice, current could be "nil" if the list is empty.
+ Cluster.memberaddr = Builtins.remove(Cluster.memberaddr, current)
end
if ret == :next || ret == :back
@@ -705,7 +735,7 @@
VSpacing(1),
Label(
_(
- "For newly created cluster, push the button below to generate /etc/corosync/authkey."
+ "For a newly created cluster, push the button below to generate /etc/corosync/authkey."
)
),
Label(
@@ -909,6 +939,7 @@
my_SetContents("service", contents)
event = {}
+ errormsg = "See 'journalctl -xn' for details."
CWMFirewallInterfaces.OpenFirewallInit(firewall_widget, "")
while true
UpdateServiceStatus()
@@ -927,16 +958,18 @@
end
# pacemaker will start corosync automatically.
- # to stop pacemaker, you have to stop corosync first.
+ # BNC#872651 is fixed, so stop pacemaker could stop corosync at the same time.
if ret == "start_now"
Cluster.save_csync2_conf
Cluster.SaveClusterConfig
- Report.Error(Service.Error) if !Service.Start("pacemaker")
+ # BNC#872651 , add more info about error message
+ Report.Error(Service.Error + errormsg) if !Service.Start("pacemaker")
next
end
if ret == "stop_now"
- Report.Error(Service.Error) if !Service.Stop("corosync")
+ # BNC#874563,stop pacemaker could stop corosync since BNC#872651 is fixed
+ Report.Error(Service.Error + errormsg) if !Service.Stop("pacemaker")
next
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-cluster-3.1.1/src/include/cluster/helps.rb new/yast2-cluster-3.1.10/src/include/cluster/helps.rb
--- old/yast2-cluster-3.1.1/src/include/cluster/helps.rb 2014-02-21 08:42:34.000000000 +0100
+++ new/yast2-cluster-3.1.10/src/include/cluster/helps.rb 2014-07-02 11:24:50.000000000 +0200
@@ -38,7 +38,9 @@
"<p><b><big>Port</big></b><br>This specifies the UDP port number. It is possible to use the same multicast address on a network with the openais services configured for different UDP ports.<br></p>\n" +
"<p><b><big>Member Address</big></b><br>This list specifies all the nodes in the cluster by IP address. This could be configurable when using udpu <br></p>\n" +
"<p><b><big>Node ID</big></b><br>This configuration option is optional when using IPv4 and required when using IPv6. This is a 32 bit value specifying the node identifier delivered to the cluster membership service. If this is not specified with IPv4, the node id will be determined from the 32 bit IP address the system to which the system is bound with ring identifier of 0. The node identifier value of zero is reserved and should not be used.<br></p>\n" +
- "<p><b><big>rrp_mode</big></b><br>This specifies the mode of redundant ring, which may be none, active, or passive. Active replication offers slightly lower latency from transmit to delivery in faulty network environments but with less performance. Passive replication may nearly double the speed of the totem protocol if the protocol doesn't become cpu bound. The final option is none, in which case only one network interface will be used to operate the totem protocol. If only one interface directive is specified, none is automatically chosen. If multiple interface directives are specified, only active or passive may be chosen.<br></p>\n"
+ "<p><b><big>rrp_mode</big></b><br>This specifies the mode of redundant ring, which may be none, active, or passive. Active replication offers slightly lower latency from transmit to delivery in faulty network environments but with less performance. Passive replication may nearly double the speed of the totem protocol if the protocol doesn't become cpu bound. The final option is none, in which case only one network interface will be used to operate the totem protocol. If only one interface directive is specified, none is automatically chosen. If multiple interface directives are specified, only active or passive may be chosen.<br></p>\n" +
+ "<p><b><big>Expected votes</big></b><br>Expect vote number for voting quorum. Will be automatically calculated when the nodelist {} section is present in corosync.conf or can be specified in the quorum {} section.<br></p>\n" +
+ "<p><b><big>Auto Generate Node ID</big></b><br>Nodeid is required when using IPv6. Auto node ID enabled will generate nodeid automatically.<br></p>\n"
),
"security" => _(
"\n" +
@@ -47,7 +49,8 @@
),
"service" => _(
"\n" +
- "\t\t\t<p><b><big>Booting</big></b><br>Starting openais service during boot or not</p>\n" +
+ "\t\t\t<p><b><big>Booting</big></b><br>Starting corosync service during boot or not</p>\n" +
+ "\t\t\t<p><b><big>Firewall Settings</big></b><br>Enable the port when Firewall is enabled</p>\n" +
"\t\t\t"
),
"csync2" => _(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-cluster-3.1.1/src/include/cluster/wizards.rb new/yast2-cluster-3.1.10/src/include/cluster/wizards.rb
--- old/yast2-cluster-3.1.1/src/include/cluster/wizards.rb 2014-02-21 08:42:34.000000000 +0100
+++ new/yast2-cluster-3.1.10/src/include/cluster/wizards.rb 2014-07-02 11:24:50.000000000 +0200
@@ -87,8 +87,8 @@
else
UI.WizardCommand(term(:SetNextButtonLabel, Label.FinishButton))
UI.WizardCommand(term(:SetAbortButtonLabel, Label.CancelButton))
- Wizard.HideBackButton
end
+ Wizard.HideBackButton
Wizard.SelectTreeItem(Ops.get_string(sequence, "ws_start", ""))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-cluster-3.1.1/src/modules/Cluster.rb new/yast2-cluster-3.1.10/src/modules/Cluster.rb
--- old/yast2-cluster-3.1.1/src/modules/Cluster.rb 2014-02-21 08:42:34.000000000 +0100
+++ new/yast2-cluster-3.1.10/src/modules/Cluster.rb 2014-07-02 11:24:50.000000000 +0200
@@ -69,6 +69,8 @@
@threads = ""
@cluster_name = ""
@expected_votes = ""
+ @two_node = ""
+ @config_format = ""
@bindnetaddr1 = ""
@mcastaddr1 = ""
@@ -89,10 +91,12 @@
@transport = ""
# example:
- # [{:addr=>"10.16.35.101", :nodeid=>"1"}, {:addr=>"10.16.35.102", :nodeid=>"2"},
- # {:addr=>"10.16.35.103"}, {:addr=>"10.16.35.104"}, {:addr=>"10.16.35.105"}]
- @memberaddr1 = []
- @memberaddr2 = []
+ # [{:addr1=>"10.16.35.101",:addr2=>"192.168.0.1", :nodeid=>"1"},
+ # {:addr1=>"10.16.35.102",:addr2=>"192.168.0.2", :nodeid=>"2"},
+ # {:addr1=>"10.16.35.103",:addr2=>"192.168.0.3" },
+ # {:addr1=>"10.16.35.104",:nodeid=>"4" },
+ # {:addr1=>"10.16.35.105",:nodeid=>"5" }]
+ @memberaddr = []
@csync2_host = []
@csync2_include = []
@@ -163,6 +167,7 @@
@expected_votes = SCR.Read(path(".openais.quorum.expected_votes")).to_s
+ @config_format = SCR.Read(path(".openais.totem.interface.member.memberaddr")).to_s
@transport = SCR.Read(path(".openais.totem.transport"))
@transport = "udp" if @transport == nil
@@ -171,15 +176,29 @@
Builtins.foreach(interfaces) do |interface|
if interface == "interface0"
if @transport == "udpu"
- address = SCR.Read(path(".openais.totem.interface.interface0.member")).split(" ")
+ # BNC#871970, change member addresses to nodelist structure
+ # memberaddr of udpu only read in interface0
+ # address is like "123.3.21.32;156.32.123.1:1 123.3.21.54;156.32.123.4:2
+ # 123.3.21.44;156.32.123.9"
+ address = SCR.Read(path(".openais.nodelist.node")).split(" ")
address.each do |addr|
p = addr.split(":")
if p[1] != nil
- @memberaddr1.push({:addr=>p[0],:nodeid=>p[1]})
- elsif
- @memberaddr1.push({:addr=>p[0]})
+ q = p[0].split(";")
+ if q[1] != nil
+ @memberaddr.push({:addr1=>q[0],:addr2=>q[1],:nodeid=>p[1]})
+ else
+ @memberaddr.push({:addr1=>q[0],:nodeid=>p[1]})
+ end
+ else
+ q = p[0].split(";")
+ if q[1] != nil
+ @memberaddr.push({:addr1=>q[0],:addr2=>q[1]})
+ else
+ @memberaddr.push({:addr1=>q[0]})
+ end
end
- end
+ end # end address.each
else
@mcastaddr1 = Convert.to_string(
@@ -194,17 +213,8 @@
)
end
if interface == "interface1"
- if @transport == "udpu"
- address = SCR.Read(path(".openais.totem.interface.interface1.member")).split(" ")
- address.each do |addr|
- p = addr.split(":")
- if p[1] != nil
- @memberaddr2.push({:addr=>p[0],:nodeid=>p[1]})
- elsif
- @memberaddr2.push({:addr=>p[0]})
- end
- end
- else
+ # member address only get in interface0
+ if @transport == "udp"
@mcastaddr2 = Convert.to_string(
SCR.Read(path(".openais.totem.interface.interface1.mcastaddr"))
)
@@ -239,15 +249,20 @@
end
+ # BNC#871970, generate string like "123.3.21.32;156.32.123.1:1"
def generateMemberString(memberaddr)
address_string = ""
memberaddr.each do |i|
- address_string += i[:addr]
- if i[:nodeid]
- address_string += ":#{i[:nodeid]}"
+ address_string << i[:addr1]
+ if i[:addr2]
+ address_string << ";#{i[:addr2]}"
+ address_string << ":#{i[:nodeid]}" if i [:nodeid]
+ else
+ address_string << ":#{i[:nodeid]}" if i[:nodeid]
end
- address_string += " "
+ address_string << " "
end
+
return address_string
end
@@ -264,12 +279,13 @@
SCR.Write(path(".openais.totem.transport"), @transport)
SCR.Write(path(".openais.totem.cluster_name"), @cluster_name)
SCR.Write(path(".openais.quorum.expected_votes"), @expected_votes)
-
+
+ # BNC#871970, only write member address when interface0
if @transport == "udpu"
SCR.Write(
- path(".openais.totem.interface.interface0.member"),
- generateMemberString(@memberaddr1)
+ path(".openais.nodelist.node"),
+ generateMemberString(@memberaddr)
)
SCR.Write(path(".openais.totem.interface.interface0.mcastaddr"), "")
else
@@ -277,8 +293,16 @@
path(".openais.totem.interface.interface0.mcastaddr"),
@mcastaddr1
)
- SCR.Write(path(".openais.totem.interface.interface0.member"), "")
+ SCR.Write(path(".openais.nodelist.node"), "")
+ end
+
+ # BNC#883235. Enable "two_node" when using two node cluster
+ if (@expected_votes == "2") or (@transport == "udpu" && @memberaddr.size == 2)
+ # Set "1" to enable two_node mode when two nodes, otherwise is "0".
+ @two_node = "1"
end
+ SCR.Write(path(".openais.quorum.two_node"), @two_node)
+
SCR.Write(
path(".openais.totem.interface.interface0.bindnetaddr"),
@bindnetaddr1
@@ -292,17 +316,12 @@
SCR.Write(path(".openais.totem.interface.interface1"), "")
else
if @transport == "udpu"
- SCR.Write(
- path(".openais.totem.interface.interface1.member"),
- generateMemberString(@memberaddr2)
- )
SCR.Write(path(".openais.totem.interface.interface1.mcastaddr"), "")
else
SCR.Write(
path(".openais.totem.interface.interface1.mcastaddr"),
@mcastaddr2
)
- SCR.Write(path(".openais.totem.interface.interface1.member"), "")
end
SCR.Write(
path(".openais.totem.interface.interface1.bindnetaddr"),
@@ -471,6 +490,7 @@
Builtins.sleep(sl)
return false if Abort()
+ Progress.Finish
@modified = false
true
end
@@ -485,7 +505,6 @@
steps = 2
sl = 500
- Builtins.sleep(sl)
# TODO FIXME Names of real stages
# We do not set help text here, because it was set outside
@@ -576,6 +595,8 @@
)
)
end
+ # is that necessary? since enable pacemaker will trigger corosync/csync2?
+ # FIXME if not necessary
if @global_startopenais == true
SCR.Execute(path(".target.bash_output"), "systemctl enable corosync.service")
end
@@ -584,6 +605,7 @@
end
return false if Abort()
+ Progress.Finish
true
end
@@ -591,20 +613,21 @@
# (For use by autoinstallation.)
# @param [Hash] settings The YCP structure to be imported.
# @return [Boolean] True on success
+ # BNC#871970 , change to memberaddr. But seems still not functional
def Import(settings)
settings = deep_copy(settings)
@secauth = Ops.get_boolean(settings, "secauth", false)
@threads = Ops.get_string(settings, "threads", "")
@transport = Ops.get_string(settings, "transport", "udp")
@bindnetaddr1 = Ops.get_string(settings, "bindnetaddr1", "")
- @memberaddr1 = Ops.get_list(settings, "memberaddr1", [])
+ @memberaddr = Ops.get_list(settings, "memberaddr", [])
@mcastaddr1 = Ops.get_string(settings, "mcastaddr1", "")
@cluster_name = settings["cluster_name"] || ""
@expected_votes = settings["expected_votes"] || ""
- @mcastport1 = Ops.get_string(settings, "mcastport1", "")
+ @two_node = settings["two_node"] || ""
+ @mcastport2 = Ops.get_string(settings, "mcastport1", "")
@enable2 = Ops.get_boolean(settings, "enable2", false)
@bindnetaddr2 = Ops.get_string(settings, "bindnetaddr2", "")
- @memberaddr2 = Ops.get_list(settings, "memberaddr2", [])
@mcastaddr2 = Ops.get_string(settings, "mcastaddr2", "")
@mcastport2 = Ops.get_string(settings, "mcastport2", "")
@autoid = Ops.get_boolean(settings, "autoid", true)
@@ -623,20 +646,21 @@
# Dump the cluster settings to a single map
# (For use by autoinstallation.)
# @return [Hash] Dumped settings (later acceptable by Import ())
+ # BNC#871970 , change to memberaddr. But seems still not functional
def Export
result = {}
Ops.set(result, "secauth", @secauth)
Ops.set(result, "threads", @threads)
Ops.set(result, "transport", @transport)
Ops.set(result, "bindnetaddr1", @bindnetaddr1)
- Ops.set(result, "memberaddr1", @memberaddr1)
+ Ops.set(result, "memberaddr", @memberaddr)
Ops.set(result, "mcastaddr1", @mcastaddr1)
result["cluster_name"] = @cluster_name
result["expected_votes"] = @expected_votes
+ result["two_node"] = @two_node
Ops.set(result, "mcastport1", @mcastport1)
Ops.set(result, "enable2", @enable2)
Ops.set(result, "bindnetaddr2", @bindnetaddr2)
- Ops.set(result, "memberaddr2", @memberaddr2)
Ops.set(result, "mcastaddr2", @mcastaddr2)
Ops.set(result, "mcastport2", @mcastport2)
Ops.set(result, "autoid", true)
@@ -725,6 +749,8 @@
publish :variable => :mcastaddr1, :type => "string"
publish :variable => :cluster_name, :type => "string"
publish :variable => :expected_votes, :type => "string"
+ publish :variable => :two_node, :type => "string"
+ publish :variable => :config_format, :type => "string"
publish :variable => :mcastport1, :type => "string"
publish :variable => :enable2, :type => "boolean"
publish :variable => :bindnetaddr2, :type => "string"
@@ -738,8 +764,7 @@
publish :variable => :global_startopenais, :type => "boolean"
publish :variable => :global_startcsync2, :type => "boolean"
publish :variable => :transport, :type => "string"
- publish :variable => :memberaddr1, :type => "list <string>"
- publish :variable => :memberaddr2, :type => "list <string>"
+ publish :variable => :memberaddr, :type => "list <string>"
publish :function => :SaveClusterConfig, :type => "void ()"
publish :variable => :csync2_host, :type => "list <string>"
publish :variable => :csync2_include, :type => "list <string>"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-cluster-3.1.1/src/servers_non_y2/ag_openais new/yast2-cluster-3.1.10/src/servers_non_y2/ag_openais
--- old/yast2-cluster-3.1.1/src/servers_non_y2/ag_openais 2014-02-27 10:24:58.000000000 +0100
+++ new/yast2-cluster-3.1.10/src/servers_non_y2/ag_openais 2014-07-02 11:24:50.000000000 +0200
@@ -108,7 +108,7 @@
"rrp_problem_count_threshhold":{"doc":"The number of times a problem is detected with a link before setting the link faulty.",
"type":"int", "default_value":10},
"rrp_token_expired_timeout":{"doc":"This specifies the time in milliseconds to increment the problem counter for the redundant ring protocol after not having received a token from all rings for a particular processor.", "type":"int", "default_value":47},
- "transport":{"doc":"", "type":"select[udp,udpu]","default_value":"udp"},
+ "transport":{"doc":"Transport protocol", "type":"select[udp,udpu]","default_value":"udp"},
}
@@ -130,6 +130,11 @@
"nodeid":{"doc":"required in ipv6, optional in ipv4","type":"string"},
}
+#BNC-879596. Obsolete, just use to detect the file format is SLE11SP3 or SLE12
+old_memberlist_table = {
+ "memberaddr":{"doc":"obsolete! Only use to detect old(SLE11SP3) format.", "type":"string", "default_value":"0"},
+}
+
logging_option_table = {
"debug":{"doc":"Whether or not turning on the debug information in the log", "default_value":"off",
"suggested_value":"off"},
@@ -210,7 +215,7 @@
if quorum_options[key] == "":
continue
else:
- f.write("\t#%s\n\n" % (quorum_option_table[key]["doc"]))
+ f.write("\t#%s\n" % (quorum_option_table[key]["doc"]))
f.write("\t%s:\t%s\n\n" % (key, quorum_options[key]))
f.write("}\n")
@@ -219,7 +224,7 @@
return
f.write("qb {\n");
for key in qb_options.keys():
- f.write("\t#%s\n\n" % (qb_option_table[key]["doc"]))
+ f.write("\t#%s\n" % (qb_option_table[key]["doc"]))
f.write("\t%s:\t%s\n\n" % (key, qb_options[key]))
f.write("}\n")
@@ -230,7 +235,12 @@
f.write("nodelist {\n");
for node in nodelist:
f.write("\tnode {\n")
- for key in node.keys():
+ # Sort the keys like ring0 and ring1
+ klist=node.keys()
+ klist.sort()
+ for key in klist:
+ if node[key] == "":
+ continue
f.write("\t#%s\n" % (node_option_table[key]["doc"]))
f.write("\t%s:\t%s\n\n" % (key, node[key]))
f.write("\t}\n")
@@ -248,7 +258,7 @@
f.write("\t\t%s:\t%s\n\n" % (l, log[l]))
f.write("\t}\n")
continue
- f.write("\t#%s\n\n" % (logging_option_table[key]["doc"]))
+ f.write("\t#%s\n" % (logging_option_table[key]["doc"]))
f.write("\t%s:\t%s\n\n" % (key, logging_options[key]))
f.write("}\n")
@@ -261,16 +271,16 @@
for inf in totem_options["interface"]:
f.write("\tinterface {\n")
for k in inf.keys():
- if inf[k] == "":
+ if inf[k] == "" or k == "oldlist":
continue;
else:
- f.write("\t\t#%s\n\n" % (interface_option_table[k]["doc"]))
+ f.write("\t\t#%s\n" % (interface_option_table[k]["doc"]))
f.write("\t\t%s:\t%s\n\n" % (k, inf[k]))
f.write("\t}\n")
continue
if totem_options[key] == "":
continue
- f.write("\t#%s\n\n" % (totem_option_table[key]["doc"]))
+ f.write("\t#%s\n" % (totem_option_table[key]["doc"]))
f.write("\t%s:\t%s\n\n" % (key, totem_options[key]))
# We print out all possible configurations as well
# dont for now. looking for better solution
@@ -278,7 +288,7 @@
for opt in totem_option_table.keys():
v = totem_options.get(opt, None)
if v == None:
- f.write("\t#%s\n\n" % (totem_option_table[opt]["doc"]))
+ f.write("\t#%s\n" % (totem_option_table[opt]["doc"]))
f.write("\t#%s:\t%s\n\n" % (opt, totem_option_table[opt]["default_value"]))
"""
f.write("}\n")
@@ -330,6 +340,10 @@
members = result.get("node", [])
members.append(opt_parser(file, node_option_table))
result["node"] = members
+ elif i.lstrip().split(" ")[0] == "member":
+ oldmembers = result.get("oldlist", [])
+ oldmembers.append(opt_parser(file, old_memberlist_table))
+ result["oldlist"] = oldmembers
else:
#y2warning("Unknown sub-directive %s found. Ignore it" % (i.lstrip().split(" ")[0]))
while (i[-1] != "}"):
@@ -394,16 +408,19 @@
else:
return None
-def generateMemberString(ringnum):
+# BNC#871970,combine ring0 and ring1 of one node into one struct
+# Only ring0 is available
+def generateMemberString():
member_str = ""
- ring_address = "ring%d_addr" % ringnum
- #filter all nodes in a same ring
for item in nodelist_options.get("node"):
- if item.has_key(ring_address):
- address = item.get(ring_address, None)
+ if item.has_key("ring0_addr"):
+ address1 = item.get("ring0_addr", None)
+ member_str += address1
+ address2 = item.get("ring1_addr", None)
+ if address2:
+ member_str = member_str + ";" + address2
nodeid = item.get("nodeid", None)
- member_str += address
if nodeid:
member_str = member_str + ":" + nodeid
member_str = member_str + " "
@@ -415,6 +432,13 @@
del totem_options["interface"][i]
break
+# obsolete setting. BNC-879596, pop up a message if config file is in old format.
+def check_conf_format():
+ for x in range(len(totem_options["interface"])):
+ if totem_options["interface"][x].has_key("oldlist"):
+ return "old"
+ return "new"
+
def load_ais_conf(filename):
try:
f = open(filename, "r")
@@ -469,6 +493,9 @@
return '[]'
else:
return '[]'
+ elif path_arr[0] == 'nodelist':
+ if len(path_arr) == 1:
+ return '["node"]'
else:
return 'nil\n'
@@ -477,9 +504,11 @@
return "nil\n"
elif path[0] == "quorum" and len(path) >= 2:
if path[1] == "expected_votes":
- return '"%s"' % quorum_options.get("expected_votes", "nil")
+ return '"%s"' % quorum_options.get("expected_votes", "")
+ if path[1] == "two_node":
+ return '"%s"' % quorum_options.get("two_node", "")
else:
- return "nil"
+ return ""
elif path[0] == "totem":
if len(path) == 1:
return "nil"
@@ -517,8 +546,6 @@
return '"%d"' % i.get("mcastport", 5405)
if path[3] == "ttl":
return '"%d"' % i.get("ttl", 1)
- elif path[3] == "member":
- return generateMemberString(0)
else:
return "nil"
elif path[2] == "interface1":
@@ -532,18 +559,28 @@
return '"%s"' % i.get("mcastaddr", "")
elif path[3] == "mcastport":
return '"%d"' % i.get("mcastport", 5405)
- elif path[3] == "member":
- return generateMemberString(1)
else:
return "nil"
+ elif path[2] == "member":
+ return '"%s"' % check_conf_format()
else:
return "nil"
else:
return "nil"
else:
return "nil"
+ elif path[0] == "nodelist":
+ if len(path[0]) == 1:
+ return "nil"
+ elif len(path) == 2:
+ if path[1] == 'node':
+ return generateMemberString()
+ else:
+ return "nil"
+ else:
+ return "nil"
else:
- return "nil"
+ return "nil" # end of path[0]
def saveFile(self):
@@ -573,10 +610,16 @@
def doWrite(self, path, args):
if path[0] == "":
self.saveFile()
+ return "true"
elif path[0] == "quorum":
if path[1] == "expected_votes":
quorum_options["expected_votes"] = args
return "true"
+ elif path[1] == "two_node":
+ quorum_options["two_node"] = args
+ return "true"
+ else:
+ return "false"
elif path[0] == "totem":
if len(path) == 2:
if path[1] == "autoid":
@@ -655,21 +698,6 @@
return "true"
except ValueError:
return "false"
- elif path[3] == "member":
- member_addr_set = []
- ring_address = "ring%d_addr" % ring_num
- for member_address in args.strip().split(" "):
- colon_pos = member_address.find(":")
- if (colon_pos > -1):
- member_addr_set.append({ring_address:member_address[:colon_pos],"nodeid":member_address[colon_pos+1:]})
- else:
- member_addr_set.append({ring_address:member_address})
- #if ring_num=1,this is interface1. This means I already has interface0, so keep the previous nodelist options
- if (ring_num):
- nodelist_options["node"] += member_addr_set
- else:
- nodelist_options["node"] = member_addr_set
- return "true"
else:
return "false"
else:
@@ -678,6 +706,37 @@
return "false"
else:
return "false"
+ elif path[0] == "nodelist":
+ if len(path[0]) == 1:
+ return "nil"
+ elif len(path) == 2:
+ if path[1] == 'node':
+ member_addr_set = []
+ # emtry string 's split will cause a [''] not []
+ if args == "":
+ nodelist_options["node"] = member_addr_set
+ return "nil"
+ for member_address in args.strip().split(" "):
+ colon_pos = member_address.find(":")
+ if (colon_pos > -1):
+ tmpid = member_address[colon_pos+1:]
+ semicolon_pos = member_address[:colon_pos].find(";")
+ if (semicolon_pos > -1):
+ member_addr_set.append({"ring0_addr":member_address[:semicolon_pos],"ring1_addr":member_address[semicolon_pos+1:colon_pos],"nodeid":member_address[colon_pos+1:]})
+ else:
+ member_addr_set.append({"ring0_addr":member_address[:colon_pos],"nodeid":member_address[colon_pos+1:]})
+ else:
+ semicolon_pos = member_address[:colon_pos].find(";")
+ if (semicolon_pos > -1):
+ member_addr_set.append({"ring0_addr":member_address[:semicolon_pos],"ring1_addr":member_address[semicolon_pos+1:]})
+ else:
+ member_addr_set.append({"ring0_addr":member_address})
+ nodelist_options["node"] = member_addr_set
+ return "true"
+ else:
+ return "nil"
+ else:
+ return "nil"
else:
return "false"
return "false"
@@ -698,6 +757,7 @@
#y2debug ("newline: %s" % scr_command);
+ # eg. Read(.totem.interface.interface0.binnetaddr,"args") Write(.)
p = re.compile('^`?(\w+)\s*(\(([^,]*)(,\s*(.*))?\s*\))?\s*$')
r = p.match(scr_command)
if (r):
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package libvirt for openSUSE:Factory checked in at 2014-07-04 17:18:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libvirt (Old)
and /work/SRC/openSUSE:Factory/.libvirt.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libvirt"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libvirt/libvirt.changes 2014-06-25 21:20:47.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libvirt.new/libvirt.changes 2014-07-04 17:18:50.000000000 +0200
@@ -1,0 +2,22 @@
+Wed Jul 2 12:49:36 MDT 2014 - jfehlig(a)suse.com
+
+- Move 'Requires' of qemu from libvirt-daemon-qemu subpackage to
+ libvirt-daemon-driver-qemu
+ bnc#885267
+
+-------------------------------------------------------------------
+Wed Jul 2 12:42:35 MDT 2014 - jfehlig(a)suse.com
+
+- Temporarily disable virt-aa-helper-test, which fails in Factory
+
+-------------------------------------------------------------------
+Wed Jul 2 11:31:22 MDT 2014 - jfehlig(a)suse.com
+
+- Update to libvirt 1.2.6
+ - libxl: add migration support and fixes
+ - Many incremental improvements and bug fixes, see
+ http://libvirt.org/news.html
+ - Drop upstream patch libxl-migration-support.patch
+ - Drop ia64-clone.patch since libvirt is not built for IA64
+
+-------------------------------------------------------------------
Old:
----
ia64-clone.patch
libvirt-1.2.5.tar.bz2
libxl-migration-support.patch
New:
----
libvirt-1.2.6.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libvirt.spec ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -235,7 +235,7 @@
Name: libvirt
Url: http://libvirt.org/
-Version: 1.2.5
+Version: 1.2.6
Release: 0
Summary: Library providing a simple virtualization API
License: LGPL-2.1+
@@ -430,14 +430,12 @@
# Upstream patches
# Need to go upstream
Patch100: xen-name-for-devid.patch
-Patch101: ia64-clone.patch
-Patch102: xen-pv-cdrom.patch
-Patch103: add-nocow-to-vol-xml.patch
+Patch101: xen-pv-cdrom.patch
+Patch102: add-nocow-to-vol-xml.patch
# pending review upstream patches
-Patch150: libxl-migration-support.patch
-Patch151: lxc-keep-caps-feature.patch
-Patch152: lxc-keep-caps-feature-conversion.patch
-Patch153: lxc-keep-caps-feature-doc.patch
+Patch150: lxc-keep-caps-feature.patch
+Patch151: lxc-keep-caps-feature-conversion.patch
+Patch152: lxc-keep-caps-feature-doc.patch
# Our patches
Patch200: libvirtd-defaults.patch
Patch201: libvirtd-init-script.patch
@@ -685,6 +683,7 @@
%if 0%{?suse_version} > 1210
Requires: lzop
%endif
+Requires: qemu
%description daemon-driver-qemu
The qemu driver plugin for the libvirtd daemon, providing
@@ -775,7 +774,6 @@
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
%endif
-Requires: qemu
%description daemon-qemu
Server side daemon and driver required to manage the virtualization
@@ -952,11 +950,9 @@
%patch100 -p1
%patch101 -p1
%patch102 -p1
-%patch103 -p1
%patch150 -p1
%patch151 -p1
%patch152 -p1
-%patch153 -p1
%patch200 -p1
%patch201 -p1
%patch202 -p1
@@ -1333,6 +1329,8 @@
%ifarch aarch64
EXTRA="$EXTRA virportallocatortest"
%endif
+# temporarily disable failing virt-aa-helper-test
+EXTRA="$EXTRA virt-aa-helper-test"
for i in nodeinfotest seclabeltest $EXTRA
do
rm -f $i
@@ -1504,6 +1502,7 @@
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/network/
%dir %attr(0755, root, root) %{_localstatedir}/lib/libvirt/dnsmasq/
+%attr(0755, root, root) %{_libdir}/%{name}/libvirt_leaseshelper
%dir %{_datadir}/libvirt/networks/
%{_datadir}/libvirt/networks/default.xml
%endif
@@ -1579,6 +1578,7 @@
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/network/
%dir %attr(0755, root, root) %{_localstatedir}/lib/libvirt/dnsmasq/
+%attr(0755, root, root) %{_libdir}/%{name}/libvirt_leaseshelper
%dir %{_libdir}/%{name}/connection-driver
%{_libdir}/%{name}/connection-driver/libvirt_driver_network.so
%endif
@@ -1736,7 +1736,9 @@
%{_bindir}/virt-pki-validate
%{_bindir}/virt-host-validate
%dir %{_libdir}/%{name}
-%{_libdir}/lib*.so.*
+%{_libdir}/libvirt.so.*
+%{_libdir}/libvirt-qemu.so.*
+%{_libdir}/libvirt-lxc.so.*
%attr(0755, root, root) %{_libdir}/%{name}/libvirt-guests.sh
%{_localstatedir}/adm/fillup-templates/sysconfig.libvirt-guests
%if %{with_systemd}
@@ -1772,9 +1774,17 @@
%files devel
%defattr(-, root, root)
+%{_libdir}/libvirt.so
+%{_libdir}/libvirt-qemu.so
+%{_libdir}/libvirt-lxc.so
%{_includedir}/libvirt
-%{_libdir}/*.so
+%{_includedir}/libvirt/virterror.h
+%{_includedir}/libvirt/libvirt.h
+%{_includedir}/libvirt/libvirt-qemu.h
+%{_includedir}/libvirt/libvirt-lxc.h
%{_libdir}/pkgconfig/libvirt.pc
+%{_libdir}/pkgconfig/libvirt-qemu.pc
+%{_libdir}/pkgconfig/libvirt-lxc.pc
%dir %{_datadir}/libvirt/api/
%{_datadir}/libvirt/api/libvirt-api.xml
%{_datadir}/libvirt/api/libvirt-qemu-api.xml
++++++ add-nocow-to-vol-xml.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -8,10 +8,10 @@
Signed-off-by: Chunyan Liu <cyliu(a)suse.com>
-Index: libvirt-1.2.5/docs/schemas/storagevol.rng
+Index: libvirt-1.2.6/docs/schemas/storagevol.rng
===================================================================
---- libvirt-1.2.5.orig/docs/schemas/storagevol.rng
-+++ libvirt-1.2.5/docs/schemas/storagevol.rng
+--- libvirt-1.2.6.orig/docs/schemas/storagevol.rng
++++ libvirt-1.2.6/docs/schemas/storagevol.rng
@@ -138,6 +138,11 @@
<ref name='compat'/>
</optional>
@@ -24,11 +24,11 @@
<ref name='fileFormatFeatures'/>
</optional>
</interleave>
-Index: libvirt-1.2.5/src/conf/storage_conf.c
+Index: libvirt-1.2.6/src/conf/storage_conf.c
===================================================================
---- libvirt-1.2.5.orig/src/conf/storage_conf.c
-+++ libvirt-1.2.5/src/conf/storage_conf.c
-@@ -1395,6 +1395,9 @@ virStorageVolDefParseXML(virStoragePoolD
+--- libvirt-1.2.6.orig/src/conf/storage_conf.c
++++ libvirt-1.2.6/src/conf/storage_conf.c
+@@ -1397,6 +1397,9 @@ virStorageVolDefParseXML(virStoragePoolD
virStringFreeList(version);
}
@@ -38,10 +38,10 @@
if (options->featureFromString && virXPathNode("./target/features", ctxt)) {
if ((n = virXPathNodeSet("./target/features/*", ctxt, &nodes)) < 0)
goto error;
-Index: libvirt-1.2.5/src/storage/storage_backend.c
+Index: libvirt-1.2.6/src/storage/storage_backend.c
===================================================================
---- libvirt-1.2.5.orig/src/storage/storage_backend.c
-+++ libvirt-1.2.5/src/storage/storage_backend.c
+--- libvirt-1.2.6.orig/src/storage/storage_backend.c
++++ libvirt-1.2.6/src/storage/storage_backend.c
@@ -37,6 +37,9 @@
#ifdef __linux__
# include <sys/ioctl.h>
@@ -99,10 +99,10 @@
vol->target.features) < 0) {
virCommandFree(cmd);
return NULL;
-Index: libvirt-1.2.5/src/util/virstoragefile.h
+Index: libvirt-1.2.6/src/util/virstoragefile.h
===================================================================
---- libvirt-1.2.5.orig/src/util/virstoragefile.h
-+++ libvirt-1.2.5/src/util/virstoragefile.h
+--- libvirt-1.2.6.orig/src/util/virstoragefile.h
++++ libvirt-1.2.6/src/util/virstoragefile.h
@@ -232,6 +232,7 @@ struct _virStorageSource {
* pool-specific enum for storage volumes */
virBitmapPtr features;
++++++ disable-virCgroupGetPercpuStats-test.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-1.2.5/tests/vircgrouptest.c
+Index: libvirt-1.2.6/tests/vircgrouptest.c
===================================================================
---- libvirt-1.2.5.orig/tests/vircgrouptest.c
-+++ libvirt-1.2.5/tests/vircgrouptest.c
+--- libvirt-1.2.6.orig/tests/vircgrouptest.c
++++ libvirt-1.2.6/tests/vircgrouptest.c
@@ -33,7 +33,6 @@
# include "virlog.h"
# include "virfile.h"
++++++ fix-pci-attach-xen-driver.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -8,11 +8,11 @@
This patch changes the xend driver to always call 'device_configure' for
PCI devices to be consistent with the usage in the xen tools.
-Index: libvirt-1.2.5/src/xen/xend_internal.c
+Index: libvirt-1.2.6/src/xen/xend_internal.c
===================================================================
---- libvirt-1.2.5.orig/src/xen/xend_internal.c
-+++ libvirt-1.2.5/src/xen/xend_internal.c
-@@ -2219,6 +2219,7 @@ xenDaemonAttachDeviceFlags(virConnectPtr
+--- libvirt-1.2.6.orig/src/xen/xend_internal.c
++++ libvirt-1.2.6/src/xen/xend_internal.c
+@@ -2222,6 +2222,7 @@ xenDaemonAttachDeviceFlags(virConnectPtr
virBuffer buf = VIR_BUFFER_INITIALIZER;
char class[8], ref[80];
char *target = NULL;
@@ -20,7 +20,7 @@
virCheckFlags(VIR_DOMAIN_AFFECT_LIVE | VIR_DOMAIN_AFFECT_CONFIG, -1);
-@@ -2317,8 +2318,18 @@ xenDaemonAttachDeviceFlags(virConnectPtr
+@@ -2320,8 +2321,18 @@ xenDaemonAttachDeviceFlags(virConnectPtr
}
sexpr = virBufferContentAndReset(&buf);
++++++ install-apparmor-profiles.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-1.2.5/examples/apparmor/Makefile.am
+Index: libvirt-1.2.6/examples/apparmor/Makefile.am
===================================================================
---- libvirt-1.2.5.orig/examples/apparmor/Makefile.am
-+++ libvirt-1.2.5/examples/apparmor/Makefile.am
+--- libvirt-1.2.6.orig/examples/apparmor/Makefile.am
++++ libvirt-1.2.6/examples/apparmor/Makefile.am
@@ -18,10 +18,22 @@ EXTRA_DIST= \
TEMPLATE \
libvirt-qemu \
@@ -27,10 +27,10 @@
apparmordir = $(sysconfdir)/apparmor.d/
apparmor_DATA = \
usr.lib.libvirt.virt-aa-helper \
-Index: libvirt-1.2.5/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
+Index: libvirt-1.2.6/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
===================================================================
--- /dev/null
-+++ libvirt-1.2.5/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
++++ libvirt-1.2.6/examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
@@ -0,0 +1,48 @@
+# Last Modified: Mon Apr 5 15:10:27 2010
+#include <tunables/global>
@@ -80,10 +80,10 @@
+ /**.[iI][sS][oO] r,
+ /**/disk{,.*} r,
+}
-Index: libvirt-1.2.5/examples/apparmor/usr.sbin.libvirtd.in
+Index: libvirt-1.2.6/examples/apparmor/usr.sbin.libvirtd.in
===================================================================
--- /dev/null
-+++ libvirt-1.2.5/examples/apparmor/usr.sbin.libvirtd.in
++++ libvirt-1.2.6/examples/apparmor/usr.sbin.libvirtd.in
@@ -0,0 +1,67 @@
+# Last Modified: Mon Apr 5 15:03:58 2010
+#include <tunables/global>
@@ -152,9 +152,9 @@
+ change_profile -> @{LIBVIRT}-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*-[0-9a-f]*,
+
+}
-Index: libvirt-1.2.5/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+Index: libvirt-1.2.6/examples/apparmor/usr.lib.libvirt.virt-aa-helper
===================================================================
---- libvirt-1.2.5.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+--- libvirt-1.2.6.orig/examples/apparmor/usr.lib.libvirt.virt-aa-helper
+++ /dev/null
@@ -1,48 +0,0 @@
-# Last Modified: Mon Apr 5 15:10:27 2010
@@ -205,9 +205,9 @@
- /**.[iI][sS][oO] r,
- /**/disk{,.*} r,
-}
-Index: libvirt-1.2.5/examples/apparmor/usr.sbin.libvirtd
+Index: libvirt-1.2.6/examples/apparmor/usr.sbin.libvirtd
===================================================================
---- libvirt-1.2.5.orig/examples/apparmor/usr.sbin.libvirtd
+--- libvirt-1.2.6.orig/examples/apparmor/usr.sbin.libvirtd
+++ /dev/null
@@ -1,63 +0,0 @@
-# Last Modified: Mon Apr 5 15:03:58 2010
++++++ libvirt-1.2.5.tar.bz2 -> libvirt-1.2.6.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/libvirt/libvirt-1.2.5.tar.bz2 /work/SRC/openSUSE:Factory/.libvirt.new/libvirt-1.2.6.tar.bz2 differ: char 11, line 1
++++++ libvirt-guests-init-script.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,9 +1,9 @@
Adjust libvirt-guests init files to conform to SUSE standards
-Index: libvirt-1.2.5/tools/libvirt-guests.init.in
+Index: libvirt-1.2.6/tools/libvirt-guests.init.in
===================================================================
---- libvirt-1.2.5.orig/tools/libvirt-guests.init.in
-+++ libvirt-1.2.5/tools/libvirt-guests.init.in
+--- libvirt-1.2.6.orig/tools/libvirt-guests.init.in
++++ libvirt-1.2.6/tools/libvirt-guests.init.in
@@ -3,15 +3,15 @@
# the following is the LSB init header
#
@@ -28,10 +28,10 @@
### END INIT INFO
# the following is chkconfig init header
-Index: libvirt-1.2.5/tools/libvirt-guests.sh.in
+Index: libvirt-1.2.6/tools/libvirt-guests.sh.in
===================================================================
---- libvirt-1.2.5.orig/tools/libvirt-guests.sh.in
-+++ libvirt-1.2.5/tools/libvirt-guests.sh.in
+--- libvirt-1.2.6.orig/tools/libvirt-guests.sh.in
++++ libvirt-1.2.6/tools/libvirt-guests.sh.in
@@ -16,14 +16,13 @@
# License along with this library. If not, see
# <http://www.gnu.org/licenses/>.
@@ -189,10 +189,10 @@
esac
-exit $RETVAL
+rc_exit
-Index: libvirt-1.2.5/tools/libvirt-guests.sysconf
+Index: libvirt-1.2.6/tools/libvirt-guests.sysconf
===================================================================
---- libvirt-1.2.5.orig/tools/libvirt-guests.sysconf
-+++ libvirt-1.2.5/tools/libvirt-guests.sysconf
+--- libvirt-1.2.6.orig/tools/libvirt-guests.sysconf
++++ libvirt-1.2.6/tools/libvirt-guests.sysconf
@@ -1,19 +1,29 @@
+## Path: System/Virtualization/libvirt-guests
+
++++++ libvirt-suse-netcontrol.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-1.2.5/configure.ac
+Index: libvirt-1.2.6/configure.ac
===================================================================
---- libvirt-1.2.5.orig/configure.ac
-+++ libvirt-1.2.5/configure.ac
+--- libvirt-1.2.6.orig/configure.ac
++++ libvirt-1.2.6/configure.ac
@@ -237,6 +237,7 @@ LIBVIRT_CHECK_FUSE
LIBVIRT_CHECK_GLUSTER
LIBVIRT_CHECK_HAL
@@ -26,7 +26,7 @@
esac
if test "$with_interface" = "yes" ; then
-@@ -2815,6 +2817,7 @@ LIBVIRT_RESULT_FUSE
+@@ -2822,6 +2824,7 @@ LIBVIRT_RESULT_FUSE
LIBVIRT_RESULT_GLUSTER
LIBVIRT_RESULT_HAL
LIBVIRT_RESULT_NETCF
@@ -34,11 +34,11 @@
LIBVIRT_RESULT_NUMACTL
LIBVIRT_RESULT_OPENWSMAN
LIBVIRT_RESULT_PCIACCESS
-Index: libvirt-1.2.5/src/Makefile.am
+Index: libvirt-1.2.6/src/Makefile.am
===================================================================
---- libvirt-1.2.5.orig/src/Makefile.am
-+++ libvirt-1.2.5/src/Makefile.am
-@@ -813,6 +813,10 @@ if WITH_NETCF
+--- libvirt-1.2.6.orig/src/Makefile.am
++++ libvirt-1.2.6/src/Makefile.am
+@@ -818,6 +818,10 @@ if WITH_NETCF
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_netcf.c
endif WITH_NETCF
@@ -49,7 +49,7 @@
if WITH_UDEV
INTERFACE_DRIVER_SOURCES += \
interface/interface_backend_udev.c
-@@ -1403,10 +1407,15 @@ if WITH_NETCF
+@@ -1414,10 +1418,15 @@ if WITH_NETCF
libvirt_driver_interface_la_CFLAGS += $(NETCF_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(NETCF_LIBS)
else ! WITH_NETCF
@@ -65,11 +65,11 @@
endif ! WITH_NETCF
if WITH_DRIVER_MODULES
libvirt_driver_interface_la_LIBADD += ../gnulib/lib/libgnu.la
-Index: libvirt-1.2.5/tools/virsh.c
+Index: libvirt-1.2.6/tools/virsh.c
===================================================================
---- libvirt-1.2.5.orig/tools/virsh.c
-+++ libvirt-1.2.5/tools/virsh.c
-@@ -3252,6 +3252,8 @@ vshShowVersion(vshControl *ctl ATTRIBUTE
+--- libvirt-1.2.6.orig/tools/virsh.c
++++ libvirt-1.2.6/tools/virsh.c
+@@ -3320,6 +3320,8 @@ vshShowVersion(vshControl *ctl ATTRIBUTE
vshPrint(ctl, " Interface");
# if defined(WITH_NETCF)
vshPrint(ctl, " netcf");
@@ -78,10 +78,10 @@
# elif defined(WITH_UDEV)
vshPrint(ctl, " udev");
# endif
-Index: libvirt-1.2.5/src/interface/interface_backend_netcf.c
+Index: libvirt-1.2.6/src/interface/interface_backend_netcf.c
===================================================================
---- libvirt-1.2.5.orig/src/interface/interface_backend_netcf.c
-+++ libvirt-1.2.5/src/interface/interface_backend_netcf.c
+--- libvirt-1.2.6.orig/src/interface/interface_backend_netcf.c
++++ libvirt-1.2.6/src/interface/interface_backend_netcf.c
@@ -23,7 +23,12 @@
#include <config.h>
@@ -165,10 +165,10 @@
return 0;
}
-Index: libvirt-1.2.5/src/interface/interface_driver.c
+Index: libvirt-1.2.6/src/interface/interface_driver.c
===================================================================
---- libvirt-1.2.5.orig/src/interface/interface_driver.c
-+++ libvirt-1.2.5/src/interface/interface_driver.c
+--- libvirt-1.2.6.orig/src/interface/interface_driver.c
++++ libvirt-1.2.6/src/interface/interface_driver.c
@@ -30,8 +30,15 @@ interfaceRegister(void)
if (netcfIfaceRegister() == 0)
return 0;
@@ -186,10 +186,10 @@
if (udevIfaceRegister() == 0)
return 0;
#endif /* WITH_UDEV */
-Index: libvirt-1.2.5/m4/virt-netcontrol.m4
+Index: libvirt-1.2.6/m4/virt-netcontrol.m4
===================================================================
--- /dev/null
-+++ libvirt-1.2.5/m4/virt-netcontrol.m4
++++ libvirt-1.2.6/m4/virt-netcontrol.m4
@@ -0,0 +1,35 @@
+dnl The libnetcontrol library
+dnl
++++++ libvirtd-defaults.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-1.2.5/daemon/libvirtd.conf
+Index: libvirt-1.2.6/daemon/libvirtd.conf
===================================================================
---- libvirt-1.2.5.orig/daemon/libvirtd.conf
-+++ libvirt-1.2.5/daemon/libvirtd.conf
+--- libvirt-1.2.6.orig/daemon/libvirtd.conf
++++ libvirt-1.2.6/daemon/libvirtd.conf
@@ -18,8 +18,8 @@
# It is necessary to setup a CA and issue server certificates before
# using this capability.
@@ -13,10 +13,10 @@
# Listen for unencrypted TCP connections on the public TCP/IP port.
# NB, must pass the --listen flag to the libvirtd process for this to
-Index: libvirt-1.2.5/daemon/libvirtd-config.c
+Index: libvirt-1.2.6/daemon/libvirtd-config.c
===================================================================
---- libvirt-1.2.5.orig/daemon/libvirtd-config.c
-+++ libvirt-1.2.5/daemon/libvirtd-config.c
+--- libvirt-1.2.6.orig/daemon/libvirtd-config.c
++++ libvirt-1.2.6/daemon/libvirtd-config.c
@@ -229,7 +229,7 @@ daemonConfigNew(bool privileged ATTRIBUT
if (VIR_ALLOC(data) < 0)
return NULL;
@@ -26,10 +26,10 @@
data->listen_tcp = 0;
if (VIR_STRDUP(data->tls_port, LIBVIRTD_TLS_PORT) < 0 ||
-Index: libvirt-1.2.5/daemon/test_libvirtd.aug.in
+Index: libvirt-1.2.6/daemon/test_libvirtd.aug.in
===================================================================
---- libvirt-1.2.5.orig/daemon/test_libvirtd.aug.in
-+++ libvirt-1.2.5/daemon/test_libvirtd.aug.in
+--- libvirt-1.2.6.orig/daemon/test_libvirtd.aug.in
++++ libvirt-1.2.6/daemon/test_libvirtd.aug.in
@@ -2,7 +2,7 @@ module Test_libvirtd =
::CONFIG::
++++++ libvirtd-init-script.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,9 +1,9 @@
Adjust libvirtd sysconfig file to conform to SUSE standards
-Index: libvirt-1.2.5/daemon/libvirtd.sysconf
+Index: libvirt-1.2.6/daemon/libvirtd.sysconf
===================================================================
---- libvirt-1.2.5.orig/daemon/libvirtd.sysconf
-+++ libvirt-1.2.5/daemon/libvirtd.sysconf
+--- libvirt-1.2.6.orig/daemon/libvirtd.sysconf
++++ libvirt-1.2.6/daemon/libvirtd.sysconf
@@ -1,16 +1,25 @@
+## Path: System/Virtualization/libvirt
+
++++++ lxc-keep-caps-feature-conversion.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -18,11 +18,11 @@
tests/lxcconf2xmldata/lxcconf2xml-vlannetwork.xml | 4 ++++
12 files changed, 61 insertions(+)
-diff --git a/src/lxc/lxc_native.c b/src/lxc/lxc_native.c
-index f4c4556..29ec188 100644
---- a/src/lxc/lxc_native.c
-+++ b/src/lxc/lxc_native.c
-@@ -838,6 +838,28 @@ lxcSetBlkioTune(virDomainDefPtr def, virConfPtr properties)
+Index: libvirt-1.2.6/src/lxc/lxc_native.c
+===================================================================
+--- libvirt-1.2.6.orig/src/lxc/lxc_native.c
++++ libvirt-1.2.6/src/lxc/lxc_native.c
+@@ -838,6 +838,28 @@ lxcSetBlkioTune(virDomainDefPtr def, vir
return 0;
}
@@ -61,10 +61,10 @@
goto cleanup;
error:
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-blkiotune.xml b/tests/lxcconf2xmldata/lxcconf2xml-blkiotune.xml
-index 36b8e52..c9c0469 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-blkiotune.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-blkiotune.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-blkiotune.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-blkiotune.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-blkiotune.xml
@@ -25,6 +25,8 @@
</os>
<features>
@@ -74,10 +74,10 @@
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-cpusettune.xml b/tests/lxcconf2xmldata/lxcconf2xml-cpusettune.xml
-index 932ab61..e7863fa 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-cpusettune.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-cpusettune.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-cpusettune.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-cpusettune.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-cpusettune.xml
@@ -13,6 +13,8 @@
</os>
<features>
@@ -87,10 +87,10 @@
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-cputune.xml b/tests/lxcconf2xmldata/lxcconf2xml-cputune.xml
-index 1bab1c6..50c5358 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-cputune.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-cputune.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-cputune.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-cputune.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-cputune.xml
@@ -15,6 +15,8 @@
</os>
<features>
@@ -100,10 +100,10 @@
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-idmap.xml b/tests/lxcconf2xmldata/lxcconf2xml-idmap.xml
-index 050ccd6..80a83ff 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-idmap.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-idmap.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-idmap.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-idmap.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-idmap.xml
@@ -14,6 +14,8 @@
</idmap>
<features>
@@ -113,10 +113,10 @@
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-macvlannetwork.xml b/tests/lxcconf2xmldata/lxcconf2xml-macvlannetwork.xml
-index 996c0f7..3105b8c 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-macvlannetwork.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-macvlannetwork.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-macvlannetwork.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-macvlannetwork.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-macvlannetwork.xml
@@ -8,6 +8,10 @@
<type>exe</type>
<init>/sbin/init</init>
@@ -128,10 +128,10 @@
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-memtune.xml b/tests/lxcconf2xmldata/lxcconf2xml-memtune.xml
-index b7c919e..7df1ef0 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-memtune.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-memtune.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-memtune.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-memtune.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-memtune.xml
@@ -15,6 +15,8 @@
</os>
<features>
@@ -141,10 +141,10 @@
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-nonenetwork.xml b/tests/lxcconf2xmldata/lxcconf2xml-nonenetwork.xml
-index 6d9e16d..e002b99 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-nonenetwork.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-nonenetwork.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-nonenetwork.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-nonenetwork.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-nonenetwork.xml
@@ -8,6 +8,10 @@
<type>exe</type>
<init>/sbin/init</init>
@@ -156,10 +156,10 @@
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-nonetwork.xml b/tests/lxcconf2xmldata/lxcconf2xml-nonetwork.xml
-index 101324a..dc9d635 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-nonetwork.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-nonetwork.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-nonetwork.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-nonetwork.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-nonetwork.xml
@@ -10,6 +10,8 @@
</os>
<features>
@@ -169,10 +169,10 @@
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-physnetwork.xml b/tests/lxcconf2xmldata/lxcconf2xml-physnetwork.xml
-index 5fe1b03..cfaceb5 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-physnetwork.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-physnetwork.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-physnetwork.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-physnetwork.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-physnetwork.xml
@@ -8,6 +8,10 @@
<type>exe</type>
<init>/sbin/init</init>
@@ -184,10 +184,10 @@
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-simple.xml b/tests/lxcconf2xmldata/lxcconf2xml-simple.xml
-index b3c3659..549fc39 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-simple.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-simple.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-simple.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-simple.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-simple.xml
@@ -8,6 +8,14 @@
<type arch='i686'>exe</type>
<init>/sbin/init</init>
@@ -203,10 +203,10 @@
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
-diff --git a/tests/lxcconf2xmldata/lxcconf2xml-vlannetwork.xml b/tests/lxcconf2xmldata/lxcconf2xml-vlannetwork.xml
-index 45348ed..712be3e 100644
---- a/tests/lxcconf2xmldata/lxcconf2xml-vlannetwork.xml
-+++ b/tests/lxcconf2xmldata/lxcconf2xml-vlannetwork.xml
+Index: libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-vlannetwork.xml
+===================================================================
+--- libvirt-1.2.6.orig/tests/lxcconf2xmldata/lxcconf2xml-vlannetwork.xml
++++ libvirt-1.2.6/tests/lxcconf2xmldata/lxcconf2xml-vlannetwork.xml
@@ -8,6 +8,10 @@
<type>exe</type>
<init>/sbin/init</init>
@@ -218,6 +218,3 @@
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
---
-1.8.4.5
-
++++++ lxc-keep-caps-feature-doc.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -8,11 +8,11 @@
docs/drvlxc.html.in | 47 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)
-diff --git a/docs/drvlxc.html.in b/docs/drvlxc.html.in
-index fc4bc20..403ce24 100644
---- a/docs/drvlxc.html.in
-+++ b/docs/drvlxc.html.in
-@@ -540,6 +540,53 @@ debootstrap, whatever) under /opt/vm-1-root:
+Index: libvirt-1.2.6/docs/drvlxc.html.in
+===================================================================
+--- libvirt-1.2.6.orig/docs/drvlxc.html.in
++++ libvirt-1.2.6/docs/drvlxc.html.in
+@@ -540,6 +540,53 @@ debootstrap, whatever) under /opt/vm-1-r
</domain>
</pre>
@@ -66,6 +66,3 @@
<h2><a name="usage">Container usage / management</a></h2>
---
-1.8.4.5
-
++++++ lxc-keep-caps-feature.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -25,10 +25,10 @@
9 files changed, 602 insertions(+), 25 deletions(-)
create mode 100644 tests/domainschemadata/domain-caps-features.xml
-Index: libvirt-1.2.5/docs/schemas/domaincommon.rng
+Index: libvirt-1.2.6/docs/schemas/domaincommon.rng
===================================================================
---- libvirt-1.2.5.orig/docs/schemas/domaincommon.rng
-+++ libvirt-1.2.5/docs/schemas/domaincommon.rng
+--- libvirt-1.2.6.orig/docs/schemas/domaincommon.rng
++++ libvirt-1.2.6/docs/schemas/domaincommon.rng
@@ -3744,6 +3744,9 @@
<empty/>
</element>
@@ -39,7 +39,7 @@
</interleave>
</element>
</optional>
-@@ -4290,6 +4293,200 @@
+@@ -4311,6 +4314,200 @@
</element>
</define>
@@ -240,7 +240,7 @@
<define name="featurestate">
<attribute name="state">
<choice>
-@@ -4298,6 +4495,16 @@
+@@ -4319,6 +4516,16 @@
</choice>
</attribute>
</define>
@@ -257,10 +257,10 @@
<!--
Optional hypervisor extensions in their own namespace:
-Index: libvirt-1.2.5/src/conf/domain_conf.c
+Index: libvirt-1.2.6/src/conf/domain_conf.c
===================================================================
---- libvirt-1.2.5.orig/src/conf/domain_conf.c
-+++ libvirt-1.2.5/src/conf/domain_conf.c
+--- libvirt-1.2.6.orig/src/conf/domain_conf.c
++++ libvirt-1.2.6/src/conf/domain_conf.c
@@ -147,18 +147,63 @@ VIR_ENUM_IMPL(virDomainFeature, VIR_DOMA
"viridian",
"privnet",
@@ -326,7 +326,7 @@
VIR_ENUM_IMPL(virDomainLifecycle, VIR_DOMAIN_LIFECYCLE_LAST,
"destroy",
"restart",
-@@ -11835,6 +11880,22 @@ virDomainDefParseXML(xmlDocPtr xml,
+@@ -11879,6 +11924,22 @@ virDomainDefParseXML(xmlDocPtr xml,
def->features[val] = VIR_DOMAIN_FEATURE_STATE_ON;
break;
@@ -349,7 +349,7 @@
case VIR_DOMAIN_FEATURE_PVSPINLOCK:
node = ctxt->node;
ctxt->node = nodes[i];
-@@ -11943,6 +12004,37 @@ virDomainDefParseXML(xmlDocPtr xml,
+@@ -11987,6 +12048,37 @@ virDomainDefParseXML(xmlDocPtr xml,
ctxt->node = node;
}
@@ -387,7 +387,7 @@
if (virDomainEventActionParseXML(ctxt, "on_reboot",
"string(./on_reboot[1])",
&def->onReboot,
-@@ -17125,6 +17217,19 @@ verify(((VIR_DOMAIN_XML_INTERNAL_STATUS
+@@ -17184,6 +17276,19 @@ verify(((VIR_DOMAIN_XML_INTERNAL_STATUS
VIR_DOMAIN_XML_INTERNAL_CLOCK_ADJUST)
& DUMPXML_FLAGS) == 0);
@@ -407,7 +407,7 @@
/* This internal version can accept VIR_DOMAIN_XML_INTERNAL_*,
* whereas the public version cannot. Also, it appends to an existing
* buffer (possibly with auto-indent), rather than flattening to string.
-@@ -17655,6 +17760,25 @@ virDomainDefFormatInternal(virDomainDefP
+@@ -17703,6 +17808,25 @@ virDomainDefFormatInternal(virDomainDefP
virBufferAddLit(buf, "</hyperv>\n");
break;
@@ -433,23 +433,22 @@
case VIR_DOMAIN_FEATURE_LAST:
break;
}
-Index: libvirt-1.2.5/src/conf/domain_conf.h
+Index: libvirt-1.2.6/src/conf/domain_conf.h
===================================================================
---- libvirt-1.2.5.orig/src/conf/domain_conf.h
-+++ libvirt-1.2.5/src/conf/domain_conf.h
-@@ -1526,6 +1526,7 @@ enum virDomainFeature {
+--- libvirt-1.2.6.orig/src/conf/domain_conf.h
++++ libvirt-1.2.6/src/conf/domain_conf.h
+@@ -1528,6 +1528,7 @@ typedef enum {
VIR_DOMAIN_FEATURE_PRIVNET,
VIR_DOMAIN_FEATURE_HYPERV,
VIR_DOMAIN_FEATURE_PVSPINLOCK,
+ VIR_DOMAIN_FEATURE_CAPABILITIES,
VIR_DOMAIN_FEATURE_LAST
- };
-@@ -1546,6 +1547,56 @@ enum virDomainHyperv {
- VIR_DOMAIN_HYPERV_LAST
- };
+ } virDomainFeature;
+@@ -1549,6 +1550,56 @@ typedef enum {
+ } virDomainHyperv;
-+typedef enum {
+ typedef enum {
+ VIR_DOMAIN_CAPABILITIES_POLICY_DEFAULT = 0,
+ VIR_DOMAIN_CAPABILITIES_POLICY_ALLOW,
+ VIR_DOMAIN_CAPABILITIES_POLICY_DENY,
@@ -499,10 +498,11 @@
+ VIR_DOMAIN_CAPS_FEATURE_LAST
+ } virDomainCapsFeature;
+
- enum virDomainLifecycleAction {
++typedef enum {
VIR_DOMAIN_LIFECYCLE_DESTROY,
VIR_DOMAIN_LIFECYCLE_RESTART,
-@@ -1915,6 +1966,9 @@ struct _virDomainDef {
+ VIR_DOMAIN_LIFECYCLE_RESTART_RENAME,
+@@ -1917,6 +1968,9 @@ struct _virDomainDef {
int hyperv_features[VIR_DOMAIN_HYPERV_LAST];
unsigned int hyperv_spinlocks;
@@ -521,11 +521,11 @@
VIR_ENUM_DECL(virDomainLifecycle)
VIR_ENUM_DECL(virDomainLifecycleCrash)
VIR_ENUM_DECL(virDomainPMState)
-Index: libvirt-1.2.5/src/libvirt_private.syms
+Index: libvirt-1.2.6/src/libvirt_private.syms
===================================================================
---- libvirt-1.2.5.orig/src/libvirt_private.syms
-+++ libvirt-1.2.5/src/libvirt_private.syms
-@@ -129,6 +129,8 @@ virDomainBlockedReasonTypeFromString;
+--- libvirt-1.2.6.orig/src/libvirt_private.syms
++++ libvirt-1.2.6/src/libvirt_private.syms
+@@ -139,6 +139,8 @@ virDomainBlockedReasonTypeFromString;
virDomainBlockedReasonTypeToString;
virDomainBootMenuTypeFromString;
virDomainBootMenuTypeToString;
@@ -534,7 +534,7 @@
virDomainChrConsoleTargetTypeFromString;
virDomainChrConsoleTargetTypeToString;
virDomainChrDefForeach;
-@@ -1013,6 +1015,7 @@ virBufferVasprintf;
+@@ -1027,6 +1029,7 @@ virBufferVasprintf;
# util/vircgroup.h
virCgroupAddTask;
virCgroupAddTaskController;
@@ -542,11 +542,11 @@
virCgroupAllowDevice;
virCgroupAllowDeviceMajor;
virCgroupAllowDevicePath;
-Index: libvirt-1.2.5/src/lxc/lxc_cgroup.c
+Index: libvirt-1.2.6/src/lxc/lxc_cgroup.c
===================================================================
---- libvirt-1.2.5.orig/src/lxc/lxc_cgroup.c
-+++ libvirt-1.2.5/src/lxc/lxc_cgroup.c
-@@ -367,6 +367,14 @@ static int virLXCCgroupSetupDeviceACL(vi
+--- libvirt-1.2.6.orig/src/lxc/lxc_cgroup.c
++++ libvirt-1.2.6/src/lxc/lxc_cgroup.c
+@@ -363,6 +363,14 @@ static int virLXCCgroupSetupDeviceACL(vi
if (virCgroupDenyAllDevices(cgroup) < 0)
goto cleanup;
@@ -561,15 +561,128 @@
for (i = 0; devices[i].type != 0; i++) {
virLXCCgroupDevicePolicyPtr dev = &devices[i];
if (virCgroupAllowDevice(cgroup,
-Index: libvirt-1.2.5/src/lxc/lxc_container.c
+Index: libvirt-1.2.6/src/lxc/lxc_container.c
===================================================================
---- libvirt-1.2.5.orig/src/lxc/lxc_container.c
-+++ libvirt-1.2.5/src/lxc/lxc_container.c
-@@ -1732,25 +1732,115 @@ static int lxcContainerResolveSymlinks(v
+--- libvirt-1.2.6.orig/src/lxc/lxc_container.c
++++ libvirt-1.2.6/src/lxc/lxc_container.c
+@@ -1732,25 +1732,232 @@ static int lxcContainerResolveSymlinks(v
* host system, since they are not currently "containerized"
*/
#if WITH_CAPNG
-static int lxcContainerDropCapabilities(bool keepReboot)
++
++# ifndef CAP_AUDIT_CONTROL
++# define CAP_AUDIT_CONTROL -1
++# endif
++# ifndef CAP_AUDIT_WRITE
++# define CAP_AUDIT_WRITE -1
++# endif
++# ifndef CAP_BLOCK_SUSPEND
++# define CAP_BLOCK_SUSPEND -1
++# endif
++# ifndef CAP_CHOWN
++# define CAP_CHOWN -1
++# endif
++# ifndef CAP_DAC_OVERRIDE
++# define CAP_DAC_OVERRIDE -1
++# endif
++# ifndef CAP_DAC_READ_SEARCH
++# define CAP_DAC_READ_SEARCH -1
++# endif
++# ifndef CAP_FOWNER
++# define CAP_FOWNER -1
++# endif
++# ifndef CAP_FSETID
++# define CAP_FSETID -1
++# endif
++# ifndef CAP_IPC_LOCK
++# define CAP_IPC_LOCK -1
++# endif
++# ifndef CAP_IPC_OWNER
++# define CAP_IPC_OWNER -1
++# endif
++# ifndef CAP_KILL
++# define CAP_KILL -1
++# endif
++# ifndef CAP_LEASE
++# define CAP_LEASE -1
++# endif
++# ifndef CAP_LINUX_IMMUTABLE
++# define CAP_LINUX_IMMUTABLE -1
++# endif
++# ifndef CAP_MAC_ADMIN
++# define CAP_MAC_ADMIN -1
++# endif
++# ifndef CAP_MAC_OVERRIDE
++# define CAP_MAC_OVERRIDE -1
++# endif
++# ifndef CAP_MKNOD
++# define CAP_MKNOD -1
++# endif
++# ifndef CAP_NET_ADMIN
++# define CAP_NET_ADMIN -1
++# endif
++# ifndef CAP_NET_BIND_SERVICE
++# define CAP_NET_BIND_SERVICE -1
++# endif
++# ifndef CAP_NET_BROADCAST
++# define CAP_NET_BROADCAST -1
++# endif
++# ifndef CAP_NET_RAW
++# define CAP_NET_RAW -1
++# endif
++# ifndef CAP_SETGID
++# define CAP_SETGID -1
++# endif
++# ifndef CAP_SETFCAP
++# define CAP_SETFCAP -1
++# endif
++# ifndef CAP_SETPCAP
++# define CAP_SETPCAP -1
++# endif
++# ifndef CAP_SETUID
++# define CAP_SETUID -1
++# endif
++# ifndef CAP_SYS_ADMIN
++# define CAP_SYS_ADMIN -1
++# endif
++# ifndef CAP_SYS_BOOT
++# define CAP_SYS_BOOT -1
++# endif
++# ifndef CAP_SYS_CHROOT
++# define CAP_SYS_CHROOT -1
++# endif
++# ifndef CAP_SYS_MODULE
++# define CAP_SYS_MODULE -1
++# endif
++# ifndef CAP_SYS_NICE
++# define CAP_SYS_NICE -1
++# endif
++# ifndef CAP_SYS_PACCT
++# define CAP_SYS_PACCT -1
++# endif
++# ifndef CAP_SYS_PTRACE
++# define CAP_SYS_PTRACE -1
++# endif
++# ifndef CAP_SYS_RAWIO
++# define CAP_SYS_RAWIO -1
++# endif
++# ifndef CAP_SYS_RESOURCE
++# define CAP_SYS_RESOURCE -1
++# endif
++# ifndef CAP_SYS_TIME
++# define CAP_SYS_TIME -1
++# endif
++# ifndef CAP_SYS_TTY_CONFIG
++# define CAP_SYS_TTY_CONFIG -1
++# endif
++# ifndef CAP_SYSLOG
++# define CAP_SYSLOG -1
++# endif
++# ifndef CAP_WAKE_ALARM
++# define CAP_WAKE_ALARM -1
++# endif
++
+static int lxcContainerDropCapabilities(virDomainDefPtr def,
+ bool keepReboot)
{
@@ -640,6 +753,10 @@
+ bool toDrop = false;
+ int state = def->caps_features[i];
+
++ /* Skip capabilities that aren't handled by our kernel */
++ if (!cap_valid(capsMapping))
++ continue;
++
+ switch ((virDomainCapabilitiesPolicy) policy) {
+
+ case VIR_DOMAIN_CAPABILITIES_POLICY_DENY:
@@ -695,7 +812,7 @@
}
if ((ret = capng_apply(CAPNG_SELECT_BOTH)) < 0) {
-@@ -1768,7 +1858,8 @@ static int lxcContainerDropCapabilities(
+@@ -1768,7 +1975,8 @@ static int lxcContainerDropCapabilities(
return 0;
}
#else
@@ -705,7 +822,7 @@
{
VIR_WARN("libcap-ng support not compiled in, unable to clear capabilities");
return 0;
-@@ -1874,7 +1965,7 @@ static int lxcContainerChild(void *data)
+@@ -1874,7 +2082,7 @@ static int lxcContainerChild(void *data)
}
/* drop a set of root capabilities */
@@ -714,10 +831,10 @@
goto cleanup;
if (lxcContainerSendContinue(argv->handshakefd) < 0) {
-Index: libvirt-1.2.5/src/util/vircgroup.c
+Index: libvirt-1.2.6/src/util/vircgroup.c
===================================================================
---- libvirt-1.2.5.orig/src/util/vircgroup.c
-+++ libvirt-1.2.5/src/util/vircgroup.c
+--- libvirt-1.2.6.orig/src/util/vircgroup.c
++++ libvirt-1.2.6/src/util/vircgroup.c
@@ -2622,6 +2622,62 @@ virCgroupDenyAllDevices(virCgroupPtr gro
"a");
}
@@ -815,10 +932,10 @@
int
virCgroupDenyAllDevices(virCgroupPtr group ATTRIBUTE_UNUSED)
-Index: libvirt-1.2.5/src/util/vircgroup.h
+Index: libvirt-1.2.6/src/util/vircgroup.h
===================================================================
---- libvirt-1.2.5.orig/src/util/vircgroup.h
-+++ libvirt-1.2.5/src/util/vircgroup.h
+--- libvirt-1.2.6.orig/src/util/vircgroup.h
++++ libvirt-1.2.6/src/util/vircgroup.h
@@ -175,6 +175,8 @@ enum {
int virCgroupDenyAllDevices(virCgroupPtr group);
@@ -828,10 +945,10 @@
int virCgroupAllowDevice(virCgroupPtr group,
char type,
int major,
-Index: libvirt-1.2.5/tests/domainschemadata/domain-caps-features.xml
+Index: libvirt-1.2.6/tests/domainschemadata/domain-caps-features.xml
===================================================================
--- /dev/null
-+++ libvirt-1.2.5/tests/domainschemadata/domain-caps-features.xml
++++ libvirt-1.2.6/tests/domainschemadata/domain-caps-features.xml
@@ -0,0 +1,28 @@
+<domain type='lxc'>
+ <name>demo</name>
++++++ support-managed-pci-xen-driver.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -8,10 +8,10 @@
src/xenxs/xen_xm.c | 28 +++++++++++++++++++++++++++-
2 files changed, 35 insertions(+), 15 deletions(-)
-Index: libvirt-1.2.5/src/xenxs/xen_sxpr.c
+Index: libvirt-1.2.6/src/xenxs/xen_sxpr.c
===================================================================
---- libvirt-1.2.5.orig/src/xenxs/xen_sxpr.c
-+++ libvirt-1.2.5/src/xenxs/xen_sxpr.c
+--- libvirt-1.2.6.orig/src/xenxs/xen_sxpr.c
++++ libvirt-1.2.6/src/xenxs/xen_sxpr.c
@@ -997,6 +997,7 @@ xenParseSxprPCI(virDomainDefPtr def,
int busID;
int slotID;
@@ -78,11 +78,11 @@
xenFormatSxprPCI(def->hostdevs[i], buf);
}
}
-Index: libvirt-1.2.5/src/xenxs/xen_xm.c
+Index: libvirt-1.2.6/src/xenxs/xen_xm.c
===================================================================
---- libvirt-1.2.5.orig/src/xenxs/xen_xm.c
-+++ libvirt-1.2.5/src/xenxs/xen_xm.c
-@@ -807,6 +807,8 @@ xenParseXM(virConfPtr conf, int xendConf
+--- libvirt-1.2.6.orig/src/xenxs/xen_xm.c
++++ libvirt-1.2.6/src/xenxs/xen_xm.c
+@@ -819,6 +819,8 @@ xenParseXM(virConfPtr conf, int xendConf
int busID;
int slotID;
int funcID;
@@ -91,7 +91,7 @@
domain[0] = bus[0] = slot[0] = func[0] = '\0';
-@@ -816,6 +818,11 @@ xenParseXM(virConfPtr conf, int xendConf
+@@ -828,6 +830,11 @@ xenParseXM(virConfPtr conf, int xendConf
/* pci=['0000:00:1b.0','0000:00:13.0'] */
if (!(key = list->str))
goto skippci;
@@ -103,7 +103,7 @@
if (!(nextkey = strchr(key, ':')))
goto skippci;
-@@ -864,10 +871,30 @@ xenParseXM(virConfPtr conf, int xendConf
+@@ -876,10 +883,30 @@ xenParseXM(virConfPtr conf, int xendConf
if (virStrToLong_i(func, NULL, 16, &funcID) < 0)
goto skippci;
++++++ suse-qemu-conf.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-1.2.5/src/qemu/qemu.conf
+Index: libvirt-1.2.6/src/qemu/qemu.conf
===================================================================
---- libvirt-1.2.5.orig/src/qemu/qemu.conf
-+++ libvirt-1.2.5/src/qemu/qemu.conf
+--- libvirt-1.2.6.orig/src/qemu/qemu.conf
++++ libvirt-1.2.6/src/qemu/qemu.conf
@@ -200,7 +200,16 @@
# a special value; security_driver can be set to that value in
# isolation, but it cannot appear in a list of drivers.
++++++ systemd-service-xen.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-1.2.5/daemon/libvirtd.service.in
+Index: libvirt-1.2.6/daemon/libvirtd.service.in
===================================================================
---- libvirt-1.2.5.orig/daemon/libvirtd.service.in
-+++ libvirt-1.2.5/daemon/libvirtd.service.in
+--- libvirt-1.2.6.orig/daemon/libvirtd.service.in
++++ libvirt-1.2.6/daemon/libvirtd.service.in
@@ -10,6 +10,8 @@ After=network.target
After=dbus.service
After=iscsid.service
++++++ virtlockd-init-script.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,9 +1,9 @@
Adjust virtlockd init files to conform to SUSE standards
-Index: libvirt-1.2.5/src/locking/virtlockd.sysconf
+Index: libvirt-1.2.6/src/locking/virtlockd.sysconf
===================================================================
---- libvirt-1.2.5.orig/src/locking/virtlockd.sysconf
-+++ libvirt-1.2.5/src/locking/virtlockd.sysconf
+--- libvirt-1.2.6.orig/src/locking/virtlockd.sysconf
++++ libvirt-1.2.6/src/locking/virtlockd.sysconf
@@ -1,3 +1,7 @@
+## Path: System/Virtualization/virtlockd
+
@@ -12,10 +12,10 @@
#
# Pass extra arguments to virtlockd
#VIRTLOCKD_ARGS=
-Index: libvirt-1.2.5/src/locking/virtlockd.init.in
+Index: libvirt-1.2.6/src/locking/virtlockd.init.in
===================================================================
---- libvirt-1.2.5.orig/src/locking/virtlockd.init.in
-+++ libvirt-1.2.5/src/locking/virtlockd.init.in
+--- libvirt-1.2.6.orig/src/locking/virtlockd.init.in
++++ libvirt-1.2.6/src/locking/virtlockd.init.in
@@ -4,12 +4,14 @@
# http://www.linux-foundation.org/spec//booksets/LSB-Core-generic/LSB-Core-ge…
#
++++++ xen-name-for-devid.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -14,10 +14,10 @@
is inactive. We obviously can't search xenstore when the domain is
inactive.
-Index: libvirt-1.2.5/src/xen/xend_internal.c
+Index: libvirt-1.2.6/src/xen/xend_internal.c
===================================================================
---- libvirt-1.2.5.orig/src/xen/xend_internal.c
-+++ libvirt-1.2.5/src/xen/xend_internal.c
+--- libvirt-1.2.6.orig/src/xen/xend_internal.c
++++ libvirt-1.2.6/src/xen/xend_internal.c
@@ -72,7 +72,7 @@ VIR_LOG_INIT("xen.xend_internal");
#define XEND_RCV_BUF_MAX_LEN (256 * 1024)
@@ -27,7 +27,7 @@
virDomainDeviceDefPtr dev, char *class,
char *ref, int ref_len);
-@@ -3328,37 +3328,35 @@ xenDaemonDomainBlockPeek(virConnectPtr c
+@@ -3331,37 +3331,35 @@ xenDaemonDomainBlockPeek(virConnectPtr c
* Returns 0 in case of success, -1 in case of failure.
*/
static int
@@ -80,7 +80,7 @@
} else if (dev->type == VIR_DOMAIN_DEVICE_NET) {
char mac[VIR_MAC_STRING_BUFLEN];
virDomainNetDefPtr netdef = dev->data.net;
-@@ -3366,16 +3364,22 @@ virDomainXMLDevID(virConnectPtr conn,
+@@ -3369,16 +3367,22 @@ virDomainXMLDevID(virConnectPtr conn,
strcpy(class, "vif");
@@ -113,7 +113,7 @@
} else if (dev->type == VIR_DOMAIN_DEVICE_HOSTDEV &&
dev->data.hostdev->mode == VIR_DOMAIN_HOSTDEV_MODE_SUBSYS &&
dev->data.hostdev->source.subsys.type == VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI) {
-@@ -3391,17 +3395,44 @@ virDomainXMLDevID(virConnectPtr conn,
+@@ -3394,17 +3398,44 @@ virDomainXMLDevID(virConnectPtr conn,
strcpy(class, "pci");
++++++ xen-pv-cdrom.patch ++++++
--- /var/tmp/diff_new_pack.oI6Wsn/_old 2014-07-04 17:18:51.000000000 +0200
+++ /var/tmp/diff_new_pack.oI6Wsn/_new 2014-07-04 17:18:51.000000000 +0200
@@ -1,7 +1,7 @@
-Index: libvirt-1.2.5/src/xenxs/xen_sxpr.c
+Index: libvirt-1.2.6/src/xenxs/xen_sxpr.c
===================================================================
---- libvirt-1.2.5.orig/src/xenxs/xen_sxpr.c
-+++ libvirt-1.2.5/src/xenxs/xen_sxpr.c
+--- libvirt-1.2.6.orig/src/xenxs/xen_sxpr.c
++++ libvirt-1.2.6/src/xenxs/xen_sxpr.c
@@ -332,7 +332,7 @@ xenParseSxprChar(const char *value,
static int
xenParseSxprDisks(virDomainDefPtr def,
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gssdp for openSUSE:Factory checked in at 2014-07-04 17:18:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gssdp (Old)
and /work/SRC/openSUSE:Factory/.gssdp.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gssdp"
Changes:
--------
--- /work/SRC/openSUSE:Factory/gssdp/gssdp.changes 2014-02-17 12:53:42.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.gssdp.new/gssdp.changes 2014-07-04 17:18:47.000000000 +0200
@@ -1,0 +2,20 @@
+Tue Jul 1 17:34:02 UTC 2014 - dimstar(a)opensuse.org
+
+- Update to version 0.14.8:
+ + Recover from lost BYEBYE packets.
+ + Some code clean-up.
+ + Use GLib's multicast socket functions.
+ + Fix compiling on mingw.
+ + Don't abort if get_host_ip fails.
+ + Fix an issue with unreffing GSources.
+ + Fix build on some BSDs.
+ + Use pktinfo on Linux to determine the source interface instead
+ of relying on netmasks.
+ + Use strncpy() on interface names to not exceed ifrn_name
+ length.
+ + Documentation fixes.
+ + Add support for vendor-specific headers in SSDP messages.
+ + Bugs fixed: bgo#678660, bgo#711320, bgo#724030, bgo#728871,
+ bgo#728888, bgo#729613, bgo#730358.
+
+-------------------------------------------------------------------
Old:
----
gssdp-0.14.7.tar.xz
New:
----
gssdp-0.14.8.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gssdp.spec ++++++
--- /var/tmp/diff_new_pack.xHHYg6/_old 2014-07-04 17:18:48.000000000 +0200
+++ /var/tmp/diff_new_pack.xHHYg6/_new 2014-07-04 17:18:48.000000000 +0200
@@ -17,7 +17,7 @@
Name: gssdp
-Version: 0.14.7
+Version: 0.14.8
Release: 0
Summary: Library for resource discovery and announcement over SSDP
License: LGPL-2.0+
++++++ gssdp-0.14.7.tar.xz -> gssdp-0.14.8.tar.xz ++++++
++++ 27594 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package colord for openSUSE:Factory checked in at 2014-07-04 17:18:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/colord (Old)
and /work/SRC/openSUSE:Factory/.colord.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "colord"
Changes:
--------
--- /work/SRC/openSUSE:Factory/colord/colord.changes 2014-06-16 21:43:54.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.colord.new/colord.changes 2014-07-04 17:18:45.000000000 +0200
@@ -1,0 +2,15 @@
+Tue Jul 1 17:47:51 UTC 2014 - dimstar(a)opensuse.org
+
+- Update to version 1.2.1:
+ + New Features:
+ - Allow users to rename session and system ICC profiles.
+ + Bugfixes:
+ - Fix building the CMF spectra on OpenBSD/sparc64.
+ - Fix the style of two colorimeter figures.
+ - Make colord polkit policy usable on servers.
+ - Trim out the CUPS-supplied prefix for the printer serial
+ number.
+ + Updated translations.
+- Drop type-mismatch.patch: fixed upstream.
+
+-------------------------------------------------------------------
@@ -4 +19 @@
-- type-mismatch.patch: fix type mismatch (fdo#77535)
+- type-mismatch.patch: fix type mismatch (fdo#77535).
Old:
----
colord-1.2.0.tar.xz
type-mismatch.patch
New:
----
colord-1.2.1.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ colord.spec ++++++
--- /var/tmp/diff_new_pack.Wmx48B/_old 2014-07-04 17:18:46.000000000 +0200
+++ /var/tmp/diff_new_pack.Wmx48B/_new 2014-07-04 17:18:46.000000000 +0200
@@ -19,7 +19,7 @@
%define _udevrulesdir %(pkg-config --variable=udevdir udev)/rules.d
Name: colord
-Version: 1.2.0
+Version: 1.2.1
Release: 0
Summary: System Daemon for Managing Color Devices
License: GPL-2.0+
@@ -29,8 +29,6 @@
# Apparmor profile
Source1: usr.lib.colord
Source99: baselibs.conf
-# PATCH-FIX-UPSTREAM type-mismatch.patch fdo#77535 schwab(a)linux-m68k.org -- Fix type mismatch on build
-Patch0: type-mismatch.patch
BuildRequires: gobject-introspection-devel
BuildRequires: intltool
BuildRequires: vala
@@ -120,7 +118,6 @@
%lang_package
%prep
%setup -q
-%patch0 -p1
%build
%configure \
++++++ colord-1.2.0.tar.xz -> colord-1.2.1.tar.xz ++++++
++++ 25056 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package iso-codes for openSUSE:Factory checked in at 2014-07-04 17:18:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/iso-codes (Old)
and /work/SRC/openSUSE:Factory/.iso-codes.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "iso-codes"
Changes:
--------
--- /work/SRC/openSUSE:Factory/iso-codes/iso-codes.changes 2014-05-11 14:16:37.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.iso-codes.new/iso-codes.changes 2014-07-04 17:18:41.000000000 +0200
@@ -1,0 +2,7 @@
+Tue Jul 1 18:55:43 UTC 2014 - dimstar(a)opensuse.org
+
+- Update to version 3.54:
+ + Updated translations for ISO 639, ISO 639-5, ISO 3166-2 and
+ ISO 15924.
+
+-------------------------------------------------------------------
Old:
----
iso-codes-3.53.tar.xz
New:
----
iso-codes-3.54.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ iso-codes.spec ++++++
--- /var/tmp/diff_new_pack.LEhm6h/_old 2014-07-04 17:18:43.000000000 +0200
+++ /var/tmp/diff_new_pack.LEhm6h/_new 2014-07-04 17:18:43.000000000 +0200
@@ -17,7 +17,7 @@
Name: iso-codes
-Version: 3.53
+Version: 3.54
Release: 0
Summary: ISO Code Lists and Translations
License: LGPL-2.1+
++++++ iso-codes-3.53.tar.xz -> iso-codes-3.54.tar.xz ++++++
++++ 19903 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package gdk-pixbuf for openSUSE:Factory checked in at 2014-07-04 17:18:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gdk-pixbuf (Old)
and /work/SRC/openSUSE:Factory/.gdk-pixbuf.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gdk-pixbuf"
Changes:
--------
--- /work/SRC/openSUSE:Factory/gdk-pixbuf/gdk-pixbuf.changes 2014-04-05 16:50:07.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.gdk-pixbuf.new/gdk-pixbuf.changes 2014-07-04 17:18:39.000000000 +0200
@@ -1,0 +2,8 @@
+Tue Jul 1 19:19:56 UTC 2014 - dimstar(a)opensuse.org
+
+- Update to version 2.30.8:
+ + Add missing nullability annotations.
+ + Documentation improvements.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
gdk-pixbuf-2.30.7.tar.xz
New:
----
gdk-pixbuf-2.30.8.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gdk-pixbuf.spec ++++++
--- /var/tmp/diff_new_pack.M8cxSp/_old 2014-07-04 17:18:39.000000000 +0200
+++ /var/tmp/diff_new_pack.M8cxSp/_new 2014-07-04 17:18:39.000000000 +0200
@@ -20,7 +20,7 @@
%define gdk_pixbuf_binary_version 2.10.0
Name: gdk-pixbuf
-Version: 2.30.7
+Version: 2.30.8
Release: 0
Summary: An image loading library
License: LGPL-2.1+
++++++ gdk-pixbuf-2.30.7.tar.xz -> gdk-pixbuf-2.30.8.tar.xz ++++++
++++ 15016 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0