napari 0.4.9#
We’re happy to announce the release of napari 0.4.9! napari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for browsing, annotating, and analyzing large multi-dimensional images. It’s built on top of Qt (for the GUI), vispy (for performant GPU-based rendering), and the scientific Python stack (numpy, scipy).
For more information, examples, and documentation, please visit our website: napari/napari
Highlights#
This release adds a couple nice new features like additional shading modes for our surface layer (#2972) and the ability to copy a screenshot directly to the clipboard (#2721). It also contains a variety of bug fixes and improvements.
New Features#
Add tooltip for labels (#2658)
Added copy-to-clipboard functionality (#2721)
Add
make watch
command for hot reload (#2763)Expose alternative shading modes for surfaces (#2792)
Improvements#
Global plugin setting (#2565)
Provide interface for progress bars in @thread_workers (#2655)
Delay all imports in
napari.__init__
behind module levelnapari.__getattr__
(#2662)Add
block
to viewer.show (#2669)New type stubs PR, and simpler
napari.view_layers
module (#2675)Extend the action manager to work with layer. (#2677)
Add
MultiScaleData
wrapper to give multiscale data a consistent API (#2683)Revert “add
MultiScaleData
wrapper to give multiscale data a consistent API (#2683)” (#2807)Add repr-html to nbscreenshot (#2740)
Set default highlight thickness to 2 (#2746)
Save shortcuts in settings (#2754)
Enable correct loading of settings from environment variables (#2759)
Add tooltips to widgets in preferences (#2762)
Improve colormap error message, when using display names or wrong colormap names (#2769)
Add parent to console and dockwidgets in a separate private attribute. (#2773)
Improve error message when legacy Qt installed from conda over pip (#2776)
Add octree and async to preferences (#2783)
Change remove to uninstall in plugin dialog (#2787)
Update typing and checks with mypy for settings module (#2795)
Do not write settings loaded from environment values (#2797)
Update settings descriptions (#2812)
Extend the action manager to support multiple shortcuts (#2830)
Adds notes about multiscale only being 2D to docs (#2833)
Set upper limit of Vectors spinboxes to infinity (#2842)
Plugin dock widgets menu (#2843)
Update to openGL max texture size (#2845)
Followup to #2485 to add opengl context (#2846)
Do not store default values in preference files (#2848)
Bug Fixes#
Fix Labels and Points properties set (#2657)
Fixing
add_dock_widget
compatibility withmagicgui v0.2
(#2734)Shortcuts: Render properly shortcuts with minus and space. (#2735)
Fix runtime error when running doc tests on napari site (#2738)
Fix play button with dask/zarr (#2741)
Ignore opening 1D image layers in the viewer model. (#2743)
Fix custom layer subclasses (don’t require layer icon) (#2758)
Add temporal fix for handling enums in qt_json_form (#2761)
Use slicing rather than np.take in add_image (#2780)
Fix paint cursor size for layer with negative scale (#2788)
track_id dtype change. from uint16 to uint32 (#2789)
Ensure aborted workers don’t emit returned signal (#2796)
Connect axes visual to dims range change (#2802)
Add fix for large labels in new slices (#2804)
Fix zoom for non square image (#2805)
Implement lazy module importing for all public submodules (#2816)
Coerce surface vertex data to float32 (#2820)
Vendor shading filter from vispy (#2821)
Small doc fixes (#2822)
Fix key bindings display dialog (#2824)
Work around numpy’s string casting deprecation (#2825)
Update translation strings (#2827)
Fix keypress skipping layers in layerlist (#2837)
Fix octree imports (#2838)
Remove opacity from plugin sorter widget (#2840)
Fix Labels.fill for tensorstore data (#2856)
Be more robust for non-existant keybindings in settings (#2861)
trans NameError bugfix (#2865)
Tasks#
Add imports linting (#2659)
Pre-commit update (#2728)
Remove linenos option from code-blocks and line references (#2739)
Remove qt from _qt import linter rule (#2774)
Add PR labeler and update templates (#2775)
Add pytest-order and move threading tests to the top of the suite (#2779)
Auto assign PR to author (#2794)
Typo in PR template (#2831)
10 reviewers added to this release (alphabetical)#
Andy Sweet - @andy-sweet
Draga Doncila Pop - @DragaDoncila
Gonzalo Peña-Castellanos - @goanpeca
Jordão Bragantini - @JoOkuma
Juan Nunez-Iglesias - @jni
Lukasz Migas - @lukasz-migas
Matthias Bussonnier - @Carreau
Nicholas Sofroniew - @sofroniewn
Pam - @ppwadhwa
Talley Lambert - @tlambert03