Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-bokeh for openSUSE:Factory 
checked in at 2021-09-23 23:04:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-bokeh (Old)
 and      /work/SRC/openSUSE:Factory/.python-bokeh.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-bokeh"

Thu Sep 23 23:04:07 2021 rev:32 rq:921137 version:2.4.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-bokeh/python-bokeh.changes        
2021-07-21 19:07:28.259405238 +0200
+++ /work/SRC/openSUSE:Factory/.python-bokeh.new.1899/python-bokeh.changes      
2021-09-23 23:04:15.584332243 +0200
@@ -1,0 +2,21 @@
+Thu Sep 23 09:54:47 UTC 2021 - Ben Greiner <c...@bnavigator.de>
+
+- Bokeh requires Python >= 3.7:  disable failing Leap builds
+- Reactivate test suite (at least the unit tests packaged in the
+  sdist) by adding conftest.py from the github archive
+
+-------------------------------------------------------------------
+Thu Sep 23 09:53:47 UTC 2021 - Matej Cepl <mc...@suse.com>
+
+- updates-alternatives actions should be in postun, not preun
+
+-------------------------------------------------------------------
+Sat Sep 18 18:05:47 UTC 2021 - Atri Bhattacharya <badshah...@gmail.com>
+
+- Update to version 2.4.0:
+  * Long list, see
+    https://github.com/bokeh/bokeh/blob/2.4.0/CHANGELOG
+- Drop bokeh-pr11218-figure-toolbar-active-properties.patch,
+  upstream PR merged.
+
+-------------------------------------------------------------------

Old:
----
  bokeh-2.3.3.tar.gz
  bokeh-pr11218-figure-toolbar-active-properties.patch

New:
----
  bokeh-2.4.0.tar.gz
  conftest.py

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-bokeh.spec ++++++
--- /var/tmp/diff_new_pack.AaY0A9/_old  2021-09-23 23:04:16.280332761 +0200
+++ /var/tmp/diff_new_pack.AaY0A9/_new  2021-09-23 23:04:16.284332764 +0200
@@ -18,20 +18,19 @@
 
 %define skip_python2 1
 %define skip_python36 1
-# tests suite disabled by default. See below.
-%bcond_with     tests
+%bcond_without  tests
 Name:           python-bokeh
-Version:        2.3.3
+Version:        2.4.0
 Release:        0
 Summary:        Statistical interactive HTML plots for Python
 License:        BSD-3-Clause
 URL:            https://github.com/bokeh/bokeh/
-Source:         
https://files.pythonhosted.org/packages/source/b/bokeh/bokeh-%{version}.tar.gz
-Patch0:         bokeh-pr11218-figure-toolbar-active-properties.patch
+Source0:        
https://files.pythonhosted.org/packages/source/b/bokeh/bokeh-%{version}.tar.gz
+Source1:        https://github.com/bokeh/bokeh/raw/%{version}/conftest.py
 BuildRequires:  %{python_module Jinja2 >= 2.9}
 BuildRequires:  %{python_module Pillow >= 7.1.0}
 BuildRequires:  %{python_module PyYAML >= 3.10}
-BuildRequires:  %{python_module devel}
+BuildRequires:  %{python_module base >= 3.7}
 BuildRequires:  %{python_module numpy >= 1.11.3}
 BuildRequires:  %{python_module packaging >= 16.8}
 BuildRequires:  %{python_module python-dateutil >= 2.1}
@@ -57,13 +56,14 @@
 %if %{with tests}
 BuildRequires:  %{python_module beautifulsoup4}
 BuildRequires:  %{python_module flaky}
-# Note: If you manage to activate the test suite, try to patch external mock 
out.
-BuildRequires:  %{python_module mock}
 BuildRequires:  %{python_module nbconvert}
 BuildRequires:  %{python_module networkx}
+BuildRequires:  %{python_module pydot}
+BuildRequires:  %{python_module pytest-asyncio}
 BuildRequires:  %{python_module pytest}
 BuildRequires:  %{python_module requests}
 BuildRequires:  %{python_module selenium}
+BuildRequires:  nodejs >= 14
 %endif
 # /SECTION
 %python_subpackages
@@ -76,6 +76,15 @@
 
 %prep
 %autosetup -p1 -n bokeh-%{version}
+# add conftest.py for pytest fixtures
+cp %{SOURCE1} .
+# remove external mock in favor of unittest.mock
+find tests -name '*.py' -exec \
+  sed -i {} \
+  -e 's/^import mock/from unittest import mock/' \
+  -e 's/^from mock import mock/from unittest import mock/' \
+  -e 's/^from mock import/from unittest.mock import/' \
+  ';'
 
 %build
 %python_build
@@ -94,15 +103,26 @@
 
 %if %{with tests}
 %check
-# Running the test suite (with datafiles from the GitHub archive) fails
-# due to missing server/client setups, chromedriver, selenium etc.
-%pytest -k 'not (selenium or sampledata)'
+# GUI based selenium with chromedriver setup within OBS is hard/impossible
+deselectmarker="selenium"
+# sampledata: no download
+deselectmarker+=" or sampledata"
+# npm can't build inside obs without network
+deselectname="test_ext_commands"
+# testfile not packaged in sdist
+deselectname+=" or test_with_INLINE_resources"
+deselectname+=" or test_with_CDN_resources"
+# does not expect pytest-$binsuffix
+deselectname+=" or test_detect_current_filename"
+# no browser installed
+deselectname+=" or test_webdriver"
+%pytest -m "not ($deselectmarker)" -k "not ($deselectname)"
 %endif
 
 %post
 %python_install_alternative bokeh
 
-%preun
+%postun
 %python_uninstall_alternative bokeh
 
 %files %{python_files}

++++++ bokeh-2.3.3.tar.gz -> bokeh-2.4.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-bokeh/bokeh-2.3.3.tar.gz 
/work/SRC/openSUSE:Factory/.python-bokeh.new.1899/bokeh-2.4.0.tar.gz differ: 
char 5, line 1

++++++ conftest.py ++++++
#-----------------------------------------------------------------------------
# Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors.
# All rights reserved.
#
# The full license is in the file LICENSE.txt, distributed with this software.
#-----------------------------------------------------------------------------

pytest_plugins = (
    "bokeh._testing.plugins.ipython",
    "bokeh._testing.plugins.managed_server_loop",
    "bokeh._testing.plugins.networkx",
    "bokeh._testing.plugins.pandas",
)

# Standard library imports
from inspect import iscoroutinefunction
from typing import List

# External imports
import _pytest
import pytest


def pytest_collection_modifyitems(items: List[_pytest.nodes.Item]) -> None:
    for item in items:
        if iscoroutinefunction(item.obj):
            item.add_marker(pytest.mark.asyncio)

# Unfortunately these seem to all need to be centrally defined at the top level
def pytest_addoption(parser: _pytest.config.argparsing.Parser) -> None:

    # plugins/selenium
    parser.addoption(
        "--driver", choices=('chrome', 'firefox', 'safari'), default='chrome', 
help='webdriver implementation')

    # plugins/bokeh_server
    parser.addoption(
        "--bokeh-port", dest="bokeh_port", type=int, default=5006, help="port 
on which Bokeh server resides"
    )

    # plugins/jupyter_notebook
    parser.addoption(
        "--notebook-port", type=int, default=6007, help="port on which Jupyter 
Notebook server resides"
    )

    parser.addoption(
        "--examples-log-file", dest="log_file", metavar="path", action="store", 
default='examples.log', help="where to write the complete log"
    )
    parser.addoption(
        "--no-js", action="store_true", default=False,
        help="only run python code and skip js")

Reply via email to