Releases: napari/napari
0.6.6
napari 0.6.6
Wed, Oct 15, 2025
We're happy to announce the release of napari 0.6.6!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
This a small bugfix release, following up the changes in 0.6.5.
Zooming in the dark?
In the previous release we accidentally made the zoom tool added in v0.6.3 invisible. Whoops! No worries, it's back 🔍.
"Open with napari"
When using the napari bundle, it will now detect when a file can be opened with napari based on the extension. This allows you to use the open with > menu from your operative system to open files with napari!
PS: Since we did quite a few changes behind the scenes on this new version of the bundle, you might experience some issues. Don't hesitate to open an issue or contact us on zulip if you do!
Improvements
- Update menuinst configuration with file type associations (#8359)
Bug Fixes
- Fix shape selection in a single plane when shapes are on multiple planes (#8335)
- Fix invisible zoom box (#8344)
- Bump console version to fix ipykernel bug (#8360)
Build Tools
- Bump console version to fix ipykernel bug (#8360)
Documentation
- Update release notes v0.6.6 (docs#868)
- Add info about manual trigger of conda update to release guide (docs#859)
- Fix version switcher for 0.6.5 (docs#861)
- Remove trailing comma in version switcher json (docs#862)
- Add release notes for v0.6.6 (docs#866)
- Update release notes v0.6.6, the revenge (docs#869)
Other Pull Requests
- Add a new
attr_to_settrutility function and simplify layer control widgets layer to widget setup (#8274) - [pre-commit.ci] pre-commit autoupdate (#8275)
- ci(dependabot): bump the actions group with 9 updates (#8324)
- Delay settings import to avoid circular import (#8327)
- Add info about conda forge manual trigger to release checklist (#8328)
- Add sponsor badge and reorganize badges into groups (#8343)
- Fix vispy error traceback (#8346)
- Migrate license settings to modern standards (#8350)
7 authors added to this release (alphabetical)
(+) denotes first-time contributors 🥳
- Daniel Althviz Moré - @dalthviz
- Grzegorz Bokota - @Czaki
- Jaime Rodríguez-Guerra - @jaimergp
- Juan Nunez-Iglesias - @jni
- Lorenzo Gaifas (docs) - @brisvag
- Peter Sobolewski - @psobolewskiPhD
- Tim Monko (docs) - @TimMonko
8 reviewers added to this release (alphabetical)
(+) denotes first-time contributors 🥳
0.6.6rc3
napari 0.6.6
Wed, Oct 15, 2025
We're happy to announce the release of napari 0.6.6!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
This a small bugfix release, following up the changes in 0.6.5.
Zooming in the dark?
In the previous release we accidentally made the zoom tool added in v0.6.3 invisible. Whoops! No worries, it's back 🔍.
"Open with napari"
When using the napari bundle, it will now detect when a file can be opened with napari based on the extension. This allows you to use the open with > menu from your operative system to open files with napari!
PS: Since we did quite a few changes behind the scenes on this new version of the bundle, you might experience some issues. Don't hesitate to open an issue or contact us on zulip if you do!
Improvements
- Update menuinst configuration with file type associations (#8359)
Bug Fixes
- Fix shape selection in a single plane when shapes are on multiple planes (#8335)
- Fix invisible zoom box (#8344)
- Bump console version to fix ipykernel bug (#8360)
Build Tools
- Bump console version to fix ipykernel bug (#8360)
Documentation
- Update release notes v0.6.6 (docs#868)
- Add info about manual trigger of conda update to release guide (docs#859)
- Fix version switcher for 0.6.5 (docs#861)
- Remove trailing comma in version switcher json (docs#862)
- Add release notes for v0.6.6 (docs#866)
- Update release notes v0.6.6, the revenge (docs#869)
Other Pull Requests
- Add a new
attr_to_settrutility function and simplify layer control widgets layer to widget setup (#8274) - [pre-commit.ci] pre-commit autoupdate (#8275)
- ci(dependabot): bump the actions group with 9 updates (#8324)
- Delay settings import to avoid circular import (#8327)
- Add info about conda forge manual trigger to release checklist (#8328)
- Add sponsor badge and reorganize badges into groups (#8343)
- Fix vispy error traceback (#8346)
- Migrate license settings to modern standards (#8350)
7 authors added to this release (alphabetical)
(+) denotes first-time contributors 🥳
- Daniel Althviz Moré - @dalthviz
- Grzegorz Bokota - @Czaki
- Jaime Rodríguez-Guerra - @jaimergp
- Juan Nunez-Iglesias - @jni
- Lorenzo Gaifas (docs) - @brisvag
- Peter Sobolewski - @psobolewskiPhD
- Tim Monko (docs) - @TimMonko
8 reviewers added to this release (alphabetical)
(+) denotes first-time contributors 🥳
0.6.6rc2
napari 0.6.6
Fri, Oct 10, 2025
We're happy to announce the release of napari 0.6.6!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
This a small bugfix release, following up the changes in 0.6.5.
Bug Fixes
- Fix invisible zoom box (#8344)
Documentation
- Add release notes for v0.6.6 (docs#866)
Other Pull Requests
- Add a new
attr_to_settrutility function and simplify layer control widgets layer to widget setup (#8274) - ci(dependabot): bump the actions group with 9 updates (#8324)
- Delay settings import to avoid circular import (#8327)
- Add info about conda forge manual trigger to release checklist (#8328)
3 authors added to this release (alphabetical)
(+) denotes first-time contributors 🥳
6 reviewers added to this release (alphabetical)
(+) denotes first-time contributors 🥳
0.6.6rc1
napari 0.6.6
Fri, Oct 10, 2025
We're happy to announce the release of napari 0.6.6!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
This a small bugfix release, following up the changes in 0.6.5.
Bug Fixes
- Fix invisible zoom box (#8344)
Documentation
- Add release notes for v0.6.6 (docs#866)
Other Pull Requests
- Add a new
attr_to_settrutility function and simplify layer control widgets layer to widget setup (#8274) - ci(dependabot): bump the actions group with 9 updates (#8324)
- Delay settings import to avoid circular import (#8327)
- Add info about conda forge manual trigger to release checklist (#8328)
3 authors added to this release (alphabetical)
(+) denotes first-time contributors 🥳
6 reviewers added to this release (alphabetical)
(+) denotes first-time contributors 🥳
0.6.6rc0
napari 0.6.6
Fri, Oct 10, 2025
We're happy to announce the release of napari 0.6.6!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
This a small bugfix release, following up the changes in 0.6.5.
Bug Fixes
- Fix invisible zoom box (#8344)
Documentation
- Add release notes for v0.6.6 (docs#866)
Other Pull Requests
- Add a new
attr_to_settrutility function and simplify layer control widgets layer to widget setup (#8274) - ci(dependabot): bump the actions group with 9 updates (#8324)
- Delay settings import to avoid circular import (#8327)
- Add info about conda forge manual trigger to release checklist (#8328)
3 authors added to this release (alphabetical)
(+) denotes first-time contributors 🥳
6 reviewers added to this release (alphabetical)
(+) denotes first-time contributors 🥳
0.6.5
napari 0.6.5
Wed, Oct 1, 2025
We're happy to announce the release of napari 0.6.5!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
This a sizeable release containing a few new exciting features and a lot of bugfixes.
EffVer and no more alpha
It is our first release officially following the EffVer versioning scheme. We also took this occasion to (finally!) remove the Alpha qualifier from the project (#8288), to better reflect the reality of the extensive use of napari in production. Note that these changes are just formally bringing up to date the state of the project: our development continues as before!
Define a startup script for custom launch behaviour
Do you have a code snippet that you always find yourself running after you launch napari? No more! You can now put this code in a script and set its path in the new startup script setting (#8188), and it will be executed every time napari opens. It's just a python script, so sky's the limit :) We found it particularly useful for adding custom colormaps, setting up the scale bar just right, or automatically launching our favourite plugin on startup.
Automatically tiled overlays and ColorBar overlay
Canvas overlays such as scale_bar, text_overlay, and colorbar overlay are now automatically tiling (#7836), preventing annoying overlap and making them easier to use without having to manage positioning. Wait, colorbar overlay you said? You heard it right! This is a new overlay (#7832) that shows a color bar legend, and it works with any layer which uses a colormap. All of this works seamlessly with multiple overlays and even grid mode:
import napari
viewer = napari.Viewer()
# enable grid with stride 2 to get layers split two-by-two
viewer.grid.enabled = True
viewer.grid.stride = 2
# set the scale bar to gridded mode so it appears in each grid box
viewer.scale_bar.visible = True
viewer.scale_bar.gridded = True
layers = viewer.open_sample('napari', 'lily')
# enable color bars
for layer in layers:
layer.colorbar.visible = TrueAlternatively, you may also activate the colorbar (and other layer-related overlays such as bounding_box) from the graphical interface by right clicking on selected layers in the layerlist and toggling the relative entries in the Visualization submenu (#8319).
Task manager will now try to prevent losing unfinished work
We added a new task manager (#8211) which automatically registers any running thread_worker, showing a confirmation dialog if you attempt to close napari while a task is running.
New remove and pop methods for Points and Shapes
Points and Shapes can now be easily removed, not just added :P (#8031 and #8072).
A few shiny new updates to our website and documentation
napari.org can now be visited in dark mode (docs#840)! You could try out this new relaxing colorscheme while exploring the new overhauled Preferences documentation section 😉 (docs#834).
There's also new sections on viewer overlays and layer overlays, to better explain how to use these old and new tools.
Our release notes page also received a glow-up (docs#838), displaying past release highlights in collapsible boxes in the timeline. This should make it easier to quickly catch up when updating across multiple releases!
Extra dependencies for development moved to dependency groups
A note for our contributors and plugin developers: we transferred our dev-related extra dependencies to the new python dependency groups (#8227). The installation is therefore slightly different, for example: pip install napari --group testing instead of pip install napari[testing]. The previous method will continue to work, but we will likely remove the old optional-dependences approach in a future release.
New Features
- Add color bar overlay (#7832)
- Tiling canvas overlays (#7836)
- Add
pop()forPointsandShapes(#8072) - add option to define startup script in settings (#8188)
- use
Selectionclass in shapes layer (#8297)
Improvements
- Add
remove()in Shapes and Points (#8031) - Example from SciPy 2025 tutorial; image warping (#8111)
- Add a tasks manager status for plugins actions and napari processes (#8211)
- Use single settings path for all
uv tool run(#8250) - Add "Hide completed" checkbox to Tracks layer for improved visualization (#8253)
- Handle affine layer metadata when splitting RGB images (#8256)
- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number (#8292)
- Implement toggling colorbar and bounding box in layerlist context menu (#8319)
- Add warning for big stride when toggling grid mode (#8320)
Bug Fixes
- Layer controls widgets refactor (#7355)
- Fix effect of scaling when converting shapes to labels (#8098)
- Fix disappearing points (#8223)
- Fix shape position by using a stable algorithm for sorting z_position (#8232)
- Remove console print action shortcut to prevent collision with command palette shortcut (#8233)
- Do not update thumbnail on Labels empty slice (#8251)
- Handle affine layer metadata when splitting RGB images (#8256)
- fix slice_from_axis to wrap zarr in dask to keep lazy behavior (#8260)
- Add menu-xdg to XPRA containers (#8263)
- Check for zarr in
images_to_stackand use da.stack instead of np.stack (#8267) - Better handling of remote zarr (#8268)
- Use custom logger formatting to most of argument to string (#8305)
Documentation
- Use EffVer (#8243)
- Use shared workflows for build docs (#8308)
- Bump napari-sphinx-theme in deps and constraints (#8315)
- Update release notes 0.6.5 for full release (docs#855)
- Add funding information to the home page (docs#818)
- Update version switcher for 0.6.4 (docs#826)
- Fix version switcher URL to prevent problems with unversioned pages (docs#827)
- Update documentation for dependencies groups (docs#829)
- Update and restructure the preferences guide (docs#834)
- Fix @jaimergp's last name (docs#835)
- Auto generate release index with highlights and timeline (docs#838)
- Add EffVer to release guide and link to checklist template (docs#839)
- Enable dark mode for website (docs#840)
- Add draft of 0.6.5 release notes (docs#845)
- Add documentation for startup script. (docs#846)
- Add some info about running python scripts via cli (docs#847...
0.6.5rc3
napari 0.6.5
Wed, Oct 1, 2025
We're happy to announce the release of napari 0.6.5!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
This a sizeable release containing a few new exciting features and a lot of bugfixes.
EffVer and no more alpha
It is our first release officially following the EffVer versioning scheme. We also took this occasion to (finally!) remove the Alpha qualifier from the project (#8288), to better reflect the reality of the extensive use of napari in production. Note that these changes are just formally bringing up to date the state of the project: our development continues as before!
Define a startup script for custom launch behaviour
Do you have a code snippet that you always find yourself running after you launch napari? No more! You can now put this code in a script and set its path in the new startup script setting (#8188), and it will be executed every time napari opens. It's just a python script, so sky's the limit :) We found it particularly useful for adding custom colormaps, setting up the scale bar just right, or automatically launching our favourite plugin on startup.
Automatically tiled overlays and ColorBar overlay
Canvas overlays such as scale_bar, text_overlay, and colorbar overlay are now automatically tiling (#7836), preventing annoying overlap and making them easier to use without having to manage positioning. Wait, colorbar overlay you said? You heard it right! This is a new overlay (#7832) that shows a color bar legend, and it works with any layer which uses a colormap. All of this works seamlessly with multiple overlays and even grid mode:
import napari
viewer = napari.Viewer()
# enable grid with stride 2 to get layers split two-by-two
viewer.grid.enabled = True
viewer.grid.stride = 2
# set the scale bar to gridded mode so it appears in each grid box
viewer.scale_bar.visible = True
viewer.scale_bar.gridded = True
layers = viewer.open_sample('napari', 'lily')
# enable color bars
for layer in layers:
layer.colorbar.visible = TrueAlternatively, you may also activate the colorbar (and other layer-related overlays such as bounding_box) from the graphical interface by right clicking on selected layers in the layerlist and toggling the relative entries in the Visualization submenu (#8319).
Task manager will now try to prevent losing unfinished work
We added a new task manager (#8211) which automatically registers any running thread_worker, showing a confirmation dialog if you attempt to close napari while a task is running.
New remove and pop methods for Points and Shapes
Points and Shapes can now be easily removed, not just added :P (#8031 and #8072).
A few shiny new updates to our website and documentation
napari.org can now be visited in dark mode (docs#840)! You could try out this new relaxing colorscheme while exploring the new overhauled Preferences documentation section 😉 (docs#834).
There's also new sections on viewer overlays and layer overlays, to better explain how to use these old and new tools.
Our release notes page also received a glow-up (docs#838), displaying past release highlights in collapsible boxes in the timeline. This should make it easier to quickly catch up when updating across multiple releases!
Extra dependencies for development moved to dependency groups
A note for our contributors and plugin developers: we transferred our dev-related extra dependencies to the new python dependency groups (#8227). The installation is therefore slightly different, for example: pip install napari --group testing instead of pip install napari[testing]. The previous method will continue to work, but we will likely remove the old optional-dependences approach in a future release.
New Features
- Add color bar overlay (#7832)
- Tiling canvas overlays (#7836)
- Add
pop()forPointsandShapes(#8072) - add option to define startup script in settings (#8188)
- use
Selectionclass in shapes layer (#8297)
Improvements
- Add
remove()in Shapes and Points (#8031) - Example from SciPy 2025 tutorial; image warping (#8111)
- Add a tasks manager status for plugins actions and napari processes (#8211)
- Use single settings path for all
uv tool run(#8250) - Add "Hide completed" checkbox to Tracks layer for improved visualization (#8253)
- Handle affine layer metadata when splitting RGB images (#8256)
- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number (#8292)
- Implement toggling colorbar and bounding box in layerlist context menu (#8319)
- Add warning for big stride when toggling grid mode (#8320)
Bug Fixes
- Layer controls widgets refactor (#7355)
- Fix effect of scaling when converting shapes to labels (#8098)
- Fix disappearing points (#8223)
- Fix shape position by using a stable algorithm for sorting z_position (#8232)
- Remove console print action shortcut to prevent collision with command palette shortcut (#8233)
- Do not update thumbnail on Labels empty slice (#8251)
- Handle affine layer metadata when splitting RGB images (#8256)
- fix slice_from_axis to wrap zarr in dask to keep lazy behavior (#8260)
- Add menu-xdg to XPRA containers (#8263)
- Check for zarr in
images_to_stackand use da.stack instead of np.stack (#8267) - Better handling of remote zarr (#8268)
- Use custom logger formatting to most of argument to string (#8305)
Documentation
- Use EffVer (#8243)
- Use shared workflows for build docs (#8308)
- Bump napari-sphinx-theme in deps and constraints (#8315)
- Update release notes 0.6.5 for full release (docs#855)
- Add funding information to the home page (docs#818)
- Update version switcher for 0.6.4 (docs#826)
- Fix version switcher URL to prevent problems with unversioned pages (docs#827)
- Update documentation for dependencies groups (docs#829)
- Update and restructure the preferences guide (docs#834)
- Fix @jaimergp's last name (docs#835)
- Auto generate release index with highlights and timeline (docs#838)
- Add EffVer to release guide and link to checklist template (docs#839)
- Enable dark mode for website (docs#840)
- Add draft of 0.6.5 release notes (docs#845)
- Add documentation for startup script. (docs#846)
- Add some info about running python scripts via cli (docs#847...
0.6.5rc2
napari 0.6.5
Wed, Oct 1, 2025
We're happy to announce the release of napari 0.6.5!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
This a sizeable release containing a few new exciting features and a lot of bugfixes.
EffVer and no more alpha
It is our first release officially following the EffVer versioning scheme. We also took this occasion to (finally!) remove the Alpha qualifier from the project (#8288), to better reflect the reality of the extensive use of napari in production. Note that these changes are just formally bringing up to date the state of the project: our development continues as before!
Define a startup script for custom launch behaviour
Do you have a code snippet that you always find yourself running after you launch napari? No more! You can now put this code in a script and set its path in the new startup script setting (#8188), and it will be executed every time napari opens. It's just a python script, so sky's the limit :) We found it particularly useful for adding custom colormaps, setting up the scale bar just right, or automatically launching our favourite plugin on startup.
Automatically tiled overlays and ColorBar overlay
Canvas overlays such as scale_bar, text_overlay, and colorbar overlay are now automatically tiling (#7836), preventing annoying overlap and making them easier to use without having to manage positioning. Wait, colorbar overlay you said? You heard it right! This is a new overlay (#7832) that shows a color bar legend, and it works with any layer which uses a colormap. All of this works seamlessly with multiple overlays and even grid mode:
import napari
viewer = napari.Viewer()
# enable grid with stride 2 to get layers split two-by-two
viewer.grid.enabled = True
viewer.grid.stride = 2
# set the scale bar to gridded mode so it appears in each grid box
viewer.scale_bar.visible = True
viewer.scale_bar.gridded = True
layers = viewer.open_sample('napari', 'lily')
# enable color bars
for layer in layers:
layer.colorbar.visible = TrueAlternatively, you may also activate the colorbar (and other layer-related overlays such as bounding_box) from the graphical interface by right clicking on selected layers in the layerlist and toggling the relative entries in the Visualization submenu (#8319).
Task manager will now try to prevent losing unfinished work
We added a new task manager (#8211) which automatically registers any running thread_worker, showing a confirmation dialog if you attempt to close napari while a task is running.
New remove and pop methods for Points and Shapes
Points and Shapes can now be easily removed, not just added :P (#8031 and #8072).
A few shiny new updates to our website and documentation
napari.org can now be visited in dark mode (docs#840)! You could try out this new relaxing colorscheme while exploring the new overhauled Preferences documentation section 😉 (docs#834).
There's also new sections on viewer overlays and layer overlays, to better explain how to use these old and new tools.
Our release notes page also received a glow-up (docs#838), displaying past release highlights in collapsible boxes in the timeline. This should make it easier to quickly catch up when updating across multiple releases!
Extra dependencies for development moved to dependency groups
A note for our contributors and plugin developers: we transferred our dev-related extra dependencies to the new python dependency groups (#8227). The installation is therefore slightly different, for example: pip install napari --group testing instead of pip install napari[testing]. The previous method will continue to work, but we will likely remove the old optional-dependences approach in a future release.
New Features
- Add color bar overlay (#7832)
- Tiling canvas overlays (#7836)
- Add
pop()forPointsandShapes(#8072) - add option to define startup script in settings (#8188)
- use
Selectionclass in shapes layer (#8297)
Improvements
- Add
remove()in Shapes and Points (#8031) - Example from SciPy 2025 tutorial; image warping (#8111)
- Add a tasks manager status for plugins actions and napari processes (#8211)
- Use single settings path for all
uv tool run(#8250) - Add "Hide completed" checkbox to Tracks layer for improved visualization (#8253)
- Handle affine layer metadata when splitting RGB images (#8256)
- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number (#8292)
- Implement toggling colorbar and bounding box in layerlist context menu (#8319)
- Add warning for big stride when toggling grid mode (#8320)
Bug Fixes
- Layer controls widgets refactor (#7355)
- Fix effect of scaling when converting shapes to labels (#8098)
- Fix disappearing points (#8223)
- Fix shape position by using a stable algorithm for sorting z_position (#8232)
- Remove console print action shortcut to prevent collision with command palette shortcut (#8233)
- Do not update thumbnail on Labels empty slice (#8251)
- Handle affine layer metadata when splitting RGB images (#8256)
- fix slice_from_axis to wrap zarr in dask to keep lazy behavior (#8260)
- Add menu-xdg to XPRA containers (#8263)
- Check for zarr in
images_to_stackand use da.stack instead of np.stack (#8267) - Better handling of remote zarr (#8268)
- Use custom logger formatting to most of argument to string (#8305)
Documentation
- Use EffVer (#8243)
- Use shared workflows for build docs (#8308)
- Bump napari-sphinx-theme in deps and constraints (#8315)
- Update release notes 0.6.5 for full release (docs#855)
- Add funding information to the home page (docs#818)
- Update version switcher for 0.6.4 (docs#826)
- Fix version switcher URL to prevent problems with unversioned pages (docs#827)
- Update documentation for dependencies groups (docs#829)
- Update and restructure the preferences guide (docs#834)
- Fix @jaimergp's last name (docs#835)
- Auto generate release index with highlights and timeline (docs#838)
- Add EffVer to release guide and link to checklist template (docs#839)
- Enable dark mode for website (docs#840)
- Add draft of 0.6.5 release notes (docs#845)
- Add documentation for startup script. (docs#846)
- Add some info about running python scripts via cli (docs#847...
0.6.5rc1
napari 0.6.5
Fri, Sep 26, 2025
We're happy to announce the release of napari 0.6.5!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
Define a startup script for custom launch behaviour
Do you have a code snippet that you always find yourself running after you launch napari? No more! You can now put this code in a script and set its path in the new startup script setting (#8188), and it will be executed every time napari opens. It's just a python script, so sky's the limit :) We found it particularly useful for adding custom colormaps, setting up the scale bar just right, or automatically launching our favourite plugin on startup.
Automatically tiled overlays and ColorBar overlay
Canvas overlays such as scale_bar, text_overlay, and colorbar overlay are now automatically tiling (#7836), preventing annoying overlap and making them easier to use without having to manage positioning. Wait, colorbar overlay you said? You heard it right! This is a new overlay (#7832)that shows a color bar legend, and it works with any layer which uses a colormap. All of this works seamlessly with multiple overlays and even grid mode:
import napari
viewer = napari.Viewer()
# enable grid with stride 2 to get layers split two-by-two
viewer.grid.enabled = True
viewer.grid.stride = 2
# set the scale bar to gridded mode so it appears in each grid box
viewer.scale_bar.visible = True
viewer.scale_bar.gridded = True
layers = viewer.open_sample('napari', 'lily')
# enable color bars
for layer in layers:
layer.colorbar.visible = TrueTask manager will now try to prevent losing unfinished work
We added a new task manager (#8211) which automatically registers any running thread_worker, showing a confirmation dialog if you attempt to close napari while a task is running.
New remove() and pop() methods for Points and Shapes
Points and Shapes can now be easily removed, not just added :P (#8031 and #8072).
A new and updated guide on napari Preferences
Our documentation on the napari Preferences has received a major overhaul! Check it out here!
TODO: does this link work?
- Migrate non-user extras to dependency-groups (#8227)
- [maint] Drop alpha mentions (#8288)
- Auto generate release index with highlights and timeline (docs#838)
New Features
- Add color bar overlay (#7832)
- Tiling canvas overlays (#7836)
- Add
pop()forPointsandShapes(#8072) - add option to define startup script in settings (#8188)
- use
Selectionclass in shapes layer (#8297)
Improvements
- Add
remove()in Shapes and Points (#8031) - Example from SciPy 2025 tutorial; image warping (#8111)
- Add a tasks manager status for plugins actions and napari processes (#8211)
- Use single settings path for all
uv tool run(#8250) - Add "Hide completed" checkbox to Tracks layer for improved visualization (#8253)
- Handle affine layer metadata when splitting RGB images (#8256)
- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number (#8292)
Bug Fixes
- Layer controls widgets refactor (#7355)
- Fix effect of scaling when converting shapes to labels (#8098)
- Fix disappearing points (#8223)
- Fix shape position by using a stable algorithm for sorting z_position (#8232)
- Remove console print action shortcut to prevent collision with command palette shortcut (#8233)
- Do not update thumbnail on Labels empty slice (#8251)
- Handle affine layer metadata when splitting RGB images (#8256)
- fix slice_from_axis to wrap zarr in dask to keep lazy behavior (#8260)
- Add menu-xdg to XPRA containers (#8263)
- Check for zarr in
images_to_stackand use da.stack instead of np.stack (#8267) - Better handling of remote zarr (#8268)
- Use custom logger formatting to most of argument to string (#8305)
Documentation
- Use EffVer (#8243)
- Use shared workflows for build docs (#8308)
- Bump napari-sphinx-theme in deps and constraints (#8315)
- Add funding information to the home page (docs#818)
- Update version switcher for 0.6.4 (docs#826)
- Fix version switcher URL to prevent problems with unversioned pages (docs#827)
- Update documentation for dependencies groups (docs#829)
- Update and restructure the preferences guide (docs#834)
- Fix @jaimergp's last name (docs#835)
- Auto generate release index with highlights and timeline (docs#838)
- Add EffVer to release guide and link to checklist template (docs#839)
- Enable dark mode for website (docs#840)
- Add draft of 0.6.5 release notes (docs#845)
- Add documentation for startup script. (docs#846)
- Add some info about running python scripts via cli (docs#847)
- Add note about workers registration as tasks and close confirmation dialog when closing napari GUI via close button (docs#851)
- Release notes v0.6.5 (docs#853)
Other Pull Requests
- Improve workflow naming by prefixing triage- doc- make- (#8159)
- Move the test that requires
make_napari_viewerfromtest_qt_viewer(#8176) - Bump
superqtmin version (#8212) - Change headless setup for Windows and Linux to
pyvista/setup-headless-display-action(#8216) - Update
coverage,hypothesis,pint,pyopengl,virtualenv,xarray(#8221) - [pre-commit.ci] pre-commit autoupdate (#8222)
- Use global register for units in ScaleBar (#8226)
- Wait until viewer show in the test in
make_napari_viewer(#8228) - Update Qt backends used in tests to test more on Qt6 than Qt5 (#8229)
- Change properties for features usage in the Vectors layer controls (#8231)
- Add cache for pooch on CI for Linux jobs (#8235)
- Temporary increase timeout of macOS jobs (#8237)
- Update
coverage,hypothesis,ipython,matplotlib,pyside6,pytest-rerunfailures,tifffile(#8239) - ci(dependabot): bump the actions group with 6 updates (#8240)
- Make
connect_setattrhandle value conversion for widgets like checkboxes (#8244) - Update
fsspec,hypothesis,pytest,pytest-rerunfailures,xarray([#...
0.6.5rc0
napari 0.6.5
Fri, Sep 26, 2025
We're happy to announce the release of napari 0.6.5!
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,
https://napari.org.
napari follows EffVer (Intended Effort Versioning); this is a Meso release containing awesome new features, but some effort may be needed when updating previous projects to use this version.
Highlights
Define a startup script for custom launch behaviour
Do you have a code snippet that you always find yourself running after you launch napari? No more! You can now put this code in a script and set its path in the new startup script setting (#8188), and it will be executed every time napari opens. It's just a python script, so sky's the limit :) We found it particularly useful for adding custom colormaps, setting up the scale bar just right, or automatically launching our favourite plugin on startup.
Automatically tiled overlays and ColorBar overlay
Canvas overlays such as scale_bar, text_overlay, and colorbar overlay are now automatically tiling (#7836), preventing annoying overlap and making them easier to use without having to manage positioning. Wait, colorbar overlay you said? You heard it right! This is a new overlay (#7832)that shows a color bar legend, and it works with any layer which uses a colormap. All of this works seamlessly with multiple overlays and even grid mode:
import napari
viewer = napari.Viewer()
# enable grid with stride 2 to get layers split two-by-two
viewer.grid.enabled = True
viewer.grid.stride = 2
# set the scale bar to gridded mode so it appears in each grid box
viewer.scale_bar.visible = True
viewer.scale_bar.gridded = True
layers = viewer.open_sample('napari', 'lily')
# enable color bars
for layer in layers:
layer.colorbar.visible = TrueTask manager will now try to prevent losing unfinished work
We added a new task manager (#8211) which automatically registers any running thread_worker, showing a confirmation dialog if you attempt to close napari while a task is running.
New remove() and pop() methods for Points and Shapes
Points and Shapes can now be easily removed, not just added :P (#8031 and #8072).
A new and updated guide on napari Preferences
Our documentation on the napari Preferences has received a major overhaul! Check it out here!
TODO: does this link work?
- Migrate non-user extras to dependency-groups (#8227)
- [maint] Drop alpha mentions (#8288)
- Auto generate release index with highlights and timeline (docs#838)
New Features
- Add color bar overlay (#7832)
- Tiling canvas overlays (#7836)
- Add
pop()forPointsandShapes(#8072) - add option to define startup script in settings (#8188)
- use
Selectionclass in shapes layer (#8297)
Improvements
- Add
remove()in Shapes and Points (#8031) - Example from SciPy 2025 tutorial; image warping (#8111)
- Add a tasks manager status for plugins actions and napari processes (#8211)
- Use single settings path for all
uv tool run(#8250) - Add "Hide completed" checkbox to Tracks layer for improved visualization (#8253)
- Handle affine layer metadata when splitting RGB images (#8256)
- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number (#8292)
Bug Fixes
- Layer controls widgets refactor (#7355)
- Fix effect of scaling when converting shapes to labels (#8098)
- Fix disappearing points (#8223)
- Fix shape position by using a stable algorithm for sorting z_position (#8232)
- Remove console print action shortcut to prevent collision with command palette shortcut (#8233)
- Do not update thumbnail on Labels empty slice (#8251)
- Handle affine layer metadata when splitting RGB images (#8256)
- fix slice_from_axis to wrap zarr in dask to keep lazy behavior (#8260)
- Add menu-xdg to XPRA containers (#8263)
- Check for zarr in
images_to_stackand use da.stack instead of np.stack (#8267) - Better handling of remote zarr (#8268)
- Use custom logger formatting to most of argument to string (#8305)
Documentation
- Use EffVer (#8243)
- Use shared workflows for build docs (#8308)
- Bump napari-sphinx-theme in deps and constraints (#8315)
- Add funding information to the home page (docs#818)
- Update version switcher for 0.6.4 (docs#826)
- Fix version switcher URL to prevent problems with unversioned pages (docs#827)
- Update documentation for dependencies groups (docs#829)
- Update and restructure the preferences guide (docs#834)
- Fix @jaimergp's last name (docs#835)
- Auto generate release index with highlights and timeline (docs#838)
- Add EffVer to release guide and link to checklist template (docs#839)
- Enable dark mode for website (docs#840)
- Add draft of 0.6.5 release notes (docs#845)
- Add documentation for startup script. (docs#846)
- Add some info about running python scripts via cli (docs#847)
- Add note about workers registration as tasks and close confirmation dialog when closing napari GUI via close button (docs#851)
- Release notes v0.6.5 (docs#853)
Other Pull Requests
- Improve workflow naming by prefixing triage- doc- make- (#8159)
- Move the test that requires
make_napari_viewerfromtest_qt_viewer(#8176) - Bump
superqtmin version (#8212) - Change headless setup for Windows and Linux to
pyvista/setup-headless-display-action(#8216) - Update
coverage,hypothesis,pint,pyopengl,virtualenv,xarray(#8221) - [pre-commit.ci] pre-commit autoupdate (#8222)
- Use global register for units in ScaleBar (#8226)
- Wait until viewer show in the test in
make_napari_viewer(#8228) - Update Qt backends used in tests to test more on Qt6 than Qt5 (#8229)
- Change properties for features usage in the Vectors layer controls (#8231)
- Add cache for pooch on CI for Linux jobs (#8235)
- Temporary increase timeout of macOS jobs (#8237)
- Update
coverage,hypothesis,ipython,matplotlib,pyside6,pytest-rerunfailures,tifffile(#8239) - ci(dependabot): bump the actions group with 6 updates (#8240)
- Make
connect_setattrhandle value conversion for widgets like checkboxes (#8244) - Update
fsspec,hypothesis,pytest,pytest-rerunfailures,xarray([#...


