SHA256
1
0
forked from pool/python-panel

Accepting request 1169699 from devel:languages:python:numeric

OBS-URL: https://build.opensuse.org/request/show/1169699
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-panel?expand=0&rev=26
This commit is contained in:
Ana Guerrero 2024-04-23 16:55:21 +00:00 committed by Git OBS Bridge
commit e8522aca57
4 changed files with 126 additions and 36 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:809afd2b861747a31d6ddaadbbc7c25b8dab392dc78256f68b759214113c5be3
size 28197704

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c7bcb06cedae635af4e9b0d757ff97ffb72cf5fea315ac320c77a8f292d66551
size 24651582

View File

@ -1,3 +1,100 @@
-------------------------------------------------------------------
Sun Apr 21 22:22:11 UTC 2024 - Todd R <toddrme2178@gmail.com>
- update to 1.4.1
+ Enhancements
* Allow rendering raw `IPython.display` output in dashboard builder
* Improve snapping behavior and add undo functionality in dashboard builder UI)
+ Bug Fixes
* Fix layout persistence issues in dashboard builder
* Ensure `Perspective` loads in notebooks and docs
* Allow full reset of dashboard builder layout
* Fix issues with `VTK` colormap serialization
* Allow `Tabulator` `HTMLTemplateFormatter` to reference multiple columns
* Fix loading spinner in converted app without template
* Avoid unnecessary rescroll on Column
* Fix dynamically updating description tooltips
* Ensure Perspective is fully loaded before attempting render)
* Ensure busy indicators are always reset
- update to 1.4.0
+ Features
* Add `EditableTemplate` to support dashboard builder UI in Jupyter
* Add `ChatAreaInput` as default text input widget for `ChatInterface`
* Add `NestedSelect` widget
* Add Panel tutorials
* Add `DateRangePicker` widget
* Add `Feed` layout and use it as layout for `ChatFeed`
* Add `WebP` pane
* Add `ButtonIcon`
* Add `Textual` pane
+ Enhancements
* Improve `--autoreload` by using watchfiles and selectively reloading packages
* Load loading indicator from file instead of inlining
* Allow providing additional stylesheets in `card_params`
* Add `scroll` options to permanently toggle on layouts
* Allow choosing position of frozen columns on `Tabulator`
* Add help message on `ChatFeed`
* Ensure CSS can be applied to every aspect of `ChatMessage`
* Add HoloViz logos as `ChatMessage` avatars
* Add `gap` parameter to `FlexBox`
* Set default `step` of `DatetimeRangeSlider` to 1 minute
* Add support for passing objects reference to `FlexBox`
* Allow editable sliders to be embedded
* Add `message` into `css_classes` to `ChatMessage` markup
* Allow appending objects to the `ChatMessage` header & footer
* Add ability to declare icon label
* Add title and settings and fix datetime to `Perspective`
* Warn user if loading extension in VSCode or Colab without `jupyter_bokeh`
* Throttle updates to Boolean indicators
* Add `ParamRef` baseclass for `ParamFunction` and `ParamMethod`
* Add ability to Skip `Param<Ref|Function|Method>` updates
* Add `Param<Ref|Method|Function>` and `ReactiveExpr` to panes module
* Set up `param.rx` display accessor on import
* Allow using Carto tiles in `DeckGL`
* Improve `VTKJS` binary serialization
* Ensure component CSS is pre-loaded if possible, avoiding flicker on load
+ Bug fixes
* Add resize handler for `FloatPanel`
* Fix serving of global template in notebook
* Ensure `Tabulator` renders in collapsed `Card`
* Fix issues with `VTK`, `VTKVolume` and `VTKJS` due to webgpu renderer
* Ensure `HTML` and other markup panes can be emptied
* Ensure collapsed `Card` does not cause stretching
* Ensure notebook preview always uses server resources
* Remove animation from loading spinner without spin
* Ensure model is only added/removed from Document once
* Ensure `loading_indicator` resets when configured with context manager
* Fix modal overflow and resizing issues
* Ensure that ripple matches notification size
* Fully re-render `CodeEditor` on render calls ensuring it displays correctly
* Ensure `FileDownload` button has correct height
* Ensure `HTML` model is redrawn if `stylesheets` is emptied
* Allow providing custom template
* Ensure `Debugger` renders without error
* Ensure pending writes are dispatched in order and only from correct thread
* Ensure layout reuses model if available
* Improved exception handler in unlocked message dispatch
* Fix display of interactive `Matplotlib`
* Ensure `Plotly` pane renders and hides correctly in `Card`
* Fix issues rendering widget components with `Fast` design
* Fix binary serialization from JS -> Pyodide
* Avoid overeager garbage collection
* Fix floating point error in `IntRangeSlider`
* Load JS modules from relative path
* Ensure no events are dispatched before the websocket is open
* Ensure `Markdown` parsing does not choke on partial links
* Fixes to ensure larger `PDF`s can be rendered
* Ensure `IPywidget` comms are only opened once
* Fixes for message handling in Jupyter Preview context
* Fix unnecessary loading of `ReactiveHTML` resources
* Ensure `Template.raw_css` has higher precedence than default template CSS
* Avoid asyncio event loop startup issues in some contexts
* Ensure column subset is retained on `Tabulator.style`
* Ensure bokeh mathjax bundle when mathjax extension is loaded in notebook
- Switch to wheel to avoid npm attempting to rebuild resources.
This doesn't work without a network and needs brittle workarounds that can change between releases.
- Update dependencies
-------------------------------------------------------------------
Thu Mar 14 10:08:05 UTC 2024 - Dirk Müller <dmueller@suse.com>

