Releases: zauberzeug/nicegui
Releases · zauberzeug/nicegui
v1.4.27
New features and enhancements
- Introduce
ui.teleport
element to inject NiceGUI elements into regular html. (#3148, #3159 by @CrystalWindSnake, @falkoschindler) - Introduce
align_items
parameter forui.row
,ui.column
andui.card
(#3174, #3175 by @tz301, @falkoschindler) - Introduce
config
parameter forui.mermaid
(#3164 by @kyloe, @falkoschindler) - Improve error message for source elements with missing files (#3162 by @CrystalWindSnake, @falkoschindler)
- Allow commas and equal signs in unquoted prop strings (#3128, #3130, #3193 by @miccs0, @ed2050, @falkoschindler)
Bugfixes
- Fix type annotation in NPM import script (#3186 by @natankeddem)
- Fix JavaScript error due to wrong variable in download function (#3173 by @123swk123, @falkoschindler)
- Encode auto-generated URLs to support filenames with hashtags
#
(#3124, #3138 by @gotev, @afullerx) - Bump pywebview to 5.0 to support
settings
attribute (#3135 by @miek770, @falkoschindler) - Fix
ui.codemirror
ignoring path prefixes (#3122, #3126 by @amks1, @falkoschindler)
Documentation
v1.4.26
New features and enhancements
- Make
ui.code
a ContentElement to support binding (#3077, #3089 by @JeanBaptiste-dlb, @falkoschindler) - Warn about communication attempts with disconnected clients (#3028, #3123 by @Thermaltech, @falkoschindler, @rodja)
- Pass lifespan state when running NiceGUI with an existing FastAPI app (#3094, #3097 by @RomainEconomics)
- Only ignore specific missing imports with mypy (#3113 by @codingpaula)
- Use local files for testing
ui.interactive_image
(#3118 by @falkoschindler)
Bugfixes
- Prevent
ui.leaflet
from flickering after callingflyTo()
(#3035, #3125 by @backbord, @afullerx, @falkoschindler) - Add plotly package to Docker image (#3098 by @psy0rz, @rodja)
Documentation
- Fix "NGINX Subpath" example by adding
proxy_redirect
(#2977, #3108 by @falkoschindler, @Lucas-lyh) - Update reference to
table_documentation.py
(#3099 by @emmanuel-ferdman) - Add example to subscribe to audio events (#3090 by @rodja)
- Remove documentation for non-existing
on_pointer
parameter inui.interactive_image
(#3078 by @MLaurenceFournier) - Add comment about caching in "Custom Vue Component" example (#3074 by @MLaurenceFournier, @falkoschindler)
- Fix "Local File Picker" and "Editable AG Grid" example after restricting JavaScript on the auto-index page (#3072 by @epmb1n, @mattloose, @jweite-amazon, @falkoschindler)
v1.4.25
Bugfixes
- Fix animations being interrupted when initializing
ui.echarts
(#2932, #3056 by @CrystalWindSnake, @falkoschindler) - Fix autocomplete for
ui.input
on mobile (#3055 by @falkoschindler) - Fix accessibility issue with connection popup being always visible to screen readers (#3050 by @paulGeoghegan, @falkoschindler)
- Avoid data loss when deep-copying
app.storage
(#3023, #3046 by @natankeddem, @falkoschindler) - Add missing comma (#3032 by @sfermigier)
- Handle
options
andvalue
pointing to the same object inui.select
(#3014 by @natankeddem, @falkoschindler) - Raise exception when awaiting JavaScript on auto-index page to avoid aftereffects with multiple connected clients (#2951, #2983 by @CrystalWindSnake, @frankvp11, @falkoschindler)
- Fix
ui.aggrid
not resizing correctly with its parent container (#2850, #2852 by @tz301, @vickorian, @wasabismile, @falkoschindler)
v1.4.24
New features and enhancements
- Introduce
ui.codemirror
element (#2760, #2775, #2913 by @frankvp11, @chrschorn, @rodja, @falkoschindler) - Introduce
ui.chip
element (#2942 by @chrschorn, @falkoschindler) - Introduce
ui.scene_view
component (#2608, #2947 by @fabian0702, @falkoschindler) - Add
background_color
parameter toui.scene
(#2963 by @chrschorn, @falkoschindler) - Improve performance of 3D scenes by initializing all objects at once (#3009, #3022 by @kovalp, @falkoschindler)
- Improve devcontainer experience (#2964 by @chrschorn)
- Support Quasar's
col-*
classes inui.row
(#2881, #3008 by @me21, @falkoschindler)
Bugfixes
- Fix layout issues with
ui.plotly
and reduce unnecessary re-rendering of UI elements (#2917, #2957 by @drummerboy2543, @bmaranville, @falkoschindler) - Avoid sending UI content twice (#2926 by @Wramberg, @falkoschindler)
- Use a more robust method to check for a client connection (#2915 by @CVxTz, @rodja, @ZAn-next, @falkoschindler)
Documentation
- Add more documentation for
ui.keyboard
and its event arguments (#2974, #3010 by @ed2050, @falkoschindler) - Fix exception in the "Infinite scroll" example when the client disconnects (#2966 by @psy0rz, @falkoschindler)
- Fix a broken link on the
ui.page
documentation (#2990 by @Dronakurl, @falkoschindler)
v1.4.23
New features and enhancements
- Introduce
ui.context
as a simpler way to get client, slot and slot stack (#2879, #2905 by @rodja, @falkoschindler) - Introduce nicegui-pack to package NiceGUI apps using PyInstaller (#2549, #2789 by @hrauch, @JS-Aibel, @alimate2023, @gotev, @falkoschindler)
- Introduce an orthographic camera for
ui.scene
(#2872, #2890 by @vitamingcheng, @falkoschindler) - Introduce camera parameters for
ui.scene
(#2890, #2897 by @falkoschindler) - Allow configuring webview settings like "ALLOW_DOWNLOADS" (#2877, #2884 by @Smug246, @falkoschindler)
Bugfixes
- Fix 100% CPU usage on Windows using asyncio events instead of repeated polling (#2482, #2827, #2867 by @pplno, @anjomro, @oidex, @afullerx, @rodja, @falkoschindler)
- Fix setting min/max property for
ui.number
(#2950 by @mwarrens63, @falkoschindler) - Avoid infinite recursions with an early exit when setting the value of
ui.state
variables (#2921, #2922 by @vickorian, @falkoschindler) - Fix
app.storage.tab
for NiceGUI On Air (#2902 by @rodja) - Fix
ui.select
andui.radio
for NiceGUI On Air (#2901 by @thetableman, @rodja) - Fix emoji favicons with
\uFE0F
"Variation Selector-16" (#2888 by @tewhalen, @falkoschindler)
Documentation
- Add a ZeroMQ example (#2941 by @keenanjohnson, @falkoschindler)
- Add class demo to modularization example and improve overall structure (#2939, #2944 by @BlankAdventure, @rodja, @falkoschindler)
- Show scroll to bottom in
ui.table
demo (#2907, #2927 by @linkwww8, @rodja) - Fix typo in a URL to the FastAPI documentation (#2908 by @Ezbaze)
v1.4.22
Bugfix
- Fix auto-close behavior of
ui.menu
,ui.color_input
and some demos (#2894 by @digidigital, @falkoschindler, @codingpaula)
v1.4.21
New features and enhancements
- Introduce
app.storage.tab
as a storage for the current tab (#2837, #2866 by @rodja, @Alyxion, @alexzaech, @falkoschindler) - Introduce
app.storage.client
as a storage for volatile data for the current connection (#1308, #2820 by @rodja, @amks1, @sklibanov312, @Alyxion, @falkoschindler) - Introduce
ui.matplotlib
element as an object-oriented alternative toui.pyplot
(#2553 by @tacaswell, @falkoschindler) - Refactor
ui.list
andui.menu
items (#2855 by @codingpaula, @falkoschindler) - Automatically await async results in
ui.timer
(#2856, #2859 by @bmrast, @falkoschindler) - Add
maximize()
method for maximizing a native application (#2836 by @Aues6uen11Z) - Replace
check_interval
for JavaScript requests with an asyncio event (#2482, #2827 by @pplno, @anjomro, @oidex, @afullerx, @rodja, @falkoschindler)
Bugfixes
- Fix typo in conftest.py (#2857 by @kj4tmp)
- Fix update of
ui.leaflet
after callingset_center
orset_zoom
(#2825, #2826 by @thetableman, @falkoschindler) - Fix update of invisible
ui.markdown
elements (#2779, #2803 by @me21, @aniketkumar7, @falkoschindler) - Avoid ignoring dynamic properties starting with a line break (#2845 by @falkoschindler)
Documentation
- Add audio recording example (#1610, #2861 by @rodja, @CVxTz, @falkoschindler)
- Add demos for floating action buttons (#2832 by @rodja)
- Improve the "Chat with AI" example (#2772, #2800 by @merlinarer, @rodja, @falkoschindler)
Others
- Introduce ruff as an isort replacement and code checker with a pre-commit hook (#2619 by @mbrulatout, @codingpaula, @falkoschindler)
- Enable private vulnerability reporting (#2870 by @sunriseXu, @falkoschindler)
v1.4.20
New features and enhancements
- Introduce
ui.button_group
(#2821 by @codingpaula, @falkoschindler) - Introduce
ui.dropdown_button
(#2821 by @codingpaula, @falkoschindler) - Introduce
ui.range
(#1191, #2762 by @frankvp11, @codingpaula) - Introduce
ui.clipboard
functions (#2575, #2594 by @ZeroCool940711, @falkoschindler) - Add an
on_multi_upload
callback forui.upload
(#2698, #2765 by @rcovic, @d-meehan, @falkoschindler) - Add SVG events to
ui.interactive_image
(#2745 by @frankvp11, @falkoschindler) - Allow registering events after element instantiation (#2687, #2704, #2708 by @petergaultney, @falkoschindler)
- Make libsass optional, replacing
ui.add_style
withui.add_css
,ui.add_scss
andui.add_sass
(#2796, #2809 by @psy0rz, @rodja, @falkoschindler) - Let
run.io_bound
andrun.cpu_bound
maintain type signatures of their callbacks (#2733 by @petergaultney) - Make On Air reconnect more robust (#2818 by @rodja)
- Terminate On Air connection more elegantly (#2761 by @rodja)
Bugfixes
- Fix jumping cursor for
ui.editor
(#2611, #2756 by @Gilser, @intrinsically, @falkoschindler) - Fix displayed order of
ui.select
options (#2137 by @CrystalWindSnake, @falkoschindler) - Update
ui.number
after changing its limits (#2743, #2753 by @eddie3ruff, @falkoschindler)
Documentation
- Fix instruction about how to use the autopep8 command for code contributions (#2750 by @codingpaula, @falkoschindler)
v1.4.19
New features and enhancements
- Reduce payload by extracting nicegui.js to allow browser caching (#2728 by @falkoschindler)
- Reduce payload by skipping default element properties (#2702 by @falkoschindler)
- Allow passing functions to
run_method
calls (#2556, #2671, #2705 by @ducnva, @dr-yd, @lapnd, @pikaro, @falkoschindler) - Introduce
ui.add_style
for CSS, SASS and SCSS (#2531 by @falkoschindler, @rodja) - Support colored crosshairs for
ui.interactive_image
(#2713, #2727 by @hig-dev, @falkoschindler) - Automatically enable/disable scrolling of
ui.log
(#2690, #2686 by @frosch01, @falkoschindler) - Add support for additional echart events (#2679, #2716 by @CSharpDummy, @falkoschindler)
- Add support for custom row and column templates for
ui.grid
(#2701 by @falkoschindler) - Refine type annotation for
ui.date
(#2681 by @daya0576)
Bugfixes
- Fix rendering 404 error pages for static file routes (#2568, #2570, #2722, #2746 by @Anindya088, @falkoschindler, @Lucas-lyh, @rodja)
- Fix
ui.table.from_pandas
for datetimes with timezones (#1983, #2706 by @rohitsathish, @falkoschindler) - Re-implement the
ui.log
element to avoid problems inside tabs (#1869, #2686 by @marcin-koziol, @E-H-E-H, @falkoschindler) - Fix updating the UI when calling
ui.select.set_options
(#2682 by @amks1, @falkoschindler)
Documentation
- Add a webserial example (#334, #2623 by @BlankAdventure, @rodja, @falkoschindler)
- Add a new example with global computation and progress bar (#2676, #2685 by @mahesh11T, @falkoschindler)
- Improve macOS packaging instructions (#2707 by @gotev)
- Improve the "Table with drop down selection" demo (#2695 by @JS-Aibel, @falkoschindler)
v1.4.18
New features and enhancements
- Allow disabling the auto-validation on value change (#2618, #2661 by @Ch41r05, @falkoschindler)
- Introduce
ui.navigate.reload()
(#2659 by @mbrulatout) - Enable
new_value_mode="add"
for option dictionaries (#2462, #2467 by @me21, @falkoschindler)
Bugfixes
- Remove all children when deleting an element (#2643 by @me21, @falkoschindler)
- Fix AttributeError in
ui.select
(#2641 by @CrystalWindSnake, @falkoschindler)