Hello community, here is the log from the commit of package spyder for openSUSE:Factory checked in at 2020-05-15 23:52:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/spyder (Old) and /work/SRC/openSUSE:Factory/.spyder.new.2738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "spyder" Fri May 15 23:52:26 2020 rev:5 rq:805808 version:4.1.3 Changes: -------- --- /work/SRC/openSUSE:Factory/spyder/spyder.changes 2020-05-02 22:18:42.152707639 +0200 +++ /work/SRC/openSUSE:Factory/.spyder.new.2738/spyder.changes 2020-05-15 23:52:31.789568794 +0200 @@ -1,0 +2,26 @@ +Fri May 15 11:01:03 UTC 2020 - Benjamin Greiner <[email protected]> + +- update to version 4.1.3 + * New features + * New files are saved now as Utf-8 (instead of as Ascii). + * Make functionality to go to the previous/next cursor more intuitive. + * New dark and light themes for the Online Help pane. + * Important fixes + * Make Spyder work on Python 3.8 and Windows. + * Fix several startup crashes related to problems with Kite. + * Fix contrast issues present in several syntax highlighting themes. + * Fix "Directly enter debugging when errors appear" run option. + * Fix startup crash when Spyder is using the Brazilian Portuguese + translation. + * Fix segfault on Unix systems when removing plots. + * Correctly position linting markers when code is folded in the editor. + * Correctly show variables while debugging in the Variable Explorer. +- remove patch spyder-pr11704-fixpytestargs.patch merged upstream + gh#spyder-ide/spyder#11704 +- remove spyder-pr12534-closeleaks.patch gh#spyder-ide/spyder#12534 +- add spyder-pr12746-fixtests.patch gh#spyder-ide/spyder#12764 +- once again rework the set of skipped tests +- run testsuite only on x86_64 for this noarch package. ix86 fails + upredictably with segfaults on differing tests + +------------------------------------------------------------------- Old: ---- spyder-4.1.2.tar.gz spyder-pr11704-fixpytestargs.patch spyder-pr12534-closeleaks.patch New: ---- spyder-4.1.3.tar.gz spyder-pr12746-fixtests.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ spyder.spec ++++++ --- /var/tmp/diff_new_pack.xUrcWG/_old 2020-05-15 23:52:33.077571276 +0200 +++ /var/tmp/diff_new_pack.xUrcWG/_new 2020-05-15 23:52:33.085571291 +0200 @@ -16,14 +16,14 @@ # -%ifarch x86_64 aarch64 ppc64le %{arm} %{ix86} %{ppc} +%ifarch x86_64 %bcond_without test %else %bcond_with test %endif %define skip_python2 1 Name: spyder -Version: 4.1.2 +Version: 4.1.3 Release: 0 Summary: The Scientific Python Development Environment License: MIT @@ -31,69 +31,41 @@ URL: https://www.spyder-ide.org/ Source: https://github.com/spyder-ide/spyder/archive/v%{version}.tar.gz#/spyder-%{version}.tar.gz Source1: spyder-rpmlintrc -Patch0: spyder-pr11704-fixpytestargs.patch -Patch1: spyder-pr12534-closeleaks.patch +Patch0: spyder-pr12746-fixtests.patch BuildRequires: fdupes BuildRequires: python-rpm-macros -BuildRequires: python3-Pygments >= 2.0 -BuildRequires: python3-QDarkStyle >= 2.8 -BuildRequires: python3-QtAwesome >= 0.5.7 -BuildRequires: python3-QtPy >= 1.5.0 -BuildRequires: python3-Sphinx >= 0.6.0 -BuildRequires: python3-atomicwrites >= 1.2.0 -BuildRequires: python3-chardet >= 2.0.0 -BuildRequires: python3-devel -BuildRequires: python3-intervaltree -BuildRequires: python3-jedi >= 0.15.2 -BuildRequires: python3-nbconvert >= 4.0 -BuildRequires: python3-numpydoc >= 0.6.0 -BuildRequires: python3-pexpect >= 4.4.0 -BuildRequires: python3-pickleshare >= 0.4 -BuildRequires: python3-psutil >= 5.3 -BuildRequires: python3-pycodestyle -BuildRequires: python3-pyflakes -BuildRequires: python3-pygments >= 2.0 -BuildRequires: python3-pylint >= 0.25 -BuildRequires: python3-python-language-server >= 0.31.9 -BuildRequires: python3-pyxdg >= 0.26 -BuildRequires: python3-pyzmq >= 17 -BuildRequires: python3-qt5 >= 5.5 -BuildRequires: python3-qtconsole >= 4.6.0 -BuildRequires: python3-rope >= 0.10.5 BuildRequires: python3-setuptools -BuildRequires: python3-watchdog BuildRequires: update-desktop-files Requires: %{name}-lang Requires: python3-Pygments >= 2.0 Requires: python3-QDarkStyle >= 2.8 Requires: python3-QtAwesome >= 0.5.7 Requires: python3-QtPy >= 1.5.0 -Requires: python3-Sphinx >= 0.6.0 +Requires: python3-Sphinx >= 0.6.6 Requires: python3-atomicwrites >= 1.2.0 Requires: python3-chardet >= 2.0.0 Requires: python3-cloudpickle >= 0.5.0 Requires: python3-diff-match-patch >= 20181111 Requires: python3-intervaltree +Requires: python3-ipython >= 4.0 Requires: python3-jedi >= 0.15.2 Requires: python3-keyring Requires: python3-nbconvert >= 4.0 Requires: python3-numpydoc >= 0.6.0 +Requires: python3-paramiko >= 2.4.0 Requires: python3-parso >= 0.5.2 Requires: python3-pexpect >= 0.4.4 -Requires: python3-pickleshare +Requires: python3-pickleshare >= 0.4 Requires: python3-psutil >= 5.3 -Requires: python3-pycodestyle -Requires: python3-pyflakes Requires: python3-pygments >= 2.0 Requires: python3-pylint >= 0.25 Requires: python3-python-language-server >= 0.31.9 Requires: python3-pyxdg >= 0.26 Requires: python3-pyzmq >= 17 -Requires: python3-qt5 >= 5.2 +Requires: python3-qt5 >= 5.5 Requires: python3-qtconsole >= 4.6.0 Requires: python3-qtwebengine-qt5 -Requires: python3-rope >= 0.10.5 -Requires: python3-spyder-kernels >= 1.9 +Requires: python3-spyder-kernels >= 1.9.1 Requires: python3-watchdog Recommends: %{name}-dicom Recommends: %{name}-hdf5 @@ -102,6 +74,7 @@ Recommends: %{name}-notebook Recommends: %{name}-terminal Recommends: %{name}-unittest +Recommends: python3-Cython >= 0.21 Recommends: python3-Pillow Recommends: python3-matplotlib >= 2.0.0 Recommends: python3-numpy >= 1.7 @@ -124,18 +97,40 @@ BuildRequires: git-core BuildRequires: python3-Cython >= 0.21 BuildRequires: python3-Pillow -BuildRequires: python3-autopep8 -BuildRequires: python3-diff-match-patch +BuildRequires: python3-Pygments >= 2.0 +BuildRequires: python3-QDarkStyle >= 2.8 +BuildRequires: python3-QtAwesome >= 0.5.7 +BuildRequires: python3-QtPy >= 1.5.0 +BuildRequires: python3-Sphinx >= 0.6.6 +BuildRequires: python3-atomicwrites >= 1.2.0 +BuildRequires: python3-chardet >= 2.0.0 +BuildRequires: python3-cloudpickle >= 0.5.0 +#BuildRequires: python3-devel +BuildRequires: python3-diff-match-patch >= 20181111 BuildRequires: python3-flaky +BuildRequires: python3-intervaltree +BuildRequires: python3-ipython >= 4.0 +BuildRequires: python3-jedi >= 0.15.2 BuildRequires: python3-keyring BuildRequires: python3-matplotlib >= 2.0.0 BuildRequires: python3-matplotlib-qt5 BuildRequires: python3-matplotlib-tk +BuildRequires: python3-mock +BuildRequires: python3-nbconvert >= 4.0 +BuildRequires: python3-numpydoc >= 0.6.0 BuildRequires: python3-pandas >= 0.13.1 +BuildRequires: python3-parso >= 0.5.2 +BuildRequires: python3-pexpect >= 4.4.0 +BuildRequires: python3-pickleshare >= 0.4 +BuildRequires: python3-psutil >= 5.3 BuildRequires: python3-pyaml -BuildRequires: python3-pydocstyle +#BuildRequires: python3-pycodestyle +#BuildRequires: python3-pydocstyle +#BuildRequires: python3-pyflakes +BuildRequires: python3-pygments >= 2.0 +BuildRequires: python3-pylint >= 0.25 BuildRequires: python3-pytest < 5 -BuildRequires: python3-pytest-cov +#BuildRequires: python3-pytest-cov BuildRequires: python3-pytest-faulthandler < 2.0 BuildRequires: python3-pytest-lazy-fixture BuildRequires: python3-pytest-mock @@ -143,10 +138,17 @@ BuildRequires: python3-pytest-qt BuildRequires: python3-pytest-timeout BuildRequires: python3-pytest-xvfb +#BuildRequires: python3-python-jsonrpc-server +BuildRequires: python3-python-language-server >= 0.31.9 +BuildRequires: python3-pyxdg >= 0.26 +BuildRequires: python3-pyzmq >= 17 +BuildRequires: python3-qt5 >= 5.5 +BuildRequires: python3-qtconsole >= 4.6.0 +BuildRequires: python3-qtwebengine-qt5 BuildRequires: python3-scipy -BuildRequires: python3-spyder-kernels >= 1.9 +BuildRequires: python3-spyder-kernels >= 1.9.1 BuildRequires: python3-sympy >= 0.7.3 -BuildRequires: python3-xarray +BuildRequires: python3-watchdog BuildRequires: xdpyinfo %endif @@ -221,20 +223,28 @@ %prep %setup -q -n spyder-%{version} %patch0 -p1 -%patch1 -p1 + # Fix wrong-file-end-of-line-encoding RPMLint warning sed -i 's/\r$//' spyder/app/restart.py sed -i 's/\r$//' LICENSE.txt CHANGELOG.md -# Fix non-executable-script RPMLint warning + +# Remove shebang for non-executable-script RPMLint warning sed -i -e '/^#!\//, 1d' spyder/app/restart.py sed -i -e '/^#!\//, 1d' spyder/utils/external/github.py sed -i -e '/^#!\//, 1d' spyder/plugins/ipythonconsole/scripts/conda-activate.sh + # remove pinned dependencies where OpenSUSE already has newer versions # that triggers an annoying warning on startup # gh#spyder-ide/spyder#11975 sed -i "s|JEDI_REQVER = '=|JEDI_REQVER = '>=|" spyder/dependencies.py # parso was pinned because of JEDI (PR#11476 and PR#11809) sed -i "s|PARSO_REQVER = '=|PARSO_REQVER = '>=|" spyder/dependencies.py +# python-python-language-server +sed -i "s|PYLS_REQVER = '>=0.31.9;<0.32.0'|PYLS_REQVER = '>=0.31.9'|" spyder/dependencies.py + +# Upstream brings its fixed version pyls and spyder-kernels for its +# test environment, but we want to test against installed packages. +rm -r external-deps/* %build %python_build @@ -262,55 +272,58 @@ find %{buildroot}%{python_sitelib}/spyder/locale -name '*.pot' -delete %suse_update_desktop_file -r spyder3 Development Science IDE NumericalAnalysis -%fdupes %{buildroot}%{python_sitelib} +%python_expand %fdupes %{buildroot}%{$python_sitelib} %if %{with test} %check export LANG=en_US.UTF-8 export PYTHONDONTWRITEBYTECODE=1 -# upstream splits the tests into slow and fast ones -# add all tests to skip into $skiptests or $skipslowtests separated by whitespace -# tests to run separately because of leakages go into separateslowtests +# Upstream splits the tests into slow and fast ones. +# Add all tests which must be skipped into $skiptests or $skipslowtests +# separated by whitespace. skiptests="" skipslowtests="" -separateslowtests="" -# the shortcut is not sent by the editorbot -skiptests+=" test_comment" +# segfault +skiptests+=" test_apps_dialog" # the click/tab press is not sent by the bot skiptests+=" test_tab_copies_find_to_replace" -# tests that require internet connection -skiptests+=" test_github_backend test_update" +# requires internet connection +skiptests+=" test_github_backend" # we modified the dependencies in %%prep, this is a pure developer test skiptests+=" test_dependencies_for_spyder_dialog_in_sync" -# segfaults in xvfb -skiptests+=" test_arrayeditor_edit_complex_array" # tests not suitable for CIs or OBS as evident from the last assert which fails here skiptests+=" test_connection_dialog_remembers_input_with_ssh_passphrase" skiptests+=" test_connection_dialog_remembers_input_with_password" -# running into timeouts +# runs into timeouts skiptests+=" test_dbg_input" +# runs into timeouts skiptests+=" test_mpl_backend_change" +# different PyQT version? +skiptests+=" test_objectexplorer_collection_types" +# timeout +skiptests+=" test_run_python_script_in_terminal" +# segfault on obs (but not locally?) +skipslowtests+=" test_arrayeditor_edit_complex_array" # completes to math.hypot(cooordinates) instead of expected math.hypot(*coordinates) skipslowtests+=" test_completions" # Would require network connections skipslowtests+=" test_update" # runs into timeout on obs skipslowtests+=" test_hide_widget_completion" -# some mainwindow tests leak open file sockets and cause python to terminate -# the whole testrun at some later point. -# gh#/spyder-ide/spyder#12534 -separateslowtests+=" test_runcell test_varexp test_edidorstack" +# tries to download stuff +skipslowtests+=" test_kite_install" +# no warnings returned here. PyLS/LSP problem? It works in the installed application, though. +skipslowtests+=" test_ignore_warnings test_move_warnings test_get_warnings" %{python_expand PYTHONPATH=%{buildroot}%{$python_sitelib} -for s in skiptests skipslowtests separateslowtests; do +for s in skiptests skipslowtests; do declare ${s}_p="$($python -c "import sys; print(' or '.join('${!s}'.split()))")" done $python runtests.py -k "not ($skiptests_p)" --timeout 1800 -$python runtests.py --run-slow -k "not ($skipslowtests_p or $separateslowtests_p)" --timeout 1800 -$python runtests.py --run-slow -k "$separateslowtests_p" --timeout 1800 +$python runtests.py --run-slow -k "not ($skipslowtests_p)" --timeout 1800 } %endif @@ -324,13 +337,14 @@ %exclude %{python_sitelib}/spyder/locale/ %exclude %{python_sitelib}/spyder/plugins/io_dcm/ %exclude %{python_sitelib}/spyder/plugins/io_hdf5/ +%{_datadir}/icons/spyder3.png +%dir %{_datadir}/icons/hicolor %dir %{_datadir}/icons/hicolor/128x128 %dir %{_datadir}/icons/hicolor/scalable %dir %{_datadir}/icons/hicolor/128x128/apps %dir %{_datadir}/icons/hicolor/scalable/apps %{_datadir}/icons/hicolor/scalable/apps/spyder3.svg %{_datadir}/icons/hicolor/128x128/apps/spyder3.png -%{_datadir}/icons/spyder3.png %dir %{_datadir}/metainfo/ %{_datadir}/metainfo/spyder3.appdata.xml ++++++ spyder-4.1.2.tar.gz -> spyder-4.1.3.tar.gz ++++++ /work/SRC/openSUSE:Factory/spyder/spyder-4.1.2.tar.gz /work/SRC/openSUSE:Factory/.spyder.new.2738/spyder-4.1.3.tar.gz differ: char 12, line 1 ++++++ spyder-pr12746-fixtests.patch ++++++ >From 86b512a94db4a6436b714516a9416d3263cd76b9 Mon Sep 17 00:00:00 2001 From: Carlos Cordoba <[email protected]> Date: Thu, 14 May 2020 12:12:11 -0500 Subject: [PATCH 1/3] Testing: Skip test_automatic_column_width on Python 2 and Linux It started to fail sometimes lately. --- .../widgets/tests/test_namespacebrowser.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/spyder/plugins/variableexplorer/widgets/tests/test_namespacebrowser.py b/spyder/plugins/variableexplorer/widgets/tests/test_namespacebrowser.py index b66c6fdf07..4e2b345a3c 100644 --- a/spyder/plugins/variableexplorer/widgets/tests/test_namespacebrowser.py +++ b/spyder/plugins/variableexplorer/widgets/tests/test_namespacebrowser.py @@ -14,12 +14,15 @@ from mock import Mock # Python 2 # Third party imports +from flaky import flaky import pytest from qtpy.QtCore import Qt, QPoint # Local imports from spyder.plugins.variableexplorer.widgets.namespacebrowser import NamespaceBrowser from spyder.plugins.variableexplorer.widgets.tests.test_collectioneditor import data_table +from spyder.py3compat import PY2 + def test_setup_sets_dataframe_format(qtbot): browser = NamespaceBrowser(None) @@ -31,6 +34,11 @@ def test_setup_sets_dataframe_format(qtbot): assert browser.editor.source_model.dataframe_format == '%10.5f' +@flaky(max_runs=5) [email protected]( + sys.platform.startswith('linux') and PY2, + reason="Sometimes fails on Linux and Python 2" +) def test_automatic_column_width(qtbot): browser = NamespaceBrowser(None) browser.set_shellwidget(Mock()) >From 07fab8041d63443a6a0b916619c27b9860582bb8 Mon Sep 17 00:00:00 2001 From: Carlos Cordoba <[email protected]> Date: Thu, 14 May 2020 12:15:57 -0500 Subject: [PATCH 2/3] Calltip: Add default value for _start_position This should avoid an error during the teardown of a test on macOS and Python 3. --- spyder/widgets/calltip.py | 1 + 1 file changed, 1 insertion(+) diff --git a/spyder/widgets/calltip.py b/spyder/widgets/calltip.py index 33d93d045a..0db4d632da 100644 --- a/spyder/widgets/calltip.py +++ b/spyder/widgets/calltip.py @@ -264,6 +264,7 @@ def __init__(self, text_edit, hide_timer_on=False, as_tooltip=False): self.tip = None self._hide_timer = QBasicTimer() self._text_edit = text_edit + self._start_position = -1 # Setup if sys.platform == 'darwin': >From 723bf57042082121d9a4002f3f76ab30b6647a82 Mon Sep 17 00:00:00 2001 From: Carlos Cordoba <[email protected]> Date: Thu, 14 May 2020 12:23:38 -0500 Subject: [PATCH 3/3] Testing: Add missing import --- .../variableexplorer/widgets/tests/test_namespacebrowser.py | 1 + 1 file changed, 1 insertion(+) diff --git a/spyder/plugins/variableexplorer/widgets/tests/test_namespacebrowser.py b/spyder/plugins/variableexplorer/widgets/tests/test_namespacebrowser.py index 4e2b345a3c..e39394c965 100644 --- a/spyder/plugins/variableexplorer/widgets/tests/test_namespacebrowser.py +++ b/spyder/plugins/variableexplorer/widgets/tests/test_namespacebrowser.py @@ -8,6 +8,7 @@ """ # Standard library imports +import sys try: from unittest.mock import Mock except ImportError:
