Hello community,
here is the log from the commit of package python-msm for openSUSE:Factory checked in at 2019-06-02 15:18:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-msm (Old)
and /work/SRC/openSUSE:Factory/.python-msm.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-msm"
Sun Jun 2 15:18:02 2019 rev:8 rq:706365 version:0.7.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-msm/python-msm.changes 2019-02-11 21:28:11.066989948 +0100
+++ /work/SRC/openSUSE:Factory/.python-msm.new.5148/python-msm.changes 2019-06-02 15:18:04.714034231 +0200
@@ -1,0 +2,21 @@
+Fri May 24 12:52:58 UTC 2019 - Marketa Calabkova
+
+- update to version 0.7.6
+ * Handle connection error when fetching skills meta data
+ * Fix is_dirty when path is missing.
+ * Fix skill name when using from_folder
+ * Fix curate skills list
+ * Dirty property to check if skill is modified
+ * Return empty dict instead of None from get_skill_entry
+ * Use in-place dict creation
+ * Define skills_data_hash in __init__
+ * Update hash after saving file
+ * Raise instead of ignoring non-revertable errors
+ * Fix python dependency installation
+ * Add lazy as requirement in setup.py
+ * Add pyyaml to setup.py
+- take upstream tarball to launch at least some tests
+- removed patch fix-skills-directories.patch
+ * apparently incorrect, it was breaking tests
+
+-------------------------------------------------------------------
Old:
----
fix-skills-directories.patch
msm-0.6.3.tar.gz
New:
----
v0.7.6.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-msm.spec ++++++
--- /var/tmp/diff_new_pack.6FbJTa/_old 2019-06-02 15:18:05.386033941 +0200
+++ /var/tmp/diff_new_pack.6FbJTa/_new 2019-06-02 15:18:05.386033941 +0200
@@ -19,22 +19,34 @@
%define skip_python2 1
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-msm
-Version: 0.6.3
+Version: 0.7.6
Release: 0
Summary: Mycroft Skills Manager
License: Apache-2.0
Group: Development/Languages/Python
URL: https://github.com/MycroftAI/mycroft-skills-manager
-Source: https://files.pythonhosted.org/packages/source/m/msm/msm-%{version}.tar.gz
-Patch0: fix-skills-directories.patch
+Source: https://github.com/MycroftAI/mycroft-skills-manager/archive/v%{version}.tar.gz
Patch1: do-not-run-pip-or-requirements-script.patch
Patch2: add-local-patch-support.patch
+BuildRequires: %{python_module GitPython}
+BuildRequires: %{python_module PyYAML}
+BuildRequires: %{python_module fasteners}
+BuildRequires: %{python_module lazy}
+BuildRequires: %{python_module pako}
+BuildRequires: %{python_module pytest}
+BuildRequires: %{python_module requests}
BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module typing}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: patch
Requires: python-GitPython
+Requires: python-PyYAML
Requires: python-fasteners
+Requires: python-lazy
+Requires: python-pako
+Requires: python-requests
+Requires: python-typing
BuildArch: noarch
%python_subpackages
@@ -43,8 +55,7 @@
Mycroft skills.
%prep
-%setup -q -n msm-%{version}
-%patch0 -p1
+%setup -q -n mycroft-skills-manager-%{version}
%patch1 -p1
%patch2 -p1
sed -i -e "s/install_requires=\['GitPython', 'typing'/install_requires=['GitPython'/" setup.py
@@ -58,6 +69,12 @@
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
+%check
+# test_mycroft_skills_manager.py and test_skill_repo.py clone a git repo from GitHub already in their __init__
+# test_main.py also clones a repo in init via self.base_params
+# run_pip calls pip to install some dependencies
+%pytest --ignore tests/test_mycroft_skills_manager.py --ignore tests/test_skill_repo.py --ignore tests/test_main.py -k "not run_pip" tests
+
%files %{python_files}
%license LICENSE
%python3_only %{_bindir}/msm
++++++ add-local-patch-support.patch ++++++
--- /var/tmp/diff_new_pack.6FbJTa/_old 2019-06-02 15:18:05.410033931 +0200
+++ /var/tmp/diff_new_pack.6FbJTa/_new 2019-06-02 15:18:05.410033931 +0200
@@ -1,25 +1,33 @@
-Index: msm-0.5.17/msm/skill_entry.py
+Index: mycroft-skills-manager-0.7.6/msm/skill_entry.py
===================================================================
---- msm-0.5.17.orig/msm/skill_entry.py
-+++ msm-0.5.17/msm/skill_entry.py
-@@ -39,6 +39,8 @@ from msm.exceptions import PipRequiremen
+--- mycroft-skills-manager-0.7.6.orig/msm/skill_entry.py
++++ mycroft-skills-manager-0.7.6/msm/skill_entry.py
+@@ -45,6 +45,8 @@ from msm.exceptions import PipRequiremen
SystemRequirementsException, AlreadyInstalled, SkillModified, \
- AlreadyRemoved, RemoveException, CloneException, NotInstalled
+ AlreadyRemoved, RemoveException, CloneException, NotInstalled, GitException
from msm.util import Git
+from msm.local_patches_utils import apply_skill_patch, \
+ reverse_skill_patch, remove_applied_skill_patch
LOG = logging.getLogger(__name__)
-@@ -256,6 +258,7 @@ class SkillEntry(object):
+@@ -420,6 +422,7 @@ class SkillEntry(object):
+ raise AlreadyRemoved(self.name)
+ try:
+ rmtree(self.path)
++ remove_applied_skill_patch(self.name)
+ self.is_local = False
+ except OSError as e:
+ raise RemoveException(str(e))
+@@ -447,6 +450,7 @@ class SkillEntry(object):
try:
move(tmp_location, self.path)
+ apply_skill_patch(self.name, self.path)
- self.run_requirements_sh()
- self.run_pip(constraints)
- finally:
-@@ -274,6 +277,7 @@ class SkillEntry(object):
+ if self.msm:
+ self.run_skill_requirements()
+ self.install_system_deps()
+@@ -484,6 +488,7 @@ class SkillEntry(object):
with git_to_msm_exceptions():
sha_before = git.rev_parse('HEAD')
@@ -27,7 +35,7 @@
modified_files = git.status(porcelain=True, untracked='no')
if modified_files != '':
raise SkillModified('Uncommitted changes:\n' + modified_files)
-@@ -285,6 +289,7 @@ class SkillEntry(object):
+@@ -495,6 +500,7 @@ class SkillEntry(object):
git.checkout(self._find_sha_branch())
git.merge(self.sha or 'origin/HEAD', ff_only=True)
@@ -35,18 +43,10 @@
sha_after = git.rev_parse('HEAD')
-@@ -301,6 +306,7 @@ class SkillEntry(object):
- raise AlreadyRemoved(self.name)
- try:
- rmtree(self.path)
-+ remove_applied_skill_patch(self.name)
- except OSError as e:
- raise RemoveException(str(e))
-
-Index: msm-0.5.17/msm/local_patches_utils.py
+Index: mycroft-skills-manager-0.7.6/msm/local_patches_utils.py
===================================================================
--- /dev/null
-+++ msm-0.5.17/msm/local_patches_utils.py
++++ mycroft-skills-manager-0.7.6/msm/local_patches_utils.py
@@ -0,0 +1,99 @@
+# Copyright (c) 2018 Mycroft AI, Inc.
+#
++++++ do-not-run-pip-or-requirements-script.patch ++++++
--- /var/tmp/diff_new_pack.6FbJTa/_old 2019-06-02 15:18:05.422033926 +0200
+++ /var/tmp/diff_new_pack.6FbJTa/_new 2019-06-02 15:18:05.422033926 +0200
@@ -1,22 +1,22 @@
-Index: msm-0.5.17/msm/skill_entry.py
+Index: msm-0.7.6/msm/skill_entry.py
===================================================================
---- msm-0.5.17.orig/msm/skill_entry.py
-+++ msm-0.5.17/msm/skill_entry.py
-@@ -154,6 +154,8 @@ class SkillEntry(object):
- requirements_file = join(self.path, "requirements.txt")
- if not exists(requirements_file):
+--- msm-0.7.6.orig/msm/skill_entry.py
++++ msm-0.7.6/msm/skill_entry.py
+@@ -327,6 +327,8 @@ class SkillEntry(object):
+ setup_script = join(self.path, "requirements.sh")
+ if not exists(setup_script):
return False
+ LOG.info("Please check manually the requirements file at " + requirements_file)
+ return False
- # Use constraints to limit the installed versions
- if constraints and not exists(constraints):
-@@ -184,6 +186,8 @@ class SkillEntry(object):
- setup_script = join(self.path, "requirements.sh")
- if not exists(setup_script):
+ with work_dir(self.path):
+ rc = subprocess.call(["bash", setup_script])
+@@ -505,6 +507,8 @@ class SkillEntry(object):
+ else:
+ LOG.info('Nothing new for ' + self.name)
return False
+ LOG.info("Please check manually the setup script at " + setup_script)
+ return False
- with work_dir(self.path):
- rc = subprocess.call(["bash", setup_script])
+ @staticmethod
+ def find_git_url(path):