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 <[email protected]> + +- 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):
