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
February 2017
- 1 participants
- 1918 discussions
Hello community,
here is the log from the commit of package python-metaextract for openSUSE:Factory checked in at 2017-02-28 23:51:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-metaextract (Old)
and /work/SRC/openSUSE:Factory/.python-metaextract.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-metaextract"
Tue Feb 28 23:51:47 2017 rev:3 rq:460992 version:0.0.9
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-metaextract/python-metaextract.changes 2016-10-28 10:46:15.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-metaextract.new/python-metaextract.changes 2017-02-28 23:51:47.942860862 +0100
@@ -1,0 +2,14 @@
+Tue Feb 28 18:53:16 UTC 2017 - tbechtold(a)suse.com
+
+update to version 0.0.9
+ * Improve tests with extras_require
+ * Fix documentation link in README
+ * Post release version bump to 0.0.9
+ * Support "python_requires"
+ * Use same version for doc and sdist
+ * Add doc badge to README
+ * Use already used python interpreter
+ * Post release version bump to 0.0.8
+ * Use Sphinx to build documentation
+
+-------------------------------------------------------------------
Old:
----
metaextract-0.0.7.tar.gz
New:
----
metaextract-0.0.9.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-metaextract.spec ++++++
--- /var/tmp/diff_new_pack.yWtJXN/_old 2017-02-28 23:51:48.558773930 +0100
+++ /var/tmp/diff_new_pack.yWtJXN/_new 2017-02-28 23:51:48.558773930 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-metaextract
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: python-metaextract
-Version: 0.0.7
+Version: 0.0.9
Release: 0
Summary: get metadata for python modules
License: Apache-2.0
++++++ metaextract-0.0.7.tar.gz -> metaextract-0.0.9.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/PKG-INFO new/metaextract-0.0.9/PKG-INFO
--- old/metaextract-0.0.7/PKG-INFO 2016-08-29 19:39:18.000000000 +0200
+++ new/metaextract-0.0.9/PKG-INFO 2017-02-28 19:51:41.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: metaextract
-Version: 0.0.7
+Version: 0.0.9
Summary: get metadata for python modules
Home-page: http://github.com/toabctl/metaextract
Author: Thomas Bechtold
@@ -10,7 +10,10 @@
=============================================
.. image:: https://travis-ci.org/toabctl/metaextract.png?branch=master
- :target: https://travis-ci.org/toabctl/metaextract
+ :target: https://travis-ci.org/toabctl/metaextract
+ .. image:: https://readthedocs.org/projects/metaextract/badge/
+ :target: http://metaextract.readthedocs.io/en/latest/
+ :alt: Documentation Status
metaextract is a tool to collect metadata about a python module. For example
you may have a sdist tarball from the `Python Package Index`_ and you want to
@@ -18,40 +21,9 @@
The tool was first developed in `py2pack`_ but is now it's own module to be
useful for others, too.
- Installation
- ------------
- To install metaextract from the `Python Package Index`_, simply:
-
- .. code-block:: bash
-
- $ pip install metaextract
-
- Usage
- -----
-
- To extract the metadata for a python module using setup.py, do:
-
- .. code-block:: bash
-
- $ metaextract my-archive-file.tar.gz
-
- This will print a json blob to stdout which contains i.e. ``install_requires``,
- ``extras_require`` and friends extracted from the given archive file.
-
- If you already have some source code available (i.e. a git checkout) for some
- project you can also run the ``setup.py`` file with the ``metaextract``
- distutils command:
-
- .. code-block:: bash
-
- $ python setup.py --command-packages=metaextract metaextract
-
- This will print the metadata as json. If you want to write the data to a file, do:
-
- .. code-block:: bash
-
- $ python setup.py --command-packages=metaextract metaextract -o output-file
-
+ Documentation
+ -------------
+ You can find the documentation on `readthedocs`_.
Hacking and contributing
------------------------
@@ -68,6 +40,7 @@
----
If you run into bugs, you can file them in the `issue tracker`_.
+ .. _`readthedocs`: http://metaextract.readthedocs.io/
.. _`py2pack`: https://pypi.python.org/pypi/py2pack
.. _`issue tracker`: https://github.com/toabctl/metaextract/issues
.. _`Python Package Index`: https://pypi.python.org/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/README.rst new/metaextract-0.0.9/README.rst
--- old/metaextract-0.0.7/README.rst 2016-08-29 19:39:00.000000000 +0200
+++ new/metaextract-0.0.9/README.rst 2016-10-08 23:27:58.000000000 +0200
@@ -2,7 +2,10 @@
=============================================
.. image:: https://travis-ci.org/toabctl/metaextract.png?branch=master
- :target: https://travis-ci.org/toabctl/metaextract
+ :target: https://travis-ci.org/toabctl/metaextract
+.. image:: https://readthedocs.org/projects/metaextract/badge/
+ :target: http://metaextract.readthedocs.io/en/latest/
+ :alt: Documentation Status
metaextract is a tool to collect metadata about a python module. For example
you may have a sdist tarball from the `Python Package Index`_ and you want to
@@ -10,40 +13,9 @@
The tool was first developed in `py2pack`_ but is now it's own module to be
useful for others, too.
-Installation
-------------
-To install metaextract from the `Python Package Index`_, simply:
-
-.. code-block:: bash
-
- $ pip install metaextract
-
-Usage
------
-
-To extract the metadata for a python module using setup.py, do:
-
-.. code-block:: bash
-
- $ metaextract my-archive-file.tar.gz
-
-This will print a json blob to stdout which contains i.e. ``install_requires``,
-``extras_require`` and friends extracted from the given archive file.
-
-If you already have some source code available (i.e. a git checkout) for some
-project you can also run the ``setup.py`` file with the ``metaextract``
-distutils command:
-
-.. code-block:: bash
-
- $ python setup.py --command-packages=metaextract metaextract
-
-This will print the metadata as json. If you want to write the data to a file, do:
-
-.. code-block:: bash
-
- $ python setup.py --command-packages=metaextract metaextract -o output-file
-
+Documentation
+-------------
+You can find the documentation on `readthedocs`_.
Hacking and contributing
------------------------
@@ -60,6 +32,7 @@
----
If you run into bugs, you can file them in the `issue tracker`_.
+.. _`readthedocs`: http://metaextract.readthedocs.io/
.. _`py2pack`: https://pypi.python.org/pypi/py2pack
.. _`issue tracker`: https://github.com/toabctl/metaextract/issues
.. _`Python Package Index`: https://pypi.python.org/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/metaextract/__init__.py new/metaextract-0.0.9/metaextract/__init__.py
--- old/metaextract-0.0.7/metaextract/__init__.py 2016-08-29 19:39:00.000000000 +0200
+++ new/metaextract-0.0.9/metaextract/__init__.py 2017-02-28 19:51:09.000000000 +0100
@@ -0,0 +1,18 @@
+# -*- coding: utf-8 -*-
+#
+# Copyright (c) 2016, Thomas Bechtold <thomasbechtold(a)jpberlin.de>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+__version__ = "0.0.9"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/metaextract/metaextract.py new/metaextract-0.0.9/metaextract/metaextract.py
--- old/metaextract-0.0.7/metaextract/metaextract.py 2016-08-29 19:39:00.000000000 +0200
+++ new/metaextract-0.0.9/metaextract/metaextract.py 2017-02-28 19:40:57.000000000 +0100
@@ -46,8 +46,8 @@
# keep list ordered!
for key in ['data_files', 'entry_points', 'extras_require',
- 'install_requires', 'setup_requires', 'scripts',
- 'tests_require', 'tests_suite']:
+ 'install_requires', 'python_requires', 'setup_requires',
+ 'scripts', 'tests_require', 'tests_suite']:
if hasattr(self.distribution, key):
data[key] = getattr(self.distribution, key)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/metaextract/utils.py new/metaextract-0.0.9/metaextract/utils.py
--- old/metaextract-0.0.7/metaextract/utils.py 2016-08-29 19:39:00.000000000 +0200
+++ new/metaextract-0.0.9/metaextract/utils.py 2017-02-28 19:40:57.000000000 +0100
@@ -22,6 +22,7 @@
import os
import shutil
import subprocess
+import sys
import tarfile
import tempfile
import zipfile
@@ -98,8 +99,10 @@
single_subdir))
# generate a temporary json file which contains the metadata
output_json = tempfile.NamedTemporaryFile()
- cmd = "python setup.py -q --command-packages metaextract " \
- "metaextract -o %s " % output_json.name
+ # use the same python interpreter the process currently uses
+ # TODO: make the interpreter configurable
+ cmd = "%s setup.py -q --command-packages metaextract " \
+ "metaextract -o %s " % (sys.executable, output_json.name)
try:
subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
except subprocess.CalledProcessError:
@@ -122,6 +125,12 @@
###############################################################################
def from_archive(archive_filename):
+ """extract metadata from a given sdist archive file
+
+ :param archive_filename: a sdist archive file
+
+ :returns: a json blob with metadata
+"""
with _extract_to_tempdir(archive_filename) as root_dir:
data = _setup_py_run_from_dir(root_dir)
return data
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/metaextract.egg-info/PKG-INFO new/metaextract-0.0.9/metaextract.egg-info/PKG-INFO
--- old/metaextract-0.0.7/metaextract.egg-info/PKG-INFO 2016-08-29 19:39:18.000000000 +0200
+++ new/metaextract-0.0.9/metaextract.egg-info/PKG-INFO 2017-02-28 19:51:41.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: metaextract
-Version: 0.0.7
+Version: 0.0.9
Summary: get metadata for python modules
Home-page: http://github.com/toabctl/metaextract
Author: Thomas Bechtold
@@ -10,7 +10,10 @@
=============================================
.. image:: https://travis-ci.org/toabctl/metaextract.png?branch=master
- :target: https://travis-ci.org/toabctl/metaextract
+ :target: https://travis-ci.org/toabctl/metaextract
+ .. image:: https://readthedocs.org/projects/metaextract/badge/
+ :target: http://metaextract.readthedocs.io/en/latest/
+ :alt: Documentation Status
metaextract is a tool to collect metadata about a python module. For example
you may have a sdist tarball from the `Python Package Index`_ and you want to
@@ -18,40 +21,9 @@
The tool was first developed in `py2pack`_ but is now it's own module to be
useful for others, too.
- Installation
- ------------
- To install metaextract from the `Python Package Index`_, simply:
-
- .. code-block:: bash
-
- $ pip install metaextract
-
- Usage
- -----
-
- To extract the metadata for a python module using setup.py, do:
-
- .. code-block:: bash
-
- $ metaextract my-archive-file.tar.gz
-
- This will print a json blob to stdout which contains i.e. ``install_requires``,
- ``extras_require`` and friends extracted from the given archive file.
-
- If you already have some source code available (i.e. a git checkout) for some
- project you can also run the ``setup.py`` file with the ``metaextract``
- distutils command:
-
- .. code-block:: bash
-
- $ python setup.py --command-packages=metaextract metaextract
-
- This will print the metadata as json. If you want to write the data to a file, do:
-
- .. code-block:: bash
-
- $ python setup.py --command-packages=metaextract metaextract -o output-file
-
+ Documentation
+ -------------
+ You can find the documentation on `readthedocs`_.
Hacking and contributing
------------------------
@@ -68,6 +40,7 @@
----
If you run into bugs, you can file them in the `issue tracker`_.
+ .. _`readthedocs`: http://metaextract.readthedocs.io/
.. _`py2pack`: https://pypi.python.org/pypi/py2pack
.. _`issue tracker`: https://github.com/toabctl/metaextract/issues
.. _`Python Package Index`: https://pypi.python.org/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/setup.cfg new/metaextract-0.0.9/setup.cfg
--- old/metaextract-0.0.7/setup.cfg 2016-08-29 19:39:18.000000000 +0200
+++ new/metaextract-0.0.9/setup.cfg 2017-02-28 19:51:41.000000000 +0100
@@ -9,6 +9,14 @@
tag_date = 0
tag_svn_revision = 0
+[build_sphinx]
+source-dir = doc/source
+build-dir = doc/build
+all_files = 1
+
+[upload_sphinx]
+upload-dir = doc/build/html
+
[wheel]
universal = 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/setup.py new/metaextract-0.0.9/setup.py
--- old/metaextract-0.0.7/setup.py 2016-08-29 19:39:00.000000000 +0200
+++ new/metaextract-0.0.9/setup.py 2017-02-28 19:51:09.000000000 +0100
@@ -19,12 +19,14 @@
import setuptools
import metaextract.setup
+from metaextract import __version__
+
with open("README.rst", "r") as f:
long_description = f.read()
setuptools.setup(
name="metaextract",
- version="0.0.7",
+ version=__version__,
license="Apache-2.0",
description="get metadata for python modules",
long_description=long_description,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metaextract-0.0.7/tox.ini new/metaextract-0.0.9/tox.ini
--- old/metaextract-0.0.7/tox.ini 2016-08-29 19:39:00.000000000 +0200
+++ new/metaextract-0.0.9/tox.ini 2016-10-08 22:52:47.000000000 +0200
@@ -20,3 +20,7 @@
[flake8]
ignore =
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build
+
+[testenv:docs]
+commands =
+ python setup.py build_sphinx
1
0
Hello community,
here is the log from the commit of package octave for openSUSE:Factory checked in at 2017-02-28 23:51:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/octave (Old)
and /work/SRC/openSUSE:Factory/.octave.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "octave"
Tue Feb 28 23:51:36 2017 rev:48 rq:460989 version:4.2.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/octave/octave.changes 2016-11-16 13:33:19.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.octave.new/octave.changes 2017-02-28 23:51:44.971280281 +0100
@@ -1,0 +2,6 @@
+Tue Feb 28 14:42:03 UTC 2017 - dmitry_r(a)opensuse.org
+
+- Update to version 4.2.1
+ * See icluded NEWS file for details
+
+-------------------------------------------------------------------
Old:
----
octave-4.2.0.tar.lz
New:
----
octave-4.2.1.tar.lz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ octave.spec ++++++
--- /var/tmp/diff_new_pack.k4SZcG/_old 2017-02-28 23:51:46.519061821 +0100
+++ /var/tmp/diff_new_pack.k4SZcG/_new 2017-02-28 23:51:46.523061258 +0100
@@ -1,7 +1,7 @@
#
# spec file for package octave
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -51,7 +51,7 @@
%endif
Name: octave
-Version: 4.2.0
+Version: 4.2.1
Release: 0
# Required for RC builds, in this case version contains ~rc, src_ver -rc
%define src_ver %{version}
1
0
Hello community,
here is the log from the commit of package obs-service-tar_scm for openSUSE:Factory checked in at 2017-02-28 23:51:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/obs-service-tar_scm (Old)
and /work/SRC/openSUSE:Factory/.obs-service-tar_scm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "obs-service-tar_scm"
Tue Feb 28 23:51:26 2017 rev:38 rq:460913 version:0.7.0.1484082405.7671be8
Changes:
--------
--- /work/SRC/openSUSE:Factory/obs-service-tar_scm/obs-service-tar_scm.changes 2017-01-23 11:40:39.410076940 +0100
+++ /work/SRC/openSUSE:Factory/.obs-service-tar_scm.new/obs-service-tar_scm.changes 2017-02-28 23:51:29.077523579 +0100
@@ -1,0 +2,6 @@
+Tue Feb 28 13:45:43 UTC 2017 - dimstar(a)opensuse.org
+
+- Replayce python-yaml Requires/Buildrequires with python-PyYAML,
+ which is actually its correct name.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ obs-service-tar_scm.spec ++++++
--- /var/tmp/diff_new_pack.BLSrJn/_old 2017-02-28 23:51:29.773425358 +0100
+++ /var/tmp/diff_new_pack.BLSrJn/_new 2017-02-28 23:51:29.777424793 +0100
@@ -45,16 +45,16 @@
BuildRequires: git-core
BuildRequires: mercurial
BuildRequires: python >= 2.6
+BuildRequires: python-PyYAML
BuildRequires: python-dateutil
BuildRequires: python-lxml
BuildRequires: python-mock
-BuildRequires: python-yaml
BuildRequires: subversion
Requires: bzr
Requires: git-core
Requires: mercurial
+Requires: python-PyYAML
Requires: python-dateutil
-Requires: python-yaml
Requires: subversion
%if 0%{?suse_version} < 1315
Requires: python-argparse
1
0
Hello community,
here is the log from the commit of package ivykis for openSUSE:Factory checked in at 2017-02-28 23:51:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ivykis (Old)
and /work/SRC/openSUSE:Factory/.ivykis.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ivykis"
Tue Feb 28 23:51:19 2017 rev:11 rq:460787 version:0.41
Changes:
--------
--- /work/SRC/openSUSE:Factory/ivykis/ivykis.changes 2016-11-07 12:24:03.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.ivykis.new/ivykis.changes 2017-02-28 23:51:20.334757564 +0100
@@ -1,0 +2,8 @@
+Tue Feb 21 00:42:23 UTC 2017 - jengelh(a)inai.de
+
+- Update to new upstream release 0.41
+ * No changelog was provided
+- Reenable PPC/ARM builds, the pthread_nonshared edits of 0.40
+ should have fixed the issues there.
+
+-------------------------------------------------------------------
Old:
----
ivykis-0.40.tar.gz
New:
----
ivykis-0.41.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ivykis.spec ++++++
--- /var/tmp/diff_new_pack.bCp8VH/_old 2017-02-28 23:51:21.054655955 +0100
+++ /var/tmp/diff_new_pack.bCp8VH/_new 2017-02-28 23:51:21.058655391 +0100
@@ -1,7 +1,7 @@
#
# spec file for package ivykis
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX 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,7 +18,7 @@
Name: ivykis
%define lname libivykis0
-Version: 0.40
+Version: 0.41
Release: 0
Summary: An event dispatching library
License: LGPL-2.1
@@ -33,7 +33,6 @@
%if 0%{?suse_version} || 0%{?sles_version}
BuildRequires: fdupes
%endif
-ExcludeArch: ppc ppc64 ppc64le %arm aarch64
%description
libivykis is a thin wrapper over various OS'es implementation of I/O
++++++ ivykis-0.40.tar.gz -> ivykis-0.41.tar.gz ++++++
++++ 31184 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package rebootmgr for openSUSE:Factory checked in at 2017-02-28 23:51:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rebootmgr (Old)
and /work/SRC/openSUSE:Factory/.rebootmgr.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rebootmgr"
Tue Feb 28 23:51:12 2017 rev:2 rq:460730 version:0.11
Changes:
--------
--- /work/SRC/openSUSE:Factory/rebootmgr/rebootmgr.changes 2017-02-18 03:19:44.078965409 +0100
+++ /work/SRC/openSUSE:Factory/.rebootmgr.new/rebootmgr.changes 2017-02-28 23:51:13.475725673 +0100
@@ -1,0 +2,7 @@
+Mon Feb 27 17:44:46 CET 2017 - kukuk(a)suse.de
+
+- Update to version 0.11
+ - Implement unlocking of a machine_id not equal to our own [bsc#1026273]
+ - Watch for correct key when waiting for lock [bsc#1026274]
+
+-------------------------------------------------------------------
Old:
----
rebootmgr-0.10.tar.bz2
New:
----
rebootmgr-0.11.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rebootmgr.spec ++++++
--- /var/tmp/diff_new_pack.m1a6Of/_old 2017-02-28 23:51:14.191624628 +0100
+++ /var/tmp/diff_new_pack.m1a6Of/_new 2017-02-28 23:51:14.199623500 +0100
@@ -17,7 +17,7 @@
Name: rebootmgr
-Version: 0.10
+Version: 0.11
Release: 0
Summary: Automatic controlled reboot during a maintenance window
License: GPL-2.0 and LGPL-2.1+
++++++ rebootmgr-0.10.tar.bz2 -> rebootmgr-0.11.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/NEWS new/rebootmgr-0.11/NEWS
--- old/rebootmgr-0.10/NEWS 2017-02-16 15:00:06.000000000 +0100
+++ new/rebootmgr-0.11/NEWS 2017-02-27 17:42:31.000000000 +0100
@@ -2,6 +2,9 @@
Copyright (C) 2016, 2017 Thorsten Kukuk
+Version 0.11
+* Fix several bugs in etcd locking/unlocking
+
Version 0.10
* Fix typos in documentation
* Fix compilation on 32bit systems
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/configure new/rebootmgr-0.11/configure
--- old/rebootmgr-0.10/configure 2017-02-16 15:00:15.000000000 +0100
+++ new/rebootmgr-0.11/configure 2017-02-27 17:42:38.000000000 +0100
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for rebootmgr 0.10.
+# Generated by GNU Autoconf 2.69 for rebootmgr 0.11.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -577,8 +577,8 @@
# Identity of this package.
PACKAGE_NAME='rebootmgr'
PACKAGE_TARNAME='rebootmgr'
-PACKAGE_VERSION='0.10'
-PACKAGE_STRING='rebootmgr 0.10'
+PACKAGE_VERSION='0.11'
+PACKAGE_STRING='rebootmgr 0.11'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@@ -1326,7 +1326,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 rebootmgr 0.10 to adapt to many kinds of systems.
+\`configure' configures rebootmgr 0.11 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1396,7 +1396,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of rebootmgr 0.10:";;
+ short | recursive ) echo "Configuration of rebootmgr 0.11:";;
esac
cat <<\_ACEOF
@@ -1511,7 +1511,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-rebootmgr configure 0.10
+rebootmgr configure 0.11
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1876,7 +1876,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by rebootmgr $as_me 0.10, which was
+It was created by rebootmgr $as_me 0.11, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2740,7 +2740,7 @@
# Define the identity of the package.
PACKAGE='rebootmgr'
- VERSION='0.10'
+ VERSION='0.11'
cat >>confdefs.h <<_ACEOF
@@ -8627,7 +8627,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by rebootmgr $as_me 0.10, which was
+This file was extended by rebootmgr $as_me 0.11, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -8693,7 +8693,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-rebootmgr config.status 0.10
+rebootmgr config.status 0.11
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/rebootmgr-0.10/configure.ac new/rebootmgr-0.11/configure.ac
--- old/rebootmgr-0.10/configure.ac 2017-02-16 14:54:59.000000000 +0100
+++ new/rebootmgr-0.11/configure.ac 2017-02-27 17:41:41.000000000 +0100
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_INIT(rebootmgr, 0.10)
+AC_INIT(rebootmgr, 0.11)
AM_INIT_AUTOMAKE
AC_CONFIG_SRCDIR([src/rebootmgrd.c])
AM_CONFIG_HEADER(config.h)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/org.opensuse.RebootMgr.conf.8.html new/rebootmgr-0.11/man/org.opensuse.RebootMgr.conf.8.html
--- old/rebootmgr-0.10/man/org.opensuse.RebootMgr.conf.8.html 2017-02-16 14:54:21.000000000 +0100
+++ new/rebootmgr-0.11/man/org.opensuse.RebootMgr.conf.8.html 2017-02-27 16:06:21.000000000 +0100
@@ -15,7 +15,7 @@
h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
visibility: visible;
}
- </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.9</span><hr><div class="refentry"><a name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance window.</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/sbin/rebootmgrd</code> [ --debug | --help | --version ]</p></div><p><code class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div class="refsect1"><a name="description"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of machines with the same task
+ </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.10</span><hr><div class="refentry"><a name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance window.</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/sbin/rebootmgrd</code> [ --debug | --help | --version ]</p></div><p><code class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div class="refsect1"><a name="description"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of machines with the same task
reboot at the same there, <span class="emphasis"><em>rebootmgrd</em></span> reboots
the machine following configured policies.</p><div class="refsect2"><a name="reboot_strategy_options"></a><h3 id="Reboot Strategies">Reboot Strategies<a class="headerlink" title="Permalink to this headline" href="#Reboot%20Strategies">¶</a></h3><p>
rebootmgr supports different strategies, when a reboot should be done:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/rebootmgr.conf.5 new/rebootmgr-0.11/man/rebootmgr.conf.5
--- old/rebootmgr-0.10/man/rebootmgr.conf.5 2017-02-16 14:54:20.000000000 +0100
+++ new/rebootmgr-0.11/man/rebootmgr.conf.5 2017-02-27 16:06:21.000000000 +0100
@@ -2,12 +2,12 @@
.\" Title: rebootmgr.conf
.\" Author: Thorsten Kukuk <kukuk(a)suse.com>
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\" Date: 02/16/2017
+.\" Date: 02/27/2017
.\" Manual: resolved.conf
.\" Source: rebootmgr
.\" Language: English
.\"
-.TH "REBOOTMGR\&.CONF" "5" "02/16/2017" "rebootmgr" "resolved.conf"
+.TH "REBOOTMGR\&.CONF" "5" "02/27/2017" "rebootmgr" "resolved.conf"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/rebootmgr.conf.5.html new/rebootmgr-0.11/man/rebootmgr.conf.5.html
--- old/rebootmgr-0.10/man/rebootmgr.conf.5.html 2017-02-16 14:54:21.000000000 +0100
+++ new/rebootmgr-0.11/man/rebootmgr.conf.5.html 2017-02-27 16:06:21.000000000 +0100
@@ -15,7 +15,7 @@
h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
visibility: visible;
}
- </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.9</span><hr><div class="refentry"><a name="rebootmgr.conf.5"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>rebootmgr.conf — Reboot Manager configuration files</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/rebootmgr.conf</code></p></div><div class="refsect1"><a name="id-1.5"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These configuration file controls and defines the reboot policy for
+ </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.10</span><hr><div class="refentry"><a name="rebootmgr.conf.5"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>rebootmgr.conf — Reboot Manager configuration files</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/rebootmgr.conf</code></p></div><div class="refsect1"><a name="id-1.5"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>These configuration file controls and defines the reboot policy for
<a href="rebootmgrd.8.html"><span class="citerefentry"><span class="refentrytitle">rebootmgrd</span>(8)</span></a>.</p></div><div class="refsect1"><a name="id-1.6"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>The following options are available in the "<code class="literal">rebootmgr</code>"
section:</p><div class="variablelist"><dl class="variablelist"><dt id="window-start="><span class="term"><code class="varname">window-start=</code></span><a class="headerlink" title="Permalink to this term" href="#window-start=">¶</a></dt><dd><p>
The format of <code class="varname">window-start</code> is the same as
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/rebootmgr.index.html new/rebootmgr-0.11/man/rebootmgr.index.html
--- old/rebootmgr-0.10/man/rebootmgr.index.html 2017-02-16 14:54:21.000000000 +0100
+++ new/rebootmgr-0.11/man/rebootmgr.index.html 2017-02-27 16:06:22.000000000 +0100
@@ -15,4 +15,4 @@
h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
visibility: visible;
}
- </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.9</span><hr><div class="refentry"><a name="rebootmgr.index"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>rebootmgr.index — List all manpages from the rebootmgr project</p></div><div class="refsect1"><a name="id-1.4"></a><h2 id="O">O<a class="headerlink" title="Permalink to this headline" href="#O">¶</a></h2><p><a href="org.opensuse.RebootMgr.conf.8.html"><span class="citerefentry"><span class="refentrytitle">org.opensuse.RebootMgr.conf</span>(8)</span></a> -- Reboot the machine during a maintenance window.<br></p></div><div class="refsect1"><a name="id-1.5"></a><h2 id="R">R<a class="headerlink" title="Permalink to this headline" href="#R">¶</a></h2><p><a href="rebootmgr.conf.5.html"><span class="citerefentry"><span class="refentrytitle">rebootmgr.conf</span>(5)</span></a> -- Reboot Manager configuration files<br><a href="rebootmgr.service.8.html"><span class="citerefentry"><span class="refentrytitle">rebootmgr.service</span>(8)</span></a> -- Reboot the machine during a maintenance window.<br><a href="rebootmgrctl.1.html"><span class="citerefentry"><span class="refentrytitle">rebootmgrctl</span>(1)</span></a> -- Tool to control and configure the reboot manager daemon.<br><a href="rebootmgrd.8.html"><span class="citerefentry"><span class="refentrytitle">rebootmgrd</span>(8)</span></a> -- Reboot the machine during a maintenance window.<br></p></div><div class="refsect1"><a name="id-1.6"></a><p><a name="counts"></a>This index contains 5 entries, referring to 3 individual manual pages.</p></div></div></body></html>
+ </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.10</span><hr><div class="refentry"><a name="rebootmgr.index"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>rebootmgr.index — List all manpages from the rebootmgr project</p></div><div class="refsect1"><a name="id-1.4"></a><h2 id="O">O<a class="headerlink" title="Permalink to this headline" href="#O">¶</a></h2><p><a href="org.opensuse.RebootMgr.conf.8.html"><span class="citerefentry"><span class="refentrytitle">org.opensuse.RebootMgr.conf</span>(8)</span></a> -- Reboot the machine during a maintenance window.<br></p></div><div class="refsect1"><a name="id-1.5"></a><h2 id="R">R<a class="headerlink" title="Permalink to this headline" href="#R">¶</a></h2><p><a href="rebootmgr.conf.5.html"><span class="citerefentry"><span class="refentrytitle">rebootmgr.conf</span>(5)</span></a> -- Reboot Manager configuration files<br><a href="rebootmgr.service.8.html"><span class="citerefentry"><span class="refentrytitle">rebootmgr.service</span>(8)</span></a> -- Reboot the machine during a maintenance window.<br><a href="rebootmgrctl.1.html"><span class="citerefentry"><span class="refentrytitle">rebootmgrctl</span>(1)</span></a> -- Tool to control and configure the reboot manager daemon.<br><a href="rebootmgrd.8.html"><span class="citerefentry"><span class="refentrytitle">rebootmgrd</span>(8)</span></a> -- Reboot the machine during a maintenance window.<br></p></div><div class="refsect1"><a name="id-1.6"></a><p><a name="counts"></a>This index contains 5 entries, referring to 3 individual manual pages.</p></div></div></body></html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/rebootmgr.service.8.html new/rebootmgr-0.11/man/rebootmgr.service.8.html
--- old/rebootmgr-0.10/man/rebootmgr.service.8.html 2017-02-16 14:54:21.000000000 +0100
+++ new/rebootmgr-0.11/man/rebootmgr.service.8.html 2017-02-27 16:06:21.000000000 +0100
@@ -15,7 +15,7 @@
h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
visibility: visible;
}
- </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.9</span><hr><div class="refentry"><a name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance window.</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/sbin/rebootmgrd</code> [ --debug | --help | --version ]</p></div><p><code class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div class="refsect1"><a name="description"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of machines with the same task
+ </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.10</span><hr><div class="refentry"><a name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance window.</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/sbin/rebootmgrd</code> [ --debug | --help | --version ]</p></div><p><code class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div class="refsect1"><a name="description"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of machines with the same task
reboot at the same there, <span class="emphasis"><em>rebootmgrd</em></span> reboots
the machine following configured policies.</p><div class="refsect2"><a name="reboot_strategy_options"></a><h3 id="Reboot Strategies">Reboot Strategies<a class="headerlink" title="Permalink to this headline" href="#Reboot%20Strategies">¶</a></h3><p>
rebootmgr supports different strategies, when a reboot should be done:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/rebootmgrctl.1 new/rebootmgr-0.11/man/rebootmgrctl.1
--- old/rebootmgr-0.10/man/rebootmgrctl.1 2017-02-16 14:54:20.000000000 +0100
+++ new/rebootmgr-0.11/man/rebootmgrctl.1 2017-02-27 16:06:21.000000000 +0100
@@ -2,12 +2,12 @@
.\" Title: rebootmgrctl
.\" Author: Thorsten Kukuk <kukuk(a)suse.de>
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\" Date: 02/16/2017
+.\" Date: 02/27/2017
.\" Manual: rebootmgrctl
.\" Source: rebootmgr
.\" Language: English
.\"
-.TH "REBOOTMGRCTL" "1" "02/16/2017" "rebootmgr" "rebootmgrctl"
+.TH "REBOOTMGRCTL" "1" "02/27/2017" "rebootmgr" "rebootmgrctl"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/rebootmgrctl.1.html new/rebootmgr-0.11/man/rebootmgrctl.1.html
--- old/rebootmgr-0.10/man/rebootmgrctl.1.html 2017-02-16 14:54:21.000000000 +0100
+++ new/rebootmgr-0.11/man/rebootmgrctl.1.html 2017-02-27 16:06:21.000000000 +0100
@@ -15,7 +15,7 @@
h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
visibility: visible;
}
- </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.9</span><hr><div class="refentry"><a name="rebootmgrctl.1"></a><div class="titlepage"></div><div class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrctl — Tool to control and configure the reboot manager daemon.</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> [ --help | --version ]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> is-active [--quiet]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> reboot [ fast | now ]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> cancel </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> status [--quiet]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> set-strategy best-effort | etcd-lock | maint-window | instantly | off </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> get-strategy </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> set-group <em class="replaceable"><code>group</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> get-group </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> set-window <em class="replaceable"><code>time</code></em> <em class="replaceable"><code>duration</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> get-window </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> set-max [--group <em class="replaceable"><code>group</code></em>] <em class="replaceable"><code>number</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> lock [--group <em class="replaceable"><code>group</code></em>] [<em class="replaceable"><code>machine-id</code></em>]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> unlock [--group <em class="replaceable"><code>group</code></em>] [<em class="replaceable"><code>machine-id</code></em>]</p></div></div><div class="refsect1"><a name="description"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="emphasis"><em>rebootmgrctl</em></span> is used to
+ </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.10</span><hr><div class="refentry"><a name="rebootmgrctl.1"></a><div class="titlepage"></div><div class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrctl — Tool to control and configure the reboot manager daemon.</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> [ --help | --version ]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> is-active [--quiet]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> reboot [ fast | now ]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> cancel </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> status [--quiet]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> set-strategy best-effort | etcd-lock | maint-window | instantly | off </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> get-strategy </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> set-group <em class="replaceable"><code>group</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> get-group </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> set-window <em class="replaceable"><code>time</code></em> <em class="replaceable"><code>duration</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> get-window </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> set-max [--group <em class="replaceable"><code>group</code></em>] <em class="replaceable"><code>number</code></em> </p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> lock [--group <em class="replaceable"><code>group</code></em>] [<em class="replaceable"><code>machine-id</code></em>]</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> unlock [--group <em class="replaceable"><code>group</code></em>] [<em class="replaceable"><code>machine-id</code></em>]</p></div></div><div class="refsect1"><a name="description"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p><span class="emphasis"><em>rebootmgrctl</em></span> is used to
query and configure the
<a href="rebootmgrd.8.html"><span class="citerefentry"><span class="refentrytitle">rebootmgrd</span>(8)</span></a>
process.</p></div><div class="refsect1"><a name="options"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><div class="variablelist"><dl class="variablelist"><dt id="--help"><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#--help">¶</a></dt><dd><p>display help text and exit</p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version">¶</a></dt><dd><p>output version information and exit</p></dd><dt id="cancel"><span class="term"><code class="option">cancel</code></span><a class="headerlink" title="Permalink to this term" href="#cancel">¶</a></dt><dd><p>Cancels an already running reboot.</p></dd><dt id="is-active --quiet"><span class="term"><code class="option">is-active</code> [<span class="optional">--quiet</span>]</span><a class="headerlink" title="Permalink to this term" href="#is-active%20--quiet">¶</a></dt><dd><p>Prints if the rebootmgrd is running and active or not. With the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/rebootmgrd.8 new/rebootmgr-0.11/man/rebootmgrd.8
--- old/rebootmgr-0.10/man/rebootmgrd.8 2017-02-16 14:54:20.000000000 +0100
+++ new/rebootmgr-0.11/man/rebootmgrd.8 2017-02-27 16:06:20.000000000 +0100
@@ -2,12 +2,12 @@
.\" Title: rebootmgrd
.\" Author: Thorsten Kukuk <kukuk(a)suse.de>
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\" Date: 02/16/2017
+.\" Date: 02/27/2017
.\" Manual: rebootmgrd
.\" Source: rebootmgr
.\" Language: English
.\"
-.TH "REBOOTMGRD" "8" "02/16/2017" "rebootmgr" "rebootmgrd"
+.TH "REBOOTMGRD" "8" "02/27/2017" "rebootmgr" "rebootmgrd"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/man/rebootmgrd.8.html new/rebootmgr-0.11/man/rebootmgrd.8.html
--- old/rebootmgr-0.10/man/rebootmgrd.8.html 2017-02-16 14:54:21.000000000 +0100
+++ new/rebootmgr-0.11/man/rebootmgrd.8.html 2017-02-27 16:06:21.000000000 +0100
@@ -15,7 +15,7 @@
h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
visibility: visible;
}
- </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.9</span><hr><div class="refentry"><a name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance window.</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/sbin/rebootmgrd</code> [ --debug | --help | --version ]</p></div><p><code class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div class="refsect1"><a name="description"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of machines with the same task
+ </style><a href="rebootmgr.index.html">Index </a><span style="float:right">rebootmgr 0.10</span><hr><div class="refentry"><a name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance window.</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">/usr/sbin/rebootmgrd</code> [ --debug | --help | --version ]</p></div><p><code class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div class="refsect1"><a name="description"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of machines with the same task
reboot at the same there, <span class="emphasis"><em>rebootmgrd</em></span> reboots
the machine following configured policies.</p><div class="refsect2"><a name="reboot_strategy_options"></a><h3 id="Reboot Strategies">Reboot Strategies<a class="headerlink" title="Permalink to this headline" href="#Reboot%20Strategies">¶</a></h3><p>
rebootmgr supports different strategies, when a reboot should be done:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/src/lock-etcd.c new/rebootmgr-0.11/src/lock-etcd.c
--- old/rebootmgr-0.10/src/lock-etcd.c 2017-02-16 14:53:06.000000000 +0100
+++ new/rebootmgr-0.11/src/lock-etcd.c 2017-02-27 17:30:58.000000000 +0100
@@ -135,7 +135,6 @@
{
assert(idx < num_server);
++idx;
- printf ("idx=%i, token=%s\n", idx, token);
cetcd_array_append (addrs, token);
}
token = strtok(NULL, URL_DELIM);
@@ -271,6 +270,52 @@
return 0;
}
+
+/*
+ return values:
+ 1: own a lock
+ 0: don't own a lock
+ -1: error
+*/
+static int
+internal_etcd_own_lock (cetcd_client *cli, const char *group,
+ const char *machine_id)
+{
+ char *path = NULL;
+ int have_lock = 0;
+ cetcd_response *resp;
+
+ /* Check if the data structure for the locks exists, else create them */
+ if (asprintf (&path, "%s/%s/data", ETCD_LOCKS, group) == -1)
+ return -1;
+ resp = cetcd_get (cli, path);
+ free (path);
+ if (resp->err)
+ {
+ if (resp->err->ecode == 100)
+ create_lock_dir (cli, group);
+ else
+ log_msg (LOG_ERR, "ERROR: %d, %s (%s)", resp->err->ecode,
+ resp->err->message, resp->err->cause);
+ }
+ else
+ {
+ json_object *jobj = json_tokener_parse (resp->node->value);
+
+ if (machine_id == NULL)
+ have_lock = is_id_in_holders (jobj, get_machine_id());
+ else
+ have_lock = is_id_in_holders (jobj, machine_id);
+
+ json_object_put (jobj);
+ }
+
+ cetcd_response_release (resp);
+
+ return have_lock;
+}
+
+
/*
return values:
0: success
@@ -306,6 +351,14 @@
}
cetcd_response_release (resp);
+ /* Check if we have the lock already. Don't try to get it a
+ second time, deadlock possible! */
+ if (internal_etcd_own_lock (&cli, group, machine_id))
+ {
+ retval = 0;
+ goto cleanup;
+ }
+
/* try in a loop to get a mutex with current locks lower than max locks */
while (!have_lock)
{
@@ -380,7 +433,7 @@
{
if (debug_flag)
log_msg (LOG_DEBUG, "max locks reached for group '%s'", group);
- if (watch_key (&cli, group, "count", 0 /* XXX */) != 0)
+ if (watch_key (&cli, group, "mutex", 0 /* XXX */) != 0)
goto cleanup;
}
}
@@ -392,6 +445,7 @@
return retval;
}
+
/*
return values:
0: success
@@ -405,11 +459,14 @@
int retval = 1;
int removed_lock = 0;
- if (!etcd_own_lock (group))
- return 0;
-
setup_etcd_connection(&addrs, &cli);
+ if (!internal_etcd_own_lock (&cli, group, machine_id))
+ {
+ retval = 0;
+ goto cleanup;
+ }
+
/* try in a loop to get a mutex */
while (!removed_lock)
{
@@ -565,43 +622,21 @@
int
etcd_own_lock (const char *group)
{
+ int retval;
cetcd_client cli;
- cetcd_response *resp;
cetcd_array addrs;
- char *path = NULL;
- int have_lock = 0;
setup_etcd_connection(&addrs, &cli);
- /* Check if the data structure for the locks exists, else create them */
- if (asprintf (&path, "%s/%s/data", ETCD_LOCKS, group) == -1)
- return -1;
- resp = cetcd_get (&cli, path);
- free (path);
- if (resp->err)
- {
- if (resp->err->ecode == 100)
- create_lock_dir (&cli, group);
- else
- log_msg (LOG_ERR, "ERROR: %d, %s (%s)", resp->err->ecode,
- resp->err->message, resp->err->cause);
- }
- else
- {
- json_object *jobj = json_tokener_parse (resp->node->value);
-
- have_lock = is_id_in_holders (jobj, get_machine_id ());
-
- json_object_put (jobj);
- }
+ retval = internal_etcd_own_lock (&cli, group, get_machine_id ());
- cetcd_response_release (resp);
cetcd_array_destroy (&addrs);
cetcd_client_destroy (&cli);
- return have_lock;
+ return retval;
}
+
/*
check if etcd is running.
return values:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rebootmgr-0.10/src/rebootmgrd.c new/rebootmgr-0.11/src/rebootmgrd.c
--- old/rebootmgr-0.10/src/rebootmgrd.c 2017-02-07 14:54:38.000000000 +0100
+++ new/rebootmgr-0.11/src/rebootmgrd.c 2017-02-21 16:49:38.000000000 +0100
@@ -123,6 +123,7 @@
etcd_is_running()) ||
ctx->reboot_strategy == RM_REBOOTSTRATEGY_ETCD_LOCK))
{
+ ctx->reboot_status = RM_REBOOTSTATUS_WAITING_ETCD;
if (etcd_get_lock (ctx->lock_group, NULL) != 0)
{
log_msg (LOG_ERR, "ERROR: etcd_get_lock failed, abort reboot");
Binary files old/rebootmgr-0.10/tests/test-etcd and new/rebootmgr-0.11/tests/test-etcd differ
1
0
Hello community,
here is the log from the commit of package stress-ng for openSUSE:Factory checked in at 2017-02-28 23:51:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/stress-ng (Old)
and /work/SRC/openSUSE:Factory/.stress-ng.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "stress-ng"
Tue Feb 28 23:51:06 2017 rev:7 rq:460687 version:0.07.21
Changes:
--------
--- /work/SRC/openSUSE:Factory/stress-ng/stress-ng.changes 2017-01-10 10:49:33.399994375 +0100
+++ /work/SRC/openSUSE:Factory/.stress-ng.new/stress-ng.changes 2017-02-28 23:51:07.412581448 +0100
@@ -1,0 +2,123 @@
+Mon Feb 27 11:55:19 UTC 2017 - mpluskal(a)suse.com
+
+- Update to version 0.07.21:
+ * Makefile: add test-asm-nop.c to dist rule
+ * Makefile: add config to dist rule
+ * stress-fault: fix build on BSD, missing g_ prefix on keep_stressing_flag
+ * Makefile: save and re-load configuration
+ * stress-apparmor: prefix global data with g_
+ * mwc: make __mwc static, it's not referred to globally nowadays
+ * Prefix all globals with g_ to indicate they are in global scope
+ * stress-chroot: make functions static
+ * stress-iomix: fix build warnings with gcc 3.4.3
+ * stress-ng.h: include strings.h for sun builds for rindex
+ * shim: fix build warning on FreeBSD
+ * stress-icache: forgot to add addr voidification
+ * shim: handle ENOSYS on posix_fallocate by using emulated fallocate
+ * stress-icache: fix warning when madvise does is not being used
+ * Add no-op nop cycle waster stressor
+ * stress-icache: cater for 4K, 16K and 64K page sizes and alignments
+ * fast-test-all: print system information
+ * stress-key: handle ENOSYS on KEYCTL_SET_TIMEOUT and bail out early
+ * stress-iomix: remove redundant directory removal on fallocate failure
+ * shim: add emulation for failed fallocate(2)
+ * stress-iomix: don't use fdatasync on non-linux systems
+ * stress-chroot: make this unsupported for non-Linux systems
+ * stress-iomix: use shim_msync instread of msync for portability reasons
+ * stress-iomix: only use fadvise on linux
+ * stress-iomix: only use MAP_POPULATE on systems that provide this flag
+ * stress-iomix: only use FALLOC_FL_ZERO_RANGE on systems where it is available
+ * Correctly default iomix size to 1GB
+ * Move page_size to args struct, remove need for stress_get_pagesize calls
+ * Add a new iomix mixed I/O stressor
+ * stress-chroot: EINTR should not flag up as an error
+ * Add a chroot stressor
+ * Makefile: add pdf manual making rule
+ * stress-socketpair: abort on read failure
+ * stress-yield: remove args-> from instacne message text
+ * stress-msync: add another missing \n
+ * stress-sync-file: abort early on sync failures
+ * stress-msync: add missing \n on error message
+ * stress-resources: don't build in timer data if SIGUNUSED is not defined
+ * mwc: move inlined functions back into mwc.c
+ * stress-resources: don't build timer code of SIGUNUSED is not defined,
+ fixes builds on mips, mips64el, alpha, sparc64
+ * fast-test-all: add more feedback on failed or skipped tests at
+ end of test
+ * stress-tlb-shootdown: ensure we have a sensible number of child
+ processes
+ * stress-fcntl: disabled F_DUPFD_* stressors for minix
+ * stress-fcntl: ensure we are not dup'ing onto an already open fd
+ * stress-fcntl: only use flock64 for linux
+ * stress-fcntl: fix F_OFD_GETLK error message
+ * stress-fcntl: use flock64 for locking fcntl calls
+ * stress-get: treat EOVERFLOW on prlimit as not a fatal error
+ * mincore: fix incorrect inverted logic to test for minix
+ * fix build warning with missing const on BSD builds
+ * fix build warnings with missing const on GNU/HURD builds
+ * Make opt_all and wait_flag static, they do not need to be global
+ * Fix up some spelling mistakes
+ * ignite-cpu: make settings static
+ * rename opt_do_wait to wait_flag as a more appropriate name
+ * rename opt_sigint to caught_sigint
+ * Replace opt_do_run with keep_stressing_flag
+ * mincore: ensure we touch pages even when calloc or mincore fail
+ * stress-ng: func_supported should be a void arg
+ * stress-resouces: add calloc resource suckage
+ * stress-resources: add posix semaphore resource suckage
+ * stress-resources: add timer resource suckage
+ * stress-resources: add socketpair to resource suckage
+ * Optimize mwc64/32/16/8 functions
+ * stress-noop: add loop and inc to show minimal stressor example
+ * Optimize __keep_running helper
+ * Add LIKELY/UNLIKELY macros
+ * time.c: add another constification
+ * helper, stress-ng.h: add a couple more constifications
+ * cache: more constifications, remove comment from #endif
+ * perf: use scientific notation to define double constants
+ * stress-sleep: constify cast
+ * constify args_t *args parameters
+ * cache.c, stress-ng.h: move generic_map to cache.c, make it a typedef
+ * stress-ng.h: add some more comments to various fields
+ * stress-fifo: fix wrap around detection
+ * stress-get: need to assign ret before checking it
+ * stress-fcntl: remove "name: " prefix in error message
+ * stress-icache: add missing ; to fix *BSD build
+ * stress-tmpfs: use args->pid instead of getpid on pid
+ * stress-hdd: fix build issue on GNU/HURD
+ * stress-atomic: fix missing ;
+ * use a new helper keep_stressing() to check if we should keep on running
+ * Fix up pr_msg va_args, requires a shim
+ * log: make args const
+ * make pr_* macros into shim functions, shrinks the build size
+ * pr_fail always writes to stderr, so remove the need to specify the
+ stream
+ * pr_err always writes to stderr, so remove the need to specify the
+ stream
+ * pr_tidy always writes to stderr, so remove the need to specify the
+ stream
+ * pr_dbg always writes to stderr, so remove the need to specify the
+ stream
+ * pr_inf always writes to stdout, so remove the need to specify the
+ stream
+ * Remove need to pass name in pr_fail_err, pr_fail_errno, pr_fail_dbg
+ * Add stress_temp_filename_args helper
+ * Add stress_temp_dir_args helper
+ * Add stress_temp_dir_rm_args helper to rmdir given stressor args
+ * Add stress_temp_dir_mk_args helper to mkdir given stressor args
+ * Use arg->pid and arg->ppid rather than getpid() and getppid
+ * stress-tsc: fix missing typo
+ * Add pid, ppid and re-order args to pack more efficiently in args_t
+ * Pass args to stressors via a args_t struct
+ * Use the new mmap_check/set helper funcs
+ * Add mmap set/check helpers
+ * thrash: perform some sanity checks on mmap ranges
+ * stress-tmpfs: remove unnecessary mypid variable
+ * Add a tmpfs file/mmap stressor
+ * stress-af-alg: fix fd leak, add close on error exit path
+ * stress-af-alg: check for null ptr on cmsg to keep clang scan happy
+ * stress-resources: reduce scopeof slavename, make it const char *
+ * stress-netlink-proc: reduce scope of newname
+ * stress-vm-rw: return EXIT_NO_RESOURCE on resource failure
+
+-------------------------------------------------------------------
Old:
----
stress-ng-0.07.13.tar.gz
New:
----
stress-ng-0.07.21.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ stress-ng.spec ++++++
--- /var/tmp/diff_new_pack.0WAe26/_old 2017-02-28 23:51:08.132479839 +0100
+++ /var/tmp/diff_new_pack.0WAe26/_new 2017-02-28 23:51:08.136479274 +0100
@@ -18,7 +18,7 @@
Name: stress-ng
-Version: 0.07.13
+Version: 0.07.21
Release: 0
Summary: Tool to load and stress a computer
License: GPL-2.0
++++++ stress-ng-0.07.13.tar.gz -> stress-ng-0.07.21.tar.gz ++++++
++++ 34560 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package spec-cleaner for openSUSE:Factory checked in at 2017-02-28 23:51:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/spec-cleaner (Old)
and /work/SRC/openSUSE:Factory/.spec-cleaner.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "spec-cleaner"
Tue Feb 28 23:51:00 2017 rev:39 rq:460667 version:0.9.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/spec-cleaner/spec-cleaner.changes 2017-02-15 10:07:34.986245519 +0100
+++ /work/SRC/openSUSE:Factory/.spec-cleaner.new/spec-cleaner.changes 2017-02-28 23:51:01.353436659 +0100
@@ -1,0 +2,6 @@
+Mon Feb 27 10:10:34 UTC 2017 - mpluskal(a)suse.com
+
+- Update to version 0.9.3:
+ * Fix regression (gh#openSUSE/spec-cleaner#171)
+
+-------------------------------------------------------------------
Old:
----
spec-cleaner-0.9.2.tar.gz
New:
----
spec-cleaner-0.9.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ spec-cleaner.spec ++++++
--- /var/tmp/diff_new_pack.Ky6DeE/_old 2017-02-28 23:51:02.065336178 +0100
+++ /var/tmp/diff_new_pack.Ky6DeE/_new 2017-02-28 23:51:02.065336178 +0100
@@ -20,7 +20,7 @@
# This is used for Fedora, we need to sync this
%{!?py3_ver: %define py3_ver %{python3_version}}
Name: spec-cleaner
-Version: 0.9.2
+Version: 0.9.3
Release: 0
Summary: .spec file cleaner
License: BSD-3-Clause
++++++ spec-cleaner-0.9.2.tar.gz -> spec-cleaner-0.9.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.9.2/spec_cleaner/__init__.py new/spec-cleaner-spec-cleaner-0.9.3/spec_cleaner/__init__.py
--- old/spec-cleaner-spec-cleaner-0.9.2/spec_cleaner/__init__.py 2017-02-13 12:58:57.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.9.3/spec_cleaner/__init__.py 2017-02-27 11:17:49.000000000 +0100
@@ -12,7 +12,7 @@
from .rpmcleaner import RpmSpecCleaner
-__version__ = '0.9.2'
+__version__ = '0.9.3'
def process_args(argv):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.9.2/spec_cleaner/dependency_parser.py new/spec-cleaner-spec-cleaner-0.9.3/spec_cleaner/dependency_parser.py
--- old/spec-cleaner-spec-cleaner-0.9.2/spec_cleaner/dependency_parser.py 2017-02-13 12:58:57.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.9.3/spec_cleaner/dependency_parser.py 2017-02-27 11:17:49.000000000 +0100
@@ -33,7 +33,7 @@
r')'
)
-re_name = re.compile(r'[-A-Za-z0-9_~():.+/]+')
+re_name = re.compile(r'[-A-Za-z0-9_~():.+/*]+')
re_version = re.compile(r'[-A-Za-z0-9_~():.+]+')
re_spaces = re.compile(r'\s+')
re_macro_unbraced = re.compile('%[A-Za-z0-9_]{3,}')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.9.2/spec_cleaner/fileutils.py new/spec-cleaner-spec-cleaner-0.9.3/spec_cleaner/fileutils.py
--- old/spec-cleaner-spec-cleaner-0.9.2/spec_cleaner/fileutils.py 2017-02-13 12:58:57.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.9.3/spec_cleaner/fileutils.py 2017-02-27 11:17:49.000000000 +0100
@@ -23,7 +23,7 @@
Used all around so kept glob here for importing.
"""
- homedir = os.getenv('HOME') + '/.local/'
+ homedir = os.getenv('HOME', '~') + '/.local/'
possible_paths = [
'{0}/../data/{1}'.format(os.path.dirname(os.path.realpath(__file__)), name),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.9.2/tests/in/susekmp.spec new/spec-cleaner-spec-cleaner-0.9.3/tests/in/susekmp.spec
--- old/spec-cleaner-spec-cleaner-0.9.2/tests/in/susekmp.spec 2017-02-13 12:58:57.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.9.3/tests/in/susekmp.spec 2017-02-27 11:17:49.000000000 +0100
@@ -1,6 +1,7 @@
%package guest-KMP
Summary: Guest kernel modules for VirtualBox
Group: System/Emulators/PC
+Supplements: modalias(x86cpu:vendor%%3A0002%%3Afamily%%3A*%%3Amodel%%3A*%%3Afeature%%3A*)
#SUSE specify macro to define guest kmp package
%{?suse_kernel_module_package:%{suse_kernel_module_package} -p %{SOURCE8} -n %{name}-guest -f %{SOURCE6} kdump um xen xenpae}
%kernel_module_package -p %{name}-kmp-preamble
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.9.2/tests/out/susekmp.spec new/spec-cleaner-spec-cleaner-0.9.3/tests/out/susekmp.spec
--- old/spec-cleaner-spec-cleaner-0.9.2/tests/out/susekmp.spec 2017-02-13 12:58:57.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.9.3/tests/out/susekmp.spec 2017-02-27 11:17:49.000000000 +0100
@@ -1,6 +1,7 @@
%package guest-KMP
Summary: Guest kernel modules for VirtualBox
Group: System/Emulators/PC
+Supplements: modalias(x86cpu:vendor%%3A0002%%3Afamily%%3A*%%3Amodel%%3A*%%3Afeature%%3A*)
#SUSE specify macro to define guest kmp package
%{?suse_kernel_module_package:%suse_kernel_module_package -p %{SOURCE8} -n %{name}-guest -f %{SOURCE6} kdump um xen xenpae}
%kernel_module_package -p %{name}-kmp-preamble
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.9.2/tests/out-minimal/susekmp.spec new/spec-cleaner-spec-cleaner-0.9.3/tests/out-minimal/susekmp.spec
--- old/spec-cleaner-spec-cleaner-0.9.2/tests/out-minimal/susekmp.spec 2017-02-13 12:58:57.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.9.3/tests/out-minimal/susekmp.spec 2017-02-27 11:17:49.000000000 +0100
@@ -1,6 +1,7 @@
%package guest-KMP
Summary: Guest kernel modules for VirtualBox
Group: System/Emulators/PC
+Supplements: modalias(x86cpu:vendor%%3A0002%%3Afamily%%3A*%%3Amodel%%3A*%%3Afeature%%3A*)
#SUSE specify macro to define guest kmp package
%{?suse_kernel_module_package:%{suse_kernel_module_package} -p %{SOURCE8} -n %{name}-guest -f %{SOURCE6} kdump um xen xenpae}
%kernel_module_package -p %{name}-kmp-preamble
++++++ spec-cleaner.dsc ++++++
--- /var/tmp/diff_new_pack.Ky6DeE/_old 2017-02-28 23:51:02.277306260 +0100
+++ /var/tmp/diff_new_pack.Ky6DeE/_new 2017-02-28 23:51:02.281305696 +0100
@@ -1,6 +1,6 @@
Format: 3.0 (quilt)
Source: spec-cleaner
-Version: 0.9.2-1
+Version: 0.9.3-1
Binary: spec-cleaner
Maintainer: Přemysl Janouch <pjanouch(a)suse.com>
Architecture: all
1
0
Hello community,
here is the log from the commit of package ghc-rpm-macros for openSUSE:Factory checked in at 2017-02-28 23:50:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-rpm-macros (Old)
and /work/SRC/openSUSE:Factory/.ghc-rpm-macros.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-rpm-macros"
Tue Feb 28 23:50:53 2017 rev:31 rq:459982 version:1.6.95
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-rpm-macros/ghc-rpm-macros.changes 2016-10-19 13:14:43.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-rpm-macros.new/ghc-rpm-macros.changes 2017-02-28 23:50:54.330427913 +0100
@@ -1,0 +2,7 @@
+Fri Jan 20 08:39:08 UTC 2017 - mimi.vx(a)gmail.com
+
+- update to 1.6.95
+- sync with upstream
+* fix compatibility with cabal 1.24.1.0 and 1.24.2.0
+
+-------------------------------------------------------------------
Old:
----
ghc-rpm-macros-1.6.91.tar.bz2
New:
----
ghc-rpm-macros-1.6.95.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-rpm-macros.spec ++++++
--- /var/tmp/diff_new_pack.4ZqZ81/_old 2017-02-28 23:50:55.034328562 +0100
+++ /var/tmp/diff_new_pack.4ZqZ81/_new 2017-02-28 23:50:55.038327997 +0100
@@ -1,7 +1,7 @@
#
# spec file for package ghc-rpm-macros
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,7 @@
%global without_hscolour 1
Name: ghc-rpm-macros
-Version: 1.6.91
+Version: 1.6.95
Release: 0
BuildArch: noarch
Summary: RPM Macros for building packages for GHC
@@ -30,9 +30,9 @@
Url: https://fedoraproject.org/wiki/Haskell_SIG
# source prepared manually from github.com/opensuse-haskell/ghc-rpm-macros
-Source0: %{name}-%{version}.tar.bz2
+Source0: %{name}-%{version}.tar.xz
-BuildRequires: bzip2
+BuildRequires: xz
Requires: rpm
%if %{undefined without_hscolour}
Requires: hscolour
@@ -77,6 +77,7 @@
install -p -D -m 0755 cabal-tweak-flag %{buildroot}/%{_bindir}/cabal-tweak-flag
install -p -D -m 0755 ghc-pkg-wrapper %{buildroot}/%{_prefix}/lib/rpm/ghc-pkg-wrapper
install -p -D -m 0644 ghc.attr %{buildroot}/%{_prefix}/lib/rpm/fileattrs/ghc.attr
+install -p -D -m 0755 ghc-dirs.sh %{buildroot}/%{_prefix}/lib/rpm/ghc-dirs.sh
%files
%defattr(-,root,root,-)
@@ -88,6 +89,7 @@
%{_bindir}/cabal-tweak-flag
%{_prefix}/lib/rpm/ghc-pkg-wrapper
%{_prefix}/lib/rpm/fileattrs/ghc.attr
+%{_prefix}/lib/rpm/ghc-dirs.sh
%files extra
%defattr(-,root,root,-)
1
0
Hello community,
here is the log from the commit of package ghc for openSUSE:Factory checked in at 2017-02-28 23:50:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc (Old)
and /work/SRC/openSUSE:Factory/.ghc.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc"
Tue Feb 28 23:50:46 2017 rev:53 rq:459981 version:8.0.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc/ghc.changes 2017-01-23 11:41:04.214558709 +0100
+++ /work/SRC/openSUSE:Factory/.ghc.new/ghc.changes 2017-02-28 23:50:47.955327720 +0100
@@ -1,0 +2,25 @@
+Sun Jan 22 11:31:49 UTC 2017 - peter.trommler(a)ohm-hochschule.de
+
+- comment for patch 100
+- refresh ghc-no-madv-free.patch with upstream patch
+* upstream fix for Haskell Trac #12865
+* Haskell Trac #12495 is a duplicate
+
+-------------------------------------------------------------------
+Sat Jan 21 21:50:56 UTC 2017 - mimi.vx(a)gmail.com
+
+- update to 8.0.2
+- drop patches merged by upstream:
+* D2495.patch
+- refreshed patches:
+* 0001-PPC-CodeGen-fix-lwa-instruction-generation.patch
+* 0001-StgCmmPrim-Add-missing-write-barrier.patch
+* ghc-no-madv-free.patch
+- added ghc-8.0.2-Cabal-dynlibdir.patch by Jens Petersen simplifing
+ haskell packaging
++ Interface files produced by GHC should now be deterministic ( boo#998972 )
++ A bug has been fixed that caused standalone derived Ix instances
+ to fail for GADTs with exactly one constructor
++ Compatibility fixes recent Linux distributions.
+
+-------------------------------------------------------------------
Old:
----
D2495.patch
ghc-8.0.1-src.tar.xz
New:
----
ghc-8.0.2-Cabal-dynlibdir.patch
ghc-8.0.2-src.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc.spec ++++++
--- /var/tmp/diff_new_pack.TvxYWL/_old 2017-02-28 23:50:49.123162887 +0100
+++ /var/tmp/diff_new_pack.TvxYWL/_new 2017-02-28 23:50:49.127162323 +0100
@@ -23,7 +23,7 @@
%global unregisterised_archs aarch64 s390 s390x
Name: ghc
-Version: 8.0.1
+Version: 8.0.2
Release: 0
Url: http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src.tar.xz
Summary: The Glorious Glasgow Haskell Compiler
@@ -67,15 +67,14 @@
Requires: ghc-libraries = %{version}-%{release}
Source: http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src.tar.xz
Source1: ghc-rpmlintrc
-# PATCH-FIX-UPSTREAM D2495.patch peter.trommler(a)ohm-hochschule.de -- Add missing memory barrier on mutable variables. See https://ghc.haskell.org/trac/ghc/ticket/12469 for details. Backport of upstream fix for ghc 8.0.2.
-Patch27: D2495.patch
# PATCH-FIX_UPSTREAM 0001-StgCmmPrim-Add-missing-write-barrier.patch peter.trommler(a)ohm-hochschule.de -- Add missing write barrier on mutable arrays.
Patch28: 0001-StgCmmPrim-Add-missing-write-barrier.patch
-# PATCH-FIX_UPSTREAM ghc-no-madv-free.patch psimons(a)suse.com -- Fix "unable to decommit memory: Invalid argument" errors. See https://ghc.haskell.org/trac/ghc/ticket/12495 for details.
+# PATCH-FIX_UPSTREAM ghc-no-madv-free.patch peter.trommler(a)ohn-hochschule.de -- Fix "unable to decommit memory: Invalid argument" errors. See Haskell Trac #12865 for details.
Patch29: ghc-no-madv-free.patch
# PATCH-FIX-UPSTREAM 0001-PPC-CodeGen-fix-lwa-instruction-generation.patch peter.trommler(a)ohm-hochschule.de -- Fix PPC codegen: Fixes ghc-zeromq4-haskell build on 64-bit PowerPCs
Patch30: 0001-PPC-CodeGen-fix-lwa-instruction-generation.patch
-
+# PATCH-FIX-OPENSUSE ghc-8.0.2-Cabal-dynlibdir.patch -- Fix shared library directory location.
+Patch100: ghc-8.0.2-Cabal-dynlibdir.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -117,29 +116,29 @@
%global ghc_pkg_c_deps ghc-compiler = %{ghc_version_override}-%{release}
%if %{defined ghclibdir}
-%ghc_lib_subpackage Cabal-1.24.0.0
+%ghc_lib_subpackage Cabal-1.24.2.0
%ghc_lib_subpackage array-0.5.1.1
-%ghc_lib_subpackage -c gmp-devel,libffi-devel,libdw-devel,libelf-devel base-4.9.0.0
+%ghc_lib_subpackage -c gmp-devel,libffi-devel,libdw-devel,libelf-devel base-4.9.1.0
%ghc_lib_subpackage binary-0.8.3.0
%ghc_lib_subpackage bytestring-0.10.8.1
%ghc_lib_subpackage containers-0.5.7.1
%ghc_lib_subpackage deepseq-1.4.2.0
-%ghc_lib_subpackage directory-1.2.6.2
-%ghc_lib_subpackage filepath-1.4.1.0
+%ghc_lib_subpackage directory-1.3.0.0
+%ghc_lib_subpackage filepath-1.4.1.1
%ghc_lib_subpackage -x ghc-%{ghc_version_override}
%ghc_lib_subpackage ghc-boot-%{ghc_version_override}
%ghc_lib_subpackage ghc-boot-th-%{ghc_version_override}
%ghc_lib_subpackage -x ghci-%{ghc_version_override}
-%ghc_lib_subpackage haskeline-0.7.2.3
+%ghc_lib_subpackage haskeline-0.7.3.0
%ghc_lib_subpackage hoopl-3.10.2.1
%ghc_lib_subpackage hpc-0.6.0.3
%ghc_lib_subpackage pretty-1.1.3.3
-%ghc_lib_subpackage process-1.4.2.0
-%ghc_lib_subpackage template-haskell-2.11.0.0
+%ghc_lib_subpackage process-1.4.3.0
+%ghc_lib_subpackage template-haskell-2.11.1.0
%ghc_lib_subpackage -c ncurses-devel terminfo-0.4.0.2
%ghc_lib_subpackage time-1.6.0.1
%ghc_lib_subpackage transformers-0.5.2.0
-%ghc_lib_subpackage unix-2.7.2.0
+%ghc_lib_subpackage unix-2.7.2.1
%ghc_lib_subpackage xhtml-3000.2.1
%endif
@@ -161,10 +160,10 @@
%prep
%setup -q
-%patch27 -p1
%patch28 -p1
%patch29 -p1
%patch30 -p1
+%patch100 -p1
%build
# Check if bootstrap is required, i.e. version is different from ghc's version
@@ -416,7 +415,6 @@
%{ghcdocbasedir}/haddock
%{ghcdocbasedir}/users_guide
%endif
-%{ghcdocbasedir}/libraries/frames.html
%{ghcdocbasedir}/libraries/gen_contents_index
%{ghcdocbasedir}/libraries/hslogo-16.png
%{ghcdocbasedir}/libraries/ocean.css
++++++ 0001-PPC-CodeGen-fix-lwa-instruction-generation.patch ++++++
--- /var/tmp/diff_new_pack.TvxYWL/_old 2017-02-28 23:50:49.147159500 +0100
+++ /var/tmp/diff_new_pack.TvxYWL/_new 2017-02-28 23:50:49.147159500 +0100
@@ -7,16 +7,16 @@
compiler/nativeGen/PPC/CodeGen.hs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-Index: ghc-8.0.1/compiler/nativeGen/PPC/CodeGen.hs
+Index: ghc-8.0.2/compiler/nativeGen/PPC/CodeGen.hs
===================================================================
---- ghc-8.0.1.orig/compiler/nativeGen/PPC/CodeGen.hs
-+++ ghc-8.0.1/compiler/nativeGen/PPC/CodeGen.hs
-@@ -471,7 +471,7 @@ getRegister' _ (CmmMachOp (MO_UU_Conv W3
- return (Any II64 (\dst -> addr_code `snocOL` LD II32 dst addr))
+--- ghc-8.0.2.orig/compiler/nativeGen/PPC/CodeGen.hs
++++ ghc-8.0.2/compiler/nativeGen/PPC/CodeGen.hs
+@@ -466,7 +466,7 @@ getRegister' _ (CmmMachOp (MO_SS_Conv W1
+ return (Any II64 (\dst -> addr_code `snocOL` LA II16 dst addr))
- getRegister' _ (CmmMachOp (MO_SS_Conv W32 W64) [CmmLoad mem _]) = do
+ getRegister' _ (CmmMachOp (MO_UU_Conv W32 W64) [CmmLoad mem _]) = do
- Amode addr addr_code <- getAmode D mem
+ Amode addr addr_code <- getAmode DS mem -- lwa is DS-form
- return (Any II64 (\dst -> addr_code `snocOL` LA II32 dst addr))
+ return (Any II64 (\dst -> addr_code `snocOL` LD II32 dst addr))
- getRegister' dflags (CmmMachOp mop [x]) -- unary MachOps
+ getRegister' _ (CmmMachOp (MO_SS_Conv W32 W64) [CmmLoad mem _]) = do
++++++ 0001-StgCmmPrim-Add-missing-write-barrier.patch ++++++
--- /var/tmp/diff_new_pack.TvxYWL/_old 2017-02-28 23:50:49.155158371 +0100
+++ /var/tmp/diff_new_pack.TvxYWL/_new 2017-02-28 23:50:49.159157807 +0100
@@ -7,11 +7,11 @@
compiler/codeGen/StgCmmPrim.hs | 1 +
1 file changed, 1 insertion(+)
-Index: ghc-8.0.1/compiler/codeGen/StgCmmPrim.hs
+Index: ghc-8.0.2/compiler/codeGen/StgCmmPrim.hs
===================================================================
---- ghc-8.0.1.orig/compiler/codeGen/StgCmmPrim.hs
-+++ ghc-8.0.1/compiler/codeGen/StgCmmPrim.hs
-@@ -1353,6 +1353,7 @@ doWritePtrArrayOp addr idx val
+--- ghc-8.0.2.orig/compiler/codeGen/StgCmmPrim.hs
++++ ghc-8.0.2/compiler/codeGen/StgCmmPrim.hs
+@@ -1357,6 +1357,7 @@ doWritePtrArrayOp addr idx val
emit (setInfo addr (CmmLit (CmmLabel mkMAP_DIRTY_infoLabel)))
-- the write barrier. We must write a byte into the mark table:
-- bits8[a + header_size + StgMutArrPtrs_size(a) + x >> N]
++++++ ghc-8.0.2-Cabal-dynlibdir.patch ++++++
--- ghc-8.0.1.20161117/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs~ 2016-11-18 07:08:46.000000000 +0900
+++ ghc-8.0.1.20161117/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs 2016-12-07 18:19:02.670468156 +0900
@@ -186,7 +186,7 @@
JHC -> "$compiler"
LHC -> "$compiler"
UHC -> "$pkgid"
- _other -> "$abi",
+ _other -> "$compiler/$pkgkey",
libexecdir = case buildOS of
Windows -> "$prefix" </> "$libname"
_other -> "$prefix" </> "libexec",
++++++ ghc-8.0.1-src.tar.xz -> ghc-8.0.2-src.tar.xz ++++++
/work/SRC/openSUSE:Factory/ghc/ghc-8.0.1-src.tar.xz /work/SRC/openSUSE:Factory/.ghc.new/ghc-8.0.2-src.tar.xz differ: char 26, line 1
++++++ ghc-no-madv-free.patch ++++++
--- /var/tmp/diff_new_pack.TvxYWL/_old 2017-02-28 23:50:49.199152162 +0100
+++ /var/tmp/diff_new_pack.TvxYWL/_new 2017-02-28 23:50:49.203151597 +0100
@@ -1,18 +1,59 @@
-Index: ghc-8.0.1/rts/posix/OSMem.c
+From: Ben Gamari <bgamari.foss(a)gmail.com>
+Date: Thu, 1 Dec 2016 17:55:23 +0000 (-0500)
+Subject: rts: Ensure we always give MADV_DONTNEED a chance in osDecommitMemory
+X-Git-Url: https://git.haskell.org/ghc.git/commitdiff_plain/6576bf83cdf4eac05eb88a24aa…
+
+rts: Ensure we always give MADV_DONTNEED a chance in osDecommitMemory
+
+As described in #12865, newer Linux kernels support both MADV_FREE and
+MADV_DONTNEED. Previously a runtime would fail to try MADV_DONTNEED if
+MADV_FREE failed (e.g. since the kernel which the image is running on
+doesn't support the latter). Now we try MADV_DONTNEED if MADV_FREE
+failed to ensure that binaries compiled on a kernel supporting MADV_FREE
+don't fail on decommit.
+
+Test Plan: Validate
+
+Reviewers: austin, erikd, simonmar
+
+Reviewed By: simonmar
+
+Subscribers: thomie
+
+Differential Revision: https://phabricator.haskell.org/D2780
+
+GHC Trac Issues: #12865
+---
+
+Index: ghc-8.0.1.20161117/rts/posix/OSMem.c
===================================================================
---- ghc-8.0.1.orig/rts/posix/OSMem.c
-+++ ghc-8.0.1/rts/posix/OSMem.c
-@@ -504,13 +504,7 @@ void osDecommitMemory(void *at, W_ size)
- sysErrorBelch("unable to make released memory unaccessible");
- #endif
+--- ghc-8.0.1.20161117.orig/rts/posix/OSMem.c
++++ ghc-8.0.1.20161117/rts/posix/OSMem.c
+@@ -522,11 +522,24 @@ void osDecommitMemory(void *at, W_ size)
--#ifdef MADV_FREE
-- // Try MADV_FREE first, FreeBSD has both and MADV_DONTNEED
+ #ifdef MADV_FREE
+ // Try MADV_FREE first, FreeBSD has both and MADV_DONTNEED
- // just swaps memory out
-- r = madvise(at, size, MADV_FREE);
++ // just swaps memory out. Linux >= 4.5 has both DONTNEED and FREE; either
++ // will work as they both allow the system to free anonymous pages.
++ // It is important that we try both methods as the kernel which we were
++ // built on may differ from the kernel we are now running on.
+ r = madvise(at, size, MADV_FREE);
-#else
- r = madvise(at, size, MADV_DONTNEED);
--#endif
+- r = madvise(at, size, MADV_DONTNEED);
++ if(r < 0) {
++ if (errno == EINVAL) {
++ // Perhaps the system doesn't support MADV_FREE; fall-through and
++ // try MADV_DONTNEED.
++ } else {
++ sysErrorBelch("unable to decommit memory");
++ }
++ } else {
++ return;
++ }
+ #endif
++
++ r = madvise(at, size, MADV_DONTNEED);
if(r < 0)
sysErrorBelch("unable to decommit memory");
}
1
0
Hello community,
here is the log from the commit of package dvbsnoop for openSUSE:Factory checked in at 2017-02-28 23:50:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dvbsnoop (Old)
and /work/SRC/openSUSE:Factory/.dvbsnoop.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dvbsnoop"
Tue Feb 28 23:50:40 2017 rev:13 rq:459062 version:1.4.50
Changes:
--------
--- /work/SRC/openSUSE:Factory/dvbsnoop/dvbsnoop.changes 2011-12-15 16:06:00.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.dvbsnoop.new/dvbsnoop.changes 2017-02-28 23:50:41.368257446 +0100
@@ -1,0 +2,6 @@
+Sat Feb 18 19:12:51 UTC 2017 - mpluskal(a)suse.com
+
+- Cleanup spec file with spec-cleaner
+- Update download url
+
+-------------------------------------------------------------------
Old:
----
dvbsnoop-1.4.50.tar.bz2
New:
----
dvbsnoop-1.4.50.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ dvbsnoop.spec ++++++
--- /var/tmp/diff_new_pack.qUvIct/_old 2017-02-28 23:50:41.932177852 +0100
+++ /var/tmp/diff_new_pack.qUvIct/_new 2017-02-28 23:50:41.936177287 +0100
@@ -1,7 +1,7 @@
#
# spec file for package dvbsnoop
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -15,31 +15,28 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
+
Name: dvbsnoop
Version: 1.4.50
Release: 0
Summary: DVB / MPEG stream analyzer program
License: GPL-2.0+
-Group: Development/Tools/Other
-Url: http://dvbsnoop.sourceforge.net/
-Source: http://downloads.sourceforge.net/project/dvbsnoop/dvbsnoop/dvbsnoop-1.4.50/…
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
-BuildRequires: autoconf
-BuildRequires: automake
-BuildRequires: gcc
-BuildRequires: libtool
+Group: Hardware/TV
+Url: https://dvbsnoop.sourceforge.net/
+Source: https://sourceforge.net/projects/dvbsnoop/files/dvbsnoop/dvbsnoop-%{version…
%description
-Its purpose is to debug, dump or view digital stream information (e.g. digital
-television broadcasts) send via satellite, cable or terrestrial. Streams can be
-SI, PES or TS. Basically you can describe dvbsnoop as a "swiss army knife"
-analyzing program for DVB, MHP, DSM-CC or MPEG - similar to TCP network sniffer
-programs like the old and famous snoop on Sun Solaris or tcpdump on Linux
-(which is in fact a kind of a clone of SunOS 'snoop'). You may also analyze
-offline mpeg streams, e.g. stored on DVD or mpeg2 movie files.
+Its purpose is to debug, dump or view digital stream information (e.g.
+digital television broadcasts) send via satellite, cable or terrestrial.
+Streams can be SI, PES or TS. Basically you can describe dvbsnoop as a
+"swiss army knife" analyzing program for DVB, MHP, DSM-CC or MPEG - similar
+to TCP network sniffer programs like the old and famous snoop on Sun
+Solaris or tcpdump on Linux (which is in fact a kind of a clone of SunOS
+'snoop'). You may also analyze offline mpeg streams, e.g. stored on DVD or
+mpeg2 movie files.
%prep
-%setup
+%setup -q
chmod 644 AUTHORS COPYING NEWS README
%build
@@ -47,14 +44,12 @@
make %{?_smp_mflags}
%install
-%makeinstall
+%make_install
%files
%defattr(-,root,root)
-%doc AUTHORS
-%doc COPYING
-%doc README
+%doc AUTHORS COPYING README
%{_bindir}/dvbsnoop
-%{_mandir}/man1/dvbsnoop*
+%{_mandir}/man1/dvbsnoop.1%{ext_man}
%changelog
1
0