View File

@ -26,17 +26,17 @@
%endif
%global skip_python39 1
Name: python-panel%{psuffix}
Version: 1.3.8
Version: 1.4.1
Release: 0
Summary: A high level app and dashboarding solution for Python
License: BSD-3-Clause
Group: Development/Languages/Python
URL: https://github.com/holoviz/panel
Source: https://files.pythonhosted.org/packages/source/p/panel/panel-%{version}.tar.gz
Source0: https://files.pythonhosted.org/packages/py3/p/panel/panel-%{version}-py3-none-any.whl
Source99: python-panel-rpmlintrc
BuildRequires: %{python_module base >= 3.7}
BuildRequires: %{python_module base}
BuildRequires: %{python_module bleach}
BuildRequires: %{python_module bokeh >= 3.3.0}
BuildRequires: %{python_module bokeh >= 3.4.0}
BuildRequires: %{python_module packaging}
BuildRequires: %{python_module param >= 2.0.0}
BuildRequires: %{python_module pip}
@ -50,7 +50,6 @@ BuildRequires: fdupes
BuildRequires: jupyter-notebook-filesystem
BuildRequires: nodejs
BuildRequires: python-rpm-macros
Requires: jupyter-panel
Requires: python-Markdown
Requires: python-bleach
Requires: python-bokeh >= 3.2.0
@ -66,6 +65,7 @@ Requires: python-typing_extensions
Requires: python-xyzservices >= 2021.09.1
Requires(post): update-alternatives
Requires(postun): update-alternatives
Recommends: jupyter-panel
Recommends: python-Pillow
Recommends: python-holoviews >= 1.16.0
Recommends: python-jupyterlab
@ -77,18 +77,19 @@ BuildRequires: %{python_module altair}
BuildRequires: %{python_module asyncio}
BuildRequires: %{python_module diskcache}
BuildRequires: %{python_module folium}
BuildRequires: %{python_module holoviews >= 1.16.0 if %python-base >= 3.10}
BuildRequires: %{python_module ipympl if %python-base >= 3.10}
BuildRequires: %{python_module ipython >= 7.0 if %python-base >= 3.10}
BuildRequires: %{python_module holoviews >= 1.16.0}
BuildRequires: %{python_module ipympl}
BuildRequires: %{python_module ipython >= 7.0}
BuildRequires: %{python_module panel = %{version}}
BuildRequires: %{python_module parameterized}
BuildRequires: %{python_module plotly >= 4.0 if %python-base >= 3.10}
BuildRequires: %{python_module plotly >= 4.0}
BuildRequires: %{python_module pytest-asyncio}
BuildRequires: %{python_module pytest-rerunfailures}
BuildRequires: %{python_module pytest-xdist}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module scipy}
BuildRequires: %{python_module streamz}
BuildRequires: unzip
# Tests segfault
# BuildRequires: %%{python_module vtk}
%endif
@ -99,9 +100,12 @@ Panel is a Python library that lets you create custom interactive web apps and
dashboards by connecting user-defined widgets to plots, images, tables, or
text.
%package -n jupyter-panel
%package -n jupyter-panel
Summary: Jupyter notebook and server cofiguration for python-panel
Group: Development/Languages/Python
# Any flavor is okay, but suggest the primary one for automatic zypper choice -- boo#1214354
Requires: python3dist(panel) = %{version}
Suggests: python3-panel
%description -n jupyter-panel
Panel is a Python library that lets you create custom interactive web apps and
@ -112,29 +116,20 @@ This package contains the notebook and server extension configuration common
to all Python flavors.
%prep
%autosetup -p1 -n panel-%{version}
# Do not try to rebuild the bundled npm stuff. We don't have network. Just use the shipped bundle.
sed -i '/def _build_paneljs/ a \ return' setup.py
# no color for pytest
sed -i '/addopts/ s/--color=yes//' pyproject.toml
for p in panel/tests/io/reload_module.py
do \
[ -f $p -a ! -s $p ] || exit 1 && echo "# Empty module" > $p
done
for p in panel/dist/css/regular_table.css \
panel/dist/bundled/perspective/@finos/perspective-viewer@1.9.3/dist/css/variables.css
do \
[ -f $p -a ! -s $p ] || exit 1 && echo "// Empty css" > $p
done
%setup -q -c -T
%if %{with test}
%python_expand mkdir -p build && unzip %{SOURCE0} -d build/
%endif
%build
# not needed
%if ! %{with test}
%build
%pyproject_wheel
%install
%pyproject_install
%pyproject_install %{SOURCE0}
%python_clone -a %{buildroot}%{_bindir}/panel
%python_expand %fdupes %{buildroot}%{$python_sitelib}
cp %{buildroot}%{python_sitelib}/panel-%{version}.dist-info/LICENSE.txt .
%endif
%if %{with test}
@ -161,7 +156,7 @@ donttest="$donttest or test_pdf_local_file"
# Don't test on 32-bit: asyncio is too flaky
[ $(getconf LONG_BIT) -eq 32 ] && exit 0
#
%pytest -n auto -rsfE -k "not ($donttest)"
%pytest build/panel -n auto -rsfE -k "not ($donttest)"
%endif
%post
@ -173,16 +168,14 @@ donttest="$donttest or test_pdf_local_file"
%if ! %{with test}
%files %{python_files}
%license LICENSE.txt
%doc README.md
%python_alternative %{_bindir}/panel
%{python_sitelib}/panel
%{python_sitelib}/panel-%{version}.dist-info
%files -n jupyter-panel
%license LICENSE.txt
%_jupyter_config %{_jupyter_servextension_confdir}/panel-client-jupyter.json
%_jupyter_config %{_jupyter_server_confdir}/panel-client-jupyter.json
%{_jupyter_config} %{_jupyter_servextension_confdir}/panel-client-jupyter.json
%{_jupyter_config} %{_jupyter_server_confdir}/panel-client-jupyter.json
%endif
%changelog