[{"url":"https://api.github.com/repos/napari/napari/releases/319366920","assets_url":"https://api.github.com/repos/napari/napari/releases/319366920/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/319366920/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.1a6","id":319366920,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84TCScI","tag_name":"v0.7.1a6","target_commitish":"dfa7bf47007548cd26a8d43b64ab1e08f38ecdac","name":"v0.7.1a6","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-05-08T07:29:36Z","updated_at":"2026-05-08T07:44:00Z","published_at":"2026-05-08T07:31:40Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/415082212","id":415082212,"node_id":"RA_kwDOCJ0aI84Yvabk","name":"napari-0.7.1a6-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44755,"digest":"sha256:4f20a3435a3097e3215a80c956238bf975057c5bb7e919f20e5053e1f8c5d4c7","download_count":1,"created_at":"2026-05-08T07:38:19Z","updated_at":"2026-05-08T07:38:19Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415082023","id":415082023,"node_id":"RA_kwDOCJ0aI84YvaYn","name":"napari-0.7.1a6-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":556423564,"digest":"sha256:d16e53d4525aa9d9907216812bac0652021b514561bf79108b7d9e04848f51ec","download_count":1,"created_at":"2026-05-08T07:37:49Z","updated_at":"2026-05-08T07:38:18Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415083883","id":415083883,"node_id":"RA_kwDOCJ0aI84Yva1r","name":"napari-0.7.1a6-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37778,"digest":"sha256:125a1912f05e8950f82fd7ab0377a2eaef6898c6761eb8b82f37605057287167","download_count":1,"created_at":"2026-05-08T07:41:36Z","updated_at":"2026-05-08T07:41:37Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415083734","id":415083734,"node_id":"RA_kwDOCJ0aI84YvazW","name":"napari-0.7.1a6-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":408239449,"digest":"sha256:30695832a2f2696d859751f5b6b6f93e3e9d46c60061e3ac390451e872d1074f","download_count":1,"created_at":"2026-05-08T07:41:21Z","updated_at":"2026-05-08T07:41:36Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415085571","id":415085571,"node_id":"RA_kwDOCJ0aI84YvbQD","name":"napari-0.7.1a6-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37207,"digest":"sha256:17f99e969dcaffc67dd1ee2a5a2458561e408d7e25ee15701546007064d3c138","download_count":1,"created_at":"2026-05-08T07:44:00Z","updated_at":"2026-05-08T07:44:00Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415085433","id":415085433,"node_id":"RA_kwDOCJ0aI84YvbN5","name":"napari-0.7.1a6-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":437104998,"digest":"sha256:31906f36fc91d7299f1b741fdfec6533ce2332497b60734a1eaa62d66db19379","download_count":1,"created_at":"2026-05-08T07:43:44Z","updated_at":"2026-05-08T07:43:59Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415078830","id":415078830,"node_id":"RA_kwDOCJ0aI84YvZmu","name":"napari-0.7.1a6-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3483014,"digest":"sha256:e77e07db556d65b4af3aa006f45c7b157729d7db2b5835ed32683e879ee1d755","download_count":2,"created_at":"2026-05-08T07:31:39Z","updated_at":"2026-05-08T07:31:39Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415082649","id":415082649,"node_id":"RA_kwDOCJ0aI84YvaiZ","name":"napari-0.7.1a6-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":555220248,"digest":"sha256:ba34de500f930c0a654942d640fdc40f04124779ad88f3954691387a8fb2b13b","download_count":18,"created_at":"2026-05-08T07:39:24Z","updated_at":"2026-05-08T07:39:40Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415082789","id":415082789,"node_id":"RA_kwDOCJ0aI84Yvakl","name":"napari-0.7.1a6-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34305,"digest":"sha256:00cda39202324332bec23a7afd1f8c03edd0587bf19fb0d36eab21d8c48f644d","download_count":1,"created_at":"2026-05-08T07:39:41Z","updated_at":"2026-05-08T07:39:41Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/415078835","id":415078835,"node_id":"RA_kwDOCJ0aI84YvZmz","name":"napari-0.7.1a6.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/x-gtar","state":"uploaded","size":3101537,"digest":"sha256:90946c18251b54e318a7d9abde24fe46f81cb916041d5dc9237e182abdc04801","download_count":2,"created_at":"2026-05-08T07:31:39Z","updated_at":"2026-05-08T07:31:39Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a6/napari-0.7.1a6.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.1a6","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.1a6","body":"# napari 0.7.1\n⚠️ *Note: these release notes are still in draft while 0.7.1a1 is in prerelease testing.* ⚠️\n\n*Thu, May 14, 2026*\n\nWe're happy to announce the release of napari 0.7.1!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\n- Add points layer face and border colorbar ([#8624](https://github.com/napari/napari/pull/8624))\n\n## New Features\n\n- Add points layer face and border colorbar ([#8624](https://github.com/napari/napari/pull/8624))\n\n## Improvements\n\n- Add handler for show message when napari fails to import ([#8609](https://github.com/napari/napari/pull/8609))\n- Add example driving computation from gui ([#8658](https://github.com/napari/napari/pull/8658))\n- Example: Enhance theme sample widget with theme colors, widgets ([#8662](https://github.com/napari/napari/pull/8662))\n- Do not connect to children events of EventedDict items if there is no callback ([#8673](https://github.com/napari/napari/pull/8673))\n- ENH: For multiscale 2d: store materialized thumbnail_level ([#8715](https://github.com/napari/napari/pull/8715))\n- Canvas based font size ([#8770](https://github.com/napari/napari/pull/8770))\n- Enh, minor, builtins: use urllib (and defer) instead of requests if reading a remote script path ([#8785](https://github.com/napari/napari/pull/8785))\n- Perf: Defer importing scipy.spatial ([#8789](https://github.com/napari/napari/pull/8789))\n- Revert the switch from Welcome widget to Welcome overlay from #8117 ([#8793](https://github.com/napari/napari/pull/8793))\n- Add handler for show message when napari fails to import v2 ([#8803](https://github.com/napari/napari/pull/8803))\n- Update text in mac installer to improve UX ([#8806](https://github.com/napari/napari/pull/8806))\n- Fix: Use Python's tokenize script decoding for builtin reader ([#8838](https://github.com/napari/napari/pull/8838))\n- Add note for user how to reset the reader preference ([#8848](https://github.com/napari/napari/pull/8848))\n- Ensure all napari and plugin commands use . instead of : ([#8883](https://github.com/napari/napari/pull/8883))\n- Improve dask check to support more dask-backed array types ([#8896](https://github.com/napari/napari/pull/8896))\n- Fix floating widgets and use custom title bar in all cases ([#8898](https://github.com/napari/napari/pull/8898))\n- Set pixel as default scalebar unit ([#8900](https://github.com/napari/napari/pull/8900))\n- Turn off contrast/color controls when surface has `vertex_colors` ([#8909](https://github.com/napari/napari/pull/8909))\n- Actually use theme type from npe contrib ([#8915](https://github.com/napari/napari/pull/8915))\n- Do not add a new colormap if one already exists in napari ([#8924](https://github.com/napari/napari/pull/8924))\n- Improve sizing of dims ordering popup ([#8952](https://github.com/napari/napari/pull/8952))\n\n## Performance\n\n- ENH: For multiscale 2d: store materialized thumbnail_level ([#8715](https://github.com/napari/napari/pull/8715))\n- Enh, minor, builtins: use urllib (and defer) instead of requests if reading a remote script path ([#8785](https://github.com/napari/napari/pull/8785))\n- Perf: Defer importing scipy.spatial ([#8789](https://github.com/napari/napari/pull/8789))\n- Revert the switch from Welcome widget to Welcome overlay from #8117 ([#8793](https://github.com/napari/napari/pull/8793))\n- Improve dask check to support more dask-backed array types ([#8896](https://github.com/napari/napari/pull/8896))\n- Use pep562 to defer AVAILABLE_LABELS_COLORMAPS which imports skimage.color -> scipy.linalg ([#8903](https://github.com/napari/napari/pull/8903))\n\n## Bug Fixes\n\n- fix: clims for non-numpy arrays with out-of-view translate ([#8756](https://github.com/napari/napari/pull/8756))\n- Fix TypeError with anisotropic data in 3D ray intersections ([#8812](https://github.com/napari/napari/pull/8812))\n- Reuse QMarginSlidersPopup between rightclicks ([#8819](https://github.com/napari/napari/pull/8819))\n- Fix: Use Python's tokenize script decoding for builtin reader ([#8838](https://github.com/napari/napari/pull/8838))\n- Fix: Blocks dims slider widget creation feedback to dims model ([#8840](https://github.com/napari/napari/pull/8840))\n- Fix: play button loop mode duplication ([#8841](https://github.com/napari/napari/pull/8841))\n- Improve dask check to support more dask-backed array types ([#8896](https://github.com/napari/napari/pull/8896))\n- Fix floating widgets and use custom title bar in all cases ([#8898](https://github.com/napari/napari/pull/8898))\n- Wrap Labels multiscale data in MultiScaleData object in setter ([#8922](https://github.com/napari/napari/pull/8922))\n- Fix Labels show_selected_label being silently dropped after color shuffle ([#8947](https://github.com/napari/napari/pull/8947))\n\n## Documentation\n\n- Fix typo in 0.7.0 release notes ([docs#967](https://github.com/napari/docs/pull/967))\n- Remove draft note from 0.7.0 release notes. ([docs#968](https://github.com/napari/docs/pull/968))\n- Reorganize cards in homepage ([docs#970](https://github.com/napari/docs/pull/970))\n- Rename \"latest\" version switch to \"dev\" ([docs#971](https://github.com/napari/docs/pull/971))\n- Use stable version for dev docs bundle links ([docs#973](https://github.com/napari/docs/pull/973))\n- Remove mention of unmaintained plugin in quick start ([docs#976](https://github.com/napari/docs/pull/976))\n- Rename navbar entries (API and Contribute) ([docs#978](https://github.com/napari/docs/pull/978))\n- Update team page ([docs#980](https://github.com/napari/docs/pull/980))\n- Add \"Edit on Github\" to secondary sidebar ([docs#982](https://github.com/napari/docs/pull/982))\n- Add deprecation warning section in contributing guide ([docs#984](https://github.com/napari/docs/pull/984))\n- Enable search as you type and remove sidebar search ([docs#989](https://github.com/napari/docs/pull/989))\n- Use flexible search field for navbar ([docs#991](https://github.com/napari/docs/pull/991))\n- Add more info about example tags and _.py ([docs#994](https://github.com/napari/docs/pull/994))\n- Remove napari-hub from navbar and add to sidebar ([docs#995](https://github.com/napari/docs/pull/995))\n- Update deprecation warning guidance to use `FutureWarning` ([docs#997](https://github.com/napari/docs/pull/997))\n- Update Jupyter notebook example screenshot ([docs#1003](https://github.com/napari/docs/pull/1003))\n- Add release notes for 0.7.1a1 ([docs#1009](https://github.com/napari/docs/pull/1009))\n- Example: Enhance theme sample widget with theme colors, widgets ([#8662](https://github.com/napari/napari/pull/8662))\n- Add note to Camera.angles docstring about quaternion normalisation ([#8864](https://github.com/napari/napari/pull/8864))\n- Docs: Bump lower version of napari-sphinx-theme ([#8886](https://github.com/napari/napari/pull/8886))\n- Example: Comparison of messages in napari (notifications, logs, etc) ([#8914](https://github.com/napari/napari/pull/8914))\n- Replace v (shorter) with viewer in the examples ([#8940](https://github.com/napari/napari/pull/8940))\n\n## Other Pull Requests\n\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#975](https://github.com/napari/docs/pull/975))\n- Fix minor typos ([docs#1005](https://github.com/napari/docs/pull/1005))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#1006](https://github.com/napari/docs/pull/1006))\n- Update workflows to python 3.14 ([#8666](https://github.com/napari/napari/pull/8666))\n- Improve typing in qt_dims_slider and clean local functions ([#8683](https://github.com/napari/napari/pull/8683))\n- Drop triangle from 3.14 docs dependencies ([#8703](https://github.com/napari/napari/pull/8703))\n- Use viewer-based caching for font manager ([#8761](https://github.com/napari/napari/pull/8761))\n- Enable `TC003` - typing-only-standard-library-import rule in ruff config ([#8791](https://github.com/napari/napari/pull/8791))\n- Solve \"Could not resolve type hint for required parameter 'qt_viewer'.\" ([#8792](https://github.com/napari/napari/pull/8792))\n- Add app-model to mypy task dependencies and fix errors ([#8794](https://github.com/napari/napari/pull/8794))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `numpy`, `pint`, `pygments`, `pyside6`, `qtconsole`, `superqt` ([#8796](https://github.com/napari/napari/pull/8796))\n- Move from `appdirs` to `platformdirs` ([#8797](https://github.com/napari/napari/pull/8797))\n- [pre-commit.ci] pre-commit autoupdate ([#8800](https://github.com/napari/napari/pull/8800))\n- Enable TC002 ruff rule ([#8804](https://github.com/napari/napari/pull/8804))\n- Fix layerlist_context by move Calable from TYPE_CHECKING block ([#8805](https://github.com/napari/napari/pull/8805))\n- Add zizmor security CI check ([#8811](https://github.com/napari/napari/pull/8811))\n- Ban expensive import in ruff ([#8815](https://github.com/napari/napari/pull/8815))\n- Remove `triangle` from `napari[all]` ([#8824](https://github.com/napari/napari/pull/8824))\n- Add a Linux aarch64 test run (py313, pyqt6) to --pre, PR, and comprehensive tests  ([#8825](https://github.com/napari/napari/pull/8825))\n- [maint] Use ubuntu-slim 1 vCPU runners for simple jobs ([#8826](https://github.com/napari/napari/pull/8826))\n- [maint] Add `bermuda` to testing dependencies ([#8827](https://github.com/napari/napari/pull/8827))\n- [pre-commit.ci] pre-commit autoupdate ([#8831](https://github.com/napari/napari/pull/8831))\n- Add more debug information on fail to import Qt ([#8834](https://github.com/napari/napari/pull/8834))\n- maint: replace `StringEnum` base class with with `StrEnum` ([#8835](https://github.com/napari/napari/pull/8835))\n- Do not import builtins from core (and forbid doing so) ([#8842](https://github.com/napari/napari/pull/8842))\n- ci(dependabot): bump the actions group with 8 updates ([#8844](https://github.com/napari/napari/pull/8844))\n- Remove sentinel leftover from `napari.utils.misc` ([#8846](https://github.com/napari/napari/pull/8846))\n- Fix checking autogenerated type stubs ([#8847](https://github.com/napari/napari/pull/8847))\n- Deprecate str_to_rgb which is unused ([#8849](https://github.com/napari/napari/pull/8849))\n- Revert Citation validator from ubuntu-slim to use ubuntu-latest ([#8851](https://github.com/napari/napari/pull/8851))\n- Deprecate make_default_color_array ([#8852](https://github.com/napari/napari/pull/8852))\n- Dependabot cooldown ([#8853](https://github.com/napari/napari/pull/8853))\n- Test against conda packages using pixi ([#8855](https://github.com/napari/napari/pull/8855))\n- Use bash script instead of docker image for checking PR labels ([#8856](https://github.com/napari/napari/pull/8856))\n- Check untyped defs in labels ([#8861](https://github.com/napari/napari/pull/8861))\n- add jasper-tms to citation ([#8862](https://github.com/napari/napari/pull/8862))\n- Rename tox test step names to include 'qt_backend' ([#8866](https://github.com/napari/napari/pull/8866))\n- Update `hypothesis`, `npe2`, `pandas`, `pillow`, `pydantic-extra-types`, `pyqt6` ([#8868](https://github.com/napari/napari/pull/8868))\n- [pre-commit.ci] pre-commit autoupdate ([#8869](https://github.com/napari/napari/pull/8869))\n- Deprecate color_dict_to_colormap with FutureWarning ([#8871](https://github.com/napari/napari/pull/8871))\n- Update `hypothesis`, `lxml`, `magicgui`, `platformdirs`, `pytest`, `rich`, `virtualenv` ([#8876](https://github.com/napari/napari/pull/8876))\n- Add session type to --info ([#8880](https://github.com/napari/napari/pull/8880))\n- Improve make_release workflow's release steps ([#8882](https://github.com/napari/napari/pull/8882))\n- [pre-commit.ci] pre-commit autoupdate ([#8884](https://github.com/napari/napari/pull/8884))\n- ci(dependabot): bump the actions group with 4 updates ([#8889](https://github.com/napari/napari/pull/8889))\n- Restore ability to push changes to napari-bot/napari repo ([#8891](https://github.com/napari/napari/pull/8891))\n- Checkout only citation.cff in milestone checker ([#8892](https://github.com/napari/napari/pull/8892))\n- Use hynek for build wheel ([#8893](https://github.com/napari/napari/pull/8893))\n- Deprecate image_reader_to_layerdata_reader ([#8895](https://github.com/napari/napari/pull/8895))\n- Finish typing bounding box and brush circle overlays ([#8902](https://github.com/napari/napari/pull/8902))\n- Update `hypothesis`, `lxml`, `pydantic`, `pydantic-extra-types`, `virtualenv`, `xarray` ([#8906](https://github.com/napari/napari/pull/8906))\n- [pre-commit.ci] pre-commit autoupdate ([#8908](https://github.com/napari/napari/pull/8908))\n- Update `certifi`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pydantic-settings` ([#8920](https://github.com/napari/napari/pull/8920))\n- [pre-commit.ci] pre-commit autoupdate ([#8923](https://github.com/napari/napari/pull/8923))\n- Scalar base data setter ([#8925](https://github.com/napari/napari/pull/8925))\n- Instead of checking if milestone is added, add the milestone on merge ([#8926](https://github.com/napari/napari/pull/8926))\n- Don't use random floats for image layer data in screenshot tests ([#8945](https://github.com/napari/napari/pull/8945))\n- [pre-commit.ci] pre-commit autoupdate ([#8951](https://github.com/napari/napari/pull/8951))\n- Fix auto milestone workflow ([#8954](https://github.com/napari/napari/pull/8954))\n- Explicitly pass the repository name in command setting milestone ([#8955](https://github.com/napari/napari/pull/8955))\n\n\n## 17 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Aniket](https://github.com/napari/napari/commits?author=Aniketsy) ([docs](https://github.com/napari/docs/commits?author=Aniketsy))  - @Aniketsy +\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) - @willingc\n- [Caroline Malin-Mayor](https://github.com/napari/napari/commits?author=cmalinmayor) - @cmalinmayor +\n- [Constantin Aronssohn](https://github.com/napari/docs/commits?author=cnstt) - @cnstt\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo\n- [Kabilar Gunalan](https://github.com/napari/docs/commits?author=kabilar) - @kabilar\n- [LiudengZhang](https://github.com/napari/napari/commits?author=LiudengZhang) - @LiudengZhang\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Newstein](https://github.com/napari/napari/commits?author=pnewstein) - @pnewstein +\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wulin Teo](https://github.com/napari/napari/commits?author=wulinteousa2-hash) - @wulinteousa2-hash +\n\n## 18 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Aniket](https://github.com/napari/napari/commits?author=Aniketsy) ([docs](https://github.com/napari/docs/commits?author=Aniketsy))  - @Aniketsy +\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) - @willingc\n- [Caroline Malin-Mayor](https://github.com/napari/napari/commits?author=cmalinmayor) - @cmalinmayor +\n- [Constantin Aronssohn](https://github.com/napari/docs/commits?author=cnstt) - @cnstt\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) - @dstansby\n- [Davin Potts](https://github.com/napari/docs/commits?author=applio) - @applio\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [github-advanced-security[bot]](https://github.com/napari/docs/commits?author=github-advanced-security[bot]) - @github-advanced-security[bot]\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Lucien Hinderling](https://github.com/napari/docs/commits?author=hinderling) - @hinderling\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wulin Teo](https://github.com/napari/napari/commits?author=wulinteousa2-hash) - @wulinteousa2-hash +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/319366920/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"mentions_count":20},{"url":"https://api.github.com/repos/napari/napari/releases/318578792","assets_url":"https://api.github.com/repos/napari/napari/releases/318578792/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/318578792/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.1a1","id":318578792,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84S_SBo","tag_name":"v0.7.1a1","target_commitish":"dd30d7c2fe8f01fa95b73bc22ad47d477586bba9","name":"v0.7.1a1","draft":false,"immutable":false,"prerelease":false,"created_at":"2026-05-05T11:49:53Z","updated_at":"2026-05-06T19:19:58Z","published_at":"2026-05-06T19:07:28Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/413768454","id":413768454,"node_id":"RA_kwDOCJ0aI84YqZsG","name":"napari-0.7.1a1-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44755,"digest":"sha256:9b83ff44ada950ea58ec034033f7707f585f7eea8626718d0efd56db10ea2da2","download_count":1,"created_at":"2026-05-06T19:13:29Z","updated_at":"2026-05-06T19:13:29Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413768271","id":413768271,"node_id":"RA_kwDOCJ0aI84YqZpP","name":"napari-0.7.1a1-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":556433804,"digest":"sha256:3df15b139a367fbff575bc106f1a6aba04bed132cf3e568a0d9b3a9d584862d2","download_count":1,"created_at":"2026-05-06T19:13:11Z","updated_at":"2026-05-06T19:13:29Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413770113","id":413770113,"node_id":"RA_kwDOCJ0aI84YqaGB","name":"napari-0.7.1a1-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37778,"digest":"sha256:f6103f8a7361811cf503f3513e9f72893475aa8406073e0f06837de26cc13c32","download_count":1,"created_at":"2026-05-06T19:16:03Z","updated_at":"2026-05-06T19:16:03Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413769948","id":413769948,"node_id":"RA_kwDOCJ0aI84YqaDc","name":"napari-0.7.1a1-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":408217849,"digest":"sha256:76e26b494bedb30d8652c1f32f63fe6cf109554be082d7278f6614a77695d048","download_count":1,"created_at":"2026-05-06T19:15:45Z","updated_at":"2026-05-06T19:16:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413772939","id":413772939,"node_id":"RA_kwDOCJ0aI84YqayL","name":"napari-0.7.1a1-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37207,"digest":"sha256:989d6e7de36e9761f3f35ab146fd99464a4fa215c6e06ead6b22da994ac377fd","download_count":1,"created_at":"2026-05-06T19:19:58Z","updated_at":"2026-05-06T19:19:58Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413772592","id":413772592,"node_id":"RA_kwDOCJ0aI84Yqasw","name":"napari-0.7.1a1-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":437168686,"digest":"sha256:9542271830ae22dbadc1cbed65a6148240597be4bc4f82c907002e58146056c6","download_count":1,"created_at":"2026-05-06T19:19:36Z","updated_at":"2026-05-06T19:19:57Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413764960","id":413764960,"node_id":"RA_kwDOCJ0aI84YqY1g","name":"napari-0.7.1a1-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3482004,"digest":"sha256:ece039838c83db5c8154593ac8dc89aad55044511b3ad0225e5e1f010400fe2d","download_count":2,"created_at":"2026-05-06T19:07:27Z","updated_at":"2026-05-06T19:07:28Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413769667","id":413769667,"node_id":"RA_kwDOCJ0aI84YqZ_D","name":"napari-0.7.1a1-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":555795960,"digest":"sha256:21291b588a5c06f7e1bc79fd4c2d2bd8a6af2c532e79503f28f0ca9a56cad6b7","download_count":9,"created_at":"2026-05-06T19:15:26Z","updated_at":"2026-05-06T19:15:45Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413769956","id":413769956,"node_id":"RA_kwDOCJ0aI84YqaDk","name":"napari-0.7.1a1-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34305,"digest":"sha256:8c38e015c54afef8a0bf905c9f20dee1849dd355cfb5370856a7896f81b24122","download_count":1,"created_at":"2026-05-06T19:15:46Z","updated_at":"2026-05-06T19:15:46Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/413764959","id":413764959,"node_id":"RA_kwDOCJ0aI84YqY1f","name":"napari-0.7.1a1.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3100778,"digest":"sha256:feb1330741b7b4b25afd896da96e4807702ee835a9866ce626f55319df08d110","download_count":2,"created_at":"2026-05-06T19:07:27Z","updated_at":"2026-05-06T19:07:28Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.1a1/napari-0.7.1a1.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.1a1","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.1a1","body":"# napari 0.7.1\n⚠️ *Note: these release notes are still in draft while 0.7.1a1 is in prerelease testing.* ⚠️\n\n*Thu, May 14, 2026*\n\nWe're happy to announce the release of napari 0.7.1!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\n- Add points layer face and border colorbar ([#8624](https://github.com/napari/napari/pull/8624))\n\n## New Features\n\n- Add points layer face and border colorbar ([#8624](https://github.com/napari/napari/pull/8624))\n\n## Improvements\n\n- Add handler for show message when napari fails to import ([#8609](https://github.com/napari/napari/pull/8609))\n- Add example driving computation from gui ([#8658](https://github.com/napari/napari/pull/8658))\n- Example: Enhance theme sample widget with theme colors, widgets ([#8662](https://github.com/napari/napari/pull/8662))\n- Do not connect to children events of EventedDict items if there is no callback ([#8673](https://github.com/napari/napari/pull/8673))\n- ENH: For multiscale 2d: store materialized thumbnail_level ([#8715](https://github.com/napari/napari/pull/8715))\n- Canvas based font size ([#8770](https://github.com/napari/napari/pull/8770))\n- Enh, minor, builtins: use urllib (and defer) instead of requests if reading a remote script path ([#8785](https://github.com/napari/napari/pull/8785))\n- Perf: Defer importing scipy.spatial ([#8789](https://github.com/napari/napari/pull/8789))\n- Revert the switch from Welcome widget to Welcome overlay from #8117 ([#8793](https://github.com/napari/napari/pull/8793))\n- Add handler for show message when napari fails to import v2 ([#8803](https://github.com/napari/napari/pull/8803))\n- Update text in mac installer to improve UX ([#8806](https://github.com/napari/napari/pull/8806))\n- Fix: Use Python's tokenize script decoding for builtin reader ([#8838](https://github.com/napari/napari/pull/8838))\n- Add note for user how to reset the reader preference ([#8848](https://github.com/napari/napari/pull/8848))\n- Ensure all napari and plugin commands use . instead of : ([#8883](https://github.com/napari/napari/pull/8883))\n- Improve dask check to support more dask-backed array types ([#8896](https://github.com/napari/napari/pull/8896))\n- Fix floating widgets and use custom title bar in all cases ([#8898](https://github.com/napari/napari/pull/8898))\n- Set pixel as default scalebar unit ([#8900](https://github.com/napari/napari/pull/8900))\n- Turn off contrast/color controls when surface has `vertex_colors` ([#8909](https://github.com/napari/napari/pull/8909))\n- Actually use theme type from npe contrib ([#8915](https://github.com/napari/napari/pull/8915))\n- Do not add a new colormap if one already exists in napari ([#8924](https://github.com/napari/napari/pull/8924))\n- Improve sizing of dims ordering popup ([#8952](https://github.com/napari/napari/pull/8952))\n\n## Performance\n\n- ENH: For multiscale 2d: store materialized thumbnail_level ([#8715](https://github.com/napari/napari/pull/8715))\n- Enh, minor, builtins: use urllib (and defer) instead of requests if reading a remote script path ([#8785](https://github.com/napari/napari/pull/8785))\n- Perf: Defer importing scipy.spatial ([#8789](https://github.com/napari/napari/pull/8789))\n- Revert the switch from Welcome widget to Welcome overlay from #8117 ([#8793](https://github.com/napari/napari/pull/8793))\n- Improve dask check to support more dask-backed array types ([#8896](https://github.com/napari/napari/pull/8896))\n- Use pep562 to defer AVAILABLE_LABELS_COLORMAPS which imports skimage.color -> scipy.linalg ([#8903](https://github.com/napari/napari/pull/8903))\n\n## Bug Fixes\n\n- fix: clims for non-numpy arrays with out-of-view translate ([#8756](https://github.com/napari/napari/pull/8756))\n- Fix TypeError with anisotropic data in 3D ray intersections ([#8812](https://github.com/napari/napari/pull/8812))\n- Reuse QMarginSlidersPopup between rightclicks ([#8819](https://github.com/napari/napari/pull/8819))\n- Fix: Use Python's tokenize script decoding for builtin reader ([#8838](https://github.com/napari/napari/pull/8838))\n- Fix: Blocks dims slider widget creation feedback to dims model ([#8840](https://github.com/napari/napari/pull/8840))\n- Fix: play button loop mode duplication ([#8841](https://github.com/napari/napari/pull/8841))\n- Improve dask check to support more dask-backed array types ([#8896](https://github.com/napari/napari/pull/8896))\n- Fix floating widgets and use custom title bar in all cases ([#8898](https://github.com/napari/napari/pull/8898))\n- Wrap Labels multiscale data in MultiScaleData object in setter ([#8922](https://github.com/napari/napari/pull/8922))\n- Fix Labels show_selected_label being silently dropped after color shuffle ([#8947](https://github.com/napari/napari/pull/8947))\n\n## Documentation\n\n- Fix typo in 0.7.0 release notes ([docs#967](https://github.com/napari/docs/pull/967))\n- Remove draft note from 0.7.0 release notes. ([docs#968](https://github.com/napari/docs/pull/968))\n- Reorganize cards in homepage ([docs#970](https://github.com/napari/docs/pull/970))\n- Rename \"latest\" version switch to \"dev\" ([docs#971](https://github.com/napari/docs/pull/971))\n- Use stable version for dev docs bundle links ([docs#973](https://github.com/napari/docs/pull/973))\n- Remove mention of unmaintained plugin in quick start ([docs#976](https://github.com/napari/docs/pull/976))\n- Rename navbar entries (API and Contribute) ([docs#978](https://github.com/napari/docs/pull/978))\n- Update team page ([docs#980](https://github.com/napari/docs/pull/980))\n- Add \"Edit on Github\" to secondary sidebar ([docs#982](https://github.com/napari/docs/pull/982))\n- Add deprecation warning section in contributing guide ([docs#984](https://github.com/napari/docs/pull/984))\n- Enable search as you type and remove sidebar search ([docs#989](https://github.com/napari/docs/pull/989))\n- Use flexible search field for navbar ([docs#991](https://github.com/napari/docs/pull/991))\n- Add more info about example tags and _.py ([docs#994](https://github.com/napari/docs/pull/994))\n- Remove napari-hub from navbar and add to sidebar ([docs#995](https://github.com/napari/docs/pull/995))\n- Update deprecation warning guidance to use `FutureWarning` ([docs#997](https://github.com/napari/docs/pull/997))\n- Update Jupyter notebook example screenshot ([docs#1003](https://github.com/napari/docs/pull/1003))\n- Add release notes for 0.7.1a1 ([docs#1009](https://github.com/napari/docs/pull/1009))\n- Example: Enhance theme sample widget with theme colors, widgets ([#8662](https://github.com/napari/napari/pull/8662))\n- Add note to Camera.angles docstring about quaternion normalisation ([#8864](https://github.com/napari/napari/pull/8864))\n- Docs: Bump lower version of napari-sphinx-theme ([#8886](https://github.com/napari/napari/pull/8886))\n- Example: Comparison of messages in napari (notifications, logs, etc) ([#8914](https://github.com/napari/napari/pull/8914))\n- Replace v (shorter) with viewer in the examples ([#8940](https://github.com/napari/napari/pull/8940))\n\n## Other Pull Requests\n\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#975](https://github.com/napari/docs/pull/975))\n- Fix minor typos ([docs#1005](https://github.com/napari/docs/pull/1005))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#1006](https://github.com/napari/docs/pull/1006))\n- Update workflows to python 3.14 ([#8666](https://github.com/napari/napari/pull/8666))\n- Improve typing in qt_dims_slider and clean local functions ([#8683](https://github.com/napari/napari/pull/8683))\n- Drop triangle from 3.14 docs dependencies ([#8703](https://github.com/napari/napari/pull/8703))\n- Use viewer-based caching for font manager ([#8761](https://github.com/napari/napari/pull/8761))\n- Enable `TC003` - typing-only-standard-library-import rule in ruff config ([#8791](https://github.com/napari/napari/pull/8791))\n- Solve \"Could not resolve type hint for required parameter 'qt_viewer'.\" ([#8792](https://github.com/napari/napari/pull/8792))\n- Add app-model to mypy task dependencies and fix errors ([#8794](https://github.com/napari/napari/pull/8794))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `numpy`, `pint`, `pygments`, `pyside6`, `qtconsole`, `superqt` ([#8796](https://github.com/napari/napari/pull/8796))\n- Move from `appdirs` to `platformdirs` ([#8797](https://github.com/napari/napari/pull/8797))\n- [pre-commit.ci] pre-commit autoupdate ([#8800](https://github.com/napari/napari/pull/8800))\n- Enable TC002 ruff rule ([#8804](https://github.com/napari/napari/pull/8804))\n- Fix layerlist_context by move Calable from TYPE_CHECKING block ([#8805](https://github.com/napari/napari/pull/8805))\n- Add zizmor security CI check ([#8811](https://github.com/napari/napari/pull/8811))\n- Ban expensive import in ruff ([#8815](https://github.com/napari/napari/pull/8815))\n- Remove `triangle` from `napari[all]` ([#8824](https://github.com/napari/napari/pull/8824))\n- Add a Linux aarch64 test run (py313, pyqt6) to --pre, PR, and comprehensive tests  ([#8825](https://github.com/napari/napari/pull/8825))\n- [maint] Use ubuntu-slim 1 vCPU runners for simple jobs ([#8826](https://github.com/napari/napari/pull/8826))\n- [maint] Add `bermuda` to testing dependencies ([#8827](https://github.com/napari/napari/pull/8827))\n- [pre-commit.ci] pre-commit autoupdate ([#8831](https://github.com/napari/napari/pull/8831))\n- Add more debug information on fail to import Qt ([#8834](https://github.com/napari/napari/pull/8834))\n- maint: replace `StringEnum` base class with with `StrEnum` ([#8835](https://github.com/napari/napari/pull/8835))\n- Do not import builtins from core (and forbid doing so) ([#8842](https://github.com/napari/napari/pull/8842))\n- ci(dependabot): bump the actions group with 8 updates ([#8844](https://github.com/napari/napari/pull/8844))\n- Remove sentinel leftover from `napari.utils.misc` ([#8846](https://github.com/napari/napari/pull/8846))\n- Fix checking autogenerated type stubs ([#8847](https://github.com/napari/napari/pull/8847))\n- Deprecate str_to_rgb which is unused ([#8849](https://github.com/napari/napari/pull/8849))\n- Revert Citation validator from ubuntu-slim to use ubuntu-latest ([#8851](https://github.com/napari/napari/pull/8851))\n- Deprecate make_default_color_array ([#8852](https://github.com/napari/napari/pull/8852))\n- Dependabot cooldown ([#8853](https://github.com/napari/napari/pull/8853))\n- Test against conda packages using pixi ([#8855](https://github.com/napari/napari/pull/8855))\n- Use bash script instead of docker image for checking PR labels ([#8856](https://github.com/napari/napari/pull/8856))\n- Check untyped defs in labels ([#8861](https://github.com/napari/napari/pull/8861))\n- add jasper-tms to citation ([#8862](https://github.com/napari/napari/pull/8862))\n- Rename tox test step names to include 'qt_backend' ([#8866](https://github.com/napari/napari/pull/8866))\n- Update `hypothesis`, `npe2`, `pandas`, `pillow`, `pydantic-extra-types`, `pyqt6` ([#8868](https://github.com/napari/napari/pull/8868))\n- [pre-commit.ci] pre-commit autoupdate ([#8869](https://github.com/napari/napari/pull/8869))\n- Deprecate color_dict_to_colormap with FutureWarning ([#8871](https://github.com/napari/napari/pull/8871))\n- Update `hypothesis`, `lxml`, `magicgui`, `platformdirs`, `pytest`, `rich`, `virtualenv` ([#8876](https://github.com/napari/napari/pull/8876))\n- Add session type to --info ([#8880](https://github.com/napari/napari/pull/8880))\n- Improve make_release workflow's release steps ([#8882](https://github.com/napari/napari/pull/8882))\n- [pre-commit.ci] pre-commit autoupdate ([#8884](https://github.com/napari/napari/pull/8884))\n- ci(dependabot): bump the actions group with 4 updates ([#8889](https://github.com/napari/napari/pull/8889))\n- Restore ability to push changes to napari-bot/napari repo ([#8891](https://github.com/napari/napari/pull/8891))\n- Checkout only citation.cff in milestone checker ([#8892](https://github.com/napari/napari/pull/8892))\n- Use hynek for build wheel ([#8893](https://github.com/napari/napari/pull/8893))\n- Deprecate image_reader_to_layerdata_reader ([#8895](https://github.com/napari/napari/pull/8895))\n- Finish typing bounding box and brush circle overlays ([#8902](https://github.com/napari/napari/pull/8902))\n- Update `hypothesis`, `lxml`, `pydantic`, `pydantic-extra-types`, `virtualenv`, `xarray` ([#8906](https://github.com/napari/napari/pull/8906))\n- [pre-commit.ci] pre-commit autoupdate ([#8908](https://github.com/napari/napari/pull/8908))\n- Update `certifi`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pydantic-settings` ([#8920](https://github.com/napari/napari/pull/8920))\n- [pre-commit.ci] pre-commit autoupdate ([#8923](https://github.com/napari/napari/pull/8923))\n- Scalar base data setter ([#8925](https://github.com/napari/napari/pull/8925))\n- Instead of checking if milestone is added, add the milestone on merge ([#8926](https://github.com/napari/napari/pull/8926))\n- Don't use random floats for image layer data in screenshot tests ([#8945](https://github.com/napari/napari/pull/8945))\n- [pre-commit.ci] pre-commit autoupdate ([#8951](https://github.com/napari/napari/pull/8951))\n- Fix auto milestone workflow ([#8954](https://github.com/napari/napari/pull/8954))\n- Explicitly pass the repository name in command setting milestone ([#8955](https://github.com/napari/napari/pull/8955))\n\n\n## 17 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Aniket](https://github.com/napari/napari/commits?author=Aniketsy) ([docs](https://github.com/napari/docs/commits?author=Aniketsy))  - @Aniketsy +\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) - @willingc\n- [Caroline Malin-Mayor](https://github.com/napari/napari/commits?author=cmalinmayor) - @cmalinmayor +\n- [Constantin Aronssohn](https://github.com/napari/docs/commits?author=cnstt) - @cnstt\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo\n- [Kabilar Gunalan](https://github.com/napari/docs/commits?author=kabilar) - @kabilar\n- [LiudengZhang](https://github.com/napari/napari/commits?author=LiudengZhang) - @LiudengZhang\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Newstein](https://github.com/napari/napari/commits?author=pnewstein) - @pnewstein +\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wulin Teo](https://github.com/napari/napari/commits?author=wulinteousa2-hash) - @wulinteousa2-hash +\n\n## 18 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Aniket](https://github.com/napari/napari/commits?author=Aniketsy) ([docs](https://github.com/napari/docs/commits?author=Aniketsy))  - @Aniketsy +\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) - @willingc\n- [Caroline Malin-Mayor](https://github.com/napari/napari/commits?author=cmalinmayor) - @cmalinmayor +\n- [Constantin Aronssohn](https://github.com/napari/docs/commits?author=cnstt) - @cnstt\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) - @dstansby\n- [Davin Potts](https://github.com/napari/docs/commits?author=applio) - @applio\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [github-advanced-security[bot]](https://github.com/napari/docs/commits?author=github-advanced-security[bot]) - @github-advanced-security[bot]\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Lucien Hinderling](https://github.com/napari/docs/commits?author=hinderling) - @hinderling\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wulin Teo](https://github.com/napari/napari/commits?author=wulinteousa2-hash) - @wulinteousa2-hash +\n","mentions_count":20},{"url":"https://api.github.com/repos/napari/napari/releases/300137816","assets_url":"https://api.github.com/repos/napari/napari/releases/300137816/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/300137816/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0","id":300137816,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84R471Y","tag_name":"v0.7.0","target_commitish":"48fcd2f4351845419303b1d3a102dcb5ce6923ab","name":"0.7.0","draft":false,"immutable":false,"prerelease":false,"created_at":"2026-03-23T10:31:17Z","updated_at":"2026-03-25T00:16:17Z","published_at":"2026-03-23T10:32:56Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/379652909","id":379652909,"node_id":"RA_kwDOCJ0aI84WoQst","name":"napari-0.7.0-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44275,"digest":"sha256:1d8377c93b622f7c715b0a55863e64c75f545cf55db6e57442c55693004b1f53","download_count":1,"created_at":"2026-03-23T10:39:26Z","updated_at":"2026-03-23T10:39:26Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379652745","id":379652745,"node_id":"RA_kwDOCJ0aI84WoQqJ","name":"napari-0.7.0-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":572449128,"digest":"sha256:e56a232aa1f674137edbfd85e278ca9083e2ecdcba35100f956d56d17916e220","download_count":168,"created_at":"2026-03-23T10:39:01Z","updated_at":"2026-03-23T10:39:25Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379653760","id":379653760,"node_id":"RA_kwDOCJ0aI84WoQ6A","name":"napari-0.7.0-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37664,"digest":"sha256:e5cd94c5a37d6e0ab5331b762d3f2a60f0fb70f839ae5ca70e583f6470d71a7a","download_count":4,"created_at":"2026-03-23T10:41:18Z","updated_at":"2026-03-23T10:41:18Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379653602","id":379653602,"node_id":"RA_kwDOCJ0aI84WoQ3i","name":"napari-0.7.0-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":443029248,"digest":"sha256:eb8d544ba428447a79803924d4bc7d82b91f78c68aae5925ef1bbe6e4be4b501","download_count":505,"created_at":"2026-03-23T10:41:07Z","updated_at":"2026-03-23T10:41:18Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379655923","id":379655923,"node_id":"RA_kwDOCJ0aI84WoRbz","name":"napari-0.7.0-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37096,"digest":"sha256:bf1a5ffaad908bd975f067feb188e54181f693ba11b728a945023df882e2b4bd","download_count":1,"created_at":"2026-03-23T10:45:38Z","updated_at":"2026-03-23T10:45:38Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379655788","id":379655788,"node_id":"RA_kwDOCJ0aI84WoRZs","name":"napari-0.7.0-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":475136461,"digest":"sha256:891dd5f7fe407e3c2c592bb0d6ac53d124a6ddfb33b3eaa1180a81055b6ec1aa","download_count":106,"created_at":"2026-03-23T10:45:22Z","updated_at":"2026-03-23T10:45:37Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379650058","id":379650058,"node_id":"RA_kwDOCJ0aI84WoQAK","name":"napari-0.7.0-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3490107,"digest":"sha256:026da90683f1f9ebb7b9f19e6ee146ac2d9b3328b3bc691ae7da821d829150fb","download_count":3,"created_at":"2026-03-23T10:32:55Z","updated_at":"2026-03-23T10:32:55Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379653705","id":379653705,"node_id":"RA_kwDOCJ0aI84WoQ5J","name":"napari-0.7.0-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":550723184,"digest":"sha256:9ae58c9e228dc7f6c73d2d8da3f0d9d016eaca4f713111b2238af60779f774a7","download_count":1524,"created_at":"2026-03-23T10:41:12Z","updated_at":"2026-03-23T10:41:34Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379653848","id":379653848,"node_id":"RA_kwDOCJ0aI84WoQ7Y","name":"napari-0.7.0-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34056,"digest":"sha256:1b3e8cc23e1e4aa008ff859150cdab5c627da51bb60bbb8c9784bccff6ee3554","download_count":3,"created_at":"2026-03-23T10:41:35Z","updated_at":"2026-03-23T10:41:35Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/379650056","id":379650056,"node_id":"RA_kwDOCJ0aI84WoQAI","name":"napari-0.7.0.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3103623,"digest":"sha256:9b36ee73bb3d56f34dd4c6486cc331ac5411d5f13f8bd2bc073ce177c48899b7","download_count":3,"created_at":"2026-03-23T10:32:55Z","updated_at":"2026-03-23T10:32:55Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0/napari-0.7.0.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0","body":"# napari 0.7.0\r\n\r\n*Fri, Mar 20, 2026*\r\n\r\nWe're happy to announce the release of napari 0.7.0!\r\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\r\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\r\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\r\nrendering), and the scientific Python stack (numpy, scipy).\r\n\r\nFor more information, examples, and documentation, please visit our website,\r\nhttps://napari.org.\r\n\r\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\r\n\r\n## Highlights\r\n\r\n### Breaking Changes\r\n\r\n#### Transition to npe2 plugin engine 🔌\r\n\r\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\r\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\r\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\r\nwithout auto-conversion.\r\n\r\nIn 0.7.0 this setting is being removed ([PR #8448](https://github.com/napari/napari/pull/8448)),\r\nand plugins will *only* continue to function if\r\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\r\non import-time behaviour may not work as expected. If a plugin is relying on import-time\r\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\r\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\r\n\r\nIf you encounter conversion issues in a plugin you rely on, please contact the\r\nplugin authors to encourage them to migrate their plugin to the npe2 system.\r\n\r\nThis change has been a long time coming, and it's allowed us to remove thousands\r\nof lines of tangled and confusing legacy code. Now that we have, it's unleashed\r\nthe potential for massive improvements to file opening and saving in `napari`,\r\nand exciting new features for our plugin infrastructure. Stay tuned!\r\n\r\nFor more details on this change and how it affects plugins, see the [detailed\r\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\r\nyet npe2-compatible, please see our [npe2 migration\r\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\r\nour [Plugins Zulip chat\r\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\r\ncoming to one of our [community meetings](meeting-schedule).\r\n\r\n#### Negative axis labels? A real positive\r\n\r\nIf you've ever loaded data of mixed dimensionality in napari, like a TYX volume\r\nalongside a YX segmentation, you may have noticed the default axis labels didn't\r\nquite line up:\r\n\r\n| axes   | 0 | 1 | 2 |\r\n|--------|---|---|---|\r\n| volume | 0 | 1 | 2 |\r\n| segmt  |   | 0 | 1 |\r\n\r\nThat's because napari used 0-based indexing for its viewer axis labels, which breaks\r\ndown when layers have different numbers of dimensions. With\r\n[#8565](https://github.com/napari/napari/pull/8565),\r\nviewer axis labels now use negative indexing by default, combining Python's negative indexing\r\nsemantics with NumPy's array broadcasting semantics. The last axis is always `-1`,\r\nthe second-to-last is always `-2`, and so on:\r\n\r\n| axes   | 0  | 1  | 2  |\r\n|--------|----|----|----|\r\n| volume | -3 | -2 | -1 |\r\n| segmt  |    | -2 | -1 |\r\n\r\nThis means axis labels stay consistent as you add or remove layers of different\r\ndimensionality -- axis `-1` is always your last axis. This also fixes\r\na long-standing bug where axis labels could end up duplicated when mixing layers of\r\ndifferent dimensionality ([#6569](https://github.com/napari/napari/issues/6569)).\r\n\r\nYou'll notice this change in the dims slider labels, the axis overlay, and the dims\r\npopup widget. If you already label your axes with your own names (e.g. `z`, `y`, `x`),\r\nnothing's changed. For everyone else, we have consistency at last!\r\n\r\n\r\n#### What's in an angle? The truth! Fixed camera angles 🎥\r\n\r\nIf you've ever set up the camera to take that perfect publication-worthy photo of\r\nyour data (and taken the time to query the camera angles), you may have noticed they seemed... off.\r\nThat's because they were! Very... off. This was due to a long-standing bug in how we calculated our\r\ncamera angles, fueled in part by some arcane vispy axis-swapping tomfoolery, and in part by napari's\r\nstarting position of `viewer.camera.angles = (0, 0, 90)`.\r\n\r\nGood news! With [#8281](https://github.com/napari/napari/pull/8281), angles make sense again. The default camera angles are `(0, 0, 0)`, and they\r\nmove intuitively -- so `viewer.camera.angles = (10, 0, 0)` actually represents a 10 degree\r\nrotation around the [-3rd](#negative-axis-labels-a-real-positive) dimension. What a time to be alive!\r\n\r\nOld versions of napari:\r\n\r\n![Image showing an old version of a napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console.](https://github.com/user-attachments/assets/9ae2040c-36f7-4c4c-8ef8-140202d7ccda)\r\n\r\nNew and sane:\r\n\r\n![Image showing the 0.7.0 napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console. The layer is rotated 10 degrees in its first dimension](https://github.com/user-attachments/assets/6b972b46-5c3c-439a-8b0a-fe8a293224e5)\r\n\r\nAll rotations are now right-handed (counterclockwise when the axis points towards the viewer),\r\nwith automatic sign-flipping for flipped camera views.\r\n\r\nNow for the bad news... After many (and we do [mean](https://github.com/napari/napari/pull/8537)\r\n[**many**](https://github.com/napari/napari/pull/8557)) attempts, we realized we couldn't\r\nprovide legacy conversion functions to get you to and from the original camera angles. Therefore,\r\nthis is a **breaking change**.\r\n\r\nIf you had scripts or notebooks setting up angles for screenshots, or if you've got workshop\r\nmaterials or tutorials with preset angles, they'll need to be updated. Any existing code\r\nusing `viewer.camera.angles = (z, y, x)` will now produce a different view than before.\r\n\r\n#### Limiting `self.events` callbacks\r\n\r\nIn [#8672](https://github.com/napari/napari/pull/8672), we changed how we emit events from\r\nthe parent `self.events` group.\r\n\r\nPreviously, connecting a callback to an `EventedModel`'s top-level event group\r\n(e.g. `model.events.connect(callback)`) would cause that callback to fire multiple times\r\nwhen a single assignment triggered multiple dependent fields. For example:\r\n\r\n```python\r\nclass MyModel(EventedModel):\r\n    a: int\r\n\r\n    @property\r\n    def b(self):\r\n        return self.a * 2\r\n\r\n    @b.setter\r\n    def b(self, value):\r\n        self.a = value // 2\r\n\r\nmodel = MyModel(a=1)\r\nmodel.events.connect(my_callback)\r\n\r\nmodel.a = 4  # previously called my_callback twice (once for 'a', once for 'b')\r\n             # now calls my_callback once\r\n```\r\n\r\nThe callback connected to `model.events` will now be called exactly once, with the event `type`\r\nset to the first changed field and `value` set to its new value. Callbacks connected to specific\r\nfield events (e.g. `model.events.a.connect(...)`) are unaffected and continue to work as before.\r\n\r\nIf you connect to `model.events` directly and relied on receiving one call per dependent field\r\nchange, you will need to connect to the individual field events instead.\r\n\r\n### New features & widgets\r\n\r\n#### What's my metadata? Where's my metadata? `napari-metadata` to the rescue\r\n\r\nWith a lot of work from our community contributor, Carlos Mario Rodriguez Reza\r\n(https://github.com/carlosmariorr), and\r\nour venerable community manager Tim Monko (https://github.com/timmonko),\r\n`napari` now has a metadata viewing and editing plugin\r\nincluded in our `napari[all]` installation and our bundle ([PR #8576](https://github.com/napari/napari/pull/8576)).\r\n\r\n![Screenshot of napari displaying an image of neurons, with the napari-metadata Layer Metadata widget across the bottom of the viewer.](https://raw.githubusercontent.com/napari/napari-metadata/main/docs/images/horizontal-widget.png)\r\n\r\nOpen the `Layer metadata` widget from the `Plugins` menu and you can view File information, and view and edit Axes metadata such as\r\naxis labels, translation and scale! You can also use the widget to copy specified metadata across to other layers.\r\n\r\nCheck out the [README](https://github.com/napari/napari-metadata) for some usage documentation, and feel\r\nfree to open an issue to request new features -- we're actively improving this plugin so, more to come!\r\n\r\n#### (Layer) Features galore\r\n\r\nPrior to 0.7.0, our Features table widget only supported showing individual selected layer features.\r\n\r\nWith [#8189](https://github.com/napari/napari/pull/8189), courtesy of Marcelo Zoccoler\r\n(https://github.com/zoccoler), the widget will display\r\nfeatures of all selected layers! The layer's name is displayed in an additional column, so you\r\nalways know what you're looking at, and you can choose to display only the shared feature columns\r\nacross all layers. Pretty slick!\r\n\r\n![GIF displaying the usage of the features table with multiple selected layers.](https://github.com/user-attachments/assets/e06fd403-ed03-4edd-9192-a4e287d25ff7)\r\n\r\n#### Smarter new layer buttons - inheriting from selected layers\r\n\r\nPrior to 0.7.0, creating a new layer Points, Shapes or Labels layer would give you a layer\r\nwith extent and dimensionality equal to the union of all currently open layers, and with\r\nnone of the other spatial information (scale, units, etc.) inherited.\r\n\r\nNow, with [#8357](https://github.com/napari/napari/pull/8357) and [#8702](https://github.com/napari/napari/pull/8702)\r\nyou can create new Shapes, Points or Labels layer that inherits from a selected layer\r\n(or a combination of selected layers).\r\n\r\n##### Shapes & Points\r\n\r\nIf you have one layer selected, your new `Shapes` or `Points` layer will copy\r\nall spatial information from its ancestor, ready for annotating!\r\nIf you have multiple layers selected, only scale is copied.\r\n\r\nIf you wish to recover the original behavior, select all existing layers before creating your new layer.\r\nDeselecting all layers gives you a layer with only the number of dimensions inherited,\r\nand no other properties.\r\n\r\n##### Labels\r\n\r\n`Labels` layers inherit all spatial information when a single `Image` or `Labels` layer is selected.\r\nWhen multiple `Image` or `Labels` layers are selected, or the selection includes any combination of\r\nother layer types, the new `Labels` layer will span their extent -- take note, this layer could be\r\nhuge!\r\n\r\nThe `Labels` button is disabled when layers are present in the viewer and none are selected.\r\n(You can still create a (512 x 512) `Labels` layer when there are no layers present).\r\n\r\n##### Visual cues\r\n\r\n[#8768](https://github.com/napari/napari/pull/8768) ensures this change is not invisible!\r\nWhen your selection will result in full inheritance of spatial information for the new layer,\r\nthe new layer buttons will be highlighted.\r\nThe highlight color will become dimmer when your selection will result in the new layer only\r\ninheriting the extent of your existing selection. If you're lost\r\nin the inheritance madness, you can also hover over the buttons to get details about the behavior.\r\n\r\n![GIF displaying the highlights on the Shapes, Points and Labels new layer buttons when one or more layers are selected in the layerlist](https://github.com/user-attachments/assets/17361e45-dbca-4770-be11-d74c882eedb5)\r\n\r\nPS -- You can now also create these new layers from the `File -> New Layer` menu!\r\n\r\n#### Better text overalys 🔡\r\n\r\nWith [#8236](https://github.com/napari/napari/pull/8236), we've not only refactored text overlays\r\nso they're easier to implement, but we've also introduced two new long-requested overlays:\r\nthe layer name overlay, and an overlay for the current slice. Together, they make generating\r\npublication-ready figures much easier!\r\n\r\n![Image showing the napari viewer with two layers in grid mode. Each layer has its name displayed in the top left, and the current slice displayed in the bottom right.](https://github.com/user-attachments/assets/3c96b38d-44c1-432b-b294-aa9c0934a553)\r\n\r\nTry it yourself:\r\n\r\n```python\r\nimport napari\r\nv = napari.Viewer()\r\nv.grid.enabled = True\r\nll = v.open_sample('napari', 'cells3d')\r\nfor l in ll:\r\n    l.name_overlay.visible = True\r\nv.scale_bar.visible = True\r\nv.scale_bar.gridded = True\r\nv._overlays['current_slice'].visible = True\r\nv._overlays['current_slice'].gridded = True\r\nv.dims.axis_labels = ['z', 'y', 'x']\r\n```\r\n\r\n**Note**: the `v._overlays` attribute is still private as we're working out the best API.\r\n\r\n### Rendering & display\r\n\r\n#### More pixels to play with - texture tiling\r\n\r\nEver loaded a large 2D image in napari just to zoom in and feel like you're not\r\nreally getting a lot of bang for your pixel bucks? That's because we were\r\ndownsampling images that were too large to send the whole thing to the GPU.\r\n\r\nCourtesy of Guillaume Witz (https://github.com/guiwitz), and his PR for\r\ntexture tiling ([PR #8395](https://github.com/napari/napari/pull/8395)) 2D\r\nimages that exceed OpenGL's maximum texture size will be split into multiple\r\ntiles, each small enough to fit on the GPU.\r\n\r\n![Image with a screenshot of napari 0.6.6 on the left and napari 0.7.0 on the right displaying a DeCAM image of the Milky Way. The image on the left is pixelated, while the image on the right is displayed at full resolution.](https://github.com/user-attachments/assets/d0a115a8-49d5-432c-b561-f29fe9ac8116)\r\n\r\n#### Rendering layers in physical space - units matter!\r\n\r\nIn 0.6.6 and below, units were stored in metadata, but not used for rendering.\r\nAdding two layers that represented the same physical space, but had different\r\nunits, e.g. a layer with `scale=500, units='nm'` and one with `scale=0.5, units='μm'`\r\nwouldn't overlap correctly, even though they should.\r\n\r\nThanks to [#7889](https://github.com/napari/napari/pull/8395), layers with\r\ncompatible units (i.e. those that share the same physical dimension per axis,\r\nlike all spatial), will make use of `units` and `scale` to overlap correctly,\r\nusing the smallest unit as the rendering space.\r\n\r\nUnits can also be set globally on the layer list using `viewer.layers.units = ('nm', 'nm')`,\r\nforcing layers to be rendered in this space. If a new layer is added with more dimensions\r\nthan the current layers, this global override is dropped with a warning.\r\n\r\n#### Points - any size you like 🟣\r\n\r\nOn macOS, the points layer has never been able to reach its full potential, as OpenGL\r\ndrivers limit the size of an individual marker to a certain number of screen pixels.\r\n\r\nWith [#8552](https://github.com/napari/napari/pull/8552) and the release of `vispy v0.16`,\r\nthis long-standing issue has finally been resolved. Across all operating systems, you can\r\nmake your points as big as you want!\r\n\r\nThis change has also propagated to the zoom behaviour on macOS -- points now zoom\r\nproportionally to the data, rather than staying the same size in screen pixels.\r\n\r\nHere's the behaviour pre 0.7.0:\r\n\r\n```{raw} html\r\n<figure>\r\n  <video width=\"100%\" controls autoplay loop muted playsinline> \r\n    <source src=\"../_static/images/points_zoom_066.webm\" type=\"video/webm\" /> \r\n    <source src=\"../_static/images/points_zoom_066.mp4\" type=\"video/mp4\" /> \r\n    <img src=\"../_static/images/points_zoom_066.png\" \r\n      title=\"Your browser does not support the video tag\" \r\n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points stay the same size in screen pixels.\" \r\n    > \r\n  </video> \r\n</figure> \r\n``` \r\n\r\nAnd now:\r\n\r\n```{raw} html\r\n<figure> \r\n  <video width=\"100%\" controls autoplay loop muted playsinline> \r\n    <source src=\"../_static/images/points_zoom_070.webm\" type=\"video/webm\" /> \r\n    <source src=\"../_static/images/points_zoom_070.mp4\" type=\"video/mp4\" /> \r\n    <img src=\"../_static/images/points_zoom_070.png\" \r\n      title=\"Your browser does not support the video tag\" \r\n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points scale proportionally to the data.\" \r\n    > \r\n  </video> \r\n</figure> \r\n```\r\n\r\n### Performance\r\n\r\n#### Grid mode -- bigger, better, faster 📈\r\n\r\nIf you've been playing with our new grid mode since 0.6.5, you\r\nmay have stumbled into performance issues when progressively adding\r\nnew layers to the viewer. Stumble no longer! Our grid mode is now wicked fast and buttery smooth 🧈.\r\n\r\nWe've also fixed some issues with mouse interactions and deleting\r\nlayers, so you can tile to your heart's content. Try it out:\r\n\r\n```py\r\nimport napari\r\n\r\nviewer = napari.Viewer()\r\n\r\n# enable grid with stride 2 to get layers split two-by-two\r\nviewer.grid.enabled = True\r\nviewer.grid.stride = 2\r\n\r\n# set the scale bar to gridded mode so it appears in each grid box\r\nviewer.scale_bar.visible = True\r\nviewer.scale_bar.gridded = True\r\n\r\nlayers = viewer.open_sample('napari', 'lily')\r\n\r\n# enable color bars\r\nfor layer in layers:\r\n    layer.colorbar.visible = True\r\n```\r\n\r\n#### Add & delete layers without delay\r\n\r\n[#8479](https://github.com/napari/napari/pull/8479) and [#8443](https://github.com/napari/napari/pull/8443)\r\nmade a number of improvements to\r\nour layer and overlay clean-up, addressing a number of issues with large numbers of layers\r\nin the viewer - adding them, deleting them, and even closing the viewer is now snappy\r\nand smooth!\r\n\r\n#### Shapes layers -- select, zoom, delete, repeat\r\n\r\nIf you've ever tried working with thousands of shapes in napari, you'll know\r\nit could get... painful. Selecting 10,000 shapes with a box took over 50 seconds,\r\ndeleting 5,000 shapes took over a minute, and zooming with shapes selected\r\nwould lock up the viewer entirely. Not anymore!\r\n\r\n0.7.0 brings a flurry of performance improvements:\r\n\r\n- Box selection now uses bounding boxes and vectorized intersection tests,\r\n  delivering a more than 100x speedup ([#8378](https://github.com/napari/napari/pull/8378)).\r\n  Selecting 10,000 shapes goes from >50s to ~0.3s.\r\n- Batch deletion replaces one-by-one removal for another 100x speedup\r\n  ([#8375](https://github.com/napari/napari/pull/8375))! Deleting 50,000 shapes\r\n  now takes under half a second.\r\n- Outline computation is batched and cached, so zooming and panning with\r\n  selected shapes no longer blocks\r\n  ([#8403](https://github.com/napari/napari/pull/8403),\r\n  [#8536](https://github.com/napari/napari/pull/8536)).\r\n- Highlight updates are throttled for large layers, enabling smooth zoom\r\n  even with 200,000+ shapes ([#8404](https://github.com/napari/napari/pull/8404)).\r\n- Mode switching no longer triggers unnecessary redraws, giving another\r\n  ~3x speedup when many shapes are selected\r\n  ([#8551](https://github.com/napari/napari/pull/8551)).\r\n\r\nBeware: there's still more to do, because drawing and drag-moving large selections\r\nremain slow!\r\n\r\n#### Multiscale -- less to update, more to celebrate\r\n\r\nPR [#8678](https://github.com/napari/napari/pull/8678) introduced a small change\r\nwith a big effect! Now, zooming in (and panning while zoomed in), will only trigger\r\na data refresh if the multiscale level has changed **or** if the new view falls outside\r\nof already loaded data.\r\n\r\n#### Delete the launch codes -- no more macOS hacks on launch\r\n\r\nIn 0.6.6 and below, we had some macOS specific launch code that skirted around some\r\nissues (which are now no longer relevant), and hackily \"relaunched\" napari to make\r\nsure the application name was correct.\r\n\r\nThis code added up to a whole second to our launch time, as well as being potentially\r\nproblematic for some users. PR [#8705](https://github.com/napari/napari/pull/8705)\r\nremoved this code, making our start-up a little less hacky and a little more snappy.\r\nThe downside is that when launching napari on macOS, the app name may be listed as\r\nPython, instead of napari. We think the trade-off is worth it.\r\n\r\n\r\n### Infrastructure & dependencies\r\n\r\nA couple of notes on big changes in our dependencies:\r\n\r\n- With #8509 we improved our support for `pydantic v2`, allowing us to enable support for Python 3.14!\r\nThis brings us one step closer to fully adopting `psygnal` as our event library.\r\n- In [#8450](https://github.com/napari/napari/pull/8450) we dropped support for PySide2. If you\r\nwere using napari with PySide for your Qt bindings, you'll need to upgrade to PySide6. Good news\r\nis that PySide6 is looking pretty stable, while PySide2 had some compatibility issues with numpy2,\r\nand had to be built from source for Python 3.11+.\r\n- In ([#8665](https://github.com/napari/napari/pull/8665)) we updated the default qt\r\nbinding to PyQt6. PyQt6 will now be installed with `napari[all]` installations. Windows users\r\nshould see improvements to their display with better support for fractional scaling!\r\n- In [#8338](https://github.com/napari/napari/pull/8338) we replaced `numpydoc` with `docstring_parser`\r\nfor parsing our docstrings. This will be a pretty invisible change from a user's perspective, but\r\nit saves more than 50MB of disk space for a napari install!\r\n\r\n## New Features\r\n\r\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\r\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\r\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\r\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\r\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\r\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\r\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\r\n\r\n## Improvements\r\n\r\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\r\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\r\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\r\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\r\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\r\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\r\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\r\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\r\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\r\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\r\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\r\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\r\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\r\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\r\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\r\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\r\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\r\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\r\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\r\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\r\n- Don't warn user when a Zarr array with channel axis is passed ([#8559](https://github.com/napari/napari/pull/8559))\r\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\r\n- Add colorbar & bounding box overlays to Layers menu ([#8611](https://github.com/napari/napari/pull/8611))\r\n- Add visual for new points/shapes button on selected layers ([#8649](https://github.com/napari/napari/pull/8649))\r\n- Limit `self.events` callbacks trigger to only once per assignment ([#8672](https://github.com/napari/napari/pull/8672))\r\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\r\n- Warn users when features data looks categorical ([#8685](https://github.com/napari/napari/pull/8685))\r\n- Fix type annotation in viewer keybindings, use QtViewer for console ([#8694](https://github.com/napari/napari/pull/8694))\r\n- Do not inherit scale for points and shapes if no layer is selected ([#8701](https://github.com/napari/napari/pull/8701))\r\n- Inherit spatial information for new `Labels` layers when only one other `Labels` or `Image` layer is selected ([#8702](https://github.com/napari/napari/pull/8702))\r\n- [UI, UX] Make dock widget title bar icons bigger and text more legible ([#8714](https://github.com/napari/napari/pull/8714))\r\n- Perf, enh: defer dask.array loading by moving import into functions ([#8720](https://github.com/napari/napari/pull/8720))\r\n- Change look of new layer buttons to mark that there are 3 modes ([#8723](https://github.com/napari/napari/pull/8723))\r\n- If path arg is passed to CLI napari, don't show welcome overlay ([#8725](https://github.com/napari/napari/pull/8725))\r\n- UI: Add keybinding for Image layer reset_contrast_limits ([#8730](https://github.com/napari/napari/pull/8730))\r\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\r\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\r\n- Use capitalized name of source layer type when adding layer ([#8740](https://github.com/napari/napari/pull/8740))\r\n- Add scale example for anisotropic 3D data ([#8742](https://github.com/napari/napari/pull/8742))\r\n- Raise FileNotFoundError early when opening nonexistent paths ([#8747](https://github.com/napari/napari/pull/8747))\r\n- Ensure that layers are unlinked after deletion from layerlist  ([#8749](https://github.com/napari/napari/pull/8749))\r\n- Use custom Font manager to use Qt discovery mechanism ([#8751](https://github.com/napari/napari/pull/8751))\r\n- Restyle new_layer button creation state visuals ([#8768](https://github.com/napari/napari/pull/8768))\r\n- Disable opacity slider for multiplicative blending ([#8776](https://github.com/napari/napari/pull/8776))\r\n\r\n## Performance\r\n\r\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\r\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\r\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\r\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\r\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\r\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\r\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\r\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\r\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\r\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\r\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\r\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\r\n- Low hanging Labels painting performance improvement ([#8592](https://github.com/napari/napari/pull/8592))\r\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\r\n- [Perf] Remove napari splash screen ([#8686](https://github.com/napari/napari/pull/8686))\r\n- [Maint] Remove all macOS specific launch code as it's out-dated or problematic (re-running with symlink) ([#8705](https://github.com/napari/napari/pull/8705))\r\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\r\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\r\n\r\n## Bug Fixes\r\n\r\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\r\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\r\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\r\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\r\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\r\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\r\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\r\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\r\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\r\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\r\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\r\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\r\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\r\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\r\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\r\n- Fix dim order of rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\r\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\r\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\r\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\r\n- Close proper window on Ctrl+W ([#8548](https://github.com/napari/napari/pull/8548))\r\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\r\n- Enable instanced markers if available. ([#8552](https://github.com/napari/napari/pull/8552))\r\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\r\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\r\n- Account for tile2data in the Labels polygon overlay ([#8563](https://github.com/napari/napari/pull/8563))\r\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\r\n- Stop welcome screen time on hiding of QtWiewer ([#8585](https://github.com/napari/napari/pull/8585))\r\n- Fix Labels layer controls contiguous checkbox to initialize to the layer state ([#8594](https://github.com/napari/napari/pull/8594))\r\n- Proper cleanup and reuse of existing overlays ([#8610](https://github.com/napari/napari/pull/8610))\r\n- [UI] Update the viewer button tooltips to use the new axis labels (-3, -2, -1) ([#8614](https://github.com/napari/napari/pull/8614))\r\n- Fix scale bar padding ([#8616](https://github.com/napari/napari/pull/8616))\r\n- Fix empty thumbnail ([#8620](https://github.com/napari/napari/pull/8620))\r\n- Reverse overlay tiling order ([#8623](https://github.com/napari/napari/pull/8623))\r\n- Fix welcome screen timer ([#8627](https://github.com/napari/napari/pull/8627))\r\n- Reinitialize welcome screen shortcuts in a less ugly way ([#8634](https://github.com/napari/napari/pull/8634))\r\n- Fix empty points tiny point ([#8639](https://github.com/napari/napari/pull/8639))\r\n- Fix labels of angle order of camera widget ([#8644](https://github.com/napari/napari/pull/8644))\r\n- Add a opaque background Rectangle to Welcome overlay ([#8645](https://github.com/napari/napari/pull/8645))\r\n- Do not start welcome widget timer until QtViewer is visible ([#8652](https://github.com/napari/napari/pull/8652))\r\n- Allow selection in feature table widget with empty features ([#8653](https://github.com/napari/napari/pull/8653))\r\n- Fix event triggering start of welcome screen ([#8660](https://github.com/napari/napari/pull/8660))\r\n- Fix `_disconnect_child_emitters` for `PsygnalModel` dict elements ([#8674](https://github.com/napari/napari/pull/8674))\r\n- Increase minimum version of pyopengl to allow start napari ([#8679](https://github.com/napari/napari/pull/8679))\r\n- Fix colorbar for int/bool dtypes ([#8684](https://github.com/napari/napari/pull/8684))\r\n- Correctly hide welcome screen when layers are present ([#8688](https://github.com/napari/napari/pull/8688))\r\n- Ensure that errors are propagated during async loading ([#8691](https://github.com/napari/napari/pull/8691))\r\n- Fix assign tuple of None to `layer.units` ([#8700](https://github.com/napari/napari/pull/8700))\r\n- Fix error raised when `out_of_slice_display = True` and update highlight ([#8717](https://github.com/napari/napari/pull/8717))\r\n- fix: fix `napari.imshow` return type hint ([#8726](https://github.com/napari/napari/pull/8726))\r\n- Fix harvesting plugins from CLI ([#8728](https://github.com/napari/napari/pull/8728))\r\n- Fix `--plugin` startup args ([#8729](https://github.com/napari/napari/pull/8729))\r\n- Update box and position of text overlay on font size change ([#8759](https://github.com/napari/napari/pull/8759))\r\n- Fix welcome spacing ([#8760](https://github.com/napari/napari/pull/8760))\r\n- Fix: Fire world unit updates after removing layer ([#8772](https://github.com/napari/napari/pull/8772))\r\n- Do not emit warning about units if there is no layer in viewer ([#8779](https://github.com/napari/napari/pull/8779))\r\n- Fix colorbar box offset ([#8780](https://github.com/napari/napari/pull/8780))\r\n- Fix: Qt6 font error on Windows when adding layers or widgets ([#8782](https://github.com/napari/napari/pull/8782))\r\n- Fix: ValidationError in Drag to Zoom with data ndim>2 ([#8784](https://github.com/napari/napari/pull/8784))\r\n- Ensure that visible icon when dialog ask to select plugin to open file ([#8788](https://github.com/napari/napari/pull/8788))\r\n\r\n## Build Tools\r\n\r\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\r\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\r\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\r\n\r\n## Documentation\r\n\r\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\r\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\r\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\r\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\r\n- Adding a new example of a multiplexed immunofluorescent image of a murine heart ([#8680](https://github.com/napari/napari/pull/8680))\r\n- Add sphinxext-rediraffe to docs requirements ([#8690](https://github.com/napari/napari/pull/8690))\r\n- Update examples gallery for 0.7.0 angles ([#8709](https://github.com/napari/napari/pull/8709))\r\n- Add 3D points to add_points_3d example ([#8746](https://github.com/napari/napari/pull/8746))\r\n- Update contributing info and include AI policy and guidelines ([#8754](https://github.com/napari/napari/pull/8754))\r\n- Fix `image_depth.py` example by setting `blending` to `translucent` ([#8764](https://github.com/napari/napari/pull/8764))\r\n- Update units rendering example for docs gallery ([#8767](https://github.com/napari/napari/pull/8767))\r\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\r\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\r\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\r\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\r\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\r\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\r\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\r\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\r\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\r\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\r\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\r\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\r\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\r\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\r\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\r\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\r\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\r\n- Update governance documentation ([docs#911](https://github.com/napari/docs/pull/911))\r\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\r\n- Update display text copy in shapes.md ([docs#914](https://github.com/napari/docs/pull/914))\r\n- Update release notes for 0.7.0a1 ([docs#915](https://github.com/napari/docs/pull/915))\r\n- Simplify titles in App installation instructions ([docs#918](https://github.com/napari/docs/pull/918))\r\n- Remove mention of double click in macOS app instructions ([docs#920](https://github.com/napari/docs/pull/920))\r\n- Update release notes for 0.7.0a2 ([docs#922](https://github.com/napari/docs/pull/922))\r\n- Move code for setting recursion limit ([docs#927](https://github.com/napari/docs/pull/927))\r\n- Update scripts to pydantic v2 ([docs#928](https://github.com/napari/docs/pull/928))\r\n- Remove npe1-related docs ([docs#929](https://github.com/napari/docs/pull/929))\r\n- Add intersphinx mapping for pydantic ([docs#930](https://github.com/napari/docs/pull/930))\r\n- Add policy on LLM contributions based on Zulip's ([docs#932](https://github.com/napari/docs/pull/932))\r\n- Expand on 0.7.0 highlights ([docs#933](https://github.com/napari/docs/pull/933))\r\n- Fix camera angles in handedness guide ([docs#940](https://github.com/napari/docs/pull/940))\r\n- Add guide explaining default axis names ([docs#942](https://github.com/napari/docs/pull/942))\r\n- Add info about new points/shapes layer button behavior ([docs#943](https://github.com/napari/docs/pull/943))\r\n- Add final? 0.7.0 highlights and group by topic ([docs#944](https://github.com/napari/docs/pull/944))\r\n- Add redirects to pages moved in Usage section ([docs#946](https://github.com/napari/docs/pull/946))\r\n- Fix typo in optional-dependencies ([docs#947](https://github.com/napari/docs/pull/947))\r\n- Update references to PyQt5 as default backend to PyQt6 ([docs#950](https://github.com/napari/docs/pull/950))\r\n- Update 0.7.0 highlights for rc0 ([docs#951](https://github.com/napari/docs/pull/951))\r\n- Restructure homepage and add rotating featured examples ([docs#953](https://github.com/napari/docs/pull/953))\r\n- Wayland Debug information ([docs#956](https://github.com/napari/docs/pull/956))\r\n- Update release notes for 0.7.0rc1 ([docs#957](https://github.com/napari/docs/pull/957))\r\n- Refresh installation guide, with focus on bundled app instructions ([docs#958](https://github.com/napari/docs/pull/958))\r\n- Update notes for 0.7.0rc2 ([docs#959](https://github.com/napari/docs/pull/959))\r\n- Update release notes for 0.7.0rc3 ([docs#961](https://github.com/napari/docs/pull/961))\r\n- Cleanup viewers in `open images` guide to fix squashed viewers ([docs#963](https://github.com/napari/docs/pull/963))\r\n\r\n## Other Pull Requests\r\n\r\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\r\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\r\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\r\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\r\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\r\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\r\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\r\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\r\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\r\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\r\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\r\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\r\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\r\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\r\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\r\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\r\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\r\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\r\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\r\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\r\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\r\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\r\n- Maint: Update test_prereleases.yml to also test on pyside6 ([#8470](https://github.com/napari/napari/pull/8470))\r\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\r\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\r\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\r\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\r\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\r\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\r\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\r\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\r\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\r\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\r\n- Migrate EventedModel to pydantic v2 and overlays to psygnal to support python 3.14  ([#8509](https://github.com/napari/napari/pull/8509))\r\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\r\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `jsonschema`, `pandas`, `pillow`, `psutil`, `psygnal`, `pyqt6`, `scikit-image`, `scipy`, `superqt`, `tifffile`, `virtualenv` ([#8518](https://github.com/napari/napari/pull/8518))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\r\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\r\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\r\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\r\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\r\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\r\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\r\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\r\n- Fix typing in layers.points and layers.labels utilities ([#8549](https://github.com/napari/napari/pull/8549))\r\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\r\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\r\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\r\n- Remove npe1 code for reading and writing ([#8579](https://github.com/napari/napari/pull/8579))\r\n- Fix build constraints with circular napari dependency ([#8588](https://github.com/napari/napari/pull/8588))\r\n- Modify sphinx-external-toc version constraint to eliminate warnings ([#8591](https://github.com/napari/napari/pull/8591))\r\n- Switch logo URL used for reader test ([#8596](https://github.com/napari/napari/pull/8596))\r\n- Update `coverage`, `hypothesis`, `rich` ([#8597](https://github.com/napari/napari/pull/8597))\r\n- Move comment trigger of constraints update to a separate workflow ([#8600](https://github.com/napari/napari/pull/8600))\r\n- Fix running benchmarks by label by fix condition ([#8601](https://github.com/napari/napari/pull/8601))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8602](https://github.com/napari/napari/pull/8602))\r\n- ci(dependabot): bump the actions group with 5 updates ([#8613](https://github.com/napari/napari/pull/8613))\r\n- Update `babel`, `dask`, `hypothesis`, `pooch`, `psutil`, `rich`, `tifffile`, `tqdm`, `wrapt`, `xarray` ([#8615](https://github.com/napari/napari/pull/8615))\r\n- Postpone QtViewer deprecation to 0.8.0 ([#8617](https://github.com/napari/napari/pull/8617))\r\n- Remove settings call on import in qt_event_loop ([#8619](https://github.com/napari/napari/pull/8619))\r\n- Remove remaining `npe1` usage ([#8622](https://github.com/napari/napari/pull/8622))\r\n- Add `uv.lock` and leak graphs to gitignore ([#8637](https://github.com/napari/napari/pull/8637))\r\n- Fix pint warning about deprecation of getitem ([#8638](https://github.com/napari/napari/pull/8638))\r\n- Update `coverage`, `fsspec`, `hypothesis`, `ipython`, `pillow`, `pyside6`, `qtconsole`, `tensorstore`, `tqdm`, `wrapt`, `xarray` ([#8641](https://github.com/napari/napari/pull/8641))\r\n- Bump superqt to 0.7.8 ([#8646](https://github.com/napari/napari/pull/8646))\r\n- Bump napari plugin manager ([#8647](https://github.com/napari/napari/pull/8647))\r\n- Add/unify background box for canvas overlays ([#8654](https://github.com/napari/napari/pull/8654))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8655](https://github.com/napari/napari/pull/8655))\r\n- Upload triangulation artifacts if benchmarks fails ([#8664](https://github.com/napari/napari/pull/8664))\r\n- Maint: Have triangle only on py313 and lower ([#8668](https://github.com/napari/napari/pull/8668))\r\n- Update `pydantic-settings`, `tifffile` ([#8671](https://github.com/napari/napari/pull/8671))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8675](https://github.com/napari/napari/pull/8675))\r\n- Add pregenerated data to stabilize shapes triangulation benchmarks ([#8676](https://github.com/napari/napari/pull/8676))\r\n- Update `hypothesis`, `numpy`, `pandas`, `pydantic-settings`, `rich`, `scipy`, `tifffile`, `virtualenv` ([#8692](https://github.com/napari/napari/pull/8692))\r\n- Add python 3.14 classifier to project metadata ([#8693](https://github.com/napari/napari/pull/8693))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8697](https://github.com/napari/napari/pull/8697))\r\n- ci(dependabot): bump the actions group with 3 updates ([#8713](https://github.com/napari/napari/pull/8713))\r\n- Update `certifi`, `tifffile`, `virtualenv` ([#8716](https://github.com/napari/napari/pull/8716))\r\n- Update pyqt5 default references to pyqt6 ([#8732](https://github.com/napari/napari/pull/8732))\r\n- Remove usage of `partial` from `qt_viewer_buttons` ([#8741](https://github.com/napari/napari/pull/8741))\r\n- Update `numpy`, `superqt`, `tifffile`, `wrapt` ([#8748](https://github.com/napari/napari/pull/8748))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8753](https://github.com/napari/napari/pull/8753))\r\n- Update `imageio`, `pydantic-extra-types`, `tensorstore`, `virtualenv` ([#8773](https://github.com/napari/napari/pull/8773))\r\n- [pre-commit.ci] pre-commit autoupdate ([#8774](https://github.com/napari/napari/pull/8774))\r\n- Update plugin manager constraint ([#8781](https://github.com/napari/napari/pull/8781))\r\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\r\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\r\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\r\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\r\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\r\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\r\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\r\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\r\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\r\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\r\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\r\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\r\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\r\n- Prepare on migration to `sphinxcontrib-mermaid` ([docs#923](https://github.com/napari/docs/pull/923))\r\n- ci(dependabot): bump the github-actions group with 2 updates ([docs#925](https://github.com/napari/docs/pull/925))\r\n- ci(dependabot): bump actions/download-artifact from 7.0.0 to 8.0.0 in the github-actions group ([docs#948](https://github.com/napari/docs/pull/948))\r\n\r\n\r\n## 25 authors added to this release (alphabetical)\r\n\r\n(+) denotes first-time contributors 🥳\r\n\r\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\r\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\r\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\r\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\r\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\r\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\r\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\r\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\r\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\r\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\r\n- [LiudengZhang](https://github.com/napari/napari/commits?author=LiudengZhang) - @LiudengZhang +\r\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\r\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\r\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\r\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\r\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\r\n- [Neil Shephard](https://github.com/napari/docs/commits?author=ns-rse) - @ns-rse +\r\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\r\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\r\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\r\n- [Samuel Le Meur-Diebolt](https://github.com/napari/napari/commits?author=sdiebolt) - @sdiebolt +\r\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\r\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\r\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\r\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\r\n\r\n## 25 reviewers added to this release (alphabetical)\r\n\r\n(+) denotes first-time contributors 🥳\r\n\r\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\r\n- [Carlos Mario Rodriguez Reza](https://github.com/napari/docs/commits?author=carlosmariorr) - @carlosmariorr\r\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\r\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\r\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\r\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\r\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\r\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\r\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\r\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\r\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\r\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\r\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\r\n- [Kyle I. S. Harrington](https://github.com/napari/docs/commits?author=kephale) - @kephale\r\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\r\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\r\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\r\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\r\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\r\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\r\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\r\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\r\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\r\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\r\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\r\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/300137816/reactions","total_count":8,"+1":0,"-1":0,"laugh":0,"hooray":3,"confused":0,"heart":0,"rocket":5,"eyes":0},"mentions_count":30},{"url":"https://api.github.com/repos/napari/napari/releases/299659106","assets_url":"https://api.github.com/repos/napari/napari/releases/299659106/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/299659106/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0rc4","id":299659106,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84R3G9i","tag_name":"v0.7.0rc4","target_commitish":"48fcd2f4351845419303b1d3a102dcb5ce6923ab","name":"0.7.0rc4","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-03-21T01:39:55Z","updated_at":"2026-03-21T01:55:01Z","published_at":"2026-03-21T01:43:24Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/378318467","id":378318467,"node_id":"RA_kwDOCJ0aI84WjK6D","name":"napari-0.7.0rc4-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44332,"digest":"sha256:0ab55a5612e83feba92e4ce530743d58ddf3932dabdc053bf2189155edc6685c","download_count":1,"created_at":"2026-03-21T01:48:54Z","updated_at":"2026-03-21T01:48:55Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378318374","id":378318374,"node_id":"RA_kwDOCJ0aI84WjK4m","name":"napari-0.7.0rc4-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":572438859,"digest":"sha256:0648c12e721f162657c76be3cbaea84ea5aacdc5a35195f7eb222303eaf29e44","download_count":7,"created_at":"2026-03-21T01:48:39Z","updated_at":"2026-03-21T01:48:54Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378319863","id":378319863,"node_id":"RA_kwDOCJ0aI84WjLP3","name":"napari-0.7.0rc4-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37721,"digest":"sha256:4b8918944d5d8d759a64fc048b565e57ca60810474034d1e18cd102cf832813a","download_count":1,"created_at":"2026-03-21T01:51:53Z","updated_at":"2026-03-21T01:51:53Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378319678","id":378319678,"node_id":"RA_kwDOCJ0aI84WjLM-","name":"napari-0.7.0rc4-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":443030677,"digest":"sha256:5843d3bccdd086d084928ae0d47a2c68dbabb73316c2b222533837f054fb0fd9","download_count":2,"created_at":"2026-03-21T01:51:36Z","updated_at":"2026-03-21T01:51:52Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378322016","id":378322016,"node_id":"RA_kwDOCJ0aI84WjLxg","name":"napari-0.7.0rc4-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37153,"digest":"sha256:c921d7b6b025d91ea17aeee2a95361458cf9a85c9da97311f9234d975987a831","download_count":1,"created_at":"2026-03-21T01:55:01Z","updated_at":"2026-03-21T01:55:01Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378321795","id":378321795,"node_id":"RA_kwDOCJ0aI84WjLuD","name":"napari-0.7.0rc4-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":475135438,"digest":"sha256:02d8f9065992c1512d2e860e70368e11993007e82d662537947789c4a2d43d6b","download_count":3,"created_at":"2026-03-21T01:54:41Z","updated_at":"2026-03-21T01:54:59Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378315556","id":378315556,"node_id":"RA_kwDOCJ0aI84WjKMk","name":"napari-0.7.0rc4-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3490154,"digest":"sha256:2e133a814076660412e1ed9bfaffe82a6a9a10393fd751bd610e49821e0c114c","download_count":3,"created_at":"2026-03-21T01:43:23Z","updated_at":"2026-03-21T01:43:24Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378319304","id":378319304,"node_id":"RA_kwDOCJ0aI84WjLHI","name":"napari-0.7.0rc4-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":550706648,"digest":"sha256:36fde59c342a0bedea6f5d145a71aec9ff52ed6099a9cfe6b2a28afe5046243a","download_count":4,"created_at":"2026-03-21T01:50:52Z","updated_at":"2026-03-21T01:51:14Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378319522","id":378319522,"node_id":"RA_kwDOCJ0aI84WjLKi","name":"napari-0.7.0rc4-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34113,"digest":"sha256:b13984ec3c5dcaa52376e12caf20118fefef7d018e41a38ad065dbcd4687ebf4","download_count":1,"created_at":"2026-03-21T01:51:15Z","updated_at":"2026-03-21T01:51:15Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/378315557","id":378315557,"node_id":"RA_kwDOCJ0aI84WjKMl","name":"napari-0.7.0rc4.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3103900,"digest":"sha256:aad2d5e2c2e307d25b2fe6899b5aa92d203ad3f5db262e37b2da8122e0cf4a21","download_count":3,"created_at":"2026-03-21T01:43:23Z","updated_at":"2026-03-21T01:43:24Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc4/napari-0.7.0rc4.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0rc4","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0rc4","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Fri, Mar 20, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\n### Breaking Changes\n\n#### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed ([PR #8448](https://github.com/napari/napari/pull/8448)),\nand plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nThis change has been a long time coming, and it's allowed us to remove thousands\nof lines of tangled and confusing legacy code. Now that we have, it's unleashed\nthe potential for massive improvements to file opening and saving in `napari`,\nand exciting new features for our plugin infrastructure. Stay tuned!\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n#### Negative axis labels? A real positive\n\nIf you've ever loaded data of mixed dimensionality in napari, like a TYX volume\nalongside a YX segmentation, you may have noticed the default axis labels didn't\nquite line up:\n\n| axes   | 0 | 1 | 2 |\n|--------|---|---|---|\n| volume | 0 | 1 | 2 |\n| segmt  |   | 0 | 1 |\n\nThat's because napari used 0-based indexing for its viewer axis labels, which breaks\ndown when layers have different numbers of dimensions. With\n[#8565](https://github.com/napari/napari/pull/8565),\nviewer axis labels now use negative indexing by default, combining Python's negative indexing\nsemantics with NumPy's array broadcasting semantics. The last axis is always `-1`,\nthe second-to-last is always `-2`, and so on:\n\n| axes   | 0  | 1  | 2  |\n|--------|----|----|----|\n| volume | -3 | -2 | -1 |\n| segmt  |    | -2 | -1 |\n\nThis means axis labels stay consistent as you add or remove layers of different\ndimensionality -- axis `-1` is always your last axis. This also fixes\na long-standing bug where axis labels could end up duplicated when mixing layers of\ndifferent dimensionality ([#6569](https://github.com/napari/napari/issues/6569)).\n\nYou'll notice this change in the dims slider labels, the axis overlay, and the dims\npopup widget. If you already label your axes with your own names (e.g. `z`, `y`, `x`),\nnothing's changed. For everyone else, we have consistency at last!\n\n\n#### What's in an angle? The truth! Fixed camera angles 🎥\n\nIf you've ever set up the camera to take that perfect publication-worthy photo of\nyour data (and taken the time to query the camera angles), you may have noticed they seemed... off.\nThat's because they were! Very... off. This was due to a long-standing bug in how we calculated our\ncamera angles, fueled in part by some arcane vispy axis-swapping tomfoolery, and in part by napari's\nstarting position of `viewer.camera.angles = (0, 0, 90)`.\n\nGood news! With [#8281](https://github.com/napari/napari/pull/8281), angles make sense again. The default camera angles are `(0, 0, 0)`, and they\nmove intuitively -- so `viewer.camera.angles = (10, 0, 0)` actually represents a 10 degree\nrotation around the [-3rd](#negative-axis-labels-a-real-positive) dimension. What a time to be alive!\n\nOld versions of napari:\n\n![Image showing an old version of a napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console.](https://github.com/user-attachments/assets/9ae2040c-36f7-4c4c-8ef8-140202d7ccda)\n\nNew and sane:\n\n![Image showing the 0.7.0 napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console. The layer is rotated 10 degrees in its first dimension](https://github.com/user-attachments/assets/6b972b46-5c3c-439a-8b0a-fe8a293224e5)\n\nAll rotations are now right-handed (counterclockwise when the axis points towards the viewer),\nwith automatic sign-flipping for flipped camera views.\n\nNow for the bad news... After many (and we do [mean](https://github.com/napari/napari/pull/8537)\n[**many**](https://github.com/napari/napari/pull/8557)) attempts, we realized we couldn't\nprovide legacy conversion functions to get you to and from the original camera angles. Therefore,\nthis is a **breaking change**.\n\nIf you had scripts or notebooks setting up angles for screenshots, or if you've got workshop\nmaterials or tutorials with preset angles, they'll need to be updated. Any existing code\nusing `viewer.camera.angles = (z, y, x)` will now produce a different view than before.\n\n#### Limiting `self.events` callbacks\n\nIn [#8672](https://github.com/napari/napari/pull/8672), we changed how we emit events from\nthe parent `self.events` group.\n\nPreviously, connecting a callback to an `EventedModel`'s top-level event group\n(e.g. `model.events.connect(callback)`) would cause that callback to fire multiple times\nwhen a single assignment triggered multiple dependent fields. For example:\n\n```python\nclass MyModel(EventedModel):\n    a: int\n\n    @property\n    def b(self):\n        return self.a * 2\n\n    @b.setter\n    def b(self, value):\n        self.a = value // 2\n\nmodel = MyModel(a=1)\nmodel.events.connect(my_callback)\n\nmodel.a = 4  # previously called my_callback twice (once for 'a', once for 'b')\n             # now calls my_callback once\n```\n\nThe callback connected to `model.events` will now be called exactly once, with the event `type`\nset to the first changed field and `value` set to its new value. Callbacks connected to specific\nfield events (e.g. `model.events.a.connect(...)`) are unaffected and continue to work as before.\n\nIf you connect to `model.events` directly and relied on receiving one call per dependent field\nchange, you will need to connect to the individual field events instead.\n\n### New features & widgets\n\n#### What's my metadata? Where's my metadata? `napari-metadata` to the rescue\n\nWith a lot of work from our community contributor, Carlos Mario Rodriguez Reza\n(https://github.com/carlosmariorr), and\nour venerable community manager Tim Monko (https://github.com/timmonko),\n`napari` now has a metadata viewing and editing plugin\nincluded in our `napari[all]` installation and our bundle ([PR #8576](https://github.com/napari/napari/pull/8576)).\n\n![Screenshot of napari displaying an image of neurons, with the napari-metadata Layer Metadata widget across the bottom of the viewer.](https://raw.githubusercontent.com/napari/napari-metadata/main/docs/images/horizontal-widget.png)\n\nOpen the `Layer metadata` widget from the `Plugins` menu and you can view File information, and view and edit Axes metadata such as\naxis labels, translation and scale! You can also use the widget to copy specified metadata across to other layers.\n\nCheck out the [README](https://github.com/napari/napari-metadata) for some usage documentation, and feel\nfree to open an issue to request new features -- we're actively improving this plugin so, more to come!\n\n#### (Layer) Features galore\n\nPrior to 0.7.0, our Features table widget only supported showing individual selected layer features.\n\nWith [#8189](https://github.com/napari/napari/pull/8189), courtesy of Marcelo Zoccoler\n(https://github.com/zoccoler), the widget will display\nfeatures of all selected layers! The layer's name is displayed in an additional column, so you\nalways know what you're looking at, and you can choose to display only the shared feature columns\nacross all layers. Pretty slick!\n\n![GIF displaying the usage of the features table with multiple selected layers.](https://github.com/user-attachments/assets/e06fd403-ed03-4edd-9192-a4e287d25ff7)\n\n#### Smarter new layer buttons - inheriting from selected layers\n\nPrior to 0.7.0, creating a new layer Points, Shapes or Labels layer would give you a layer\nwith extent and dimensionality equal to the union of all currently open layers, and with\nnone of the other spatial information (scale, units, etc.) inherited.\n\nNow, with [#8357](https://github.com/napari/napari/pull/8357) and [#8702](https://github.com/napari/napari/pull/8702)\nyou can create new Shapes, Points or Labels layer that inherits from a selected layer\n(or a combination of selected layers).\n\n##### Shapes & Points\n\nIf you have one layer selected, your new `Shapes` or `Points` layer will copy\nall spatial information from its ancestor, ready for annotating!\nIf you have multiple layers selected, only scale is copied.\n\nIf you wish to recover the original behavior, select all existing layers before creating your new layer.\nDeselecting all layers gives you a layer with only the number of dimensions inherited,\nand no other properties.\n\n##### Labels\n\n`Labels` layers inherit all spatial information when a single `Image` or `Labels` layer is selected.\nWhen multiple `Image` or `Labels` layers are selected, or the selection includes any combination of\nother layer types, the new `Labels` layer will span their extent -- take note, this layer could be\nhuge!\n\nThe `Labels` button is disabled when layers are present in the viewer and none are selected.\n(You can still create a (512 x 512) `Labels` layer when there are no layers present).\n\n##### Visual cues\n\n[#8768](https://github.com/napari/napari/pull/8768) ensures this change is not invisible!\nWhen your selection will result in full inheritance of spatial information for the new layer,\nthe new layer buttons will be highlighted.\nThe highlight color will become dimmer when your selection will result in the new layer only\ninheriting the extent of your existing selection. If you're lost\nin the inheritance madness, you can also hover over the buttons to get details about the behavior.\n\n![GIF displaying the highlights on the Shapes, Points and Labels new layer buttons when one or more layers are selected in the layerlist](https://github.com/user-attachments/assets/17361e45-dbca-4770-be11-d74c882eedb5)\n\nPS -- You can now also create these new layers from the `File -> New Layer` menu!\n\n#### Better text overalys 🔡\n\nWith [#8236](https://github.com/napari/napari/pull/8236), we've not only refactored text overlays\nso they're easier to implement, but we've also introduced two new long-requested overlays:\nthe layer name overlay, and an overlay for the current slice. Together, they make generating\npublication-ready figures much easier!\n\n![Image showing the napari viewer with two layers in grid mode. Each layer has its name displayed in the top left, and the current slice displayed in the bottom right.](https://github.com/user-attachments/assets/3c96b38d-44c1-432b-b294-aa9c0934a553)\n\nTry it yourself:\n\n```python\nimport napari\nv = napari.Viewer()\nv.grid.enabled = True\nll = v.open_sample('napari', 'cells3d')\nfor l in ll:\n    l.name_overlay.visible = True\nv.scale_bar.visible = True\nv.scale_bar.gridded = True\nv._overlays['current_slice'].visible = True\nv._overlays['current_slice'].gridded = True\nv.dims.axis_labels = ['z', 'y', 'x']\n```\n\n**Note**: the `v._overlays` attribute is still private as we're working out the best API.\n\n### Rendering & display\n\n#### More pixels to play with - texture tiling\n\nEver loaded a large 2D image in napari just to zoom in and feel like you're not\nreally getting a lot of bang for your pixel bucks? That's because we were\ndownsampling images that were too large to send the whole thing to the GPU.\n\nCourtesy of Guillaume Witz (https://github.com/guiwitz), and his PR for\ntexture tiling ([PR #8395](https://github.com/napari/napari/pull/8395)) 2D\nimages that exceed OpenGL's maximum texture size will be split into multiple\ntiles, each small enough to fit on the GPU.\n\n![Image with a screenshot of napari 0.6.6 on the left and napari 0.7.0 on the right displaying a DeCAM image of the Milky Way. The image on the left is pixelated, while the image on the right is displayed at full resolution.](https://github.com/user-attachments/assets/d0a115a8-49d5-432c-b561-f29fe9ac8116)\n\n#### Rendering layers in physical space - units matter!\n\nIn 0.6.6 and below, units were stored in metadata, but not used for rendering.\nAdding two layers that represented the same physical space, but had different\nunits, e.g. a layer with `scale=500, units='nm'` and one with `scale=0.5, units='μm'`\nwouldn't overlap correctly, even though they should.\n\nThanks to [#7889](https://github.com/napari/napari/pull/8395), layers with\ncompatible units (i.e. those that share the same physical dimension per axis,\nlike all spatial), will make use of `units` and `scale` to overlap correctly,\nusing the smallest unit as the rendering space.\n\nUnits can also be set globally on the layer list using `viewer.layers.units = ('nm', 'nm')`,\nforcing layers to be rendered in this space. If a new layer is added with more dimensions\nthan the current layers, this global override is dropped with a warning.\n\n#### Points - any size you like 🟣\n\nOn macOS, the points layer has never been able to reach its full potential, as OpenGL\ndrivers limit the size of an individual marker to a certain number of screen pixels.\n\nWith [#8552](https://github.com/napari/napari/pull/8552) and the release of `vispy v0.16`,\nthis long-standing issue has finally been resolved. Across all operating systems, you can\nmake your points as big as you want!\n\nThis change has also propagated to the zoom behaviour on macOS -- points now zoom\nproportionally to the data, rather than staying the same size in screen pixels.\n\nHere's the behaviour pre 0.7.0:\n\n```{raw} html\n<figure>\n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_066.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_066.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_066.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points stay the same size in screen pixels.\" \n    > \n  </video> \n</figure> \n``` \n\nAnd now:\n\n```{raw} html\n<figure> \n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_070.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_070.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_070.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points scale proportionally to the data.\" \n    > \n  </video> \n</figure> \n```\n\n### Performance\n\n#### Grid mode -- bigger, better, faster 📈\n\nIf you've been playing with our new grid mode since 0.6.5, you\nmay have stumbled into performance issues when progressively adding\nnew layers to the viewer. Stumble no longer! Our grid mode is now wicked fast and buttery smooth 🧈.\n\nWe've also fixed some issues with mouse interactions and deleting\nlayers, so you can tile to your heart's content. Try it out:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n#### Add & delete layers without delay\n\n[#8479](https://github.com/napari/napari/pull/8479) and [#8443](https://github.com/napari/napari/pull/8443)\nmade a number of improvements to\nour layer and overlay clean-up, addressing a number of issues with large numbers of layers\nin the viewer - adding them, deleting them, and even closing the viewer is now snappy\nand smooth!\n\n#### Shapes layers -- select, zoom, delete, repeat\n\nIf you've ever tried working with thousands of shapes in napari, you'll know\nit could get... painful. Selecting 10,000 shapes with a box took over 50 seconds,\ndeleting 5,000 shapes took over a minute, and zooming with shapes selected\nwould lock up the viewer entirely. Not anymore!\n\n0.7.0 brings a flurry of performance improvements:\n\n- Box selection now uses bounding boxes and vectorized intersection tests,\n  delivering a more than 100x speedup ([#8378](https://github.com/napari/napari/pull/8378)).\n  Selecting 10,000 shapes goes from >50s to ~0.3s.\n- Batch deletion replaces one-by-one removal for another 100x speedup\n  ([#8375](https://github.com/napari/napari/pull/8375))! Deleting 50,000 shapes\n  now takes under half a second.\n- Outline computation is batched and cached, so zooming and panning with\n  selected shapes no longer blocks\n  ([#8403](https://github.com/napari/napari/pull/8403),\n  [#8536](https://github.com/napari/napari/pull/8536)).\n- Highlight updates are throttled for large layers, enabling smooth zoom\n  even with 200,000+ shapes ([#8404](https://github.com/napari/napari/pull/8404)).\n- Mode switching no longer triggers unnecessary redraws, giving another\n  ~3x speedup when many shapes are selected\n  ([#8551](https://github.com/napari/napari/pull/8551)).\n\nBeware: there's still more to do, because drawing and drag-moving large selections\nremain slow!\n\n#### Multiscale -- less to update, more to celebrate\n\nPR [#8678](https://github.com/napari/napari/pull/8678) introduced a small change\nwith a big effect! Now, zooming in (and panning while zoomed in), will only trigger\na data refresh if the multiscale level has changed **or** if the new view falls outside\nof already loaded data.\n\n#### Delete the launch codes -- no more macOS hacks on launch\n\nIn 0.6.6 and below, we had some macOS specific launch code that skirted around some\nissues (which are now no longer relevant), and hackily \"relaunched\" napari to make\nsure the application name was correct.\n\nThis code added up to a whole second to our launch time, as well as being potentially\nproblematic for some users. PR [#8705](https://github.com/napari/napari/pull/8705)\nremoved this code, making our start-up a little less hacky and a little more snappy.\nThe downside is that when launching napari on macOS, the app name may be listed as\nPython, instead of napari. We think the trade-off is worth it.\n\n\n### Infrastructure & dependencies\n\nA couple of notes on big changes in our dependencies:\n\n- With #8509 we improved our support for `pydantic v2`, allowing us to enable support for Python 3.14!\nThis brings us one step closer to fully adopting `psygnal` as our event library.\n- In [#8450](https://github.com/napari/napari/pull/8450) we dropped support for PySide2. If you\nwere using napari with PySide for your Qt bindings, you'll need to upgrade to PySide6. Good news\nis that PySide6 is looking pretty stable, while PySide2 had some compatibility issues with numpy2,\nand had to be built from source for Python 3.11+.\n- In ([#8665](https://github.com/napari/napari/pull/8665)) we updated the default qt\nbinding to PyQt6. PyQt6 will now be installed with `napari[all]` installations. Windows users\nshould see improvements to their display with better support for fractional scaling!\n- In [#8338](https://github.com/napari/napari/pull/8338) we replaced `numpydoc` with `docstring_parser`\nfor parsing our docstrings. This will be a pretty invisible change from a user's perspective, but\nit saves more than 50MB of disk space for a napari install!\n\n## New Features\n\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Don't warn user when a Zarr array with channel axis is passed ([#8559](https://github.com/napari/napari/pull/8559))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n- Add colorbar & bounding box overlays to Layers menu ([#8611](https://github.com/napari/napari/pull/8611))\n- Add visual for new points/shapes button on selected layers ([#8649](https://github.com/napari/napari/pull/8649))\n- Limit `self.events` callbacks trigger to only once per assignment ([#8672](https://github.com/napari/napari/pull/8672))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- Warn users when features data looks categorical ([#8685](https://github.com/napari/napari/pull/8685))\n- Fix type annotation in viewer keybindings, use QtViewer for console ([#8694](https://github.com/napari/napari/pull/8694))\n- Do not inherit scale for points and shapes if no layer is selected ([#8701](https://github.com/napari/napari/pull/8701))\n- Inherit spatial information for new `Labels` layers when only one other `Labels` or `Image` layer is selected ([#8702](https://github.com/napari/napari/pull/8702))\n- [UI, UX] Make dock widget title bar icons bigger and text more legible ([#8714](https://github.com/napari/napari/pull/8714))\n- Perf, enh: defer dask.array loading by moving import into functions ([#8720](https://github.com/napari/napari/pull/8720))\n- Change look of new layer buttons to mark that there are 3 modes ([#8723](https://github.com/napari/napari/pull/8723))\n- If path arg is passed to CLI napari, don't show welcome overlay ([#8725](https://github.com/napari/napari/pull/8725))\n- UI: Add keybinding for Image layer reset_contrast_limits ([#8730](https://github.com/napari/napari/pull/8730))\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\n- Use capitalized name of source layer type when adding layer ([#8740](https://github.com/napari/napari/pull/8740))\n- Add scale example for anisotropic 3D data ([#8742](https://github.com/napari/napari/pull/8742))\n- Raise FileNotFoundError early when opening nonexistent paths ([#8747](https://github.com/napari/napari/pull/8747))\n- Ensure that layers are unlinked after deletion from layerlist  ([#8749](https://github.com/napari/napari/pull/8749))\n- Use custom Font manager to use Qt discovery mechanism ([#8751](https://github.com/napari/napari/pull/8751))\n- Restyle new_layer button creation state visuals ([#8768](https://github.com/napari/napari/pull/8768))\n- Disable opacity slider for multiplicative blending ([#8776](https://github.com/napari/napari/pull/8776))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\n- Low hanging Labels painting performance improvement ([#8592](https://github.com/napari/napari/pull/8592))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- [Perf] Remove napari splash screen ([#8686](https://github.com/napari/napari/pull/8686))\n- [Maint] Remove all macOS specific launch code as it's out-dated or problematic (re-running with symlink) ([#8705](https://github.com/napari/napari/pull/8705))\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n- Fix dim order of rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\n- Close proper window on Ctrl+W ([#8548](https://github.com/napari/napari/pull/8548))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Enable instanced markers if available. ([#8552](https://github.com/napari/napari/pull/8552))\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\n- Account for tile2data in the Labels polygon overlay ([#8563](https://github.com/napari/napari/pull/8563))\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\n- Stop welcome screen time on hiding of QtWiewer ([#8585](https://github.com/napari/napari/pull/8585))\n- Fix Labels layer controls contiguous checkbox to initialize to the layer state ([#8594](https://github.com/napari/napari/pull/8594))\n- Proper cleanup and reuse of existing overlays ([#8610](https://github.com/napari/napari/pull/8610))\n- [UI] Update the viewer button tooltips to use the new axis labels (-3, -2, -1) ([#8614](https://github.com/napari/napari/pull/8614))\n- Fix scale bar padding ([#8616](https://github.com/napari/napari/pull/8616))\n- Fix empty thumbnail ([#8620](https://github.com/napari/napari/pull/8620))\n- Reverse overlay tiling order ([#8623](https://github.com/napari/napari/pull/8623))\n- Fix welcome screen timer ([#8627](https://github.com/napari/napari/pull/8627))\n- Reinitialize welcome screen shortcuts in a less ugly way ([#8634](https://github.com/napari/napari/pull/8634))\n- Fix empty points tiny point ([#8639](https://github.com/napari/napari/pull/8639))\n- Fix labels of angle order of camera widget ([#8644](https://github.com/napari/napari/pull/8644))\n- Add a opaque background Rectangle to Welcome overlay ([#8645](https://github.com/napari/napari/pull/8645))\n- Do not start welcome widget timer until QtViewer is visible ([#8652](https://github.com/napari/napari/pull/8652))\n- Allow selection in feature table widget with empty features ([#8653](https://github.com/napari/napari/pull/8653))\n- Fix event triggering start of welcome screen ([#8660](https://github.com/napari/napari/pull/8660))\n- Fix `_disconnect_child_emitters` for `PsygnalModel` dict elements ([#8674](https://github.com/napari/napari/pull/8674))\n- Increase minimum version of pyopengl to allow start napari ([#8679](https://github.com/napari/napari/pull/8679))\n- Fix colorbar for int/bool dtypes ([#8684](https://github.com/napari/napari/pull/8684))\n- Correctly hide welcome screen when layers are present ([#8688](https://github.com/napari/napari/pull/8688))\n- Ensure that errors are propagated during async loading ([#8691](https://github.com/napari/napari/pull/8691))\n- Fix assign tuple of None to `layer.units` ([#8700](https://github.com/napari/napari/pull/8700))\n- Fix error raised when `out_of_slice_display = True` and update highlight ([#8717](https://github.com/napari/napari/pull/8717))\n- fix: fix `napari.imshow` return type hint ([#8726](https://github.com/napari/napari/pull/8726))\n- Fix harvesting plugins from CLI ([#8728](https://github.com/napari/napari/pull/8728))\n- Fix `--plugin` startup args ([#8729](https://github.com/napari/napari/pull/8729))\n- Update box and position of text overlay on font size change ([#8759](https://github.com/napari/napari/pull/8759))\n- Fix welcome spacing ([#8760](https://github.com/napari/napari/pull/8760))\n- Fix: Fire world unit updates after removing layer ([#8772](https://github.com/napari/napari/pull/8772))\n- Do not emit warning about units if there is no layer in viewer ([#8779](https://github.com/napari/napari/pull/8779))\n- Fix colorbar box offset ([#8780](https://github.com/napari/napari/pull/8780))\n- Fix: Qt6 font error on Windows when adding layers or widgets ([#8782](https://github.com/napari/napari/pull/8782))\n- Fix: ValidationError in Drag to Zoom with data ndim>2 ([#8784](https://github.com/napari/napari/pull/8784))\n\n## Build Tools\n\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n\n## Documentation\n\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n- Adding a new example of a multiplexed immunofluorescent image of a murine heart ([#8680](https://github.com/napari/napari/pull/8680))\n- Add sphinxext-rediraffe to docs requirements ([#8690](https://github.com/napari/napari/pull/8690))\n- Update examples gallery for 0.7.0 angles ([#8709](https://github.com/napari/napari/pull/8709))\n- Add 3D points to add_points_3d example ([#8746](https://github.com/napari/napari/pull/8746))\n- Update contributing info and include AI policy and guidelines ([#8754](https://github.com/napari/napari/pull/8754))\n- Fix `image_depth.py` example by setting `blending` to `translucent` ([#8764](https://github.com/napari/napari/pull/8764))\n- Update units rendering example for docs gallery ([#8767](https://github.com/napari/napari/pull/8767))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\n- Update governance documentation ([docs#911](https://github.com/napari/docs/pull/911))\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\n- Update display text copy in shapes.md ([docs#914](https://github.com/napari/docs/pull/914))\n- Update release notes for 0.7.0a1 ([docs#915](https://github.com/napari/docs/pull/915))\n- Simplify titles in App installation instructions ([docs#918](https://github.com/napari/docs/pull/918))\n- Remove mention of double click in macOS app instructions ([docs#920](https://github.com/napari/docs/pull/920))\n- Update release notes for 0.7.0a2 ([docs#922](https://github.com/napari/docs/pull/922))\n- Move code for setting recursion limit ([docs#927](https://github.com/napari/docs/pull/927))\n- Update scripts to pydantic v2 ([docs#928](https://github.com/napari/docs/pull/928))\n- Remove npe1-related docs ([docs#929](https://github.com/napari/docs/pull/929))\n- Add intersphinx mapping for pydantic ([docs#930](https://github.com/napari/docs/pull/930))\n- Add policy on LLM contributions based on Zulip's ([docs#932](https://github.com/napari/docs/pull/932))\n- Expand on 0.7.0 highlights ([docs#933](https://github.com/napari/docs/pull/933))\n- Fix camera angles in handedness guide ([docs#940](https://github.com/napari/docs/pull/940))\n- Add guide explaining default axis names ([docs#942](https://github.com/napari/docs/pull/942))\n- Add info about new points/shapes layer button behavior ([docs#943](https://github.com/napari/docs/pull/943))\n- Add final? 0.7.0 highlights and group by topic ([docs#944](https://github.com/napari/docs/pull/944))\n- Add redirects to pages moved in Usage section ([docs#946](https://github.com/napari/docs/pull/946))\n- Fix typo in optional-dependencies ([docs#947](https://github.com/napari/docs/pull/947))\n- Update references to PyQt5 as default backend to PyQt6 ([docs#950](https://github.com/napari/docs/pull/950))\n- Update 0.7.0 highlights for rc0 ([docs#951](https://github.com/napari/docs/pull/951))\n- Restructure homepage and add rotating featured examples ([docs#953](https://github.com/napari/docs/pull/953))\n- Wayland Debug information ([docs#956](https://github.com/napari/docs/pull/956))\n- Update release notes for 0.7.0rc1 ([docs#957](https://github.com/napari/docs/pull/957))\n- Refresh installation guide, with focus on bundled app instructions ([docs#958](https://github.com/napari/docs/pull/958))\n- Update notes for 0.7.0rc2 ([docs#959](https://github.com/napari/docs/pull/959))\n\n## Other Pull Requests\n\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Maint: Update test_prereleases.yml to also test on pyside6 ([#8470](https://github.com/napari/napari/pull/8470))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Migrate EventedModel to pydantic v2 and overlays to psygnal to support python 3.14  ([#8509](https://github.com/napari/napari/pull/8509))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `jsonschema`, `pandas`, `pillow`, `psutil`, `psygnal`, `pyqt6`, `scikit-image`, `scipy`, `superqt`, `tifffile`, `virtualenv` ([#8518](https://github.com/napari/napari/pull/8518))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\n- Fix typing in layers.points and layers.labels utilities ([#8549](https://github.com/napari/napari/pull/8549))\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\n- Remove npe1 code for reading and writing ([#8579](https://github.com/napari/napari/pull/8579))\n- Fix build constraints with circular napari dependency ([#8588](https://github.com/napari/napari/pull/8588))\n- Modify sphinx-external-toc version constraint to eliminate warnings ([#8591](https://github.com/napari/napari/pull/8591))\n- Switch logo URL used for reader test ([#8596](https://github.com/napari/napari/pull/8596))\n- Update `coverage`, `hypothesis`, `rich` ([#8597](https://github.com/napari/napari/pull/8597))\n- Move comment trigger of constraints update to a separate workflow ([#8600](https://github.com/napari/napari/pull/8600))\n- Fix running benchmarks by label by fix condition ([#8601](https://github.com/napari/napari/pull/8601))\n- [pre-commit.ci] pre-commit autoupdate ([#8602](https://github.com/napari/napari/pull/8602))\n- ci(dependabot): bump the actions group with 5 updates ([#8613](https://github.com/napari/napari/pull/8613))\n- Update `babel`, `dask`, `hypothesis`, `pooch`, `psutil`, `rich`, `tifffile`, `tqdm`, `wrapt`, `xarray` ([#8615](https://github.com/napari/napari/pull/8615))\n- Postpone QtViewer deprecation to 0.8.0 ([#8617](https://github.com/napari/napari/pull/8617))\n- Remove settings call on import in qt_event_loop ([#8619](https://github.com/napari/napari/pull/8619))\n- Remove remaining `npe1` usage ([#8622](https://github.com/napari/napari/pull/8622))\n- Add `uv.lock` and leak graphs to gitignore ([#8637](https://github.com/napari/napari/pull/8637))\n- Fix pint warning about deprecation of getitem ([#8638](https://github.com/napari/napari/pull/8638))\n- Update `coverage`, `fsspec`, `hypothesis`, `ipython`, `pillow`, `pyside6`, `qtconsole`, `tensorstore`, `tqdm`, `wrapt`, `xarray` ([#8641](https://github.com/napari/napari/pull/8641))\n- Bump superqt to 0.7.8 ([#8646](https://github.com/napari/napari/pull/8646))\n- Bump napari plugin manager ([#8647](https://github.com/napari/napari/pull/8647))\n- Add/unify background box for canvas overlays ([#8654](https://github.com/napari/napari/pull/8654))\n- [pre-commit.ci] pre-commit autoupdate ([#8655](https://github.com/napari/napari/pull/8655))\n- Upload triangulation artifacts if benchmarks fails ([#8664](https://github.com/napari/napari/pull/8664))\n- Maint: Have triangle only on py313 and lower ([#8668](https://github.com/napari/napari/pull/8668))\n- Update `pydantic-settings`, `tifffile` ([#8671](https://github.com/napari/napari/pull/8671))\n- [pre-commit.ci] pre-commit autoupdate ([#8675](https://github.com/napari/napari/pull/8675))\n- Add pregenerated data to stabilize shapes triangulation benchmarks ([#8676](https://github.com/napari/napari/pull/8676))\n- Update `hypothesis`, `numpy`, `pandas`, `pydantic-settings`, `rich`, `scipy`, `tifffile`, `virtualenv` ([#8692](https://github.com/napari/napari/pull/8692))\n- Add python 3.14 classifier to project metadata ([#8693](https://github.com/napari/napari/pull/8693))\n- [pre-commit.ci] pre-commit autoupdate ([#8697](https://github.com/napari/napari/pull/8697))\n- ci(dependabot): bump the actions group with 3 updates ([#8713](https://github.com/napari/napari/pull/8713))\n- Update `certifi`, `tifffile`, `virtualenv` ([#8716](https://github.com/napari/napari/pull/8716))\n- Update pyqt5 default references to pyqt6 ([#8732](https://github.com/napari/napari/pull/8732))\n- Remove usage of `partial` from `qt_viewer_buttons` ([#8741](https://github.com/napari/napari/pull/8741))\n- Update `numpy`, `superqt`, `tifffile`, `wrapt` ([#8748](https://github.com/napari/napari/pull/8748))\n- [pre-commit.ci] pre-commit autoupdate ([#8753](https://github.com/napari/napari/pull/8753))\n- Update `imageio`, `pydantic-extra-types`, `tensorstore`, `virtualenv` ([#8773](https://github.com/napari/napari/pull/8773))\n- [pre-commit.ci] pre-commit autoupdate ([#8774](https://github.com/napari/napari/pull/8774))\n- Update plugin manager constraint ([#8781](https://github.com/napari/napari/pull/8781))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\n- Prepare on migration to `sphinxcontrib-mermaid` ([docs#923](https://github.com/napari/docs/pull/923))\n- ci(dependabot): bump the github-actions group with 2 updates ([docs#925](https://github.com/napari/docs/pull/925))\n- ci(dependabot): bump actions/download-artifact from 7.0.0 to 8.0.0 in the github-actions group ([docs#948](https://github.com/napari/docs/pull/948))\n\n\n## 25 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [LiudengZhang](https://github.com/napari/napari/commits?author=LiudengZhang) - @LiudengZhang +\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Neil Shephard](https://github.com/napari/docs/commits?author=ns-rse) - @ns-rse +\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Samuel Le Meur-Diebolt](https://github.com/napari/napari/commits?author=sdiebolt) - @sdiebolt +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 25 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carlos Mario Rodriguez Reza](https://github.com/napari/docs/commits?author=carlosmariorr) - @carlosmariorr\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [Kyle I. S. Harrington](https://github.com/napari/docs/commits?author=kephale) - @kephale\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/299659106/reactions","total_count":2,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":2,"rocket":0,"eyes":0},"mentions_count":30},{"url":"https://api.github.com/repos/napari/napari/releases/299252102","assets_url":"https://api.github.com/repos/napari/napari/releases/299252102/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/299252102/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0rc3","id":299252102,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84R1jmG","tag_name":"v0.7.0rc3","target_commitish":"09cfd129240a1ee39e6785b9b00a0e0292382bce","name":"0.7.0rc3","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-03-20T04:32:25Z","updated_at":"2026-03-20T04:39:58Z","published_at":"2026-03-20T04:34:03Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/377704717","id":377704717,"node_id":"RA_kwDOCJ0aI84Wg1EN","name":"napari-0.7.0rc3-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44332,"digest":"sha256:5605fbe9230dc1cbd991a7051de0f0ff4fe2391b935c9ddbd107d3dddf40e787","download_count":1,"created_at":"2026-03-20T04:39:58Z","updated_at":"2026-03-20T04:39:58Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc3/napari-0.7.0rc3-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/377704594","id":377704594,"node_id":"RA_kwDOCJ0aI84Wg1CS","name":"napari-0.7.0rc3-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":572225651,"digest":"sha256:14524a9e1315734b7dbfc57422f7bd50123484a3aa5e20fb3d8922048ee930c5","download_count":4,"created_at":"2026-03-20T04:39:35Z","updated_at":"2026-03-20T04:39:57Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc3/napari-0.7.0rc3-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/377702187","id":377702187,"node_id":"RA_kwDOCJ0aI84Wg0cr","name":"napari-0.7.0rc3-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3490086,"digest":"sha256:89b5edfd46cab959a6993c0e7b4bad0a7635eda0d0aed6208add7b8d947ffe8c","download_count":3,"created_at":"2026-03-20T04:34:02Z","updated_at":"2026-03-20T04:34:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc3/napari-0.7.0rc3-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/377702186","id":377702186,"node_id":"RA_kwDOCJ0aI84Wg0cq","name":"napari-0.7.0rc3.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3104028,"digest":"sha256:1a8c77c027a7131a1f03346436b8ab0922ffa5fd7711f85b5279d356428ca1ca","download_count":3,"created_at":"2026-03-20T04:34:02Z","updated_at":"2026-03-20T04:34:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc3/napari-0.7.0rc3.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0rc3","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0rc3","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Fri, Mar 20, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\n### Breaking Changes\n\n#### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed ([PR #8448](https://github.com/napari/napari/pull/8448)),\nand plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nThis change has been a long time coming, and it's allowed us to remove thousands\nof lines of tangled and confusing legacy code. Now that we have, it's unleashed\nthe potential for massive improvements to file opening and saving in `napari`,\nand exciting new features for our plugin infrastructure. Stay tuned!\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n#### Negative axis labels? A real positive\n\nIf you've ever loaded data of mixed dimensionality in napari, like a TYX volume\nalongside a YX segmentation, you may have noticed the default axis labels didn't\nquite line up:\n\n| axes   | 0 | 1 | 2 |\n|--------|---|---|---|\n| volume | 0 | 1 | 2 |\n| segmt  |   | 0 | 1 |\n\nThat's because napari used 0-based indexing for its viewer axis labels, which breaks\ndown when layers have different numbers of dimensions. With\n[#8565](https://github.com/napari/napari/pull/8565),\nviewer axis labels now use negative indexing by default, combining Python's negative indexing\nsemantics with NumPy's array broadcasting semantics. The last axis is always `-1`,\nthe second-to-last is always `-2`, and so on:\n\n| axes   | 0  | 1  | 2  |\n|--------|----|----|----|\n| volume | -3 | -2 | -1 |\n| segmt  |    | -2 | -1 |\n\nThis means axis labels stay consistent as you add or remove layers of different\ndimensionality -- axis `-1` is always your last axis. This also fixes\na long-standing bug where axis labels could end up duplicated when mixing layers of\ndifferent dimensionality ([#6569](https://github.com/napari/napari/issues/6569)).\n\nYou'll notice this change in the dims slider labels, the axis overlay, and the dims\npopup widget. If you already label your axes with your own names (e.g. `z`, `y`, `x`),\nnothing's changed. For everyone else, we have consistency at last!\n\n\n#### What's in an angle? The truth! Fixed camera angles 🎥\n\nIf you've ever set up the camera to take that perfect publication-worthy photo of\nyour data (and taken the time to query the camera angles), you may have noticed they seemed... off.\nThat's because they were! Very... off. This was due to a long-standing bug in how we calculated our\ncamera angles, fueled in part by some arcane vispy axis-swapping tomfoolery, and in part by napari's\nstarting position of `viewer.camera.angles = (0, 0, 90)`.\n\nGood news! With [#8281](https://github.com/napari/napari/pull/8281), angles make sense again. The default camera angles are `(0, 0, 0)`, and they\nmove intuitively -- so `viewer.camera.angles = (10, 0, 0)` actually represents a 10 degree\nrotation around the [-3rd](#negative-axis-labels-a-real-positive) dimension. What a time to be alive!\n\nOld versions of napari:\n\n![Image showing an old version of a napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console.](https://github.com/user-attachments/assets/9ae2040c-36f7-4c4c-8ef8-140202d7ccda)\n\nNew and sane:\n\n![Image showing the 0.7.0 napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console. The layer is rotated 10 degrees in its first dimension](https://github.com/user-attachments/assets/6b972b46-5c3c-439a-8b0a-fe8a293224e5)\n\nAll rotations are now right-handed (counterclockwise when the axis points towards the viewer),\nwith automatic sign-flipping for flipped camera views.\n\nNow for the bad news... After many (and we do [mean](https://github.com/napari/napari/pull/8537)\n[**many**](https://github.com/napari/napari/pull/8557)) attempts, we realized we couldn't\nprovide legacy conversion functions to get you to and from the original camera angles. Therefore,\nthis is a **breaking change**.\n\nIf you had scripts or notebooks setting up angles for screenshots, or if you've got workshop\nmaterials or tutorials with preset angles, they'll need to be updated. Any existing code\nusing `viewer.camera.angles = (z, y, x)` will now produce a different view than before.\n\n#### Limiting `self.events` callbacks\n\nIn [#8672](https://github.com/napari/napari/pull/8672), we changed how we emit events from\nthe parent `self.events` group.\n\nPreviously, connecting a callback to an `EventedModel`'s top-level event group\n(e.g. `model.events.connect(callback)`) would cause that callback to fire multiple times\nwhen a single assignment triggered multiple dependent fields. For example:\n\n```python\nclass MyModel(EventedModel):\n    a: int\n\n    @property\n    def b(self):\n        return self.a * 2\n\n    @b.setter\n    def b(self, value):\n        self.a = value // 2\n\nmodel = MyModel(a=1)\nmodel.events.connect(my_callback)\n\nmodel.a = 4  # previously called my_callback twice (once for 'a', once for 'b')\n             # now calls my_callback once\n```\n\nThe callback connected to `model.events` will now be called exactly once, with the event `type`\nset to the first changed field and `value` set to its new value. Callbacks connected to specific\nfield events (e.g. `model.events.a.connect(...)`) are unaffected and continue to work as before.\n\nIf you connect to `model.events` directly and relied on receiving one call per dependent field\nchange, you will need to connect to the individual field events instead.\n\n### New features & widgets\n\n#### What's my metadata? Where's my metadata? `napari-metadata` to the rescue\n\nWith a lot of work from our community contributor, Carlos Mario Rodriguez Reza\n(https://github.com/carlosmariorr), and\nour venerable community manager Tim Monko (https://github.com/timmonko),\n`napari` now has a metadata viewing and editing plugin\nincluded in our `napari[all]` installation and our bundle ([PR #8576](https://github.com/napari/napari/pull/8576)).\n\n![Screenshot of napari displaying an image of neurons, with the napari-metadata Layer Metadata widget across the bottom of the viewer.](https://raw.githubusercontent.com/napari/napari-metadata/main/docs/images/horizontal-widget.png)\n\nOpen the `Layer metadata` widget from the `Plugins` menu and you can view File information, and view and edit Axes metadata such as\naxis labels, translation and scale! You can also use the widget to copy specified metadata across to other layers.\n\nCheck out the [README](https://github.com/napari/napari-metadata) for some usage documentation, and feel\nfree to open an issue to request new features -- we're actively improving this plugin so, more to come!\n\n#### (Layer) Features galore\n\nPrior to 0.7.0, our Features table widget only supported showing individual selected layer features.\n\nWith [#8189](https://github.com/napari/napari/pull/8189), courtesy of Marcelo Zoccoler\n(https://github.com/zoccoler), the widget will display\nfeatures of all selected layers! The layer's name is displayed in an additional column, so you\nalways know what you're looking at, and you can choose to display only the shared feature columns\nacross all layers. Pretty slick!\n\n![GIF displaying the usage of the features table with multiple selected layers.](https://github.com/user-attachments/assets/e06fd403-ed03-4edd-9192-a4e287d25ff7)\n\n#### Smarter new layer buttons - inheriting from selected layers\n\nPrior to 0.7.0, creating a new layer Points, Shapes or Labels layer would give you a layer\nwith extent and dimensionality equal to the union of all currently open layers, and with\nnone of the other spatial information (scale, units, etc.) inherited.\n\nNow, with [#8357](https://github.com/napari/napari/pull/8357) and [#8702](https://github.com/napari/napari/pull/8702)\nyou can create new Shapes, Points or Labels layer that inherits from a selected layer\n(or a combination of selected layers).\n\n##### Shapes & Points\n\nIf you have one layer selected, your new `Shapes` or `Points` layer will copy\nall spatial information from its ancestor, ready for annotating!\nIf you have multiple layers selected, only scale is copied.\n\nIf you wish to recover the original behavior, select all existing layers before creating your new layer.\nDeselecting all layers gives you a layer with only the number of dimensions inherited,\nand no other properties.\n\n##### Labels\n\n`Labels` layers inherit all spatial information when a single `Image` or `Labels` layer is selected.\nWhen multiple `Image` or `Labels` layers are selected, or the selection includes any combination of\nother layer types, the new `Labels` layer will span their extent -- take note, this layer could be\nhuge!\n\nThe `Labels` button is disabled when layers are present in the viewer and none are selected.\n(You can still create a (512 x 512) `Labels` layer when there are no layers present).\n\n##### Visual cues\n\n[#8768](https://github.com/napari/napari/pull/8768) ensures this change is not invisible!\nWhen your selection will result in full inheritance of spatial information for the new layer,\nthe new layer buttons will be highlighted.\nThe highlight color will become dimmer when your selection will result in the new layer only\ninheriting the extent of your existing selection. If you're lost\nin the inheritance madness, you can also hover over the buttons to get details about the behavior.\n\n![GIF displaying the highlights on the Shapes, Points and Labels new layer buttons when one or more layers are selected in the layerlist](https://github.com/user-attachments/assets/17361e45-dbca-4770-be11-d74c882eedb5)\n\nPS -- You can now also create these new layers from the `File -> New Layer` menu!\n\n#### Better text overalys 🔡\n\nWith [#8236](https://github.com/napari/napari/pull/8236), we've not only refactored text overlays\nso they're easier to implement, but we've also introduced two new long-requested overlays:\nthe layer name overlay, and an overlay for the current slice. Together, they make generating\npublication-ready figures much easier!\n\n![Image showing the napari viewer with two layers in grid mode. Each layer has its name displayed in the top left, and the current slice displayed in the bottom right.](https://github.com/user-attachments/assets/3c96b38d-44c1-432b-b294-aa9c0934a553)\n\nTry it yourself:\n\n```python\nimport napari\nv = napari.Viewer()\nv.grid.enabled = True\nll = v.open_sample('napari', 'cells3d')\nfor l in ll:\n    l.name_overlay.visible = True\nv.scale_bar.visible = True\nv.scale_bar.gridded = True\nv._overlays['current_slice'].visible = True\nv._overlays['current_slice'].gridded = True\nv.dims.axis_labels = ['z', 'y', 'x']\n```\n\n**Note**: the `v._overlays` attribute is still private as we're working out the best API.\n\n### Rendering & display\n\n#### More pixels to play with - texture tiling\n\nEver loaded a large 2D image in napari just to zoom in and feel like you're not\nreally getting a lot of bang for your pixel bucks? That's because we were\ndownsampling images that were too large to send the whole thing to the GPU.\n\nCourtesy of Guillaume Witz (https://github.com/guiwitz), and his PR for\ntexture tiling ([PR #8395](https://github.com/napari/napari/pull/8395)) 2D\nimages that exceed OpenGL's maximum texture size will be split into multiple\ntiles, each small enough to fit on the GPU.\n\n![Image with a screenshot of napari 0.6.6 on the left and napari 0.7.0 on the right displaying a DeCAM image of the Milky Way. The image on the left is pixelated, while the image on the right is displayed at full resolution.](https://github.com/user-attachments/assets/d0a115a8-49d5-432c-b561-f29fe9ac8116)\n\n#### Rendering layers in physical space - units matter!\n\nIn 0.6.6 and below, units were stored in metadata, but not used for rendering.\nAdding two layers that represented the same physical space, but had different\nunits, e.g. a layer with `scale=500, units='nm'` and one with `scale=0.5, units='μm'`\nwouldn't overlap correctly, even though they should.\n\nThanks to [#7889](https://github.com/napari/napari/pull/8395), layers with\ncompatible units (i.e. those that share the same physical dimension per axis,\nlike all spatial), will make use of `units` and `scale` to overlap correctly,\nusing the smallest unit as the rendering space.\n\nUnits can also be set globally on the layer list using `viewer.layers.units = ('nm', 'nm')`,\nforcing layers to be rendered in this space. If a new layer is added with more dimensions\nthan the current layers, this global override is dropped with a warning.\n\n#### Points - any size you like 🟣\n\nOn macOS, the points layer has never been able to reach its full potential, as OpenGL\ndrivers limit the size of an individual marker to a certain number of screen pixels.\n\nWith [#8552](https://github.com/napari/napari/pull/8552) and the release of `vispy v0.16`,\nthis long-standing issue has finally been resolved. Across all operating systems, you can\nmake your points as big as you want!\n\nThis change has also propagated to the zoom behaviour on macOS -- points now zoom\nproportionally to the data, rather than staying the same size in screen pixels.\n\nHere's the behaviour pre 0.7.0:\n\n```{raw} html\n<figure>\n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_066.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_066.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_066.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points stay the same size in screen pixels.\" \n    > \n  </video> \n</figure> \n``` \n\nAnd now:\n\n```{raw} html\n<figure> \n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_070.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_070.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_070.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points scale proportionally to the data.\" \n    > \n  </video> \n</figure> \n```\n\n### Performance\n\n#### Grid mode -- bigger, better, faster 📈\n\nIf you've been playing with our new grid mode since 0.6.5, you\nmay have stumbled into performance issues when progressively adding\nnew layers to the viewer. Stumble no longer! Our grid mode is now wicked fast and buttery smooth 🧈.\n\nWe've also fixed some issues with mouse interactions and deleting\nlayers, so you can tile to your heart's content. Try it out:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n#### Add & delete layers without delay\n\n[#8479](https://github.com/napari/napari/pull/8479) and [#8443](https://github.com/napari/napari/pull/8443)\nmade a number of improvements to\nour layer and overlay clean-up, addressing a number of issues with large numbers of layers\nin the viewer - adding them, deleting them, and even closing the viewer is now snappy\nand smooth!\n\n#### Shapes layers -- select, zoom, delete, repeat\n\nIf you've ever tried working with thousands of shapes in napari, you'll know\nit could get... painful. Selecting 10,000 shapes with a box took over 50 seconds,\ndeleting 5,000 shapes took over a minute, and zooming with shapes selected\nwould lock up the viewer entirely. Not anymore!\n\n0.7.0 brings a flurry of performance improvements:\n\n- Box selection now uses bounding boxes and vectorized intersection tests,\n  delivering a more than 100x speedup ([#8378](https://github.com/napari/napari/pull/8378)).\n  Selecting 10,000 shapes goes from >50s to ~0.3s.\n- Batch deletion replaces one-by-one removal for another 100x speedup\n  ([#8375](https://github.com/napari/napari/pull/8375))! Deleting 50,000 shapes\n  now takes under half a second.\n- Outline computation is batched and cached, so zooming and panning with\n  selected shapes no longer blocks\n  ([#8403](https://github.com/napari/napari/pull/8403),\n  [#8536](https://github.com/napari/napari/pull/8536)).\n- Highlight updates are throttled for large layers, enabling smooth zoom\n  even with 200,000+ shapes ([#8404](https://github.com/napari/napari/pull/8404)).\n- Mode switching no longer triggers unnecessary redraws, giving another\n  ~3x speedup when many shapes are selected\n  ([#8551](https://github.com/napari/napari/pull/8551)).\n\nBeware: there's still more to do, because drawing and drag-moving large selections\nremain slow!\n\n#### Multiscale -- less to update, more to celebrate\n\nPR [#8678](https://github.com/napari/napari/pull/8678) introduced a small change\nwith a big effect! Now, zooming in (and panning while zoomed in), will only trigger\na data refresh if the multiscale level has changed **or** if the new view falls outside\nof already loaded data.\n\n#### Delete the launch codes -- no more macOS hacks on launch\n\nIn 0.6.6 and below, we had some macOS specific launch code that skirted around some\nissues (which are now no longer relevant), and hackily \"relaunched\" napari to make\nsure the application name was correct.\n\nThis code added up to a whole second to our launch time, as well as being potentially\nproblematic for some users. PR [#8705](https://github.com/napari/napari/pull/8705)\nremoved this code, making our start-up a little less hacky and a little more snappy.\nThe downside is that when launching napari on macOS, the app name may be listed as\nPython, instead of napari. We think the trade-off is worth it.\n\n\n### Infrastructure & dependencies\n\nA couple of notes on big changes in our dependencies:\n\n- With #8509 we improved our support for `pydantic v2`, allowing us to enable support for Python 3.14!\nThis brings us one step closer to fully adopting `psygnal` as our event library.\n- In [#8450](https://github.com/napari/napari/pull/8450) we dropped support for PySide2. If you\nwere using napari with PySide for your Qt bindings, you'll need to upgrade to PySide6. Good news\nis that PySide6 is looking pretty stable, while PySide2 had some compatibility issues with numpy2,\nand had to be built from source for Python 3.11+.\n- In ([#8665](https://github.com/napari/napari/pull/8665)) we updated the default qt\nbinding to PyQt6. PyQt6 will now be installed with `napari[all]` installations. Windows users\nshould see improvements to their display with better support for fractional scaling!\n- In [#8338](https://github.com/napari/napari/pull/8338) we replaced `numpydoc` with `docstring_parser`\nfor parsing our docstrings. This will be a pretty invisible change from a user's perspective, but\nit saves more than 50MB of disk space for a napari install!\n\n## New Features\n\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Don't warn user when a Zarr array with channel axis is passed ([#8559](https://github.com/napari/napari/pull/8559))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n- Add colorbar & bounding box overlays to Layers menu ([#8611](https://github.com/napari/napari/pull/8611))\n- Add visual for new points/shapes button on selected layers ([#8649](https://github.com/napari/napari/pull/8649))\n- Limit `self.events` callbacks trigger to only once per assignment ([#8672](https://github.com/napari/napari/pull/8672))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- Warn users when features data looks categorical ([#8685](https://github.com/napari/napari/pull/8685))\n- Fix type annotation in viewer keybindings, use QtViewer for console ([#8694](https://github.com/napari/napari/pull/8694))\n- Do not inherit scale for points and shapes if no layer is selected ([#8701](https://github.com/napari/napari/pull/8701))\n- Inherit spatial information for new `Labels` layers when only one other `Labels` or `Image` layer is selected ([#8702](https://github.com/napari/napari/pull/8702))\n- [UI, UX] Make dock widget title bar icons bigger and text more legible ([#8714](https://github.com/napari/napari/pull/8714))\n- Perf, enh: defer dask.array loading by moving import into functions ([#8720](https://github.com/napari/napari/pull/8720))\n- Change look of new layer buttons to mark that there are 3 modes ([#8723](https://github.com/napari/napari/pull/8723))\n- If path arg is passed to CLI napari, don't show welcome overlay ([#8725](https://github.com/napari/napari/pull/8725))\n- UI: Add keybinding for Image layer reset_contrast_limits ([#8730](https://github.com/napari/napari/pull/8730))\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\n- Use capitalized name of source layer type when adding layer ([#8740](https://github.com/napari/napari/pull/8740))\n- Add scale example for anisotropic 3D data ([#8742](https://github.com/napari/napari/pull/8742))\n- Raise FileNotFoundError early when opening nonexistent paths ([#8747](https://github.com/napari/napari/pull/8747))\n- Ensure that layers are unlinked after deletion from layerlist  ([#8749](https://github.com/napari/napari/pull/8749))\n- Use custom Font manager to use Qt discovery mechanism ([#8751](https://github.com/napari/napari/pull/8751))\n- Restyle new_layer button creation state visuals ([#8768](https://github.com/napari/napari/pull/8768))\n- Disable opacity slider for multiplicative blending ([#8776](https://github.com/napari/napari/pull/8776))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\n- Low hanging Labels painting performance improvement ([#8592](https://github.com/napari/napari/pull/8592))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- [Perf] Remove napari splash screen ([#8686](https://github.com/napari/napari/pull/8686))\n- [Maint] Remove all macOS specific launch code as it's out-dated or problematic (re-running with symlink) ([#8705](https://github.com/napari/napari/pull/8705))\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n- Fix dim order of rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\n- Close proper window on Ctrl+W ([#8548](https://github.com/napari/napari/pull/8548))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Enable instanced markers if available. ([#8552](https://github.com/napari/napari/pull/8552))\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\n- Account for tile2data in the Labels polygon overlay ([#8563](https://github.com/napari/napari/pull/8563))\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\n- Stop welcome screen time on hiding of QtWiewer ([#8585](https://github.com/napari/napari/pull/8585))\n- Fix Labels layer controls contiguous checkbox to initialize to the layer state ([#8594](https://github.com/napari/napari/pull/8594))\n- Proper cleanup and reuse of existing overlays ([#8610](https://github.com/napari/napari/pull/8610))\n- [UI] Update the viewer button tooltips to use the new axis labels (-3, -2, -1) ([#8614](https://github.com/napari/napari/pull/8614))\n- Fix scale bar padding ([#8616](https://github.com/napari/napari/pull/8616))\n- Fix empty thumbnail ([#8620](https://github.com/napari/napari/pull/8620))\n- Reverse overlay tiling order ([#8623](https://github.com/napari/napari/pull/8623))\n- Fix welcome screen timer ([#8627](https://github.com/napari/napari/pull/8627))\n- Reinitialize welcome screen shortcuts in a less ugly way ([#8634](https://github.com/napari/napari/pull/8634))\n- Fix empty points tiny point ([#8639](https://github.com/napari/napari/pull/8639))\n- Fix labels of angle order of camera widget ([#8644](https://github.com/napari/napari/pull/8644))\n- Add a opaque background Rectangle to Welcome overlay ([#8645](https://github.com/napari/napari/pull/8645))\n- Do not start welcome widget timer until QtViewer is visible ([#8652](https://github.com/napari/napari/pull/8652))\n- Allow selection in feature table widget with empty features ([#8653](https://github.com/napari/napari/pull/8653))\n- Fix event triggering start of welcome screen ([#8660](https://github.com/napari/napari/pull/8660))\n- Fix `_disconnect_child_emitters` for `PsygnalModel` dict elements ([#8674](https://github.com/napari/napari/pull/8674))\n- Increase minimum version of pyopengl to allow start napari ([#8679](https://github.com/napari/napari/pull/8679))\n- Fix colorbar for int/bool dtypes ([#8684](https://github.com/napari/napari/pull/8684))\n- Correctly hide welcome screen when layers are present ([#8688](https://github.com/napari/napari/pull/8688))\n- Ensure that errors are propagated during async loading ([#8691](https://github.com/napari/napari/pull/8691))\n- Fix assign tuple of None to `layer.units` ([#8700](https://github.com/napari/napari/pull/8700))\n- Fix error raised when `out_of_slice_display = True` and update highlight ([#8717](https://github.com/napari/napari/pull/8717))\n- fix: fix `napari.imshow` return type hint ([#8726](https://github.com/napari/napari/pull/8726))\n- Fix harvesting plugins from CLI ([#8728](https://github.com/napari/napari/pull/8728))\n- Fix `--plugin` startup args ([#8729](https://github.com/napari/napari/pull/8729))\n- Update box and position of text overlay on font size change ([#8759](https://github.com/napari/napari/pull/8759))\n- Fix welcome spacing ([#8760](https://github.com/napari/napari/pull/8760))\n- Fix: Fire world unit updates after removing layer ([#8772](https://github.com/napari/napari/pull/8772))\n- Do not emit warning about units if there is no layer in viewer ([#8779](https://github.com/napari/napari/pull/8779))\n- Fix colorbar box offset ([#8780](https://github.com/napari/napari/pull/8780))\n- Fix: Qt6 font error on Windows when adding layers or widgets ([#8782](https://github.com/napari/napari/pull/8782))\n- Fix: ValidationError in Drag to Zoom with data ndim>2 ([#8784](https://github.com/napari/napari/pull/8784))\n\n## Build Tools\n\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n\n## Documentation\n\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n- Adding a new example of a multiplexed immunofluorescent image of a murine heart ([#8680](https://github.com/napari/napari/pull/8680))\n- Add sphinxext-rediraffe to docs requirements ([#8690](https://github.com/napari/napari/pull/8690))\n- Update examples gallery for 0.7.0 angles ([#8709](https://github.com/napari/napari/pull/8709))\n- Add 3D points to add_points_3d example ([#8746](https://github.com/napari/napari/pull/8746))\n- Update contributing info and include AI policy and guidelines ([#8754](https://github.com/napari/napari/pull/8754))\n- Fix `image_depth.py` example by setting `blending` to `translucent` ([#8764](https://github.com/napari/napari/pull/8764))\n- Update units rendering example for docs gallery ([#8767](https://github.com/napari/napari/pull/8767))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\n- Update governance documentation ([docs#911](https://github.com/napari/docs/pull/911))\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\n- Update display text copy in shapes.md ([docs#914](https://github.com/napari/docs/pull/914))\n- Update release notes for 0.7.0a1 ([docs#915](https://github.com/napari/docs/pull/915))\n- Simplify titles in App installation instructions ([docs#918](https://github.com/napari/docs/pull/918))\n- Remove mention of double click in macOS app instructions ([docs#920](https://github.com/napari/docs/pull/920))\n- Update release notes for 0.7.0a2 ([docs#922](https://github.com/napari/docs/pull/922))\n- Move code for setting recursion limit ([docs#927](https://github.com/napari/docs/pull/927))\n- Update scripts to pydantic v2 ([docs#928](https://github.com/napari/docs/pull/928))\n- Remove npe1-related docs ([docs#929](https://github.com/napari/docs/pull/929))\n- Add intersphinx mapping for pydantic ([docs#930](https://github.com/napari/docs/pull/930))\n- Add policy on LLM contributions based on Zulip's ([docs#932](https://github.com/napari/docs/pull/932))\n- Expand on 0.7.0 highlights ([docs#933](https://github.com/napari/docs/pull/933))\n- Fix camera angles in handedness guide ([docs#940](https://github.com/napari/docs/pull/940))\n- Add guide explaining default axis names ([docs#942](https://github.com/napari/docs/pull/942))\n- Add info about new points/shapes layer button behavior ([docs#943](https://github.com/napari/docs/pull/943))\n- Add final? 0.7.0 highlights and group by topic ([docs#944](https://github.com/napari/docs/pull/944))\n- Add redirects to pages moved in Usage section ([docs#946](https://github.com/napari/docs/pull/946))\n- Fix typo in optional-dependencies ([docs#947](https://github.com/napari/docs/pull/947))\n- Update references to PyQt5 as default backend to PyQt6 ([docs#950](https://github.com/napari/docs/pull/950))\n- Update 0.7.0 highlights for rc0 ([docs#951](https://github.com/napari/docs/pull/951))\n- Restructure homepage and add rotating featured examples ([docs#953](https://github.com/napari/docs/pull/953))\n- Wayland Debug information ([docs#956](https://github.com/napari/docs/pull/956))\n- Update release notes for 0.7.0rc1 ([docs#957](https://github.com/napari/docs/pull/957))\n- Refresh installation guide, with focus on bundled app instructions ([docs#958](https://github.com/napari/docs/pull/958))\n- Update notes for 0.7.0rc2 ([docs#959](https://github.com/napari/docs/pull/959))\n\n## Other Pull Requests\n\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Maint: Update test_prereleases.yml to also test on pyside6 ([#8470](https://github.com/napari/napari/pull/8470))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Migrate EventedModel to pydantic v2 and overlays to psygnal to support python 3.14  ([#8509](https://github.com/napari/napari/pull/8509))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `jsonschema`, `pandas`, `pillow`, `psutil`, `psygnal`, `pyqt6`, `scikit-image`, `scipy`, `superqt`, `tifffile`, `virtualenv` ([#8518](https://github.com/napari/napari/pull/8518))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\n- Fix typing in layers.points and layers.labels utilities ([#8549](https://github.com/napari/napari/pull/8549))\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\n- Remove npe1 code for reading and writing ([#8579](https://github.com/napari/napari/pull/8579))\n- Fix build constraints with circular napari dependency ([#8588](https://github.com/napari/napari/pull/8588))\n- Modify sphinx-external-toc version constraint to eliminate warnings ([#8591](https://github.com/napari/napari/pull/8591))\n- Switch logo URL used for reader test ([#8596](https://github.com/napari/napari/pull/8596))\n- Update `coverage`, `hypothesis`, `rich` ([#8597](https://github.com/napari/napari/pull/8597))\n- Move comment trigger of constraints update to a separate workflow ([#8600](https://github.com/napari/napari/pull/8600))\n- Fix running benchmarks by label by fix condition ([#8601](https://github.com/napari/napari/pull/8601))\n- [pre-commit.ci] pre-commit autoupdate ([#8602](https://github.com/napari/napari/pull/8602))\n- ci(dependabot): bump the actions group with 5 updates ([#8613](https://github.com/napari/napari/pull/8613))\n- Update `babel`, `dask`, `hypothesis`, `pooch`, `psutil`, `rich`, `tifffile`, `tqdm`, `wrapt`, `xarray` ([#8615](https://github.com/napari/napari/pull/8615))\n- Postpone QtViewer deprecation to 0.8.0 ([#8617](https://github.com/napari/napari/pull/8617))\n- Remove settings call on import in qt_event_loop ([#8619](https://github.com/napari/napari/pull/8619))\n- Remove remaining `npe1` usage ([#8622](https://github.com/napari/napari/pull/8622))\n- Add `uv.lock` and leak graphs to gitignore ([#8637](https://github.com/napari/napari/pull/8637))\n- Fix pint warning about deprecation of getitem ([#8638](https://github.com/napari/napari/pull/8638))\n- Update `coverage`, `fsspec`, `hypothesis`, `ipython`, `pillow`, `pyside6`, `qtconsole`, `tensorstore`, `tqdm`, `wrapt`, `xarray` ([#8641](https://github.com/napari/napari/pull/8641))\n- Bump superqt to 0.7.8 ([#8646](https://github.com/napari/napari/pull/8646))\n- Bump napari plugin manager ([#8647](https://github.com/napari/napari/pull/8647))\n- Add/unify background box for canvas overlays ([#8654](https://github.com/napari/napari/pull/8654))\n- [pre-commit.ci] pre-commit autoupdate ([#8655](https://github.com/napari/napari/pull/8655))\n- Upload triangulation artifacts if benchmarks fails ([#8664](https://github.com/napari/napari/pull/8664))\n- Maint: Have triangle only on py313 and lower ([#8668](https://github.com/napari/napari/pull/8668))\n- Update `pydantic-settings`, `tifffile` ([#8671](https://github.com/napari/napari/pull/8671))\n- [pre-commit.ci] pre-commit autoupdate ([#8675](https://github.com/napari/napari/pull/8675))\n- Add pregenerated data to stabilize shapes triangulation benchmarks ([#8676](https://github.com/napari/napari/pull/8676))\n- Update `hypothesis`, `numpy`, `pandas`, `pydantic-settings`, `rich`, `scipy`, `tifffile`, `virtualenv` ([#8692](https://github.com/napari/napari/pull/8692))\n- Add python 3.14 classifier to project metadata ([#8693](https://github.com/napari/napari/pull/8693))\n- [pre-commit.ci] pre-commit autoupdate ([#8697](https://github.com/napari/napari/pull/8697))\n- ci(dependabot): bump the actions group with 3 updates ([#8713](https://github.com/napari/napari/pull/8713))\n- Update `certifi`, `tifffile`, `virtualenv` ([#8716](https://github.com/napari/napari/pull/8716))\n- Update pyqt5 default references to pyqt6 ([#8732](https://github.com/napari/napari/pull/8732))\n- Remove usage of `partial` from `qt_viewer_buttons` ([#8741](https://github.com/napari/napari/pull/8741))\n- Update `numpy`, `superqt`, `tifffile`, `wrapt` ([#8748](https://github.com/napari/napari/pull/8748))\n- [pre-commit.ci] pre-commit autoupdate ([#8753](https://github.com/napari/napari/pull/8753))\n- Update `imageio`, `pydantic-extra-types`, `tensorstore`, `virtualenv` ([#8773](https://github.com/napari/napari/pull/8773))\n- [pre-commit.ci] pre-commit autoupdate ([#8774](https://github.com/napari/napari/pull/8774))\n- Update plugin manager constraint ([#8781](https://github.com/napari/napari/pull/8781))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\n- Prepare on migration to `sphinxcontrib-mermaid` ([docs#923](https://github.com/napari/docs/pull/923))\n- ci(dependabot): bump the github-actions group with 2 updates ([docs#925](https://github.com/napari/docs/pull/925))\n- ci(dependabot): bump actions/download-artifact from 7.0.0 to 8.0.0 in the github-actions group ([docs#948](https://github.com/napari/docs/pull/948))\n\n\n## 25 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [LiudengZhang](https://github.com/napari/napari/commits?author=LiudengZhang) - @LiudengZhang +\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Neil Shephard](https://github.com/napari/docs/commits?author=ns-rse) - @ns-rse +\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Samuel Le Meur-Diebolt](https://github.com/napari/napari/commits?author=sdiebolt) - @sdiebolt +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 25 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carlos Mario Rodriguez Reza](https://github.com/napari/docs/commits?author=carlosmariorr) - @carlosmariorr\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [Kyle I. S. Harrington](https://github.com/napari/docs/commits?author=kephale) - @kephale\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/299252102/reactions","total_count":1,"+1":0,"-1":0,"laugh":1,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"mentions_count":30},{"url":"https://api.github.com/repos/napari/napari/releases/298907581","assets_url":"https://api.github.com/repos/napari/napari/releases/298907581/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/298907581/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0rc2","id":298907581,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84R0Pe9","tag_name":"v0.7.0rc2","target_commitish":"ed9027557d530b5b81be610c4e44eb1b580d96b6","name":"0.7.0rc2","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-03-19T11:14:07Z","updated_at":"2026-03-19T11:24:49Z","published_at":"2026-03-19T11:15:38Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/377113558","id":377113558,"node_id":"RA_kwDOCJ0aI84WekvW","name":"napari-0.7.0rc2-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44449,"digest":"sha256:4deba5a3f2ab80f2619a6ea81374863a56eab14f7f2e2f6a192be07ee9a5a0fc","download_count":1,"created_at":"2026-03-19T11:21:46Z","updated_at":"2026-03-19T11:21:46Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc2/napari-0.7.0rc2-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/377113309","id":377113309,"node_id":"RA_kwDOCJ0aI84Wekrd","name":"napari-0.7.0rc2-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":575625331,"digest":"sha256:09f9925b623747937082fb8ebf56ea4304e4b251feaebe4e8e0658c0afc537b2","download_count":3,"created_at":"2026-03-19T11:21:21Z","updated_at":"2026-03-19T11:21:45Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc2/napari-0.7.0rc2-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/377110350","id":377110350,"node_id":"RA_kwDOCJ0aI84Wej9O","name":"napari-0.7.0rc2-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3489563,"digest":"sha256:baebd07b1101710babaa998a2d195b934aeb4a8be6aef10f038f25abfdf413d8","download_count":3,"created_at":"2026-03-19T11:15:36Z","updated_at":"2026-03-19T11:15:37Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc2/napari-0.7.0rc2-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/377114630","id":377114630,"node_id":"RA_kwDOCJ0aI84WelAG","name":"napari-0.7.0rc2-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":567511592,"digest":"sha256:243d4f875c16ca28e24e9ffb2a59a720ade7e181d8d2d2a271e15da866174f6b","download_count":3,"created_at":"2026-03-19T11:24:24Z","updated_at":"2026-03-19T11:24:48Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc2/napari-0.7.0rc2-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/377114808","id":377114808,"node_id":"RA_kwDOCJ0aI84WelC4","name":"napari-0.7.0rc2-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34229,"digest":"sha256:0790006840a78c67ba7427ef047ae4aad24a9253602bca70b22cfcb9edbfb09d","download_count":1,"created_at":"2026-03-19T11:24:49Z","updated_at":"2026-03-19T11:24:49Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc2/napari-0.7.0rc2-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/377110351","id":377110351,"node_id":"RA_kwDOCJ0aI84Wej9P","name":"napari-0.7.0rc2.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3103301,"digest":"sha256:7b9bfe4dd66e569c9ee8e35521a59e37faa65f3dccb054dcae0a4836dbd36491","download_count":3,"created_at":"2026-03-19T11:15:36Z","updated_at":"2026-03-19T11:15:37Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc2/napari-0.7.0rc2.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0rc2","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0rc2","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Fri, Mar 20, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\n### Breaking Changes\n\n#### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed ([PR #8448](https://github.com/napari/napari/pull/8448)),\nand plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nThis change has been a long time coming, and it's allowed us to remove thousands\nof lines of tangled and confusing legacy code. Now that we have, it's unleashed\nthe potential for massive improvements to file opening and saving in `napari`,\nand exciting new features for our plugin infrastructure. Stay tuned!\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n#### Negative axis labels? A real positive\n\nIf you've ever loaded data of mixed dimensionality in napari, like a TYX volume\nalongside a YX segmentation, you may have noticed the default axis labels didn't\nquite line up:\n\n| axes   | 0 | 1 | 2 |\n|--------|---|---|---|\n| volume | 0 | 1 | 2 |\n| segmt  |   | 0 | 1 |\n\nThat's because napari used 0-based indexing for its viewer axis labels, which breaks\ndown when layers have different numbers of dimensions. With\n[#8565](https://github.com/napari/napari/pull/8565),\nviewer axis labels now use negative indexing by default, combining Python's negative indexing\nsemantics with NumPy's array broadcasting semantics. The last axis is always `-1`,\nthe second-to-last is always `-2`, and so on:\n\n| axes   | 0  | 1  | 2  |\n|--------|----|----|----|\n| volume | -3 | -2 | -1 |\n| segmt  |    | -2 | -1 |\n\nThis means axis labels stay consistent as you add or remove layers of different\ndimensionality -- axis `-1` is always your last axis. This also fixes\na long-standing bug where axis labels could end up duplicated when mixing layers of\ndifferent dimensionality ([#6569](https://github.com/napari/napari/issues/6569)).\n\nYou'll notice this change in the dims slider labels, the axis overlay, and the dims\npopup widget. If you already label your axes with your own names (e.g. `z`, `y`, `x`),\nnothing's changed. For everyone else, we have consistency at last!\n\n\n#### What's in an angle? The truth! Fixed camera angles 🎥\n\nIf you've ever set up the camera to take that perfect publication-worthy photo of\nyour data (and taken the time to query the camera angles), you may have noticed they seemed... off.\nThat's because they were! Very... off. This was due to a long-standing bug in how we calculated our\ncamera angles, fueled in part by some arcane vispy axis-swapping tomfoolery, and in part by napari's\nstarting position of `viewer.camera.angles = (0, 0, 90)`.\n\nGood news! With [#8281](https://github.com/napari/napari/pull/8281), angles make sense again. The default camera angles are `(0, 0, 0)`, and they\nmove intuitively -- so `viewer.camera.angles = (10, 0, 0)` actually represents a 10 degree\nrotation around the [-3rd](#negative-axis-labels-a-real-positive) dimension. What a time to be alive!\n\nOld versions of napari:\n\n![Image showing an old version of a napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console.](https://github.com/user-attachments/assets/9ae2040c-36f7-4c4c-8ef8-140202d7ccda)\n\nNew and sane:\n\n![Image showing the 0.7.0 napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console. The layer is rotated 10 degrees in its first dimension](https://github.com/user-attachments/assets/6b972b46-5c3c-439a-8b0a-fe8a293224e5)\n\nAll rotations are now right-handed (counterclockwise when the axis points towards the viewer),\nwith automatic sign-flipping for flipped camera views.\n\nNow for the bad news... After many (and we do [mean](https://github.com/napari/napari/pull/8537)\n[**many**](https://github.com/napari/napari/pull/8557)) attempts, we realized we couldn't\nprovide legacy conversion functions to get you to and from the original camera angles. Therefore,\nthis is a **breaking change**.\n\nIf you had scripts or notebooks setting up angles for screenshots, or if you've got workshop\nmaterials or tutorials with preset angles, they'll need to be updated. Any existing code\nusing `viewer.camera.angles = (z, y, x)` will now produce a different view than before.\n\n#### Limiting `self.events` callbacks\n\nIn [#8672](https://github.com/napari/napari/pull/8672), we changed how we emit events from\nthe parent `self.events` group.\n\nPreviously, connecting a callback to an `EventedModel`'s top-level event group\n(e.g. `model.events.connect(callback)`) would cause that callback to fire multiple times\nwhen a single assignment triggered multiple dependent fields. For example:\n\n```python\nclass MyModel(EventedModel):\n    a: int\n\n    @property\n    def b(self):\n        return self.a * 2\n\n    @b.setter\n    def b(self, value):\n        self.a = value // 2\n\nmodel = MyModel(a=1)\nmodel.events.connect(my_callback)\n\nmodel.a = 4  # previously called my_callback twice (once for 'a', once for 'b')\n             # now calls my_callback once\n```\n\nThe callback connected to `model.events` will now be called exactly once, with the event `type`\nset to the first changed field and `value` set to its new value. Callbacks connected to specific\nfield events (e.g. `model.events.a.connect(...)`) are unaffected and continue to work as before.\n\nIf you connect to `model.events` directly and relied on receiving one call per dependent field\nchange, you will need to connect to the individual field events instead.\n\n### New features & widgets\n\n#### What's my metadata? Where's my metadata? `napari-metadata` to the rescue\n\nWith a lot of work from our community contributor, Carlos Mario Rodriguez Reza\n(https://github.com/carlosmariorr), and\nour venerable community manager Tim Monko (https://github.com/timmonko),\n`napari` now has a metadata viewing and editing plugin\nincluded in our `napari[all]` installation and our bundle ([PR #8576](https://github.com/napari/napari/pull/8576)).\n\n![Screenshot of napari displaying an image of neurons, with the napari-metadata Layer Metadata widget across the bottom of the viewer.](https://raw.githubusercontent.com/napari/napari-metadata/main/docs/images/horizontal-widget.png)\n\nOpen the `Layer metadata` widget from the `Plugins` menu and you can view File information, and view and edit Axes metadata such as\naxis labels, translation and scale! You can also use the widget to copy specified metadata across to other layers.\n\nCheck out the [README](https://github.com/napari/napari-metadata) for some usage documentation, and feel\nfree to open an issue to request new features -- we're actively improving this plugin so, more to come!\n\n#### (Layer) Features galore\n\nPrior to 0.7.0, our Features table widget only supported showing individual selected layer features.\n\nWith [#8189](https://github.com/napari/napari/pull/8189), courtesy of Marcelo Zoccoler\n(https://github.com/zoccoler), the widget will display\nfeatures of all selected layers! The layer's name is displayed in an additional column, so you\nalways know what you're looking at, and you can choose to display only the shared feature columns\nacross all layers. Pretty slick!\n\n![GIF displaying the usage of the features table with multiple selected layers.](https://github.com/user-attachments/assets/e06fd403-ed03-4edd-9192-a4e287d25ff7)\n\n#### Smarter new layer buttons - inheriting from selected layers\n\nPrior to 0.7.0, creating a new layer Points, Shapes or Labels layer would give you a layer\nwith extent and dimensionality equal to the union of all currently open layers, and with\nnone of the other spatial information (scale, units, etc.) inherited.\n\nNow, with [#8357](https://github.com/napari/napari/pull/8357) and [#8702](https://github.com/napari/napari/pull/8702)\nyou can create new Shapes, Points or Labels layer that inherits from a selected layer\n(or a combination of selected layers).\n\n##### Shapes & Points\n\nIf you have one layer selected, your new `Shapes` or `Points` layer will copy\nall spatial information from its ancestor, ready for annotating!\nIf you have multiple layers selected, only scale is copied.\n\nIf you wish to recover the original behavior, select all existing layers before creating your new layer.\nDeselecting all layers gives you a layer with only the number of dimensions inherited,\nand no other properties.\n\n##### Labels\n\n`Labels` layers inherit all spatial information when a single `Image` or `Labels` layer is selected.\nWhen multiple `Image` or `Labels` layers are selected, or the selection includes any combination of\nother layer types, the new `Labels` layer will span their extent -- take note, this layer could be\nhuge!\n\nThe `Labels` button is disabled when layers are present in the viewer and none are selected.\n(You can still create a (512 x 512) `Labels` layer when there are no layers present).\n\n##### Visual cues\n\n[#8768](https://github.com/napari/napari/pull/8768) ensures this change is not invisible!\nWhen your selection will result in full inheritance of spatial information for the new layer,\nthe new layer buttons will be highlighted.\nThe highlight color will become dimmer when your selection will result in the new layer only\ninheriting the extent of your existing selection. If you're lost\nin the inheritance madness, you can also hover over the buttons to get details about the behavior.\n\n![GIF displaying the highlights on the Shapes, Points and Labels new layer buttons when one or more layers are selected in the layerlist](https://github.com/user-attachments/assets/17361e45-dbca-4770-be11-d74c882eedb5)\n\nPS -- You can now also create these new layers from the `File -> New Layer` menu!\n\n#### Better text overalys 🔡\n\nWith [#8236](https://github.com/napari/napari/pull/8236), we've not only refactored text overlays\nso they're easier to implement, but we've also introduced two new long-requested overlays:\nthe layer name overlay, and an overlay for the current slice. Together, they make generating\npublication-ready figures much easier!\n\n![Image showing the napari viewer with two layers in grid mode. Each layer has its name displayed in the top left, and the current slice displayed in the bottom right.](https://github.com/user-attachments/assets/3c96b38d-44c1-432b-b294-aa9c0934a553)\n\nTry it yourself:\n\n```python\nimport napari\nv = napari.Viewer()\nv.grid.enabled = True\nll = v.open_sample('napari', 'cells3d')\nfor l in ll:\n    l.name_overlay.visible = True\nv.scale_bar.visible = True\nv.scale_bar.gridded = True\nv._overlays['current_slice'].visible = True\nv._overlays['current_slice'].gridded = True\nv.dims.axis_labels = ['z', 'y', 'x']\n```\n\n**Note**: the `v._overlays` attribute is still private as we're working out the best API.\n\n### Rendering & display\n\n#### More pixels to play with - texture tiling\n\nEver loaded a large 2D image in napari just to zoom in and feel like you're not\nreally getting a lot of bang for your pixel bucks? That's because we were\ndownsampling images that were too large to send the whole thing to the GPU.\n\nCourtesy of Guillaume Witz (https://github.com/guiwitz), and his PR for\ntexture tiling ([PR #8395](https://github.com/napari/napari/pull/8395)) 2D\nimages that exceed OpenGL's maximum texture size will be split into multiple\ntiles, each small enough to fit on the GPU.\n\n![Image with a screenshot of napari 0.6.6 on the left and napari 0.7.0 on the right displaying a DeCAM image of the Milky Way. The image on the left is pixelated, while the image on the right is displayed at full resolution.](https://github.com/user-attachments/assets/d0a115a8-49d5-432c-b561-f29fe9ac8116)\n\n#### Rendering layers in physical space - units matter!\n\nIn 0.6.6 and below, units were stored in metadata, but not used for rendering.\nAdding two layers that represented the same physical space, but had different\nunits, e.g. a layer with `scale=500, units='nm'` and one with `scale=0.5, units='μm'`\nwouldn't overlap correctly, even though they should.\n\nThanks to [#7889](https://github.com/napari/napari/pull/8395), layers with\ncompatible units (i.e. those that share the same physical dimension per axis,\nlike all spatial), will make use of `units` and `scale` to overlap correctly,\nusing the smallest unit as the rendering space.\n\nUnits can also be set globally on the layer list using `viewer.layers.units = ('nm', 'nm')`,\nforcing layers to be rendered in this space. If a new layer is added with more dimensions\nthan the current layers, this global override is dropped with a warning.\n\n#### Points - any size you like 🟣\n\nOn macOS, the points layer has never been able to reach its full potential, as OpenGL\ndrivers limit the size of an individual marker to a certain number of screen pixels.\n\nWith [#8552](https://github.com/napari/napari/pull/8552) and the release of `vispy v0.16`,\nthis long-standing issue has finally been resolved. Across all operating systems, you can\nmake your points as big as you want!\n\nThis change has also propagated to the zoom behaviour on macOS -- points now zoom\nproportionally to the data, rather than staying the same size in screen pixels.\n\nHere's the behaviour pre 0.7.0:\n\n```{raw} html\n<figure>\n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_066.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_066.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_066.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points stay the same size in screen pixels.\" \n    > \n  </video> \n</figure> \n``` \n\nAnd now:\n\n```{raw} html\n<figure> \n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_070.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_070.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_070.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points scale proportionally to the data.\" \n    > \n  </video> \n</figure> \n```\n\n### Performance\n\n#### Grid mode -- bigger, better, faster 📈\n\nIf you've been playing with our new grid mode since 0.6.5, you\nmay have stumbled into performance issues when progressively adding\nnew layers to the viewer. Stumble no longer! Our grid mode is now wicked fast and buttery smooth 🧈.\n\nWe've also fixed some issues with mouse interactions and deleting\nlayers, so you can tile to your heart's content. Try it out:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n#### Add & delete layers without delay\n\n[#8479](https://github.com/napari/napari/pull/8479) and [#8443](https://github.com/napari/napari/pull/8443)\nmade a number of improvements to\nour layer and overlay clean-up, addressing a number of issues with large numbers of layers\nin the viewer - adding them, deleting them, and even closing the viewer is now snappy\nand smooth!\n\n#### Shapes layers -- select, zoom, delete, repeat\n\nIf you've ever tried working with thousands of shapes in napari, you'll know\nit could get... painful. Selecting 10,000 shapes with a box took over 50 seconds,\ndeleting 5,000 shapes took over a minute, and zooming with shapes selected\nwould lock up the viewer entirely. Not anymore!\n\n0.7.0 brings a flurry of performance improvements:\n\n- Box selection now uses bounding boxes and vectorized intersection tests,\n  delivering a more than 100x speedup ([#8378](https://github.com/napari/napari/pull/8378)).\n  Selecting 10,000 shapes goes from >50s to ~0.3s.\n- Batch deletion replaces one-by-one removal for another 100x speedup\n  ([#8375](https://github.com/napari/napari/pull/8375))! Deleting 50,000 shapes\n  now takes under half a second.\n- Outline computation is batched and cached, so zooming and panning with\n  selected shapes no longer blocks\n  ([#8403](https://github.com/napari/napari/pull/8403),\n  [#8536](https://github.com/napari/napari/pull/8536)).\n- Highlight updates are throttled for large layers, enabling smooth zoom\n  even with 200,000+ shapes ([#8404](https://github.com/napari/napari/pull/8404)).\n- Mode switching no longer triggers unnecessary redraws, giving another\n  ~3x speedup when many shapes are selected\n  ([#8551](https://github.com/napari/napari/pull/8551)).\n\nBeware: there's still more to do, because drawing and drag-moving large selections\nremain slow!\n\n#### Multiscale -- less to update, more to celebrate\n\nPR [#8678](https://github.com/napari/napari/pull/8678) introduced a small change\nwith a big effect! Now, zooming in (and panning while zoomed in), will only trigger\na data refresh if the multiscale level has changed **or** if the new view falls outside\nof already loaded data.\n\n#### Delete the launch codes -- no more macOS hacks on launch\n\nIn 0.6.6 and below, we had some macOS specific launch code that skirted around some\nissues (which are now no longer relevant), and hackily \"relaunched\" napari to make\nsure the application name was correct.\n\nThis code added up to a whole second to our launch time, as well as being potentially\nproblematic for some users. PR [#8705](https://github.com/napari/napari/pull/8705)\nremoved this code, making our start-up a little less hacky and a little more snappy.\nThe downside is that when launching napari on macOS, the app name may be listed as\nPython, instead of napari. We think the trade-off is worth it.\n\n\n### Infrastructure & dependencies\n\nA couple of notes on big changes in our dependencies:\n\n- With #8509 we improved our support for `pydantic v2`, allowing us to enable support for Python 3.14!\nThis brings us one step closer to fully adopting `psygnal` as our event library.\n- In [#8450](https://github.com/napari/napari/pull/8450) we dropped support for PySide2. If you\nwere using napari with PySide for your Qt bindings, you'll need to upgrade to PySide6. Good news\nis that PySide6 is looking pretty stable, while PySide2 had some compatibility issues with numpy2,\nand had to be built from source for Python 3.11+.\n- In ([#8665](https://github.com/napari/napari/pull/8665)) we updated the default qt\nbinding to PyQt6. PyQt6 will now be installed with `napari[all]` installations. Windows users\nshould see improvements to their display with better support for fractional scaling!\n- In [#8338](https://github.com/napari/napari/pull/8338) we replaced `numpydoc` with `docstring_parser`\nfor parsing our docstrings. This will be a pretty invisible change from a user's perspective, but\nit saves more than 50MB of disk space for a napari install!\n\n## New Features\n\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Don't warn user when a Zarr array with channel axis is passed ([#8559](https://github.com/napari/napari/pull/8559))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n- Add colorbar & bounding box overlays to Layers menu ([#8611](https://github.com/napari/napari/pull/8611))\n- Add visual for new points/shapes button on selected layers ([#8649](https://github.com/napari/napari/pull/8649))\n- Limit `self.events` callbacks trigger to only once per assignment ([#8672](https://github.com/napari/napari/pull/8672))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- Warn users when features data looks categorical ([#8685](https://github.com/napari/napari/pull/8685))\n- Fix type annotation in viewer keybindings, use QtViewer for console ([#8694](https://github.com/napari/napari/pull/8694))\n- Do not inherit scale for points and shapes if no layer is selected ([#8701](https://github.com/napari/napari/pull/8701))\n- Inherit spatial information for new `Labels` layers when only one other `Labels` or `Image` layer is selected ([#8702](https://github.com/napari/napari/pull/8702))\n- [UI, UX] Make dock widget title bar icons bigger and text more legible ([#8714](https://github.com/napari/napari/pull/8714))\n- Perf, enh: defer dask.array loading by moving import into functions ([#8720](https://github.com/napari/napari/pull/8720))\n- Change look of new layer buttons to mark that there are 3 modes ([#8723](https://github.com/napari/napari/pull/8723))\n- If path arg is passed to CLI napari, don't show welcome overlay ([#8725](https://github.com/napari/napari/pull/8725))\n- UI: Add keybinding for Image layer reset_contrast_limits ([#8730](https://github.com/napari/napari/pull/8730))\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\n- Use capitalized name of source layer type when adding layer ([#8740](https://github.com/napari/napari/pull/8740))\n- Add scale example for anisotropic 3D data ([#8742](https://github.com/napari/napari/pull/8742))\n- Raise FileNotFoundError early when opening nonexistent paths ([#8747](https://github.com/napari/napari/pull/8747))\n- Ensure that layers are unlinked after deletion from layerlist  ([#8749](https://github.com/napari/napari/pull/8749))\n- Use custom Font manager to use Qt discovery mechanism ([#8751](https://github.com/napari/napari/pull/8751))\n- Restyle new_layer button creation state visuals ([#8768](https://github.com/napari/napari/pull/8768))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\n- Low hanging Labels painting performance improvement ([#8592](https://github.com/napari/napari/pull/8592))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- [Perf] Remove napari splash screen ([#8686](https://github.com/napari/napari/pull/8686))\n- [Maint] Remove all macOS specific launch code as it's out-dated or problematic (re-running with symlink) ([#8705](https://github.com/napari/napari/pull/8705))\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n- Fix dim order of rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\n- Close proper window on Ctrl+W ([#8548](https://github.com/napari/napari/pull/8548))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Enable instanced markers if available. ([#8552](https://github.com/napari/napari/pull/8552))\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\n- Account for tile2data in the Labels polygon overlay ([#8563](https://github.com/napari/napari/pull/8563))\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\n- Stop welcome screen time on hiding of QtWiewer ([#8585](https://github.com/napari/napari/pull/8585))\n- Fix Labels layer controls contiguous checkbox to initialize to the layer state ([#8594](https://github.com/napari/napari/pull/8594))\n- Proper cleanup and reuse of existing overlays ([#8610](https://github.com/napari/napari/pull/8610))\n- [UI] Update the viewer button tooltips to use the new axis labels (-3, -2, -1) ([#8614](https://github.com/napari/napari/pull/8614))\n- Fix scale bar padding ([#8616](https://github.com/napari/napari/pull/8616))\n- Fix empty thumbnail ([#8620](https://github.com/napari/napari/pull/8620))\n- Reverse overlay tiling order ([#8623](https://github.com/napari/napari/pull/8623))\n- Fix welcome screen timer ([#8627](https://github.com/napari/napari/pull/8627))\n- Reinitialize welcome screen shortcuts in a less ugly way ([#8634](https://github.com/napari/napari/pull/8634))\n- Fix empty points tiny point ([#8639](https://github.com/napari/napari/pull/8639))\n- Fix labels of angle order of camera widget ([#8644](https://github.com/napari/napari/pull/8644))\n- Add a opaque background Rectangle to Welcome overlay ([#8645](https://github.com/napari/napari/pull/8645))\n- Do not start welcome widget timer until QtViewer is visible ([#8652](https://github.com/napari/napari/pull/8652))\n- Allow selection in feature table widget with empty features ([#8653](https://github.com/napari/napari/pull/8653))\n- Fix event triggering start of welcome screen ([#8660](https://github.com/napari/napari/pull/8660))\n- Fix `_disconnect_child_emitters` for `PsygnalModel` dict elements ([#8674](https://github.com/napari/napari/pull/8674))\n- Increase minimum version of pyopengl to allow start napari ([#8679](https://github.com/napari/napari/pull/8679))\n- Fix colorbar for int/bool dtypes ([#8684](https://github.com/napari/napari/pull/8684))\n- Correctly hide welcome screen when layers are present ([#8688](https://github.com/napari/napari/pull/8688))\n- Ensure that errors are propagated during async loading ([#8691](https://github.com/napari/napari/pull/8691))\n- Fix assign tuple of None to `layer.units` ([#8700](https://github.com/napari/napari/pull/8700))\n- Fix error raised when `out_of_slice_display = True` and update highlight ([#8717](https://github.com/napari/napari/pull/8717))\n- fix: fix `napari.imshow` return type hint ([#8726](https://github.com/napari/napari/pull/8726))\n- Fix harvesting plugins from CLI ([#8728](https://github.com/napari/napari/pull/8728))\n- Fix `--plugin` startup args ([#8729](https://github.com/napari/napari/pull/8729))\n- Update box and position of text overlay on font size change ([#8759](https://github.com/napari/napari/pull/8759))\n- Fix welcome spacing ([#8760](https://github.com/napari/napari/pull/8760))\n- Fix: Fire world unit updates after removing layer ([#8772](https://github.com/napari/napari/pull/8772))\n- Do not emit warning about units if there is no layer in viewer ([#8779](https://github.com/napari/napari/pull/8779))\n- Fix colorbar box offset ([#8780](https://github.com/napari/napari/pull/8780))\n\n## Build Tools\n\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n\n## Documentation\n\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n- Adding a new example of a multiplexed immunofluorescent image of a murine heart ([#8680](https://github.com/napari/napari/pull/8680))\n- Add sphinxext-rediraffe to docs requirements ([#8690](https://github.com/napari/napari/pull/8690))\n- Update examples gallery for 0.7.0 angles ([#8709](https://github.com/napari/napari/pull/8709))\n- Add 3D points to add_points_3d example ([#8746](https://github.com/napari/napari/pull/8746))\n- Update contributing info and include AI policy and guidelines ([#8754](https://github.com/napari/napari/pull/8754))\n- Fix `image_depth.py` example by setting `blending` to `translucent` ([#8764](https://github.com/napari/napari/pull/8764))\n- Update units rendering example for docs gallery ([#8767](https://github.com/napari/napari/pull/8767))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\n- Update governance documentation ([docs#911](https://github.com/napari/docs/pull/911))\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\n- Update display text copy in shapes.md ([docs#914](https://github.com/napari/docs/pull/914))\n- Update release notes for 0.7.0a1 ([docs#915](https://github.com/napari/docs/pull/915))\n- Simplify titles in App installation instructions ([docs#918](https://github.com/napari/docs/pull/918))\n- Remove mention of double click in macOS app instructions ([docs#920](https://github.com/napari/docs/pull/920))\n- Update release notes for 0.7.0a2 ([docs#922](https://github.com/napari/docs/pull/922))\n- Move code for setting recursion limit ([docs#927](https://github.com/napari/docs/pull/927))\n- Update scripts to pydantic v2 ([docs#928](https://github.com/napari/docs/pull/928))\n- Remove npe1-related docs ([docs#929](https://github.com/napari/docs/pull/929))\n- Add intersphinx mapping for pydantic ([docs#930](https://github.com/napari/docs/pull/930))\n- Add policy on LLM contributions based on Zulip's ([docs#932](https://github.com/napari/docs/pull/932))\n- Expand on 0.7.0 highlights ([docs#933](https://github.com/napari/docs/pull/933))\n- Fix camera angles in handedness guide ([docs#940](https://github.com/napari/docs/pull/940))\n- Add guide explaining default axis names ([docs#942](https://github.com/napari/docs/pull/942))\n- Add info about new points/shapes layer button behavior ([docs#943](https://github.com/napari/docs/pull/943))\n- Add final? 0.7.0 highlights and group by topic ([docs#944](https://github.com/napari/docs/pull/944))\n- Add redirects to pages moved in Usage section ([docs#946](https://github.com/napari/docs/pull/946))\n- Fix typo in optional-dependencies ([docs#947](https://github.com/napari/docs/pull/947))\n- Update references to PyQt5 as default backend to PyQt6 ([docs#950](https://github.com/napari/docs/pull/950))\n- Update 0.7.0 highlights for rc0 ([docs#951](https://github.com/napari/docs/pull/951))\n- Restructure homepage and add rotating featured examples ([docs#953](https://github.com/napari/docs/pull/953))\n- Wayland Debug information ([docs#956](https://github.com/napari/docs/pull/956))\n- Update release notes for 0.7.0rc1 ([docs#957](https://github.com/napari/docs/pull/957))\n- Refresh installation guide, with focus on bundled app instructions ([docs#958](https://github.com/napari/docs/pull/958))\n\n## Other Pull Requests\n\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Maint: Update test_prereleases.yml to also test on pyside6 ([#8470](https://github.com/napari/napari/pull/8470))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Migrate EventedModel to pydantic v2 and overlays to psygnal to support python 3.14  ([#8509](https://github.com/napari/napari/pull/8509))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `jsonschema`, `pandas`, `pillow`, `psutil`, `psygnal`, `pyqt6`, `scikit-image`, `scipy`, `superqt`, `tifffile`, `virtualenv` ([#8518](https://github.com/napari/napari/pull/8518))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\n- Fix typing in layers.points and layers.labels utilities ([#8549](https://github.com/napari/napari/pull/8549))\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\n- Remove npe1 code for reading and writing ([#8579](https://github.com/napari/napari/pull/8579))\n- Fix build constraints with circular napari dependency ([#8588](https://github.com/napari/napari/pull/8588))\n- Modify sphinx-external-toc version constraint to eliminate warnings ([#8591](https://github.com/napari/napari/pull/8591))\n- Switch logo URL used for reader test ([#8596](https://github.com/napari/napari/pull/8596))\n- Update `coverage`, `hypothesis`, `rich` ([#8597](https://github.com/napari/napari/pull/8597))\n- Move comment trigger of constraints update to a separate workflow ([#8600](https://github.com/napari/napari/pull/8600))\n- Fix running benchmarks by label by fix condition ([#8601](https://github.com/napari/napari/pull/8601))\n- [pre-commit.ci] pre-commit autoupdate ([#8602](https://github.com/napari/napari/pull/8602))\n- ci(dependabot): bump the actions group with 5 updates ([#8613](https://github.com/napari/napari/pull/8613))\n- Update `babel`, `dask`, `hypothesis`, `pooch`, `psutil`, `rich`, `tifffile`, `tqdm`, `wrapt`, `xarray` ([#8615](https://github.com/napari/napari/pull/8615))\n- Postpone QtViewer deprecation to 0.8.0 ([#8617](https://github.com/napari/napari/pull/8617))\n- Remove settings call on import in qt_event_loop ([#8619](https://github.com/napari/napari/pull/8619))\n- Remove remaining `npe1` usage ([#8622](https://github.com/napari/napari/pull/8622))\n- Add `uv.lock` and leak graphs to gitignore ([#8637](https://github.com/napari/napari/pull/8637))\n- Fix pint warning about deprecation of getitem ([#8638](https://github.com/napari/napari/pull/8638))\n- Update `coverage`, `fsspec`, `hypothesis`, `ipython`, `pillow`, `pyside6`, `qtconsole`, `tensorstore`, `tqdm`, `wrapt`, `xarray` ([#8641](https://github.com/napari/napari/pull/8641))\n- Bump superqt to 0.7.8 ([#8646](https://github.com/napari/napari/pull/8646))\n- Bump napari plugin manager ([#8647](https://github.com/napari/napari/pull/8647))\n- Add/unify background box for canvas overlays ([#8654](https://github.com/napari/napari/pull/8654))\n- [pre-commit.ci] pre-commit autoupdate ([#8655](https://github.com/napari/napari/pull/8655))\n- Upload triangulation artifacts if benchmarks fails ([#8664](https://github.com/napari/napari/pull/8664))\n- Maint: Have triangle only on py313 and lower ([#8668](https://github.com/napari/napari/pull/8668))\n- Update `pydantic-settings`, `tifffile` ([#8671](https://github.com/napari/napari/pull/8671))\n- [pre-commit.ci] pre-commit autoupdate ([#8675](https://github.com/napari/napari/pull/8675))\n- Add pregenerated data to stabilize shapes triangulation benchmarks ([#8676](https://github.com/napari/napari/pull/8676))\n- Update `hypothesis`, `numpy`, `pandas`, `pydantic-settings`, `rich`, `scipy`, `tifffile`, `virtualenv` ([#8692](https://github.com/napari/napari/pull/8692))\n- Add python 3.14 classifier to project metadata ([#8693](https://github.com/napari/napari/pull/8693))\n- [pre-commit.ci] pre-commit autoupdate ([#8697](https://github.com/napari/napari/pull/8697))\n- ci(dependabot): bump the actions group with 3 updates ([#8713](https://github.com/napari/napari/pull/8713))\n- Update `certifi`, `tifffile`, `virtualenv` ([#8716](https://github.com/napari/napari/pull/8716))\n- Update pyqt5 default references to pyqt6 ([#8732](https://github.com/napari/napari/pull/8732))\n- Remove usage of `partial` from `qt_viewer_buttons` ([#8741](https://github.com/napari/napari/pull/8741))\n- Update `numpy`, `superqt`, `tifffile`, `wrapt` ([#8748](https://github.com/napari/napari/pull/8748))\n- [pre-commit.ci] pre-commit autoupdate ([#8753](https://github.com/napari/napari/pull/8753))\n- Update `imageio`, `pydantic-extra-types`, `tensorstore`, `virtualenv` ([#8773](https://github.com/napari/napari/pull/8773))\n- [pre-commit.ci] pre-commit autoupdate ([#8774](https://github.com/napari/napari/pull/8774))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\n- Prepare on migration to `sphinxcontrib-mermaid` ([docs#923](https://github.com/napari/docs/pull/923))\n- ci(dependabot): bump the github-actions group with 2 updates ([docs#925](https://github.com/napari/docs/pull/925))\n- ci(dependabot): bump actions/download-artifact from 7.0.0 to 8.0.0 in the github-actions group ([docs#948](https://github.com/napari/docs/pull/948))\n\n\n## 25 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [LiudengZhang](https://github.com/napari/napari/commits?author=LiudengZhang) - @LiudengZhang +\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Neil Shephard](https://github.com/napari/docs/commits?author=ns-rse) - @ns-rse +\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Samuel Le Meur-Diebolt](https://github.com/napari/napari/commits?author=sdiebolt) - @sdiebolt +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 25 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carlos Mario Rodriguez Reza](https://github.com/napari/docs/commits?author=carlosmariorr) - @carlosmariorr\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [Kyle I. S. Harrington](https://github.com/napari/docs/commits?author=kephale) - @kephale\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","mentions_count":30},{"url":"https://api.github.com/repos/napari/napari/releases/298363590","assets_url":"https://api.github.com/repos/napari/napari/releases/298363590/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/298363590/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0rc1","id":298363590,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84RyKrG","tag_name":"v0.7.0rc1","target_commitish":"13891a6d126f708d35c8a60876bf5cab5edfa940","name":"0.7.0rc1","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-03-18T09:36:23Z","updated_at":"2026-03-18T10:15:07Z","published_at":"2026-03-18T10:06:29Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/376349116","id":376349116,"node_id":"RA_kwDOCJ0aI84WbqG8","name":"napari-0.7.0rc1-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44443,"digest":"sha256:bda6bfb1934b6759f198f1fb8f415b08eae01e9aba988f9798d666b196490a91","download_count":1,"created_at":"2026-03-18T10:12:19Z","updated_at":"2026-03-18T10:12:19Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc1/napari-0.7.0rc1-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/376349037","id":376349037,"node_id":"RA_kwDOCJ0aI84WbqFt","name":"napari-0.7.0rc1-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":574785651,"digest":"sha256:9bdac7fb69af4215eac5d3a7d15e8a8475815b022078c9aec74e6ecbee96744b","download_count":3,"created_at":"2026-03-18T10:12:04Z","updated_at":"2026-03-18T10:12:18Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc1/napari-0.7.0rc1-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/376346737","id":376346737,"node_id":"RA_kwDOCJ0aI84Wbphx","name":"napari-0.7.0rc1-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3489555,"digest":"sha256:d1f010e485c2b2f2b5df08969261f3cdb66b20e8d367bfbb58c779e4eaf56934","download_count":3,"created_at":"2026-03-18T10:06:28Z","updated_at":"2026-03-18T10:06:28Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc1/napari-0.7.0rc1-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/376350211","id":376350211,"node_id":"RA_kwDOCJ0aI84WbqYD","name":"napari-0.7.0rc1-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":566418832,"digest":"sha256:78579943b57940192007c018fc700c4ce75c9b420f35e23ed1e81000f25c52c0","download_count":4,"created_at":"2026-03-18T10:14:45Z","updated_at":"2026-03-18T10:15:06Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc1/napari-0.7.0rc1-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/376350360","id":376350360,"node_id":"RA_kwDOCJ0aI84WbqaY","name":"napari-0.7.0rc1-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34223,"digest":"sha256:44fd5d64b9b6d532319a2c8e1afbef5a08a8c2332bfac076913b185ef0819796","download_count":1,"created_at":"2026-03-18T10:15:07Z","updated_at":"2026-03-18T10:15:07Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc1/napari-0.7.0rc1-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/376346738","id":376346738,"node_id":"RA_kwDOCJ0aI84Wbphy","name":"napari-0.7.0rc1.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3103181,"digest":"sha256:3bf54ee1fa24fb550171c5fddf3c914499de11e6e81dd1b01264618b76fcf983","download_count":3,"created_at":"2026-03-18T10:06:28Z","updated_at":"2026-03-18T10:06:28Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc1/napari-0.7.0rc1.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0rc1","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0rc1","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Fri, Mar 20, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\n### Breaking Changes\n\n#### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed ([PR #8448](https://github.com/napari/napari/pull/8448)),\nand plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nThis change has been a long time coming, and it's allowed us to remove thousands\nof lines of tangled and confusing legacy code. Now that we have, it's unleashed\nthe potential for massive improvements to file opening and saving in `napari`,\nand exciting new features for our plugin infrastructure. Stay tuned!\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n#### Negative axis labels? A real positive\n\nIf you've ever loaded data of mixed dimensionality in napari, like a TYX volume\nalongside a YX segmentation, you may have noticed the default axis labels didn't\nquite line up:\n\n| axes   | 0 | 1 | 2 |\n|--------|---|---|---|\n| volume | 0 | 1 | 2 |\n| segmt  |   | 0 | 1 |\n\nThat's because napari used 0-based indexing for its viewer axis labels, which breaks\ndown when layers have different numbers of dimensions. With\n[#8565](https://github.com/napari/napari/pull/8565),\nviewer axis labels now use negative indexing by default, combining Python's negative indexing\nsemantics with NumPy's array broadcasting semantics. The last axis is always `-1`,\nthe second-to-last is always `-2`, and so on:\n\n| axes   | 0  | 1  | 2  |\n|--------|----|----|----|\n| volume | -3 | -2 | -1 |\n| segmt  |    | -2 | -1 |\n\nThis means axis labels stay consistent as you add or remove layers of different\ndimensionality -- axis `-1` is always your last axis. This also fixes\na long-standing bug where axis labels could end up duplicated when mixing layers of\ndifferent dimensionality ([#6569](https://github.com/napari/napari/issues/6569)).\n\nYou'll notice this change in the dims slider labels, the axis overlay, and the dims\npopup widget. If you already label your axes with your own names (e.g. `z`, `y`, `x`),\nnothing's changed. For everyone else, we have consistency at last!\n\n\n#### What's in an angle? The truth! Fixed camera angles 🎥\n\nIf you've ever set up the camera to take that perfect publication-worthy photo of\nyour data (and taken the time to query the camera angles), you may have noticed they seemed... off.\nThat's because they were! Very... off. This was due to a long-standing bug in how we calculated our\ncamera angles, fueled in part by some arcane vispy axis-swapping tomfoolery, and in part by napari's\nstarting position of `viewer.camera.angles = (0, 0, 90)`.\n\nGood news! With [#8281](https://github.com/napari/napari/pull/8281), angles make sense again. The default camera angles are `(0, 0, 0)`, and they\nmove intuitively -- so `viewer.camera.angles = (10, 0, 0)` actually represents a 10 degree\nrotation around the [-3rd](#negative-axis-labels-a-real-positive) dimension. What a time to be alive!\n\nOld versions of napari:\n\n![Image showing an old version of a napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console.](https://github.com/user-attachments/assets/9ae2040c-36f7-4c4c-8ef8-140202d7ccda)\n\nNew and sane:\n\n![Image showing the 0.7.0 napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console. The layer is rotated 10 degrees in its first dimension](https://github.com/user-attachments/assets/6b972b46-5c3c-439a-8b0a-fe8a293224e5)\n\nAll rotations are now right-handed (counterclockwise when the axis points towards the viewer),\nwith automatic sign-flipping for flipped camera views.\n\nNow for the bad news... After many (and we do [mean](https://github.com/napari/napari/pull/8537)\n[**many**](https://github.com/napari/napari/pull/8557)) attempts, we realized we couldn't\nprovide legacy conversion functions to get you to and from the original camera angles. Therefore,\nthis is a **breaking change**.\n\nIf you had scripts or notebooks setting up angles for screenshots, or if you've got workshop\nmaterials or tutorials with preset angles, they'll need to be updated. Any existing code\nusing `viewer.camera.angles = (z, y, x)` will now produce a different view than before.\n\n#### Limiting `self.events` callbacks\n\nIn [#8672](https://github.com/napari/napari/pull/8672), we changed how we emit events from\nthe parent `self.events` group.\n\nPreviously, connecting a callback to an `EventedModel`'s top-level event group\n(e.g. `model.events.connect(callback)`) would cause that callback to fire multiple times\nwhen a single assignment triggered multiple dependent fields. For example:\n\n```python\nclass MyModel(EventedModel):\n    a: int\n\n    @property\n    def b(self):\n        return self.a * 2\n\n    @b.setter\n    def b(self, value):\n        self.a = value // 2\n\nmodel = MyModel(a=1)\nmodel.events.connect(my_callback)\n\nmodel.a = 4  # previously called my_callback twice (once for 'a', once for 'b')\n             # now calls my_callback once\n```\n\nThe callback connected to `model.events` will now be called exactly once, with the event `type`\nset to the first changed field and `value` set to its new value. Callbacks connected to specific\nfield events (e.g. `model.events.a.connect(...)`) are unaffected and continue to work as before.\n\nIf you connect to `model.events` directly and relied on receiving one call per dependent field\nchange, you will need to connect to the individual field events instead.\n\n### New features & widgets\n\n#### What's my metadata? Where's my metadata? `napari-metadata` to the rescue\n\nWith a lot of work from our community contributor, Carlos Mario Rodriguez Reza\n(https://github.com/carlosmariorr), and\nour venerable community manager Tim Monko (https://github.com/timmonko),\n`napari` now has a metadata viewing and editing plugin\nincluded in our `napari[all]` installation and our bundle ([PR #8576](https://github.com/napari/napari/pull/8576)).\n\n![Screenshot of napari displaying an image of neurons, with the napari-metadata Layer Metadata widget across the bottom of the viewer.](https://raw.githubusercontent.com/napari/napari-metadata/main/docs/images/horizontal-widget.png)\n\nOpen the `Layer metadata` widget from the `Plugins` menu and you can view File information, and view and edit Axes metadata such as\naxis labels, translation and scale! You can also use the widget to copy specified metadata across to other layers.\n\nCheck out the [README](https://github.com/napari/napari-metadata) for some usage documentation, and feel\nfree to open an issue to request new features -- we're actively improving this plugin so, more to come!\n\n#### (Layer) Features galore\n\nPrior to 0.7.0, our Features table widget only supported showing individual selected layer features.\n\nWith [#8189](https://github.com/napari/napari/pull/8189), courtesy of Marcelo Zoccoler\n(https://github.com/zoccoler), the widget will display\nfeatures of all selected layers! The layer's name is displayed in an additional column, so you\nalways know what you're looking at, and you can choose to display only the shared feature columns\nacross all layers. Pretty slick!\n\n![GIF displaying the usage of the features table with multiple selected layers.](https://github.com/user-attachments/assets/e06fd403-ed03-4edd-9192-a4e287d25ff7)\n\n#### Smarter new layer buttons - inheriting from selected layers\n\nPrior to 0.7.0, creating a new layer Points, Shapes or Labels layer would give you a layer\nwith extent and dimensionality equal to the union of all currently open layers, and with\nnone of the other spatial information (scale, units, etc.) inherited.\n\nNow, with [#8357](https://github.com/napari/napari/pull/8357) and [#8702](https://github.com/napari/napari/pull/8702)\nyou can create new Shapes, Points or Labels layer that inherits from a selected layer\n(or a combination of selected layers).\n\n##### Shapes & Points\n\nIf you have one layer selected, your new `Shapes` or `Points` layer will copy\nall spatial information from its ancestor, ready for annotating!\nIf you have multiple layers selected, only scale is copied.\n\nIf you wish to recover the original behavior, select all existing layers before creating your new layer.\nDeselecting all layers gives you a layer with only the number of dimensions inherited,\nand no other properties.\n\n##### Labels\n\n`Labels` layers inherit all spatial information when a single `Image` or `Labels` layer is selected.\nWhen multiple `Image` or `Labels` layers are selected, or the selection includes any combination of\nother layer types, the new `Labels` layer will span their extent -- take note, this layer could be\nhuge!\n\nThe `Labels` button is disabled when layers are present in the viewer and none are selected.\n(You can still create a (512 x 512) `Labels` layer when there are no layers present).\n\n##### Visual cues\n\n[#8768](https://github.com/napari/napari/pull/8768) ensures this change is not invisible!\nWhen your selection will result in full inheritance of spatial information for the new layer,\nthe new layer buttons will be highlighted.\nThe highlight color will become dimmer when your selection will result in the new layer only\ninheriting the extent of your existing selection. If you're lost\nin the inheritance madness, you can also hover over the buttons to get details about the behavior.\n\n![GIF displaying the highlights on the Shapes, Points and Labels new layer buttons when one or more layers are selected in the layerlist](https://github.com/user-attachments/assets/17361e45-dbca-4770-be11-d74c882eedb5)\n\nPS -- You can now also create these new layers from the `File -> New Layer` menu!\n\n#### Better text overalys 🔡\n\nWith [#8236](https://github.com/napari/napari/pull/8236), we've not only refactored text overlays\nso they're easier to implement, but we've also introduced two new long-requested overlays:\nthe layer name overlay, and an overlay for the current slice. Together, they make generating\npublication-ready figures much easier!\n\n![Image showing the napari viewer with two layers in grid mode. Each layer has its name displayed in the top left, and the current slice displayed in the bottom right.](https://github.com/user-attachments/assets/3c96b38d-44c1-432b-b294-aa9c0934a553)\n\nTry it yourself:\n\n```python\nimport napari\nv = napari.Viewer()\nv.grid.enabled = True\nll = v.open_sample('napari', 'cells3d')\nfor l in ll:\n    l.name_overlay.visible = True\nv.scale_bar.visible = True\nv.scale_bar.gridded = True\nv._overlays['current_slice'].visible = True\nv._overlays['current_slice'].gridded = True\nv.dims.axis_labels = ['z', 'y', 'x']\n```\n\n**Note**: the `v._overlays` attribute is still private as we're working out the best API.\n\n### Rendering & display\n\n#### More pixels to play with - texture tiling\n\nEver loaded a large 2D image in napari just to zoom in and feel like you're not\nreally getting a lot of bang for your pixel bucks? That's because we were\ndownsampling images that were too large to send the whole thing to the GPU.\n\nCourtesy of Guillaume Witz (https://github.com/guiwitz), and his PR for\ntexture tiling ([PR #8395](https://github.com/napari/napari/pull/8395)) 2D\nimages that exceed OpenGL's maximum texture size will be split into multiple\ntiles, each small enough to fit on the GPU.\n\n![Image with a screenshot of napari 0.6.6 on the left and napari 0.7.0 on the right displaying a DeCAM image of the Milky Way. The image on the left is pixelated, while the image on the right is displayed at full resolution.](https://github.com/user-attachments/assets/d0a115a8-49d5-432c-b561-f29fe9ac8116)\n\n#### Rendering layers in physical space - units matter!\n\nIn 0.6.6 and below, units were stored in metadata, but not used for rendering.\nAdding two layers that represented the same physical space, but had different\nunits, e.g. a layer with `scale=500, units='nm'` and one with `scale=0.5, units='μm'`\nwouldn't overlap correctly, even though they should.\n\nThanks to [#7889](https://github.com/napari/napari/pull/8395), layers with\ncompatible units (i.e. those that share the same physical dimension per axis,\nlike all spatial), will make use of `units` and `scale` to overlap correctly,\nusing the smallest unit as the rendering space.\n\nUnits can also be set globally on the layer list using `viewer.layers.units = ('nm', 'nm')`,\nforcing layers to be rendered in this space. If a new layer is added with more dimensions\nthan the current layers, this global override is dropped with a warning.\n\n#### Points - any size you like 🟣\n\nOn macOS, the points layer has never been able to reach its full potential, as OpenGL\ndrivers limit the size of an individual marker to a certain number of screen pixels.\n\nWith [#8552](https://github.com/napari/napari/pull/8552) and the release of `vispy v0.16`,\nthis long-standing issue has finally been resolved. Across all operating systems, you can\nmake your points as big as you want!\n\nThis change has also propagated to the zoom behaviour on macOS -- points now zoom\nproportionally to the data, rather than staying the same size in screen pixels.\n\nHere's the behaviour pre 0.7.0:\n\n```{raw} html\n<figure>\n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_066.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_066.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_066.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points stay the same size in screen pixels.\" \n    > \n  </video> \n</figure> \n``` \n\nAnd now:\n\n```{raw} html\n<figure> \n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_070.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_070.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_070.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points scale proportionally to the data.\" \n    > \n  </video> \n</figure> \n```\n\n### Performance\n\n#### Grid mode -- bigger, better, faster 📈\n\nIf you've been playing with our new grid mode since 0.6.5, you\nmay have stumbled into performance issues when progressively adding\nnew layers to the viewer. Stumble no longer! Our grid mode is now wicked fast and buttery smooth 🧈.\n\nWe've also fixed some issues with mouse interactions and deleting\nlayers, so you can tile to your heart's content. Try it out:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n#### Add & delete layers without delay\n\n[#8479](https://github.com/napari/napari/pull/8479) and [#8443](https://github.com/napari/napari/pull/8443)\nmade a number of improvements to\nour layer and overlay clean-up, addressing a number of issues with large numbers of layers\nin the viewer - adding them, deleting them, and even closing the viewer is now snappy\nand smooth!\n\n#### Shapes layers -- select, zoom, delete, repeat\n\nIf you've ever tried working with thousands of shapes in napari, you'll know\nit could get... painful. Selecting 10,000 shapes with a box took over 50 seconds,\ndeleting 5,000 shapes took over a minute, and zooming with shapes selected\nwould lock up the viewer entirely. Not anymore!\n\n0.7.0 brings a flurry of performance improvements:\n\n- Box selection now uses bounding boxes and vectorized intersection tests,\n  delivering a more than 100x speedup ([#8378](https://github.com/napari/napari/pull/8378)).\n  Selecting 10,000 shapes goes from >50s to ~0.3s.\n- Batch deletion replaces one-by-one removal for another 100x speedup\n  ([#8375](https://github.com/napari/napari/pull/8375))! Deleting 50,000 shapes\n  now takes under half a second.\n- Outline computation is batched and cached, so zooming and panning with\n  selected shapes no longer blocks\n  ([#8403](https://github.com/napari/napari/pull/8403),\n  [#8536](https://github.com/napari/napari/pull/8536)).\n- Highlight updates are throttled for large layers, enabling smooth zoom\n  even with 200,000+ shapes ([#8404](https://github.com/napari/napari/pull/8404)).\n- Mode switching no longer triggers unnecessary redraws, giving another\n  ~3x speedup when many shapes are selected\n  ([#8551](https://github.com/napari/napari/pull/8551)).\n\nBeware: there's still more to do, because drawing and drag-moving large selections\nremain slow!\n\n#### Multiscale -- less to update, more to celebrate\n\nPR [#8678](https://github.com/napari/napari/pull/8678) introduced a small change\nwith a big effect! Now, zooming in (and panning while zoomed in), will only trigger\na data refresh if the multiscale level has changed **or** if the new view falls outside\nof already loaded data.\n\n#### Delete the launch codes -- no more macOS hacks on launch\n\nIn 0.6.6 and below, we had some macOS specific launch code that skirted around some\nissues (which are now no longer relevant), and hackily \"relaunched\" napari to make\nsure the application name was correct.\n\nThis code added up to a whole second to our launch time, as well as being potentially\nproblematic for some users. PR [#8705](https://github.com/napari/napari/pull/8705)\nremoved this code, making our start-up a little less hacky and a little more snappy.\nThe downside is that when launching napari on macOS, the app name may be listed as\nPython, instead of napari. We think the trade-off is worth it.\n\n\n### Infrastructure & dependencies\n\nA couple of notes on big changes in our dependencies:\n\n- With #8509 we improved our support for `pydantic v2`, allowing us to enable support for Python 3.14!\nThis brings us one step closer to fully adopting `psygnal` as our event library.\n- In [#8450](https://github.com/napari/napari/pull/8450) we dropped support for PySide2. If you\nwere using napari with PySide for your Qt bindings, you'll need to upgrade to PySide6. Good news\nis that PySide6 is looking pretty stable, while PySide2 had some compatibility issues with numpy2,\nand had to be built from source for Python 3.11+.\n- In ([#8665](https://github.com/napari/napari/pull/8665)) we updated the default qt\nbinding to PyQt6. PyQt6 will now be installed with `napari[all]` installations. Windows users\nshould see improvements to their display with better support for fractional scaling!\n- In [#8338](https://github.com/napari/napari/pull/8338) we replaced `numpydoc` with `docstring_parser`\nfor parsing our docstrings. This will be a pretty invisible change from a user's perspective, but\nit saves more than 50MB of disk space for a napari install!\n\n## New Features\n\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Don't warn user when a Zarr array with channel axis is passed ([#8559](https://github.com/napari/napari/pull/8559))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n- Add colorbar & bounding box overlays to Layers menu ([#8611](https://github.com/napari/napari/pull/8611))\n- Add visual for new points/shapes button on selected layers ([#8649](https://github.com/napari/napari/pull/8649))\n- Limit `self.events` callbacks trigger to only once per assignment ([#8672](https://github.com/napari/napari/pull/8672))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- Warn users when features data looks categorical ([#8685](https://github.com/napari/napari/pull/8685))\n- Fix type annotation in viewer keybindings, use QtViewer for console ([#8694](https://github.com/napari/napari/pull/8694))\n- Do not inherit scale for points and shapes if no layer is selected ([#8701](https://github.com/napari/napari/pull/8701))\n- Inherit spatial information for new `Labels` layers when only one other `Labels` or `Image` layer is selected ([#8702](https://github.com/napari/napari/pull/8702))\n- [UI, UX] Make dock widget title bar icons bigger and text more legible ([#8714](https://github.com/napari/napari/pull/8714))\n- Perf, enh: defer dask.array loading by moving import into functions ([#8720](https://github.com/napari/napari/pull/8720))\n- Change look of new layer buttons to mark that there are 3 modes ([#8723](https://github.com/napari/napari/pull/8723))\n- If path arg is passed to CLI napari, don't show welcome overlay ([#8725](https://github.com/napari/napari/pull/8725))\n- UI: Add keybinding for Image layer reset_contrast_limits ([#8730](https://github.com/napari/napari/pull/8730))\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\n- Use capitalized name of source layer type when adding layer ([#8740](https://github.com/napari/napari/pull/8740))\n- Add scale example for anisotropic 3D data ([#8742](https://github.com/napari/napari/pull/8742))\n- Raise FileNotFoundError early when opening nonexistent paths ([#8747](https://github.com/napari/napari/pull/8747))\n- Ensure that layers are unlinked after deletion from layerlist  ([#8749](https://github.com/napari/napari/pull/8749))\n- Use custom Font manager to use Qt discovery mechanism ([#8751](https://github.com/napari/napari/pull/8751))\n- Restyle new_layer button creation state visuals ([#8768](https://github.com/napari/napari/pull/8768))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\n- Low hanging Labels painting performance improvement ([#8592](https://github.com/napari/napari/pull/8592))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- [Perf] Remove napari splash screen ([#8686](https://github.com/napari/napari/pull/8686))\n- [Maint] Remove all macOS specific launch code as it's out-dated or problematic (re-running with symlink) ([#8705](https://github.com/napari/napari/pull/8705))\n- Perf: Deferring pandas import to speedup napari startup ([#8733](https://github.com/napari/napari/pull/8733))\n- Perf: Instead of trying to import, check if IPython is already imported ([#8734](https://github.com/napari/napari/pull/8734))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n- Fix dim order of rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\n- Close proper window on Ctrl+W ([#8548](https://github.com/napari/napari/pull/8548))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Enable instanced markers if available. ([#8552](https://github.com/napari/napari/pull/8552))\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\n- Account for tile2data in the Labels polygon overlay ([#8563](https://github.com/napari/napari/pull/8563))\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\n- Stop welcome screen time on hiding of QtWiewer ([#8585](https://github.com/napari/napari/pull/8585))\n- Fix Labels layer controls contiguous checkbox to initialize to the layer state ([#8594](https://github.com/napari/napari/pull/8594))\n- Proper cleanup and reuse of existing overlays ([#8610](https://github.com/napari/napari/pull/8610))\n- [UI] Update the viewer button tooltips to use the new axis labels (-3, -2, -1) ([#8614](https://github.com/napari/napari/pull/8614))\n- Fix scale bar padding ([#8616](https://github.com/napari/napari/pull/8616))\n- Fix empty thumbnail ([#8620](https://github.com/napari/napari/pull/8620))\n- Reverse overlay tiling order ([#8623](https://github.com/napari/napari/pull/8623))\n- Fix welcome screen timer ([#8627](https://github.com/napari/napari/pull/8627))\n- Reinitialize welcome screen shortcuts in a less ugly way ([#8634](https://github.com/napari/napari/pull/8634))\n- Fix empty points tiny point ([#8639](https://github.com/napari/napari/pull/8639))\n- Fix labels of angle order of camera widget ([#8644](https://github.com/napari/napari/pull/8644))\n- Add a opaque background Rectangle to Welcome overlay ([#8645](https://github.com/napari/napari/pull/8645))\n- Do not start welcome widget timer until QtViewer is visible ([#8652](https://github.com/napari/napari/pull/8652))\n- Allow selection in feature table widget with empty features ([#8653](https://github.com/napari/napari/pull/8653))\n- Fix event triggering start of welcome screen ([#8660](https://github.com/napari/napari/pull/8660))\n- Fix `_disconnect_child_emitters` for `PsygnalModel` dict elements ([#8674](https://github.com/napari/napari/pull/8674))\n- Increase minimum version of pyopengl to allow start napari ([#8679](https://github.com/napari/napari/pull/8679))\n- Fix colorbar for int/bool dtypes ([#8684](https://github.com/napari/napari/pull/8684))\n- Correctly hide welcome screen when layers are present ([#8688](https://github.com/napari/napari/pull/8688))\n- Ensure that errors are propagated during async loading ([#8691](https://github.com/napari/napari/pull/8691))\n- Fix assign tuple of None to `layer.units` ([#8700](https://github.com/napari/napari/pull/8700))\n- Fix error raised when `out_of_slice_display = True` and update highlight ([#8717](https://github.com/napari/napari/pull/8717))\n- fix: fix `napari.imshow` return type hint ([#8726](https://github.com/napari/napari/pull/8726))\n- Fix harvesting plugins from CLI ([#8728](https://github.com/napari/napari/pull/8728))\n- Fix `--plugin` startup args ([#8729](https://github.com/napari/napari/pull/8729))\n- Update box and position of text overlay on font size change ([#8759](https://github.com/napari/napari/pull/8759))\n- Fix welcome spacing ([#8760](https://github.com/napari/napari/pull/8760))\n- Fix: Move world unit updates to LayerList add/remove events ([#8772](https://github.com/napari/napari/pull/8772))\n\n## Build Tools\n\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n\n## Documentation\n\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n- Adding a new example of a multiplexed immunofluorescent image of a murine heart ([#8680](https://github.com/napari/napari/pull/8680))\n- Add sphinxext-rediraffe to docs requirements ([#8690](https://github.com/napari/napari/pull/8690))\n- Update examples gallery for 0.7.0 angles ([#8709](https://github.com/napari/napari/pull/8709))\n- Add 3D points to add_points_3d example ([#8746](https://github.com/napari/napari/pull/8746))\n- Update contributing info and include AI policy and guidelines ([#8754](https://github.com/napari/napari/pull/8754))\n- Fix `image_depth.py` example by setting `blending` to `translucent` ([#8764](https://github.com/napari/napari/pull/8764))\n- Update units rendering example for docs gallery ([#8767](https://github.com/napari/napari/pull/8767))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\n- Update governance documentation ([docs#911](https://github.com/napari/docs/pull/911))\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\n- Update display text copy in shapes.md ([docs#914](https://github.com/napari/docs/pull/914))\n- Update release notes for 0.7.0a1 ([docs#915](https://github.com/napari/docs/pull/915))\n- Simplify titles in App installation instructions ([docs#918](https://github.com/napari/docs/pull/918))\n- Remove mention of double click in macOS app instructions ([docs#920](https://github.com/napari/docs/pull/920))\n- Update release notes for 0.7.0a2 ([docs#922](https://github.com/napari/docs/pull/922))\n- Move code for setting recursion limit ([docs#927](https://github.com/napari/docs/pull/927))\n- Update scripts to pydantic v2 ([docs#928](https://github.com/napari/docs/pull/928))\n- Remove npe1-related docs ([docs#929](https://github.com/napari/docs/pull/929))\n- Add intersphinx mapping for pydantic ([docs#930](https://github.com/napari/docs/pull/930))\n- Add policy on LLM contributions based on Zulip's ([docs#932](https://github.com/napari/docs/pull/932))\n- Expand on 0.7.0 highlights ([docs#933](https://github.com/napari/docs/pull/933))\n- Fix camera angles in handedness guide ([docs#940](https://github.com/napari/docs/pull/940))\n- Add guide explaining default axis names ([docs#942](https://github.com/napari/docs/pull/942))\n- Add info about new points/shapes layer button behavior ([docs#943](https://github.com/napari/docs/pull/943))\n- Add final? 0.7.0 highlights and group by topic ([docs#944](https://github.com/napari/docs/pull/944))\n- Add redirects to pages moved in Usage section ([docs#946](https://github.com/napari/docs/pull/946))\n- Fix typo in optional-dependencies ([docs#947](https://github.com/napari/docs/pull/947))\n- Update references to PyQt5 as default backend to PyQt6 ([docs#950](https://github.com/napari/docs/pull/950))\n- Update 0.7.0 highlights for rc0 ([docs#951](https://github.com/napari/docs/pull/951))\n- Restructure homepage and add rotating featured examples ([docs#953](https://github.com/napari/docs/pull/953))\n- Wayland Debug information ([docs#956](https://github.com/napari/docs/pull/956))\n\n## Other Pull Requests\n\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Maint: Update test_prereleases.yml to also test on pyside6 ([#8470](https://github.com/napari/napari/pull/8470))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Migrate EventedModel to pydantic v2 and overlays to psygnal to support python 3.14  ([#8509](https://github.com/napari/napari/pull/8509))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `jsonschema`, `pandas`, `pillow`, `psutil`, `psygnal`, `pyqt6`, `scikit-image`, `scipy`, `superqt`, `tifffile`, `virtualenv` ([#8518](https://github.com/napari/napari/pull/8518))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\n- Fix typing in layers.points and layers.labels utilities ([#8549](https://github.com/napari/napari/pull/8549))\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\n- Remove npe1 code for reading and writing ([#8579](https://github.com/napari/napari/pull/8579))\n- Fix build constraints with circular napari dependency ([#8588](https://github.com/napari/napari/pull/8588))\n- Modify sphinx-external-toc version constraint to eliminate warnings ([#8591](https://github.com/napari/napari/pull/8591))\n- Switch logo URL used for reader test ([#8596](https://github.com/napari/napari/pull/8596))\n- Update `coverage`, `hypothesis`, `rich` ([#8597](https://github.com/napari/napari/pull/8597))\n- Move comment trigger of constraints update to a separate workflow ([#8600](https://github.com/napari/napari/pull/8600))\n- Fix running benchmarks by label by fix condition ([#8601](https://github.com/napari/napari/pull/8601))\n- [pre-commit.ci] pre-commit autoupdate ([#8602](https://github.com/napari/napari/pull/8602))\n- ci(dependabot): bump the actions group with 5 updates ([#8613](https://github.com/napari/napari/pull/8613))\n- Update `babel`, `dask`, `hypothesis`, `pooch`, `psutil`, `rich`, `tifffile`, `tqdm`, `wrapt`, `xarray` ([#8615](https://github.com/napari/napari/pull/8615))\n- Postpone QtViewer deprecation to 0.8.0 ([#8617](https://github.com/napari/napari/pull/8617))\n- Remove settings call on import in qt_event_loop ([#8619](https://github.com/napari/napari/pull/8619))\n- Remove remaining `npe1` usage ([#8622](https://github.com/napari/napari/pull/8622))\n- Add `uv.lock` and leak graphs to gitignore ([#8637](https://github.com/napari/napari/pull/8637))\n- Fix pint warning about deprecation of getitem ([#8638](https://github.com/napari/napari/pull/8638))\n- Update `coverage`, `fsspec`, `hypothesis`, `ipython`, `pillow`, `pyside6`, `qtconsole`, `tensorstore`, `tqdm`, `wrapt`, `xarray` ([#8641](https://github.com/napari/napari/pull/8641))\n- Bump superqt to 0.7.8 ([#8646](https://github.com/napari/napari/pull/8646))\n- Bump napari plugin manager ([#8647](https://github.com/napari/napari/pull/8647))\n- Add/unify background box for canvas overlays ([#8654](https://github.com/napari/napari/pull/8654))\n- [pre-commit.ci] pre-commit autoupdate ([#8655](https://github.com/napari/napari/pull/8655))\n- Upload triangulation artifacts if benchmarks fails ([#8664](https://github.com/napari/napari/pull/8664))\n- Maint: Have triangle only on py313 and lower ([#8668](https://github.com/napari/napari/pull/8668))\n- Update `pydantic-settings`, `tifffile` ([#8671](https://github.com/napari/napari/pull/8671))\n- [pre-commit.ci] pre-commit autoupdate ([#8675](https://github.com/napari/napari/pull/8675))\n- Add pregenerated data to stabilize shapes triangulation benchmarks ([#8676](https://github.com/napari/napari/pull/8676))\n- Update `hypothesis`, `numpy`, `pandas`, `pydantic-settings`, `rich`, `scipy`, `tifffile`, `virtualenv` ([#8692](https://github.com/napari/napari/pull/8692))\n- Add python 3.14 classifier to project metadata ([#8693](https://github.com/napari/napari/pull/8693))\n- [pre-commit.ci] pre-commit autoupdate ([#8697](https://github.com/napari/napari/pull/8697))\n- ci(dependabot): bump the actions group with 3 updates ([#8713](https://github.com/napari/napari/pull/8713))\n- Update `certifi`, `tifffile`, `virtualenv` ([#8716](https://github.com/napari/napari/pull/8716))\n- Update pyqt5 default references to pyqt6 ([#8732](https://github.com/napari/napari/pull/8732))\n- Remove usage of `partial` from `qt_viewer_buttons` ([#8741](https://github.com/napari/napari/pull/8741))\n- Update `numpy`, `superqt`, `tifffile`, `wrapt` ([#8748](https://github.com/napari/napari/pull/8748))\n- [pre-commit.ci] pre-commit autoupdate ([#8753](https://github.com/napari/napari/pull/8753))\n- Update `imageio`, `pydantic-extra-types`, `tensorstore`, `virtualenv` ([#8773](https://github.com/napari/napari/pull/8773))\n- [pre-commit.ci] pre-commit autoupdate ([#8774](https://github.com/napari/napari/pull/8774))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\n- Prepare on migration to `sphinxcontrib-mermaid` ([docs#923](https://github.com/napari/docs/pull/923))\n- ci(dependabot): bump the github-actions group with 2 updates ([docs#925](https://github.com/napari/docs/pull/925))\n- ci(dependabot): bump actions/download-artifact from 7.0.0 to 8.0.0 in the github-actions group ([docs#948](https://github.com/napari/docs/pull/948))\n\n\n## 25 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [LiudengZhang](https://github.com/napari/napari/commits?author=LiudengZhang) - @LiudengZhang +\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Neil Shephard](https://github.com/napari/docs/commits?author=ns-rse) - @ns-rse +\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Samuel Le Meur-Diebolt](https://github.com/napari/napari/commits?author=sdiebolt) - @sdiebolt +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 25 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carlos Mario Rodriguez Reza](https://github.com/napari/docs/commits?author=carlosmariorr) - @carlosmariorr\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [Kyle I. S. Harrington](https://github.com/napari/docs/commits?author=kephale) - @kephale\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/298363590/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":1,"eyes":0},"mentions_count":30},{"url":"https://api.github.com/repos/napari/napari/releases/295614341","assets_url":"https://api.github.com/repos/napari/napari/releases/295614341/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/295614341/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0rc0","id":295614341,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84RnreF","tag_name":"v0.7.0rc0","target_commitish":"ca73fdb94693598015fc104e0c8a8a84158917bb","name":"0.7.0rc0","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-03-11T11:53:06Z","updated_at":"2026-03-11T12:08:10Z","published_at":"2026-03-11T11:54:59Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/371499188","id":371499188,"node_id":"RA_kwDOCJ0aI84WJKC0","name":"napari-0.7.0rc0-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44334,"digest":"sha256:11b501f74abbbc07b83fb170593d0c3c4fe9e66725b7790cb1f2d2c7edbb9d12","download_count":0,"created_at":"2026-03-11T12:00:54Z","updated_at":"2026-03-11T12:00:54Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371498882","id":371498882,"node_id":"RA_kwDOCJ0aI84WJJ-C","name":"napari-0.7.0rc0-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":572799091,"digest":"sha256:d4e2bdfdaa53bf67d31dc0697b34fbfab2c07b44502a97238ad8252dc31e6e6b","download_count":3,"created_at":"2026-03-11T12:00:23Z","updated_at":"2026-03-11T12:00:53Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371500497","id":371500497,"node_id":"RA_kwDOCJ0aI84WJKXR","name":"napari-0.7.0rc0-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37832,"digest":"sha256:82441856d6c50cd097b7a3d2adf635b89ebd27ce50a84fef62b34df3b47d7ca4","download_count":1,"created_at":"2026-03-11T12:03:40Z","updated_at":"2026-03-11T12:03:40Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371500402","id":371500402,"node_id":"RA_kwDOCJ0aI84WJKVy","name":"napari-0.7.0rc0-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":443419921,"digest":"sha256:2933fa7d1a87c7d02b5575a5353ed5c42eed8c847017ca530429683e21fcea80","download_count":4,"created_at":"2026-03-11T12:03:23Z","updated_at":"2026-03-11T12:03:39Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371502572","id":371502572,"node_id":"RA_kwDOCJ0aI84WJK3s","name":"napari-0.7.0rc0-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37261,"digest":"sha256:5012885e834e99b134cd23056a5def1e59551c147fcc67f34c83397e08f3c82a","download_count":0,"created_at":"2026-03-11T12:08:09Z","updated_at":"2026-03-11T12:08:10Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371502460","id":371502460,"node_id":"RA_kwDOCJ0aI84WJK18","name":"napari-0.7.0rc0-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":459947792,"digest":"sha256:083b1994564e19575b433f432b6c61288cd53251870ed7026dfa397569902659","download_count":2,"created_at":"2026-03-11T12:07:53Z","updated_at":"2026-03-11T12:08:09Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371496808","id":371496808,"node_id":"RA_kwDOCJ0aI84WJJdo","name":"napari-0.7.0rc0-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3486386,"digest":"sha256:98fc4eeeca5e9be0d84e0e21868b39a9783127e772eac5a72f7e27b5782c1e75","download_count":4,"created_at":"2026-03-11T11:54:57Z","updated_at":"2026-03-11T11:54:58Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371499962","id":371499962,"node_id":"RA_kwDOCJ0aI84WJKO6","name":"napari-0.7.0rc0-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":563222424,"digest":"sha256:61bc8c9dc6cab0a7483d0a05232e88fe84c56416356d08d81107ec6cf8e291af","download_count":11,"created_at":"2026-03-11T12:02:37Z","updated_at":"2026-03-11T12:02:52Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371500068","id":371500068,"node_id":"RA_kwDOCJ0aI84WJKQk","name":"napari-0.7.0rc0-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34222,"digest":"sha256:00b2d91994696e2485718313d01c0df3de5214c0339af0b15c403331950596ea","download_count":0,"created_at":"2026-03-11T12:02:53Z","updated_at":"2026-03-11T12:02:53Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/371496809","id":371496809,"node_id":"RA_kwDOCJ0aI84WJJdp","name":"napari-0.7.0rc0.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3100293,"digest":"sha256:6667c142f50967c04cf30590c88f5fdb4dbd40334f85aefc3668a4fcd042dc97","download_count":4,"created_at":"2026-03-11T11:54:57Z","updated_at":"2026-03-11T11:54:58Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0rc0/napari-0.7.0rc0.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0rc0","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0rc0","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Tue, Mar 10, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\n### Breaking Changes\n\n#### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed ([PR #8448](https://github.com/napari/napari/pull/8448)),\nand plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nThis change has been a long time coming, and it's allowed us to remove thousands\nof lines of tangled and confusing legacy code. Now that we have, it's unleashed\nthe potential for massive improvements to file opening and saving in `napari`,\nand exciting new features for our plugin infrastructure. Stay tuned!\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n#### Negative axis labels? A real positive\n\nIf you've ever loaded data of mixed dimensionality in napari, like a TYX volume\nalongside a YX segmentation, you may have noticed the default axis labels didn't\nquite line up:\n\n| axes   | 0 | 1 | 2 |\n|--------|---|---|---|\n| volume | 0 | 1 | 2 |\n| segmt  |   | 0 | 1 |\n\nThat's because napari used 0-based indexing for its viewer axis labels, which breaks\ndown when layers have different numbers of dimensions. With\n[#8565](https://github.com/napari/napari/pull/8565),\nviewer axis labels now use negative indexing by default, combining Python's negative indexing\nsemantics with NumPy's array broadcasting semantics. The last axis is always `-1`,\nthe second-to-last is always `-2`, and so on:\n\n| axes   | 0  | 1  | 2  |\n|--------|----|----|----|\n| volume | -3 | -2 | -1 |\n| segmt  |    | -2 | -1 |\n\nThis means axis labels stay consistent as you add or remove layers of different\ndimensionality -- axis `-1` is always your last axis. This also fixes\na long-standing bug where axis labels could end up duplicated when mixing layers of\ndifferent dimensionality ([#6569](https://github.com/napari/napari/issues/6569)).\n\nYou'll notice this change in the dims slider labels, the axis overlay, and the dims\npopup widget. If you already label your axes with your own names (e.g. `z`, `y`, `x`),\nnothing's changed. For everyone else, we have consistency at last!\n\n\n#### What's in an angle? The truth! Fixed camera angles 🎥\n\nIf you've ever set up the camera to take that perfect publication-worthy photo of\nyour data (and taken the time to query the camera angles), you may have noticed they seemed... off.\nThat's because they were! Very... off. This was due to a long-standing bug in how we calculated our\ncamera angles, fueled in part by some arcane vispy axis-swapping tomfoolery, and in part by napari's\nstarting position of `viewer.camera.angles = (0, 0, 90)`.\n\nGood news! With [#8281](https://github.com/napari/napari/pull/8281), angles make sense again. The default camera angles are `(0, 0, 0)`, and they\nmove intuitively -- so `viewer.camera.angles = (10, 0, 0)` actually represents a 10 degree\nrotation around the [-3rd](#negative-axis-labels-a-real-positive) dimension. What a time to be alive!\n\nOld versions of napari:\n\n![Image showing an old version of a napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console.](https://github.com/user-attachments/assets/9ae2040c-36f7-4c4c-8ef8-140202d7ccda)\n\nNew and sane:\n\n![Image showing the 0.7.0 napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console. The layer is rotated 10 degrees in its first dimension](https://github.com/user-attachments/assets/6b972b46-5c3c-439a-8b0a-fe8a293224e5)\n\nAll rotations are now right-handed (counterclockwise when the axis points towards the viewer),\nwith automatic sign-flipping for flipped camera views.\n\nNow for the bad news... After many (and we do [mean](https://github.com/napari/napari/pull/8537)\n[**many**](https://github.com/napari/napari/pull/8557)) attempts, we realized we couldn't\nprovide legacy conversion functions to get you to and from the original camera angles. Therefore,\nthis is a **breaking change**.\n\nIf you had scripts or notebooks setting up angles for screenshots, or if you've got workshop\nmaterials or tutorials with preset angles, they'll need to be updated. Any existing code\nusing `viewer.camera.angles = (z, y, x)` will now produce a different view than before.\n\n#### Limiting `self.events` callbacks\n\nIn [#8672](https://github.com/napari/napari/pull/8672), we changed how we emit events from\nthe parent `self.events` group.\n\nPreviously, connecting a callback to an `EventedModel`'s top-level event group\n(e.g. `model.events.connect(callback)`) would cause that callback to fire multiple times\nwhen a single assignment triggered multiple dependent fields. For example:\n\n```python\nclass MyModel(EventedModel):\n    a: int\n\n    @property\n    def b(self):\n        return self.a * 2\n\n    @b.setter\n    def b(self, value):\n        self.a = value // 2\n\nmodel = MyModel(a=1)\nmodel.events.connect(my_callback)\n\nmodel.a = 4  # previously called my_callback twice (once for 'a', once for 'b')\n             # now calls my_callback once\n```\n\nThe callback connected to `model.events` will now be called exactly once, with the event `type`\nset to the first changed field and `value` set to its new value. Callbacks connected to specific\nfield events (e.g. `model.events.a.connect(...)`) are unaffected and continue to work as before.\n\nIf you connect to `model.events` directly and relied on receiving one call per dependent field\nchange, you will need to connect to the individual field events instead.\n\n### New features & widgets\n\n#### What's my metadata? Where's my metadata? `napari-metadata` to the rescue\n\nWith a lot of work from our community contributor, Carlos Mario Rodriguez Reza\n(https://github.com/carlosmariorr), and\nour venerable community manager Tim Monko (https://github.com/timmonko),\n`napari` now has a metadata viewing and editing plugin\nincluded in our `napari[all]` installation and our bundle ([PR #8576](https://github.com/napari/napari/pull/8576)).\n\n![Screenshot of napari displaying an image of neurons, with the napari-metadata Layer Metadata widget across the bottom of the viewer.](https://raw.githubusercontent.com/napari/napari-metadata/main/docs/images/horizontal-widget.png)\n\nOpen the `Layer metadata` widget from the `Plugins` menu and you can view File information, and view and edit Axes metadata such as\naxis labels, translation and scale! You can also use the widget to copy specified metadata across to other layers.\n\nCheck out the [README](https://github.com/napari/napari-metadata) for some usage documentation, and feel\nfree to open an issue to request new features -- we're actively improving this plugin so, more to come!\n\n#### (Layer) Features galore\n\nPrior to 0.7.0, our Features table widget only supported showing individual selected layer features.\n\nWith [#8189](https://github.com/napari/napari/pull/8189), courtesy of Marcelo Zoccoler\n(https://github.com/zoccoler), the widget will display\nfeatures of all selected layers! The layer's name is displayed in an additional column, so you\nalways know what you're looking at, and you can choose to display only the shared feature columns\nacross all layers. Pretty slick!\n\n![GIF displaying the usage of the features table with multiple selected layers.](https://github.com/user-attachments/assets/e06fd403-ed03-4edd-9192-a4e287d25ff7)\n\n#### Smarter new layer buttons - inheriting from selected layers\n\nPrior to 0.7.0, creating a new layer Points, Shapes or Labels layer would give you a layer\nwith extent and dimensionality equal to the union of all currently open layers, and with\nnone of the other spatial information (scale, units, etc.) inherited.\n\nNow, with [#8357](https://github.com/napari/napari/pull/8357) and [#8702](https://github.com/napari/napari/pull/8702)\nyou can create new Shapes, Points or Labels layer that inherits from a selected layer\n(or a combination of selected layers).\n\n##### Shapes & Points\n\nIf you have one layer selected, your new `Shapes` or `Points` layer will copy\nall spatial information from its ancestor, ready for annotating!\nIf you have multiple layers selected, only scale is copied.\n\nIf you wish to recover the original behavior, select all existing layers before creating your new layer.\nDeselecting all layers gives you a layer with only the number of dimensions inherited,\nand no other properties.\n\n##### Labels\n\n`Labels` layers inherit all spatial information when a single `Image` or `Labels` layer is selected.\nWhen multiple `Image` or `Labels` layers are selected, or the selection includes any combination of\nother layer types, the new `Labels` layer will span their extent -- take note, this layer could be\nhuge!\n\nThe `Labels` button is disabled when layers are present in the viewer and none are selected.\n(You can still create a (512 x 512) `Labels` layer when there are no layers present).\n\n##### Visual cues\n\n[#8723](https://github.com/napari/napari/pull/8723) ensures this change is not invisible!\nWhen your selection will result in full inheritance of spatial information for the new layer,\nthe new layer button will be highlighted.\nThe highlight color will become brighter when your selection will result in the new layer only\ninheriting the extent of your existing selection. If you're lost\nin the inheritance madness, you can also hover over the buttons to get details about the behavior.\n\n![GIF displaying the highlights on the Shapes, Points and Labels new layer buttons when one or more layers are selected in the layerlist](https://github.com/user-attachments/assets/7f71c6a8-173e-4734-869a-3ba41d7b37e9)\n\nPS -- You can now also create these new layers from the `File -> New Layer` menu!\n\n#### Better text overalys 🔡\n\nWith [#8236](https://github.com/napari/napari/pull/8236), we've not only refactored text overlays\nso they're easier to implement, but we've also introduced two new long-requested overlays:\nthe layer name overlay, and an overlay for the current slice. Together, they make generating\npublication-ready figures much easier!\n\n![Image showing the napari viewer with two layers in grid mode. Each layer has its name displayed in the top left, and the current slice displayed in the bottom right.](https://github.com/user-attachments/assets/3c96b38d-44c1-432b-b294-aa9c0934a553)\n\nTry it yourself:\n\n```python\nimport napari\nv = napari.Viewer()\nv.grid.enabled = True\nll = v.open_sample('napari', 'cells3d')\nfor l in ll:\n    l.name_overlay.visible = True\nv.scale_bar.visible = True\nv.scale_bar.gridded = True\nv._overlays['current_slice'].visible = True\nv._overlays['current_slice'].gridded = True\nv.dims.axis_labels = ['z', 'y', 'x']\n```\n\n**Note**: the `v._overlays` attribute is still private as we're working out the best API.\n\n### Rendering & display\n\n#### More pixels to play with - texture tiling\n\nEver loaded a large 2D image in napari just to zoom in and feel like you're not\nreally getting a lot of bang for your pixel bucks? That's because we were\ndownsampling images that were too large to send the whole thing to the GPU.\n\nCourtesy of Guillaume Witz (https://github.com/guiwitz), and his PR for\ntexture tiling ([PR #8395](https://github.com/napari/napari/pull/8395)) 2D\nimages that exceed OpenGL's maximum texture size will be split into multiple\ntiles, each small enough to fit on the GPU.\n\n![Image with a screenshot of napari 0.6.6 on the left and napari 0.7.0 on the right displaying a DeCAM image of the Milky Way. The image on the left is pixelated, while the image on the right is displayed at full resolution.](https://github.com/user-attachments/assets/d0a115a8-49d5-432c-b561-f29fe9ac8116)\n\n#### Rendering layers in physical space - units matter!\n\nIn 0.6.6 and below, units were stored in metadata, but not used for rendering.\nAdding two layers that represented the same physical space, but had different\nunits, e.g. a layer with `scale=500, units='nm'` and one with `scale=0.5, units='μm'`\nwouldn't overlap correctly, even though they should.\n\nThanks to [#7889](https://github.com/napari/napari/pull/8395), layers with\ncompatible units (i.e. those that share the same physical dimension per axis,\nlike all spatial), will make use of `units` and `scale` to overlap correctly,\nusing the smallest unit as the rendering space.\n\nUnits can also be set globally on the layer list using `viewer.layers.units = ('nm', 'nm')`,\nforcing layers to be rendered in this space. If a new layer is added with more dimensions\nthan the current layers, this global override is dropped with a warning.\n\n#### Points - any size you like 🟣\n\nOn macOS, the points layer has never been able to reach its full potential, as OpenGL\ndrivers limit the size of an individual marker to a certain number of screen pixels.\n\nWith [#8552](https://github.com/napari/napari/pull/8552) and the release of `vispy v0.16`,\nthis long-standing issue has finally been resolved. Across all operating systems, you can\nmake your points as big as you want!\n\nThis change has also propagated to the zoom behaviour on macOS -- points now zoom\nproportionally to the data, rather than staying the same size in screen pixels.\n\nHere's the behaviour pre 0.7.0:\n\n```{raw} html\n<figure>\n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_066.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_066.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_066.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points stay the same size in screen pixels.\" \n    > \n  </video> \n</figure> \n``` \n\nAnd now:\n\n```{raw} html\n<figure> \n  <video width=\"100%\" controls autoplay loop muted playsinline> \n    <source src=\"../_static/images/points_zoom_070.webm\" type=\"video/webm\" /> \n    <source src=\"../_static/images/points_zoom_070.mp4\" type=\"video/mp4\" /> \n    <img src=\"../_static/images/points_zoom_070.png\" \n      title=\"Your browser does not support the video tag\" \n      alt=\"Video with a points layer on a grid of white squares. When zooming, the points scale proportionally to the data.\" \n    > \n  </video> \n</figure> \n```\n\n### Performance\n\n#### Grid mode -- bigger, better, faster 📈\n\nIf you've been playing with our new grid mode since 0.6.5, you\nmay have stumbled into performance issues when progressively adding\nnew layers to the viewer. Stumble no longer! Our grid mode is now wicked fast and buttery smooth 🧈.\n\nWe've also fixed some issues with mouse interactions and deleting\nlayers, so you can tile to your heart's content. Try it out:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n#### Add & delete layers without delay\n\n[#8479](https://github.com/napari/napari/pull/8479) and [#8443](https://github.com/napari/napari/pull/8443)\nmade a number of improvements to\nour layer and overlay clean-up, addressing a number of issues with large numbers of layers\nin the viewer - adding them, deleting them, and even closing the viewer is now snappy\nand smooth!\n\n#### Shapes layers -- select, zoom, delete, repeat\n\nIf you've ever tried working with thousands of shapes in napari, you'll know\nit could get... painful. Selecting 10,000 shapes with a box took over 50 seconds,\ndeleting 5,000 shapes took over a minute, and zooming with shapes selected\nwould lock up the viewer entirely. Not anymore!\n\n0.7.0 brings a flurry of performance improvements:\n\n- Box selection now uses bounding boxes and vectorized intersection tests,\n  delivering a more than 100x speedup ([#8378](https://github.com/napari/napari/pull/8378)).\n  Selecting 10,000 shapes goes from >50s to ~0.3s.\n- Batch deletion replaces one-by-one removal for another 100x speedup\n  ([#8375](https://github.com/napari/napari/pull/8375))! Deleting 50,000 shapes\n  now takes under half a second.\n- Outline computation is batched and cached, so zooming and panning with\n  selected shapes no longer blocks\n  ([#8403](https://github.com/napari/napari/pull/8403),\n  [#8536](https://github.com/napari/napari/pull/8536)).\n- Highlight updates are throttled for large layers, enabling smooth zoom\n  even with 200,000+ shapes ([#8404](https://github.com/napari/napari/pull/8404)).\n- Mode switching no longer triggers unnecessary redraws, giving another\n  ~3x speedup when many shapes are selected\n  ([#8551](https://github.com/napari/napari/pull/8551)).\n\nBeware: there's still more to do, because drawing and drag-moving large selections\nremain slow!\n\n#### Multiscale -- less to update, more to celebrate\n\nPR [#8678](https://github.com/napari/napari/pull/8678) introduced a small change\nwith a big effect! Now, zooming in (and panning while zoomed in), will only trigger\na data refresh if the multiscale level has changed **or** if the new view falls outside\nof already loaded data.\n\n#### Delete the launch codes -- no more macOS hacks on launch\n\nIn 0.6.6 and below, we had some macOS specific launch code that skirted around some\nissues (which are now no longer relevant), and hackily \"relaunched\" napari to make\nsure the application name was correct.\n\nThis code added up to a whole second to our launch time, as well as being potentially\nproblematic for some users. PR [#8705](https://github.com/napari/napari/pull/8705)\nremoved this code, making our start-up a little less hacky and a little more snappy.\nThe downside is that when launching napari on macOS, the app name may be listed as\nPython, instead of napari. We think the trade-off is worth it.\n\n\n### Infrastructure & dependencies\n\nA couple of notes on big changes in our dependencies:\n\n- With #8509 we improved our support for `pydantic v2`, allowing us to enable support for Python 3.14!\nThis brings us one step closer to fully adopting `psygnal` as our event library.\n- In [#8450](https://github.com/napari/napari/pull/8450) we dropped support for PySide2. If you\nwere using napari with PySide for your Qt bindings, you'll need to upgrade to PySide6. Good news\nis that PySide6 is looking pretty stable, while PySide2 had some compatibility issues with numpy2,\nand had to be built from source for Python 3.11+.\n- In ([#8665](https://github.com/napari/napari/pull/8665)) we updated the default qt\nbinding to PyQt6. PyQt6 will now be installed with `napari[all]` installations. Windows users\nshould see improvements to their display with better support for fractional scaling!\n- In [#8338](https://github.com/napari/napari/pull/8338) we replaced `numpydoc` with `docstring_parser`\nfor parsing our docstrings. This will be a pretty invisible change from a user's perspective, but\nit saves more than 50MB of disk space for a napari install!\n\n## New Features\n\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Don't warn user when a Zarr array with channel axis is passed ([#8559](https://github.com/napari/napari/pull/8559))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n- Add colorbar & bounding box overlays to Layers menu ([#8611](https://github.com/napari/napari/pull/8611))\n- Add visual for new points/shapes button on selected layers ([#8649](https://github.com/napari/napari/pull/8649))\n- Limit `self.events` callbacks trigger to only once per assignment ([#8672](https://github.com/napari/napari/pull/8672))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- Warn users when features data looks categorical ([#8685](https://github.com/napari/napari/pull/8685))\n- Fix type annotation in viewer keybindings, use QtViewer for console ([#8694](https://github.com/napari/napari/pull/8694))\n- Do not inherit scale for points and shapes if no layer is selected ([#8701](https://github.com/napari/napari/pull/8701))\n- Inherit spatial information for new `Labels` layers when only one other `Labels` or `Image` layer is selected ([#8702](https://github.com/napari/napari/pull/8702))\n- [UI, UX] Make dock widget title bar icons bigger and text more legible ([#8714](https://github.com/napari/napari/pull/8714))\n- Perf, enh: defer dask.array loading by moving import into functions ([#8720](https://github.com/napari/napari/pull/8720))\n- Change look of new layer buttons to mark that there are 3 modes ([#8723](https://github.com/napari/napari/pull/8723))\n- If path arg is passed to CLI napari, don't show welcome overlay ([#8725](https://github.com/napari/napari/pull/8725))\n- Use capitalized name of source layer type when adding layer ([#8740](https://github.com/napari/napari/pull/8740))\n- Add scale example for anisotropic 3D data ([#8742](https://github.com/napari/napari/pull/8742))\n- Use custom Font manager to use Qt discovery mechanism ([#8751](https://github.com/napari/napari/pull/8751))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\n- Low hanging Labels painting performance improvement ([#8592](https://github.com/napari/napari/pull/8592))\n- [multiscale] Only update/refresh when level has changed or view is outside current corner_pixels ([#8678](https://github.com/napari/napari/pull/8678))\n- [Perf] Remove napari splash screen ([#8686](https://github.com/napari/napari/pull/8686))\n- [Maint] Remove all macOS specific launch code as it's out-dated or problematic (re-running with symlink) ([#8705](https://github.com/napari/napari/pull/8705))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n- Fix dim order of rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\n- Close proper window on Ctrl+W ([#8548](https://github.com/napari/napari/pull/8548))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Enable instanced markers if available. ([#8552](https://github.com/napari/napari/pull/8552))\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\n- Account for tile2data in the Labels polygon overlay ([#8563](https://github.com/napari/napari/pull/8563))\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\n- Stop welcome screen time on hiding of QtWiewer ([#8585](https://github.com/napari/napari/pull/8585))\n- Fix Labels layer controls contiguous checkbox to initialize to the layer state ([#8594](https://github.com/napari/napari/pull/8594))\n- Proper cleanup and reuse of existing overlays ([#8610](https://github.com/napari/napari/pull/8610))\n- [UI] Update the viewer button tooltips to use the new axis labels (-3, -2, -1) ([#8614](https://github.com/napari/napari/pull/8614))\n- Fix scale bar padding ([#8616](https://github.com/napari/napari/pull/8616))\n- Fix empty thumbnail ([#8620](https://github.com/napari/napari/pull/8620))\n- Reverse overlay tiling order ([#8623](https://github.com/napari/napari/pull/8623))\n- Fix welcome screen timer ([#8627](https://github.com/napari/napari/pull/8627))\n- Reinitialize welcome screen shortcuts in a less ugly way ([#8634](https://github.com/napari/napari/pull/8634))\n- Fix empty points tiny point ([#8639](https://github.com/napari/napari/pull/8639))\n- Fix labels of angle order of camera widget ([#8644](https://github.com/napari/napari/pull/8644))\n- Add a opaque background Rectangle to Welcome overlay ([#8645](https://github.com/napari/napari/pull/8645))\n- Do not start welcome widget timer until QtViewer is visible ([#8652](https://github.com/napari/napari/pull/8652))\n- Allow selection in feature table widget with empty features ([#8653](https://github.com/napari/napari/pull/8653))\n- Fix event triggering start of welcome screen ([#8660](https://github.com/napari/napari/pull/8660))\n- Fix `_disconnect_child_emitters` for `PsygnalModel` dict elements ([#8674](https://github.com/napari/napari/pull/8674))\n- Increase minimum version of pyopengl to allow start napari ([#8679](https://github.com/napari/napari/pull/8679))\n- Fix colorbar for int/bool dtypes ([#8684](https://github.com/napari/napari/pull/8684))\n- Correctly hide welcome screen when layers are present ([#8688](https://github.com/napari/napari/pull/8688))\n- Fix assign tuple of None to `layer.units` ([#8700](https://github.com/napari/napari/pull/8700))\n- Fix error raised when `out_of_slice_display = True` and update highlight ([#8717](https://github.com/napari/napari/pull/8717))\n- fix: fix `napari.imshow` return type hint ([#8726](https://github.com/napari/napari/pull/8726))\n- Fix `--plugin` startup args ([#8729](https://github.com/napari/napari/pull/8729))\n\n## Build Tools\n\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n\n## Documentation\n\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n- Adding a new example of a multiplexed immunofluorescent image of a murine heart ([#8680](https://github.com/napari/napari/pull/8680))\n- Add sphinxext-rediraffe to docs requirements ([#8690](https://github.com/napari/napari/pull/8690))\n- Update examples gallery for 0.7.0 angles ([#8709](https://github.com/napari/napari/pull/8709))\n- Update contributing info and include AI policy and guidelines ([#8754](https://github.com/napari/napari/pull/8754))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\n- Update governance documentation ([docs#911](https://github.com/napari/docs/pull/911))\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\n- Update display text copy in shapes.md ([docs#914](https://github.com/napari/docs/pull/914))\n- Update release notes for 0.7.0a1 ([docs#915](https://github.com/napari/docs/pull/915))\n- Simplify titles in App installation instructions ([docs#918](https://github.com/napari/docs/pull/918))\n- Remove mention of double click in macOS app instructions ([docs#920](https://github.com/napari/docs/pull/920))\n- Update release notes for 0.7.0a2 ([docs#922](https://github.com/napari/docs/pull/922))\n- Move code for setting recursion limit ([docs#927](https://github.com/napari/docs/pull/927))\n- Update scripts to pydantic v2 ([docs#928](https://github.com/napari/docs/pull/928))\n- Remove npe1-related docs ([docs#929](https://github.com/napari/docs/pull/929))\n- Add intersphinx mapping for pydantic ([docs#930](https://github.com/napari/docs/pull/930))\n- Add policy on LLM contributions based on Zulip's ([docs#932](https://github.com/napari/docs/pull/932))\n- Expand on 0.7.0 highlights ([docs#933](https://github.com/napari/docs/pull/933))\n- Fix camera angles in handedness guide ([docs#940](https://github.com/napari/docs/pull/940))\n- Add guide explaining default axis names ([docs#942](https://github.com/napari/docs/pull/942))\n- Add info about new points/shapes layer button behavior ([docs#943](https://github.com/napari/docs/pull/943))\n- Add final? 0.7.0 highlights and group by topic ([docs#944](https://github.com/napari/docs/pull/944))\n- Add redirects to pages moved in Usage section ([docs#946](https://github.com/napari/docs/pull/946))\n- Fix typo in optional-dependencies ([docs#947](https://github.com/napari/docs/pull/947))\n- Update references to PyQt5 as default backend to PyQt6 ([docs#950](https://github.com/napari/docs/pull/950))\n- Update 0.7.0 highlights for rc0 ([docs#951](https://github.com/napari/docs/pull/951))\n\n## Other Pull Requests\n\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Maint: Update test_prereleases.yml to also test on pyside6 ([#8470](https://github.com/napari/napari/pull/8470))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Migrate EventedModel to pydantic v2 and overlays to psygnal to support python 3.14  ([#8509](https://github.com/napari/napari/pull/8509))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `jsonschema`, `pandas`, `pillow`, `psutil`, `psygnal`, `pyqt6`, `scikit-image`, `scipy`, `superqt`, `tifffile`, `virtualenv` ([#8518](https://github.com/napari/napari/pull/8518))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\n- Fix typing in layers.points and layers.labels utilities ([#8549](https://github.com/napari/napari/pull/8549))\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\n- Remove npe1 code for reading and writing ([#8579](https://github.com/napari/napari/pull/8579))\n- Fix build constraints with circular napari dependency ([#8588](https://github.com/napari/napari/pull/8588))\n- Modify sphinx-external-toc version constraint to eliminate warnings ([#8591](https://github.com/napari/napari/pull/8591))\n- Switch logo URL used for reader test ([#8596](https://github.com/napari/napari/pull/8596))\n- Update `coverage`, `hypothesis`, `rich` ([#8597](https://github.com/napari/napari/pull/8597))\n- Move comment trigger of constraints update to a separate workflow ([#8600](https://github.com/napari/napari/pull/8600))\n- Fix running benchmarks by label by fix condition ([#8601](https://github.com/napari/napari/pull/8601))\n- [pre-commit.ci] pre-commit autoupdate ([#8602](https://github.com/napari/napari/pull/8602))\n- ci(dependabot): bump the actions group with 5 updates ([#8613](https://github.com/napari/napari/pull/8613))\n- Update `babel`, `dask`, `hypothesis`, `pooch`, `psutil`, `rich`, `tifffile`, `tqdm`, `wrapt`, `xarray` ([#8615](https://github.com/napari/napari/pull/8615))\n- Postpone QtViewer deprecation to 0.8.0 ([#8617](https://github.com/napari/napari/pull/8617))\n- Remove settings call on import in qt_event_loop ([#8619](https://github.com/napari/napari/pull/8619))\n- Remove remaining `npe1` usage ([#8622](https://github.com/napari/napari/pull/8622))\n- Add `uv.lock` and leak graphs to gitignore ([#8637](https://github.com/napari/napari/pull/8637))\n- Fix pint warning about deprecation of getitem ([#8638](https://github.com/napari/napari/pull/8638))\n- Update `coverage`, `fsspec`, `hypothesis`, `ipython`, `pillow`, `pyside6`, `qtconsole`, `tensorstore`, `tqdm`, `wrapt`, `xarray` ([#8641](https://github.com/napari/napari/pull/8641))\n- Bump superqt to 0.7.8 ([#8646](https://github.com/napari/napari/pull/8646))\n- Bump napari plugin manager ([#8647](https://github.com/napari/napari/pull/8647))\n- Add/unify background box for canvas overlays ([#8654](https://github.com/napari/napari/pull/8654))\n- [pre-commit.ci] pre-commit autoupdate ([#8655](https://github.com/napari/napari/pull/8655))\n- Upload triangulation artifacts if benchmarks fails ([#8664](https://github.com/napari/napari/pull/8664))\n- Maint: Have triangle only on py313 and lower ([#8668](https://github.com/napari/napari/pull/8668))\n- Update `pydantic-settings`, `tifffile` ([#8671](https://github.com/napari/napari/pull/8671))\n- [pre-commit.ci] pre-commit autoupdate ([#8675](https://github.com/napari/napari/pull/8675))\n- Add pregenerated data to stabilize shapes triangulation benchmarks ([#8676](https://github.com/napari/napari/pull/8676))\n- Update `hypothesis`, `numpy`, `pandas`, `pydantic-settings`, `rich`, `scipy`, `tifffile`, `virtualenv` ([#8692](https://github.com/napari/napari/pull/8692))\n- Add python 3.14 classifier to project metadata ([#8693](https://github.com/napari/napari/pull/8693))\n- [pre-commit.ci] pre-commit autoupdate ([#8697](https://github.com/napari/napari/pull/8697))\n- ci(dependabot): bump the actions group with 3 updates ([#8713](https://github.com/napari/napari/pull/8713))\n- Update `certifi`, `tifffile`, `virtualenv` ([#8716](https://github.com/napari/napari/pull/8716))\n- Update pyqt5 default references to pyqt6 ([#8732](https://github.com/napari/napari/pull/8732))\n- Update `numpy`, `superqt`, `tifffile`, `wrapt` ([#8748](https://github.com/napari/napari/pull/8748))\n- [pre-commit.ci] pre-commit autoupdate ([#8753](https://github.com/napari/napari/pull/8753))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\n- Prepare on migration to `sphinxcontrib-mermaid` ([docs#923](https://github.com/napari/docs/pull/923))\n- ci(dependabot): bump the github-actions group with 2 updates ([docs#925](https://github.com/napari/docs/pull/925))\n- ci(dependabot): bump actions/download-artifact from 7.0.0 to 8.0.0 in the github-actions group ([docs#948](https://github.com/napari/docs/pull/948))\n\n\n## 24 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Neil Shephard](https://github.com/napari/docs/commits?author=ns-rse) - @ns-rse +\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Samuel Le Meur-Diebolt](https://github.com/napari/napari/commits?author=sdiebolt) - @sdiebolt +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 25 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carlos Mario Rodriguez Reza](https://github.com/napari/docs/commits?author=carlosmariorr) - @carlosmariorr\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [hiroalchem](https://github.com/napari/napari/commits?author=hiroalchem) - @hiroalchem +\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [Kyle I. S. Harrington](https://github.com/napari/docs/commits?author=kephale) - @kephale\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/napari/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Margot Chazotte](https://github.com/napari/napari/commits?author=MargotCh) - @MargotCh +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/napari/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/295614341/reactions","total_count":4,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":3,"eyes":0},"mentions_count":29},{"url":"https://api.github.com/repos/napari/napari/releases/283691692","assets_url":"https://api.github.com/repos/napari/napari/releases/283691692/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/283691692/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0a3","id":283691692,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84Q6Mqs","tag_name":"v0.7.0a3","target_commitish":"78e9cfbeafc9c560c6cc99e8fc315d094d6a11c9","name":"0.7.0a3","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-02-06T10:10:26Z","updated_at":"2026-02-06T11:10:33Z","published_at":"2026-02-06T10:11:46Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/351626308","id":351626308,"node_id":"RA_kwDOCJ0aI84U9WRE","name":"napari-0.7.0a3-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":44287,"digest":"sha256:bf633901d8bd848f50b01ce5bdf86801ca7e51dea445e03c56d9e2772b1209e6","download_count":1,"created_at":"2026-02-06T10:17:19Z","updated_at":"2026-02-06T10:17:19Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351626143","id":351626143,"node_id":"RA_kwDOCJ0aI84U9WOf","name":"napari-0.7.0a3-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":552022080,"digest":"sha256:cacf56ad8260d0e84225fc9a3a7e498be126b07b37d0ca98db43f654996fb954","download_count":3,"created_at":"2026-02-06T10:16:58Z","updated_at":"2026-02-06T10:17:18Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351641957","id":351641957,"node_id":"RA_kwDOCJ0aI84U9aFl","name":"napari-0.7.0a3-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37665,"digest":"sha256:f5587e4d22de63e05215327bdac42280ec9fef829a2408dd38242979a709a36d","download_count":1,"created_at":"2026-02-06T10:58:11Z","updated_at":"2026-02-06T10:58:12Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351641927","id":351641927,"node_id":"RA_kwDOCJ0aI84U9aFH","name":"napari-0.7.0a3-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":422107967,"digest":"sha256:9eb109daf9dacc3adccd8a84a576a09463aea08360c0148f5e3ccf83c80186dc","download_count":12,"created_at":"2026-02-06T10:57:59Z","updated_at":"2026-02-06T10:58:11Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351646230","id":351646230,"node_id":"RA_kwDOCJ0aI84U9bIW","name":"napari-0.7.0a3-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":37094,"digest":"sha256:76767f26255560372eda9a699ba7c72594b46aa6c76701e1230206f9dcfe1abd","download_count":1,"created_at":"2026-02-06T11:10:32Z","updated_at":"2026-02-06T11:10:32Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351646162","id":351646162,"node_id":"RA_kwDOCJ0aI84U9bHS","name":"napari-0.7.0a3-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":468185003,"digest":"sha256:d33a244acacf87a0b3991dc5b603e6a09c3d0a68b79e563fafd41aead4947dac","download_count":6,"created_at":"2026-02-06T11:10:19Z","updated_at":"2026-02-06T11:10:31Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351624643","id":351624643,"node_id":"RA_kwDOCJ0aI84U9V3D","name":"napari-0.7.0a3-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":4491775,"digest":"sha256:dc4e0c96ba9dca26f99d92dd59533315ad8bad8bfcc2b09ffabb1b5fc970a337","download_count":6,"created_at":"2026-02-06T10:11:45Z","updated_at":"2026-02-06T10:11:45Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351626996","id":351626996,"node_id":"RA_kwDOCJ0aI84U9Wb0","name":"napari-0.7.0a3-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":543403056,"digest":"sha256:dcd76419f3a85d0a7b5378afe7509acf60cb95112170bfac255fb7158ba0c19b","download_count":41,"created_at":"2026-02-06T10:19:40Z","updated_at":"2026-02-06T10:19:54Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351627142","id":351627142,"node_id":"RA_kwDOCJ0aI84U9WeG","name":"napari-0.7.0a3-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34053,"digest":"sha256:069572045d11f825e51e09f26910dc41facd73c2748e13f2cd2346630784e7b7","download_count":1,"created_at":"2026-02-06T10:19:55Z","updated_at":"2026-02-06T10:19:55Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/351624642","id":351624642,"node_id":"RA_kwDOCJ0aI84U9V3C","name":"napari-0.7.0a3.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":4102016,"digest":"sha256:3e274afc484746fc62ed1a36075252a1e5be4cad85cd4973a627e7ac097ce371","download_count":7,"created_at":"2026-02-06T10:11:45Z","updated_at":"2026-02-06T10:11:45Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a3/napari-0.7.0a3.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0a3","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0a3","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Tue, Jan 27, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\nMore detail coming soon...\n\n### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed, and plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nThis change has been a long time coming, and it's allowed us to remove thousands\nof lines of tangled and confusing legacy code. Now that we have, it's unleashed\nthe potential for massive improvements to file opening and saving in `napari`,\nand exciting new features for our plugin infrastructure. Stay tuned!\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n### Grid mode - bigger, better, faster 📈\n\nIf you've been playing with our new grid mode since 0.6.5, you \nmay have stumbled into performance issues when progressively adding\nnew layers to the viewer. Stumble no longer! Our grid mode is now wicked fast and buttery smooth 🧈.\n\nWe've also fixed some issues with mouse interactions and deleting\nlayers, so you can tile to your heart's content. Try it out:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n### What's in an angle? The truth! Fixed camera angles 🎥\n\nIf you've ever set up the camera to take that perfect publication-worthy photo of \nyour data (and taken the time to query the camera angles), you may have noticed they seemed... off.\nThat's because they were! Very... off. This was due to a long-standing bug in how we calculated our\ncamera angles, fueled in part by some arcane vispy axis-swapping tomfoolery, and in part by napari's\nstarting position of `viewer.camera.angles = (0, 0, 90)`.\n\nGood news! With [#8281](https://github.com/napari/napari/pull/8281), angles make sense again. The default camera angles are `(0, 0, 0)`, and they\nmove intuitively -- so `viewer.camera.angles = (0, 0, 10)` actually represents a 10 degree\nrotation around the 0th dimension. What a time to be alive!\n\nOld versions of napari:\n\n![Image showing an old version of a napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console.](https://github.com/user-attachments/assets/9ae2040c-36f7-4c4c-8ef8-140202d7ccda)\n\nNew and sane:\n\n![Image showing the 0.7.0 napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console. The layer is rotated 10 degrees in its first dimension](https://github.com/user-attachments/assets/6b972b46-5c3c-439a-8b0a-fe8a293224e5)\n\nAll rotations are now right-handed (counterclockwise when the axis points towards the viewer),\nwith automatic sign-flipping for flipped camera views. We've also removed the unwieldy to type\n(and confusing to reason about) `quaternion2euler_degrees` in favour of scipy's `Rotation` class.\n\nNow for the bad news... After many (and we do [mean](https://github.com/napari/napari/pull/8537)\n[**many**](https://github.com/napari/napari/pull/8557)) attempts, we realized we couldn't\nprovide legacy conversion functions to get you to and from the original camera angles. Therefore,\nthis is a **breaking change**.\n\nIf you had scripts or notebooks setting up angles for screenshots, or if you've got workshop\nmaterials or tutorials with preset angles, they'll need to be updated. Any existing code\nusing `viewer.camera.angles = (z, y, x)` will now produce a different view than before.\n\n...\n\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Remove `numpydoc` as a base and testing dependency ([#8338](https://github.com/napari/napari/pull/8338))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Remove shim setting and warning dialog ([#8448](https://github.com/napari/napari/pull/8448))\n- Remove PySide2 support ([#8450](https://github.com/napari/napari/pull/8450))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## New Features\n\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\n- Updating `selected_label` by `selected_data` for `Labels` layer toward multiple selection ([#8405](https://github.com/napari/napari/pull/8405))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Don't warn user when a Zarr array with channel axis is passed ([#8559](https://github.com/napari/napari/pull/8559))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\n- Low hanging Labels painting performance improvement ([#8592](https://github.com/napari/napari/pull/8592))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- Bugfix: update magicgui layer combobox if a layer is renamed ([#8412](https://github.com/napari/napari/pull/8412))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n- Fix dim order of rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\n- Fix angle label values in ndim popup widget ([#8535](https://github.com/napari/napari/pull/8535))\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\n- Close proper window on Ctrl+W ([#8548](https://github.com/napari/napari/pull/8548))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\n- Account for tile2data in the Labels polygon overlay ([#8563](https://github.com/napari/napari/pull/8563))\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\n- Stop welcome screen time on hiding of QtWiewer ([#8585](https://github.com/napari/napari/pull/8585))\n- Fix Labels layer controls contiguous checkbox to initialize to the layer state ([#8594](https://github.com/napari/napari/pull/8594))\n\n## Build Tools\n\n- Bump urllib3 from 2.5.0 to 2.6.0 in /resources ([#8484](https://github.com/napari/napari/pull/8484))\n- Migrate overlays to psygnal ([#8492](https://github.com/napari/napari/pull/8492))\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n\n## Documentation\n\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\n- Update display text copy in shapes.md ([docs#914](https://github.com/napari/docs/pull/914))\n- Update release notes for 0.7.0a1 ([docs#915](https://github.com/napari/docs/pull/915))\n- Simplify titles in App installation instructions ([docs#918](https://github.com/napari/docs/pull/918))\n\n## Other Pull Requests\n\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Update `hypothesis`, `psygnal` ([#8310](https://github.com/napari/napari/pull/8310))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove `numpydoc` as core dependency, instead use `docstring_parser` ([#8334](https://github.com/napari/napari/pull/8334))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Switch PyPI downloads badge in README ([#8374](https://github.com/napari/napari/pull/8374))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- ci(dependabot): bump the actions group with 3 updates ([#8400](https://github.com/napari/napari/pull/8400))\n- Exclude dependabot from PR author check ([#8409](https://github.com/napari/napari/pull/8409))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Maint: Update test_prereleases.yml to also test on pyside6 ([#8470](https://github.com/napari/napari/pull/8470))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `jsonschema`, `pandas`, `pillow`, `psutil`, `psygnal`, `pyqt6`, `scikit-image`, `scipy`, `superqt`, `tifffile`, `virtualenv` ([#8518](https://github.com/napari/napari/pull/8518))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\n- Remove npe1 code for reading and writing ([#8579](https://github.com/napari/napari/pull/8579))\n- Fix build constraints with circular napari dependency ([#8588](https://github.com/napari/napari/pull/8588))\n- Modify sphinx-external-toc version constraint to eliminate warnings ([#8591](https://github.com/napari/napari/pull/8591))\n- Switch logo URL used for reader test ([#8596](https://github.com/napari/napari/pull/8596))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\n\n\n## 17 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 22 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carlos Mario Rodriguez Reza](https://github.com/napari/docs/commits?author=carlosmariorr) - @carlosmariorr\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/docs/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/docs/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/283691692/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":1,"confused":0,"heart":0,"rocket":0,"eyes":0},"mentions_count":23},{"url":"https://api.github.com/repos/napari/napari/releases/279869098","assets_url":"https://api.github.com/repos/napari/napari/releases/279869098/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/279869098/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0a2","id":279869098,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84Qrnaq","tag_name":"v0.7.0a2","target_commitish":"531c06cabca3b69405226b399b20d10681c2e3b1","name":"0.7.0a2","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-01-26T09:50:13Z","updated_at":"2026-01-26T09:51:50Z","published_at":"2026-01-26T09:51:50Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/346015825","id":346015825,"node_id":"RA_kwDOCJ0aI84Un8hR","name":"napari-0.7.0a2-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":4480814,"digest":"sha256:72a33f66073093a5df9d9fd62e36344a9b6c894074c18b4ab1beb4114a24eba0","download_count":9,"created_at":"2026-01-26T09:51:48Z","updated_at":"2026-01-26T09:51:49Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a2/napari-0.7.0a2-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/346015824","id":346015824,"node_id":"RA_kwDOCJ0aI84Un8hQ","name":"napari-0.7.0a2.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":4091177,"digest":"sha256:e6dc30ed1342d42a35ab3b060c2d3fba51844d3a27e4730c6f11ddc02fadb360","download_count":6,"created_at":"2026-01-26T09:51:48Z","updated_at":"2026-01-26T09:51:49Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a2/napari-0.7.0a2.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0a2","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0a2","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Tue, Jan 27, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\nMore detail coming soon...\n\n### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed, and plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nThis change has been a long time coming, and it's allowed us to remove thousands\nof lines of tangled and confusing legacy code. Now that we have, it's unleashed\nthe potential for massive improvements to file opening and saving in `napari`,\nand exciting new features for our plugin infrastructure. Stay tuned!\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n### Grid mode - bigger, better, faster 📈\n\nIf you've been playing with our new grid mode since 0.6.5, you \nmay have stumbled into performance issues when progressively adding\nnew layers to the viewer. Stumble no longer! Our grid mode is now wicked fast and buttery smooth 🧈.\n\nWe've also fixed some issues with mouse interactions and deleting\nlayers, so you can tile to your heart's content. Try it out:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n### What's in an angle? The truth! Fixed camera angles 🎥\n\nIf you've ever set up the camera to take that perfect publication-worthy photo of \nyour data (and taken the time to query the camera angles), you may have noticed they seemed... off.\nThat's because they were! Very... off. This was due to a long-standing bug in how we calculated our\ncamera angles, fueled in part by some arcane vispy axis-swapping tomfoolery, and in part by napari's\nstarting position of `viewer.camera.angles = (0, 0, 90)`.\n\nGood news! With [#8281](https://github.com/napari/napari/pull/8281), angles make sense again. The default camera angles are `(0, 0, 0)`, and they\nmove intuitively -- so `viewer.camera.angles = (0, 0, 10)` actually represents a 10 degree\nrotation around the 0th dimension. What a time to be alive!\n\nOld versions of napari:\n\n![Image showing an old version of a napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console.](https://github.com/user-attachments/assets/9ae2040c-36f7-4c4c-8ef8-140202d7ccda)\n\nNew and sane:\n\n![Image showing the 0.7.0 napari viewer with a layer opened and its camera angle (10, 0, 0) displayed in the console. The layer is rotated 10 degrees in its first dimension](https://github.com/user-attachments/assets/6b972b46-5c3c-439a-8b0a-fe8a293224e5)\n\nAll rotations are now right-handed (counterclockwise when the axis points towards the viewer),\nwith automatic sign-flipping for flipped camera views. We've also removed the unwieldy to type\n(and confusing to reason about) `quaternion2euler_degrees` in favour of scipy's `Rotation` class.\n\nNow for the bad news... After many (and we do [mean](https://github.com/napari/napari/pull/8537)\n[**many**](https://github.com/napari/napari/pull/8557)) attempts, we realized we couldn't\nprovide legacy conversion functions to get you to and from the original camera angles. Therefore,\nthis is a **breaking change**.\n\nIf you had scripts or notebooks setting up angles for screenshots, or if you've got workshop\nmaterials or tutorials with preset angles, they'll need to be updated. Any existing code\nusing `viewer.camera.angles = (z, y, x)` will now produce a different view than before.\n\n...\n\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Remove `numpydoc` as a base and testing dependency ([#8338](https://github.com/napari/napari/pull/8338))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Remove shim setting and warning dialog ([#8448](https://github.com/napari/napari/pull/8448))\n- Remove PySide2 support ([#8450](https://github.com/napari/napari/pull/8450))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## New Features\n\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\n- Updating `selected_label` by `selected_data` for `Labels` layer toward multiple selection ([#8405](https://github.com/napari/napari/pull/8405))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Don't warn user when a Zarr array with channel axis is passed ([#8559](https://github.com/napari/napari/pull/8559))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\n- Low hanging Labels painting performance improvement ([#8592](https://github.com/napari/napari/pull/8592))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- Bugfix: update magicgui layer combobox if a layer is renamed ([#8412](https://github.com/napari/napari/pull/8412))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n- Fix dim order of rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\n- Fix angle label values in ndim popup widget ([#8535](https://github.com/napari/napari/pull/8535))\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\n- Close proper window on Ctrl+W ([#8548](https://github.com/napari/napari/pull/8548))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\n- Account for tile2data in the Labels polygon overlay ([#8563](https://github.com/napari/napari/pull/8563))\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\n- Stop welcome screen time on hiding of QtWiewer ([#8585](https://github.com/napari/napari/pull/8585))\n- Fix Labels layer controls contiguous checkbox to initialize to the layer state ([#8594](https://github.com/napari/napari/pull/8594))\n\n## Build Tools\n\n- Bump urllib3 from 2.5.0 to 2.6.0 in /resources ([#8484](https://github.com/napari/napari/pull/8484))\n- Migrate overlays to psygnal ([#8492](https://github.com/napari/napari/pull/8492))\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\n- Add napari-metadata to napari dependencies ([#8576](https://github.com/napari/napari/pull/8576))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n\n## Documentation\n\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Plugin dependencies for docs generation ([#8581](https://github.com/napari/napari/pull/8581))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\n- Update display text copy in shapes.md ([docs#914](https://github.com/napari/docs/pull/914))\n- Update release notes for 0.7.0a1 ([docs#915](https://github.com/napari/docs/pull/915))\n- Simplify titles in App installation instructions ([docs#918](https://github.com/napari/docs/pull/918))\n\n## Other Pull Requests\n\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Update `hypothesis`, `psygnal` ([#8310](https://github.com/napari/napari/pull/8310))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove `numpydoc` as core dependency, instead use `docstring_parser` ([#8334](https://github.com/napari/napari/pull/8334))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Switch PyPI downloads badge in README ([#8374](https://github.com/napari/napari/pull/8374))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- ci(dependabot): bump the actions group with 3 updates ([#8400](https://github.com/napari/napari/pull/8400))\n- Exclude dependabot from PR author check ([#8409](https://github.com/napari/napari/pull/8409))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Maint: Update test_prereleases.yml to also test on pyside6 ([#8470](https://github.com/napari/napari/pull/8470))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `jsonschema`, `pandas`, `pillow`, `psutil`, `psygnal`, `pyqt6`, `scikit-image`, `scipy`, `superqt`, `tifffile`, `virtualenv` ([#8518](https://github.com/napari/napari/pull/8518))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\n- Remove npe1 code for reading and writing ([#8579](https://github.com/napari/napari/pull/8579))\n- Fix build constraints with circular napari dependency ([#8588](https://github.com/napari/napari/pull/8588))\n- Modify sphinx-external-toc version constraint to eliminate warnings ([#8591](https://github.com/napari/napari/pull/8591))\n- Switch logo URL used for reader test ([#8596](https://github.com/napari/napari/pull/8596))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\n\n\n## 17 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 22 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carlos Mario Rodriguez Reza](https://github.com/napari/docs/commits?author=carlosmariorr) - @carlosmariorr\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) ([docs](https://github.com/napari/docs/commits?author=dstansby))  - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/napari/commits?author=guiwitz) ([docs](https://github.com/napari/docs/commits?author=guiwitz))  - @guiwitz\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/docs/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/docs/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/279869098/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":1,"confused":0,"heart":0,"rocket":0,"eyes":0},"mentions_count":23},{"url":"https://api.github.com/repos/napari/napari/releases/278175879","assets_url":"https://api.github.com/repos/napari/napari/releases/278175879/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/278175879/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0a1","id":278175879,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84QlKCH","tag_name":"v0.7.0a1","target_commitish":"2777a9236572fb4050249e800ecb5dc2d028800e","name":"0.7.0a1","draft":false,"immutable":false,"prerelease":true,"created_at":"2026-01-20T09:05:13Z","updated_at":"2026-01-20T09:07:27Z","published_at":"2026-01-20T09:07:27Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/343194506","id":343194506,"node_id":"RA_kwDOCJ0aI84UdLuK","name":"napari-0.7.0a1-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3528698,"digest":"sha256:daa625ddeedad1f2e433960567b18b9a33685617ee63e38b4fe308a97f62af2a","download_count":6,"created_at":"2026-01-20T09:07:26Z","updated_at":"2026-01-20T09:07:26Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a1/napari-0.7.0a1-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/343194504","id":343194504,"node_id":"RA_kwDOCJ0aI84UdLuI","name":"napari-0.7.0a1.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3244800,"digest":"sha256:7018d68c52cf39bed96b0a1b2a1bc5fa7e00d4552c9c6d1b152a4e6a54555c47","download_count":6,"created_at":"2026-01-20T09:07:26Z","updated_at":"2026-01-20T09:07:26Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a1/napari-0.7.0a1.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0a1","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0a1","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Tue, Jan 27, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\nMore detail coming soon...\n\n### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed, and plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n### Grid Overlay\n\n...\n\n\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- Remove `numpydoc` as a base and testing dependency ([#8338](https://github.com/napari/napari/pull/8338))\n- Histogram ([#8391](https://github.com/napari/napari/pull/8391))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Remove shim setting and warning dialog ([#8448](https://github.com/napari/napari/pull/8448))\n- Remove PySide2 support ([#8450](https://github.com/napari/napari/pull/8450))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Remove `npe1` settings and theme loading ([#8540](https://github.com/napari/napari/pull/8540))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n\n## New Features\n\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Cursor overlay ([#8017](https://github.com/napari/napari/pull/8017))\n- Welcome widget as an overlay ([#8117](https://github.com/napari/napari/pull/8117))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- Allow create Shapes and Points per selected Layer ([#8357](https://github.com/napari/napari/pull/8357))\n- Histogram ([#8391](https://github.com/napari/napari/pull/8391))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Enable antialiasing on all Lines ([#8515](https://github.com/napari/napari/pull/8515))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Use negative indexing for viewer dims axis labels ([#8565](https://github.com/napari/napari/pull/8565))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: Speed up shapes box selection by using bounding boxes and vectorization ([#8378](https://github.com/napari/napari/pull/8378))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Enh: Throttle shapes highlight ([#8404](https://github.com/napari/napari/pull/8404))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Add caching of outlines to reduce delay on Shapes zoom ([#8536](https://github.com/napari/napari/pull/8536))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Delay scipy imports until needed ([#8561](https://github.com/napari/napari/pull/8561))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- Bugfix: update magicgui layer combobox if a layer is renamed ([#8412](https://github.com/napari/napari/pull/8412))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n- Fix rendering of 2D rgb data in 3D mode ([#8522](https://github.com/napari/napari/pull/8522))\n- Fix numpy warning for pure python edge triangulation ([#8523](https://github.com/napari/napari/pull/8523))\n- Do not use keyword argument when creating tooltip ([#8528](https://github.com/napari/napari/pull/8528))\n- Fix angle label values in ndim popup widget ([#8535](https://github.com/napari/napari/pull/8535))\n- Fix update of shape that lead to wrong rendering ([#8543](https://github.com/napari/napari/pull/8543))\n- Fix the Shapes mode setter to use _is_creating for _finish_drawing and clear selection when going to ADD_* ([#8551](https://github.com/napari/napari/pull/8551))\n- Do not expose legacy angle ([#8557](https://github.com/napari/napari/pull/8557))\n- ensure overlays are reused properly when gridded mode is enabled ([#8569](https://github.com/napari/napari/pull/8569))\n\n## Build Tools\n\n- Bump urllib3 from 2.5.0 to 2.6.0 in /resources ([#8484](https://github.com/napari/napari/pull/8484))\n- Migrate overlays to psygnal ([#8492](https://github.com/napari/napari/pull/8492))\n- Bump urllib3 from 2.6.2 to 2.6.3 in /resources ([#8544](https://github.com/napari/napari/pull/8544))\n\n## Documentation\n\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n- Update docs ahead of 0.7.0 alpha ([docs#897](https://github.com/napari/docs/pull/897))\n- Update website to use new logos ([docs#901](https://github.com/napari/docs/pull/901))\n- Migrate and update hub customization from wiki to docs ([docs#906](https://github.com/napari/docs/pull/906))\n- Improve open image section ([docs#907](https://github.com/napari/docs/pull/907))\n- Remove mention of outdated plugin from quick start ([docs#908](https://github.com/napari/docs/pull/908))\n- increase stack size to solve import recursion problem ([docs#912](https://github.com/napari/docs/pull/912))\n\n## Other Pull Requests\n\n- Add codespell support (config, workflow to detect/not fix) and make it fix few typos ([#7619](https://github.com/napari/napari/pull/7619))\n- Clipping planes control widget ([#7993](https://github.com/napari/napari/pull/7993))\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Update `hypothesis`, `psygnal` ([#8310](https://github.com/napari/napari/pull/8310))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove `numpydoc` as core dependency, instead use `docstring_parser` ([#8334](https://github.com/napari/napari/pull/8334))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Switch PyPI downloads badge in README ([#8374](https://github.com/napari/napari/pull/8374))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- ci(dependabot): bump the actions group with 3 updates ([#8400](https://github.com/napari/napari/pull/8400))\n- Exclude dependabot from PR author check ([#8409](https://github.com/napari/napari/pull/8409))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Add colorbar and overlay tiling example ([#8433](https://github.com/napari/napari/pull/8433))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- Reduce noise in benchmark logs ([#8525](https://github.com/napari/napari/pull/8525))\n- Improve language in Citation PR Author check ([#8526](https://github.com/napari/napari/pull/8526))\n- ci(dependabot): bump the actions group with 4 updates ([#8533](https://github.com/napari/napari/pull/8533))\n- Enforce unix line endings ([#8541](https://github.com/napari/napari/pull/8541))\n- Add temporary tox plugin for fix installation of dependency groups ([#8545](https://github.com/napari/napari/pull/8545))\n- Revert: Add temporary tox plugin for fix installation of dependency groups (#8545) ([#8546](https://github.com/napari/napari/pull/8546))\n- Fix path to constraints update script  ([#8553](https://github.com/napari/napari/pull/8553))\n- [pre-commit.ci] pre-commit autoupdate ([#8554](https://github.com/napari/napari/pull/8554))\n- Stop using `get_settings` during import time ([#8556](https://github.com/napari/napari/pull/8556))\n- Fix test on PySide6 by change mocking of qt methods ([#8560](https://github.com/napari/napari/pull/8560))\n- Remove 'axis' prefix from layer axis labels ([#8566](https://github.com/napari/napari/pull/8566))\n- [pre-commit.ci] pre-commit autoupdate ([#8571](https://github.com/napari/napari/pull/8571))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#898](https://github.com/napari/docs/pull/898))\n- Allow to use local copy of napari when using pixi ([docs#900](https://github.com/napari/docs/pull/900))\n- Fix pixi tasks for different environments ([docs#904](https://github.com/napari/docs/pull/904))\n- Stop tracking `docs/release/index.md` so that it is ignored ([docs#905](https://github.com/napari/docs/pull/905))\n- Maint Update PIP_CONSTRAINT to UV_CONSTRAINT in config ([docs#909](https://github.com/napari/docs/pull/909))\n- Remove pixi configuration for macos intel ([docs#913](https://github.com/napari/docs/pull/913))\n\n\n## 17 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/docs/commits?author=guiwitz) - @guiwitz\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 22 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/napari/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Gabriel Selzer](https://github.com/napari/docs/commits?author=gselzer) - @gselzer\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/docs/commits?author=guiwitz) - @guiwitz\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/docs/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/docs/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yaroslav Halchenko](https://github.com/napari/docs/commits?author=yarikoptic) - @yarikoptic\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/278175879/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"mentions_count":24},{"url":"https://api.github.com/repos/napari/napari/releases/273281211","assets_url":"https://api.github.com/repos/napari/napari/releases/273281211/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/273281211/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.7.0a0","id":273281211,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84QSfC7","tag_name":"v0.7.0a0","target_commitish":"75ed53164162d3d559391c4911d32b55968fc8ae","name":"0.7.0a0","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-12-29T20:46:20Z","updated_at":"2025-12-29T21:00:18Z","published_at":"2025-12-29T20:48:33Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/334213563","id":334213563,"node_id":"RA_kwDOCJ0aI84T67G7","name":"napari-0.7.0a0-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":45728,"digest":"sha256:80da368f0c55613955a17704a3a6b827d607ed18982ca93a39faf73cbfd2cc17","download_count":1,"created_at":"2025-12-29T20:54:49Z","updated_at":"2025-12-29T20:54:49Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334213527","id":334213527,"node_id":"RA_kwDOCJ0aI84T67GX","name":"napari-0.7.0a0-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":558493760,"digest":"sha256:d90da32a1d4a2559e3bb4fd2bfc2d078992247caeb1ef3dfee09900e60b2ef9e","download_count":5,"created_at":"2025-12-29T20:54:30Z","updated_at":"2025-12-29T20:54:49Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334214212","id":334214212,"node_id":"RA_kwDOCJ0aI84T67RE","name":"napari-0.7.0a0-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":39106,"digest":"sha256:50f6f56e066d170030eb319aad00b79345077945379229904e0e78b3cbaafd58","download_count":1,"created_at":"2025-12-29T20:57:27Z","updated_at":"2025-12-29T20:57:27Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334214180","id":334214180,"node_id":"RA_kwDOCJ0aI84T67Qk","name":"napari-0.7.0a0-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":430639990,"digest":"sha256:8287a99aeab9a7ebc2c3b6cfe217e7e2f6520dd9e2999bc11cd898b268587c85","download_count":5,"created_at":"2025-12-29T20:57:14Z","updated_at":"2025-12-29T20:57:26Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334214763","id":334214763,"node_id":"RA_kwDOCJ0aI84T67Zr","name":"napari-0.7.0a0-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":38541,"digest":"sha256:f2c95e0cc7d15ebdb1e81481495d9b9e04338c7fe8c0dea7d41c0fbd38b3402a","download_count":1,"created_at":"2025-12-29T21:00:18Z","updated_at":"2025-12-29T21:00:18Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334214700","id":334214700,"node_id":"RA_kwDOCJ0aI84T67Ys","name":"napari-0.7.0a0-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":474605491,"digest":"sha256:6556ee631e2cf54dec4622e5475f2d67f9530f0c5e9383568b46125db838481b","download_count":3,"created_at":"2025-12-29T20:59:59Z","updated_at":"2025-12-29T21:00:17Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334211983","id":334211983,"node_id":"RA_kwDOCJ0aI84T66uP","name":"napari-0.7.0a0-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3532765,"digest":"sha256:1fc2037f2fc4cc2aaf1493344d6e806cbe590552197cb6aeba05a253003744b8","download_count":5,"created_at":"2025-12-29T20:48:32Z","updated_at":"2025-12-29T20:48:32Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334214168","id":334214168,"node_id":"RA_kwDOCJ0aI84T67QY","name":"napari-0.7.0a0-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":552693824,"digest":"sha256:1afdc8ea2a7133d69d207fb0b044b655fe4614e9bcdbf4a139af68d659f46565","download_count":21,"created_at":"2025-12-29T20:57:07Z","updated_at":"2025-12-29T20:57:25Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334214210","id":334214210,"node_id":"RA_kwDOCJ0aI84T67RC","name":"napari-0.7.0a0-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":35392,"digest":"sha256:38cde2fa910a7b11d0ff7e44618c3680ccde9b5f8a857d0990f36b05abf7e770","download_count":1,"created_at":"2025-12-29T20:57:26Z","updated_at":"2025-12-29T20:57:26Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/334211984","id":334211984,"node_id":"RA_kwDOCJ0aI84T66uQ","name":"napari-0.7.0a0.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3247293,"digest":"sha256:a195e8426aa67e35fbe06a62c33a650f6be213ea71c5a2d3bce10bd0fe1151bf","download_count":5,"created_at":"2025-12-29T20:48:32Z","updated_at":"2025-12-29T20:48:32Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.7.0a0/napari-0.7.0a0.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.7.0a0","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.7.0a0","body":"# napari 0.7.0\n⚠️ *Note: these release notes are still in draft while 0.7.0 is in release candidate testing.* ⚠️\n\n*Fri, Jan 09, 2026*\n\nWe're happy to announce the release of napari 0.7.0!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Macro** release containing awesome new features, but may require dedication of some significant time when upgrading projects to use this version.\n\n## Highlights\n\nMore detail coming soon...\n\n### Transition to npe2 plugin engine 🔌\n\nIn 0.6.0 we began the process of deprecating npe1 (napari-plugin-engine).\nIn all 0.6.x releases, npe1 plugins were automatically converted to npe2 by default,\nand users could turn off the `use_npe2_adaptor` setting to continue using npe1 plugins\nwithout auto-conversion.\n\nIn 0.7.0 this setting is being removed, and plugins will *only* continue to function if\nthey can be auto-converted to npe2. Most plugins will be unaffected, but those that rely\non import-time behaviour may not work as expected. If a plugin is relying on import-time\nbehaviour, it may be able to replicate this using the new startup scripts functionality added\nin 0.6.5 ([#8188](https://github.com/napari/napari/pull/8188)).\n\nIf you encounter conversion issues in a plugin you rely on, please contact the\nplugin authors to encourage them to migrate their plugin to the npe2 system.\n\nFor more details on this change and how it affects plugins, see the [detailed\nguide](adapted-plugin-guide). If you are a plugin author and your plugin is not\nyet npe2-compatible, please see our [npe2 migration\nguide](npe2-migration-guide), and, if you encounter any issues, get in touch in\nour [Plugins Zulip chat\nchannel](https://napari.zulipchat.com/#narrow/channel/309872-plugins) or by\ncoming to one of our [community meetings](meeting-schedule).\n\n### Grid Overlay\n\n...\n\n\n- Add grid overlay ([#7827](https://github.com/napari/napari/pull/7827))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- Remove `numpydoc` as a base and testing dependency ([#8338](https://github.com/napari/napari/pull/8338))\n- (WIP) Histogram ([#8391](https://github.com/napari/napari/pull/8391))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Remove shim setting and warning dialog ([#8448](https://github.com/napari/napari/pull/8448))\n- Remove PySide2 support ([#8450](https://github.com/napari/napari/pull/8450))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n\n## New Features\n\n- Add grid overlay ([#7827](https://github.com/napari/napari/pull/7827))\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Cursor overlay ([#8017](https://github.com/napari/napari/pull/8017))\n- Multilayer features table ([#8189](https://github.com/napari/napari/pull/8189))\n- Better text overlay (and subclasses) ([#8236](https://github.com/napari/napari/pull/8236))\n- (WIP) Histogram ([#8391](https://github.com/napari/napari/pull/8391))\n\n## Improvements\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- Add a seed argument to built-in samples with random seeds ([#8317](https://github.com/napari/napari/pull/8317))\n- Enh: clarify Points selection keybinding behavior: select_in_slice not append by default, add new select_append_in_slice ([#8339](https://github.com/napari/napari/pull/8339))\n- Enh: Improve zarr reading by builtins ([#8355](https://github.com/napari/napari/pull/8355))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Reordering default colormap to split channels  ([#8383](https://github.com/napari/napari/pull/8383))\n- change default blending mode of images on split RGB ([#8385](https://github.com/napari/napari/pull/8385))\n- Texture tiling ([#8395](https://github.com/napari/napari/pull/8395))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Set viewer dimension based on number of axis labels ([#8436](https://github.com/napari/napari/pull/8436))\n- Enh: Add label value to the labels tooltip ([#8495](https://github.com/napari/napari/pull/8495))\n- Use 10x10 pixels rect around mouse position to invalidate tooltip ([#8500](https://github.com/napari/napari/pull/8500))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Avoid materializing property views when updating points highlight ([#8517](https://github.com/napari/napari/pull/8517))\n\n## Performance\n\n- perf: reallocate instead of clearing and repopulating set of selected points ([#6895](https://github.com/napari/napari/pull/6895))\n- ENH: Speedup multiple shapes removal by concat'ing and np.deleting as a batch ([#8375](https://github.com/napari/napari/pull/8375))\n- Enh: simple speed up of Shapes `_extent_data` ([#8401](https://github.com/napari/napari/pull/8401))\n- Enh: performance optimizations to ShapeList outlines ([#8403](https://github.com/napari/napari/pull/8403))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n\n## Bug Fixes\n\n- Fix camera angles‽ ([#8281](https://github.com/napari/napari/pull/8281))\n- bugfix & refactor: Use events for shape multiselection ([#8332](https://github.com/napari/napari/pull/8332))\n- Fix conversion of vector images to coordinates of vectors ([#8366](https://github.com/napari/napari/pull/8366))\n- initialize label selection spinbox to a correct value ([#8382](https://github.com/napari/napari/pull/8382))\n- Bugfix: fix erratic Shape sorting ([#8408](https://github.com/napari/napari/pull/8408))\n- Bugfix: update magicgui layer combobox if a layer is renamed ([#8412](https://github.com/napari/napari/pull/8412))\n- bugfix: Ensure that edge_width is accounted for when using polygon lasso ([#8414](https://github.com/napari/napari/pull/8414))\n- Fix Shapes thumbnail z ordering ([#8417](https://github.com/napari/napari/pull/8417))\n- Fix unnecessary overlay initialization on scenegraph update ([#8423](https://github.com/napari/napari/pull/8423))\n- Bugfix: update magicgui layer combobox if a layer is renamed using LayerList.renamed event ([#8429](https://github.com/napari/napari/pull/8429))\n- Fix overlay initialization and layer addition slowdown ([#8443](https://github.com/napari/napari/pull/8443))\n- Bugfix: ensure triangle colors are updated properly when using polygon lasso ([#8469](https://github.com/napari/napari/pull/8469))\n- Speed up the deletion of layers by deduplicating the function calls  ([#8479](https://github.com/napari/napari/pull/8479))\n- Bump to vispy 0.16 ([#8501](https://github.com/napari/napari/pull/8501))\n- Cap point highlight size ([#8504](https://github.com/napari/napari/pull/8504))\n- Bugfix: recurse through sub-fields when making connections in EventedSettings Config ([#8520](https://github.com/napari/napari/pull/8520))\n\n## API Changes\n\n- Expose force_sync context manager ([#7908](https://github.com/napari/napari/pull/7908))\n\n## Build Tools\n\n- Bump urllib3 from 2.5.0 to 2.6.0 in /resources ([#8484](https://github.com/napari/napari/pull/8484))\n- Migrate overlays to psygnal ([#8492](https://github.com/napari/napari/pull/8492))\n\n## Documentation\n\n- Create 3D_vectors_through_time.py ([#8461](https://github.com/napari/napari/pull/8461))\n- Fix and improve `dock_widgets` docstrings ([#8494](https://github.com/napari/napari/pull/8494))\n- Remove deprecated `view_*` methods from docs materials ([docs#864](https://github.com/napari/docs/pull/864))\n- Proposed roadmap updates for Q3 ([docs#873](https://github.com/napari/docs/pull/873))\n- Enhance documentation build process with pixi integration and Windows… ([docs#876](https://github.com/napari/docs/pull/876))\n- Pixi cross platform support ([docs#879](https://github.com/napari/docs/pull/879))\n- Refactor contributor docs: prioritize pixi for local builds ([docs#880](https://github.com/napari/docs/pull/880))\n- Reorg of the Usage section of the docs ([docs#881](https://github.com/napari/docs/pull/881))\n- Modernize type annotation to use builtins ([docs#883](https://github.com/napari/docs/pull/883))\n- Update dark mode colors ([docs#884](https://github.com/napari/docs/pull/884))\n- Remove outdated mentions about PySide2 in documentation ([docs#889](https://github.com/napari/docs/pull/889))\n- Explain accessing dock widget wrappers ([docs#892](https://github.com/napari/docs/pull/892))\n- Add v0.7.0 release notes ([docs#893](https://github.com/napari/docs/pull/893))\n- Add npe1 deprecation info to release notes ([docs#894](https://github.com/napari/docs/pull/894))\n- Overwrite pooch downloader to fix Zenodo access problems ([docs#895](https://github.com/napari/docs/pull/895))\n\n## Other Pull Requests\n\n- Add codespell support (config, workflow to detect/not fix) and make it fix few typos ([#7619](https://github.com/napari/napari/pull/7619))\n- Clipping planes control widget ([#7993](https://github.com/napari/napari/pull/7993))\n- Add cell tracking example ([#8051](https://github.com/napari/napari/pull/8051))\n- TYP: overload for `labeled_particles` incorrectly notes `Literal[True]=...` as default for `return_density` ([#8114](https://github.com/napari/napari/pull/8114))\n- Decompose Layer code by move slicing to specialized class ([#8254](https://github.com/napari/napari/pull/8254))\n- Update `hypothesis`, `psygnal` ([#8310](https://github.com/napari/napari/pull/8310))\n- Add information about pyside 6 in error information ([#8313](https://github.com/napari/napari/pull/8313))\n- Remove `numpydoc` as core dependency, instead use `docstring_parser` ([#8334](https://github.com/napari/napari/pull/8334))\n- Remove deprecated `napari.view_*` methods ([#8337](https://github.com/napari/napari/pull/8337))\n- Add inertia to camera for panning and rotation ([#8349](https://github.com/napari/napari/pull/8349))\n- [pre-commit.ci] pre-commit autoupdate ([#8354](https://github.com/napari/napari/pull/8354))\n- Remove string translation from PR checklist ([#8362](https://github.com/napari/napari/pull/8362))\n- Use coverage upload from shared workflows ([#8367](https://github.com/napari/napari/pull/8367))\n- Specify napari revision in build and deploy docs workflow ([#8368](https://github.com/napari/napari/pull/8368))\n- [pre-commit.ci] pre-commit autoupdate ([#8369](https://github.com/napari/napari/pull/8369))\n- Switch PyPI downloads badge in README ([#8374](https://github.com/napari/napari/pull/8374))\n- Update citation file for 0.7.0 ([#8384](https://github.com/napari/napari/pull/8384))\n- [pre-commit.ci] pre-commit autoupdate ([#8386](https://github.com/napari/napari/pull/8386))\n- Add check if PR author is in citation.cff ([#8388](https://github.com/napari/napari/pull/8388))\n- skip check if author in citation.cff if bot created  PR ([#8392](https://github.com/napari/napari/pull/8392))\n- Explicitly turn on full checkout for CircleCI ([#8396](https://github.com/napari/napari/pull/8396))\n- ci(dependabot): bump the actions group with 3 updates ([#8400](https://github.com/napari/napari/pull/8400))\n- Exclude dependabot from PR author check ([#8409](https://github.com/napari/napari/pull/8409))\n- Fix cff check for bots ([#8420](https://github.com/napari/napari/pull/8420))\n- Set custom font ([#8426](https://github.com/napari/napari/pull/8426))\n- Update `certifi`, `coverage`, `dask`, `fsspec`, `hypothesis`, `imageio`, `ipython`, `matplotlib`, `numpy`, `pandas`, `pillow`, `pint`, `psutil`, `psygnal`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `pytest-rerunfailures`, `pyyaml`, `rich`, `scipy`, `tensorstore`, `tifffile`, `toolz`, `virtualenv`, `wrapt`, `xarray` ([#8441](https://github.com/napari/napari/pull/8441))\n- [pre-commit.ci] pre-commit autoupdate ([#8442](https://github.com/napari/napari/pull/8442))\n- Stop updating python 3.10 docs constraints ([#8444](https://github.com/napari/napari/pull/8444))\n- Block problematic numba in docs constraints ([#8454](https://github.com/napari/napari/pull/8454))\n- Change link to getting started in Help menu ([#8455](https://github.com/napari/napari/pull/8455))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `ipython`, `matplotlib`, `pydantic`, `pyqt6`, `pyside6`, `pytest`, `tensorstore`, `tifffile`, `xarray` ([#8456](https://github.com/napari/napari/pull/8456))\n- Use new logos! ([#8457](https://github.com/napari/napari/pull/8457))\n- [pre-commit.ci] pre-commit autoupdate ([#8458](https://github.com/napari/napari/pull/8458))\n- ci(dependabot): bump the actions group across 1 directory with 7 updates ([#8460](https://github.com/napari/napari/pull/8460))\n- Finish typing napari.layers.image ([#8462](https://github.com/napari/napari/pull/8462))\n- Bugfix: For FeatureTable `edit` test, check the QAbstractItemView.State and not isPersistentEditorOpen ([#8463](https://github.com/napari/napari/pull/8463))\n- Move Ashley Anderson citation to core team section ([#8467](https://github.com/napari/napari/pull/8467))\n- Change `exclude` to `extend-exclude` in ruff config ([#8468](https://github.com/napari/napari/pull/8468))\n- Fix constraints upgrade scripts ([#8473](https://github.com/napari/napari/pull/8473))\n- Fix coverage upload in comprehensive tests ([#8474](https://github.com/napari/napari/pull/8474))\n- Remove building of npe1 menu items for Plugins and Sample menus ([#8476](https://github.com/napari/napari/pull/8476))\n- First emit warning, then replace projection mode when convert image to labels ([#8481](https://github.com/napari/napari/pull/8481))\n- Finish typing utils.progress ([#8485](https://github.com/napari/napari/pull/8485))\n- Maint: Update test_prereleases.yml to bump retries to 3 ([#8488](https://github.com/napari/napari/pull/8488))\n- Block numba 0.62.0 for docs constraints ([#8490](https://github.com/napari/napari/pull/8490))\n- [pre-commit.ci] pre-commit autoupdate ([#8491](https://github.com/napari/napari/pull/8491))\n- [pre-commit.ci] pre-commit autoupdate ([#8499](https://github.com/napari/napari/pull/8499))\n- Test on macos-15-intel without numba ([#8503](https://github.com/napari/napari/pull/8503))\n- Move constraints calculation to script, allow upgrade subset of packages ([#8505](https://github.com/napari/napari/pull/8505))\n- Workaround for Zenodo outage by downloading data from google drive.  ([#8508](https://github.com/napari/napari/pull/8508))\n- Fix overlay tests ([#8513](https://github.com/napari/napari/pull/8513))\n- [pre-commit.ci] pre-commit autoupdate ([#8519](https://github.com/napari/napari/pull/8519))\n- ci(dependabot): bump the github-actions group with 4 updates ([docs#856](https://github.com/napari/docs/pull/856))\n- Allow to redeploy docs after merge new commits to main branch ([docs#874](https://github.com/napari/docs/pull/874))\n- Add mdformat to pre-commit config ([docs#878](https://github.com/napari/docs/pull/878))\n- Explicitly turn on blobless checkout for CircleCI ([docs#882](https://github.com/napari/docs/pull/882))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#885](https://github.com/napari/docs/pull/885))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#890](https://github.com/napari/docs/pull/890))\n\n\n## 15 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Qin Yu](https://github.com/napari/napari/commits?author=qin-yu) ([docs](https://github.com/napari/docs/commits?author=qin-yu))  - @qin-yu +\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yohsuke T. Fukai](https://github.com/napari/napari/commits?author=yfukai) - @yfukai +\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n\n## 21 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/napari/commits?author=aganders3) - @aganders3\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Zhang](https://github.com/napari/docs/commits?author=DanGonite57) - @DanGonite57\n- [David Stansby](https://github.com/napari/napari/commits?author=dstansby) - @dstansby\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Edward Andò](https://github.com/napari/napari/commits?author=edwardando) - @edwardando +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Guillaume Witz](https://github.com/napari/docs/commits?author=guiwitz) - @guiwitz\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [Johannes Soltwedel](https://github.com/napari/docs/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Marcelo Zoccoler](https://github.com/napari/docs/commits?author=zoccoler) - @zoccoler\n- [Marco Edward Gorelli](https://github.com/napari/napari/commits?author=MarcoGorelli) - @MarcoGorelli +\n- [Melissa Weber Mendonça](https://github.com/napari/napari/commits?author=melissawm) ([docs](https://github.com/napari/docs/commits?author=melissawm))  - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Rensu Theart](https://github.com/napari/docs/commits?author=rensutheart) - @rensutheart +\n- [Sesan](https://github.com/napari/docs/commits?author=Olusesan) - @Olusesan\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Yaroslav Halchenko](https://github.com/napari/docs/commits?author=yarikoptic) - @yarikoptic\n- [Zuzana Čočková](https://github.com/napari/napari/commits?author=cockovaz) - @cockovaz +\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/273281211/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"mentions_count":23},{"url":"https://api.github.com/repos/napari/napari/releases/254942273","assets_url":"https://api.github.com/repos/napari/napari/releases/254942273/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/254942273/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.6","id":254942273,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84PMhxB","tag_name":"v0.6.6","target_commitish":"59ea1849d144e53cc9d42826139f545937b3eb91","name":"0.6.6","draft":false,"immutable":false,"prerelease":false,"created_at":"2025-10-16T09:23:59Z","updated_at":"2025-10-16T09:39:57Z","published_at":"2025-10-16T09:25:44Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/304982034","id":304982034,"node_id":"RA_kwDOCJ0aI84SLagS","name":"napari-0.6.6-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":46867,"digest":"sha256:8207c13a131096a11521627a8e9ed7246d48a0bc83c6b5d7b0eaa73f7be057de","download_count":6,"created_at":"2025-10-16T09:31:21Z","updated_at":"2025-10-16T09:31:21Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304981957","id":304981957,"node_id":"RA_kwDOCJ0aI84SLafF","name":"napari-0.6.6-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":549646350,"digest":"sha256:3a14f96bcfc2e8b696a6499affaa7127987bc8a5567e2eeb0ee71d0782ad0da4","download_count":161,"created_at":"2025-10-16T09:31:08Z","updated_at":"2025-10-16T09:31:20Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304982743","id":304982743,"node_id":"RA_kwDOCJ0aI84SLarX","name":"napari-0.6.6-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":39082,"digest":"sha256:1aa5db759d9be1311ba17775472559091df4e58711f88ff9baecf601c3c18a25","download_count":10,"created_at":"2025-10-16T09:33:31Z","updated_at":"2025-10-16T09:33:31Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304982581","id":304982581,"node_id":"RA_kwDOCJ0aI84SLao1","name":"napari-0.6.6-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":423757126,"digest":"sha256:c46567fc1c19406c4a37cbd80aa907be2b9e5620238ed95aa76554fe7eb6b3d7","download_count":563,"created_at":"2025-10-16T09:33:08Z","updated_at":"2025-10-16T09:33:30Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304984842","id":304984842,"node_id":"RA_kwDOCJ0aI84SLbMK","name":"napari-0.6.6-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":38523,"digest":"sha256:cb6a27ebf3f2e9f68e6e79163840723a199bc3a09ee2d56bd7c57efd8aaaa7ba","download_count":11,"created_at":"2025-10-16T09:39:57Z","updated_at":"2025-10-16T09:39:57Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304984766","id":304984766,"node_id":"RA_kwDOCJ0aI84SLbK-","name":"napari-0.6.6-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":468107546,"digest":"sha256:55ca4507ad90c2086f666748ad7e6f0540d2345157a09236be349c5c5092aeab","download_count":145,"created_at":"2025-10-16T09:39:40Z","updated_at":"2025-10-16T09:39:56Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304979950","id":304979950,"node_id":"RA_kwDOCJ0aI84SLZ_u","name":"napari-0.6.6-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3537483,"digest":"sha256:c65cc13de1901ec2bf8d11c665e8df9f39e678d98b76cf690d1094e9decaca69","download_count":7,"created_at":"2025-10-16T09:25:45Z","updated_at":"2025-10-16T09:25:45Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304982758","id":304982758,"node_id":"RA_kwDOCJ0aI84SLarm","name":"napari-0.6.6-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":556708192,"digest":"sha256:a9f10353244829eb8200d769e579cbce60b3280b6f2beac745c715029b7376c9","download_count":1719,"created_at":"2025-10-16T09:33:34Z","updated_at":"2025-10-16T09:33:51Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304982881","id":304982881,"node_id":"RA_kwDOCJ0aI84SLath","name":"napari-0.6.6-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":35719,"digest":"sha256:8c90980b1e0fa7d56161dcabe0ec6597e7d5d572054160c3dcff6626a704aabe","download_count":12,"created_at":"2025-10-16T09:33:52Z","updated_at":"2025-10-16T09:33:52Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304979949","id":304979949,"node_id":"RA_kwDOCJ0aI84SLZ_t","name":"napari-0.6.6.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3251386,"digest":"sha256:8e1adfc737c55c2a619689fad8d9e4d115582e56f09096cf771816b0ec75c3a7","download_count":9,"created_at":"2025-10-16T09:25:45Z","updated_at":"2025-10-16T09:25:45Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6/napari-0.6.6.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.6","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.6","body":"# napari 0.6.6\n\n*Wed, Oct 15, 2025*\n\nWe're happy to announce the release of napari 0.6.6!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\nThis a small bugfix release, following up the changes in 0.6.5.\n\n### Zooming in the dark?\nIn the previous release we accidentally made the [zoom tool added in v0.6.3](https://napari.org/stable/release/release_0_6_3.html#a-zoom-with-a-view) invisible. Whoops! No worries, it's back 🔍.\n\n### \"Open with napari\"\n\nWhen using the [napari bundle](https://napari.org/stable/tutorials/fundamentals/installation_bundle_conda.html#how-to-install-the-napari-app), 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!\n\n![image showing a context menu with the the `open with > napari` option available](https://github.com/user-attachments/assets/f13d58e5-ce2d-460a-b92e-2f23ecc8d438)\n\nPS: 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!\n\n\n## Improvements\n\n- Update menuinst configuration with file type associations ([#8359](https://github.com/napari/napari/pull/8359))\n\n## Bug Fixes\n\n- Fix shape selection in a single plane when shapes are on multiple planes ([#8335](https://github.com/napari/napari/pull/8335))\n- Fix invisible zoom box ([#8344](https://github.com/napari/napari/pull/8344))\n- Bump console version to fix ipykernel bug ([#8360](https://github.com/napari/napari/pull/8360))\n\n## Build Tools\n\n- Bump console version to fix ipykernel bug ([#8360](https://github.com/napari/napari/pull/8360))\n\n## Documentation\n\n- Update release notes v0.6.6 ([docs#868](https://github.com/napari/docs/pull/868))\n- Add info about manual trigger of conda update to release guide ([docs#859](https://github.com/napari/docs/pull/859))\n- Fix version switcher for 0.6.5 ([docs#861](https://github.com/napari/docs/pull/861))\n- Remove trailing comma in version switcher json ([docs#862](https://github.com/napari/docs/pull/862))\n- Add release notes for v0.6.6 ([docs#866](https://github.com/napari/docs/pull/866))\n- Update release notes v0.6.6, the revenge ([docs#869](https://github.com/napari/docs/pull/869))\n\n## Other Pull Requests\n\n- Add a new `attr_to_settr` utility function and simplify layer control widgets layer to widget setup ([#8274](https://github.com/napari/napari/pull/8274))\n- [pre-commit.ci] pre-commit autoupdate ([#8275](https://github.com/napari/napari/pull/8275))\n- ci(dependabot): bump the actions group with 9 updates ([#8324](https://github.com/napari/napari/pull/8324))\n- Delay settings import to avoid circular import ([#8327](https://github.com/napari/napari/pull/8327))\n- Add info about conda forge manual trigger to release checklist ([#8328](https://github.com/napari/napari/pull/8328))\n- Add sponsor badge and reorganize badges into groups ([#8343](https://github.com/napari/napari/pull/8343))\n- Fix vispy error traceback ([#8346](https://github.com/napari/napari/pull/8346))\n- Migrate license settings to modern standards ([#8350](https://github.com/napari/napari/pull/8350))\n\n\n## 7 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) - @jaimergp\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n## 8 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/254942273/reactions","total_count":2,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":2,"rocket":0,"eyes":0},"mentions_count":9},{"url":"https://api.github.com/repos/napari/napari/releases/254924605","assets_url":"https://api.github.com/repos/napari/napari/releases/254924605/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/254924605/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.6rc3","id":254924605,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84PMdc9","tag_name":"v0.6.6rc3","target_commitish":"59ea1849d144e53cc9d42826139f545937b3eb91","name":"0.6.6rc3","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-10-16T08:24:41Z","updated_at":"2025-10-16T08:38:46Z","published_at":"2025-10-16T08:26:24Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/304961217","id":304961217,"node_id":"RA_kwDOCJ0aI84SLVbB","name":"napari-0.6.6rc3-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":46924,"digest":"sha256:d89423db5b7ecfcc729eb08313c8e047e5b4be6c312d566bfa1aaf571f7987b9","download_count":1,"created_at":"2025-10-16T08:31:58Z","updated_at":"2025-10-16T08:31:58Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304961162","id":304961162,"node_id":"RA_kwDOCJ0aI84SLVaK","name":"napari-0.6.6rc3-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":549646359,"digest":"sha256:ad0f7594979d9f62c056a256666c45b11e422202e3d10e31c1edb822c008019b","download_count":2,"created_at":"2025-10-16T08:31:46Z","updated_at":"2025-10-16T08:31:57Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304962181","id":304962181,"node_id":"RA_kwDOCJ0aI84SLVqF","name":"napari-0.6.6rc3-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":39139,"digest":"sha256:5c043e2fc50c085de5fb7d55f88aef6a8d7dc71b1cba61cdeed1b0a0594ee99e","download_count":1,"created_at":"2025-10-16T08:35:03Z","updated_at":"2025-10-16T08:35:03Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304962101","id":304962101,"node_id":"RA_kwDOCJ0aI84SLVo1","name":"napari-0.6.6rc3-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":423756316,"digest":"sha256:689044be3bc516cdd79efb25fbe04123cd1712c8312abae9921f078bbe5bd387","download_count":4,"created_at":"2025-10-16T08:34:48Z","updated_at":"2025-10-16T08:35:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304963350","id":304963350,"node_id":"RA_kwDOCJ0aI84SLV8W","name":"napari-0.6.6rc3-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":38580,"digest":"sha256:addfda2a5a20680d8ab6174f2913a56398101332f852abee0fc67502fb3fe13f","download_count":1,"created_at":"2025-10-16T08:38:46Z","updated_at":"2025-10-16T08:38:46Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304963266","id":304963266,"node_id":"RA_kwDOCJ0aI84SLV7C","name":"napari-0.6.6rc3-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":468105566,"digest":"sha256:403368319ecade952c350d60b081d72d8ac9ca3ae2a77cf04fb26d278bc694d8","download_count":5,"created_at":"2025-10-16T08:38:29Z","updated_at":"2025-10-16T08:38:45Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304958900","id":304958900,"node_id":"RA_kwDOCJ0aI84SLU20","name":"napari-0.6.6rc3-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3537528,"digest":"sha256:059cba329448a5a47f804751652e70e279e2a58c9642875d06d02daa4de475b0","download_count":4,"created_at":"2025-10-16T08:26:25Z","updated_at":"2025-10-16T08:26:25Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304961873","id":304961873,"node_id":"RA_kwDOCJ0aI84SLVlR","name":"napari-0.6.6rc3-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":556708576,"digest":"sha256:e8ace9054631caa1a98b7b68a93e6aae8d15d9507c4cb69a3c197b218e2b11d7","download_count":5,"created_at":"2025-10-16T08:34:10Z","updated_at":"2025-10-16T08:34:22Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304961938","id":304961938,"node_id":"RA_kwDOCJ0aI84SLVmS","name":"napari-0.6.6rc3-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":35776,"digest":"sha256:5862daf968f79bd072a6eb6c4a5da0ccff6f46b4ee9b8be00614b7df9652f8d1","download_count":1,"created_at":"2025-10-16T08:34:23Z","updated_at":"2025-10-16T08:34:23Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/304958902","id":304958902,"node_id":"RA_kwDOCJ0aI84SLU22","name":"napari-0.6.6rc3.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3251374,"digest":"sha256:0ef03801987c435dd391199955592349c89b429a98c84f2f7c1012db10413cea","download_count":3,"created_at":"2025-10-16T08:26:25Z","updated_at":"2025-10-16T08:26:25Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc3/napari-0.6.6rc3.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.6rc3","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.6rc3","body":"# napari 0.6.6\n\n*Wed, Oct 15, 2025*\n\nWe're happy to announce the release of napari 0.6.6!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\nThis a small bugfix release, following up the changes in 0.6.5.\n\n### Zooming in the dark?\nIn the previous release we accidentally made the [zoom tool added in v0.6.3](https://napari.org/stable/release/release_0_6_3.html#a-zoom-with-a-view) invisible. Whoops! No worries, it's back 🔍.\n\n### \"Open with napari\"\n\nWhen using the [napari bundle](https://napari.org/stable/tutorials/fundamentals/installation_bundle_conda.html#how-to-install-the-napari-app), 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!\n\n![image showing a context menu with the the `open with > napari` option available](https://github.com/user-attachments/assets/f13d58e5-ce2d-460a-b92e-2f23ecc8d438)\n\nPS: 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!\n\n\n## Improvements\n\n- Update menuinst configuration with file type associations ([#8359](https://github.com/napari/napari/pull/8359))\n\n## Bug Fixes\n\n- Fix shape selection in a single plane when shapes are on multiple planes ([#8335](https://github.com/napari/napari/pull/8335))\n- Fix invisible zoom box ([#8344](https://github.com/napari/napari/pull/8344))\n- Bump console version to fix ipykernel bug ([#8360](https://github.com/napari/napari/pull/8360))\n\n## Build Tools\n\n- Bump console version to fix ipykernel bug ([#8360](https://github.com/napari/napari/pull/8360))\n\n## Documentation\n\n- Update release notes v0.6.6 ([docs#868](https://github.com/napari/docs/pull/868))\n- Add info about manual trigger of conda update to release guide ([docs#859](https://github.com/napari/docs/pull/859))\n- Fix version switcher for 0.6.5 ([docs#861](https://github.com/napari/docs/pull/861))\n- Remove trailing comma in version switcher json ([docs#862](https://github.com/napari/docs/pull/862))\n- Add release notes for v0.6.6 ([docs#866](https://github.com/napari/docs/pull/866))\n- Update release notes v0.6.6, the revenge ([docs#869](https://github.com/napari/docs/pull/869))\n\n## Other Pull Requests\n\n- Add a new `attr_to_settr` utility function and simplify layer control widgets layer to widget setup ([#8274](https://github.com/napari/napari/pull/8274))\n- [pre-commit.ci] pre-commit autoupdate ([#8275](https://github.com/napari/napari/pull/8275))\n- ci(dependabot): bump the actions group with 9 updates ([#8324](https://github.com/napari/napari/pull/8324))\n- Delay settings import to avoid circular import ([#8327](https://github.com/napari/napari/pull/8327))\n- Add info about conda forge manual trigger to release checklist ([#8328](https://github.com/napari/napari/pull/8328))\n- Add sponsor badge and reorganize badges into groups ([#8343](https://github.com/napari/napari/pull/8343))\n- Fix vispy error traceback ([#8346](https://github.com/napari/napari/pull/8346))\n- Migrate license settings to modern standards ([#8350](https://github.com/napari/napari/pull/8350))\n\n\n## 7 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) - @jaimergp\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n## 8 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n","mentions_count":9},{"url":"https://api.github.com/repos/napari/napari/releases/253605331","assets_url":"https://api.github.com/repos/napari/napari/releases/253605331/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/253605331/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.6rc2","id":253605331,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84PHbXT","tag_name":"v0.6.6rc2","target_commitish":"51b966a962e53f48566914588820e310285bf03a","name":"0.6.6rc2","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-10-10T10:54:45Z","updated_at":"2025-10-10T11:06:24Z","published_at":"2025-10-10T10:56:32Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/302693098","id":302693098,"node_id":"RA_kwDOCJ0aI84SCrrq","name":"napari-0.6.6rc2-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40184,"digest":"sha256:de106a2d21685779aed075318c2114caebd094bbc5b802080999a9fa1fa71578","download_count":1,"created_at":"2025-10-10T11:01:27Z","updated_at":"2025-10-10T11:01:27Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302693046","id":302693046,"node_id":"RA_kwDOCJ0aI84SCrq2","name":"napari-0.6.6rc2-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":495108119,"digest":"sha256:c4009036f535e08e5d752a95b589256eb8d2c52d9519eddd4c3231f3ec9708ef","download_count":4,"created_at":"2025-10-10T11:01:13Z","updated_at":"2025-10-10T11:01:26Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302693390","id":302693390,"node_id":"RA_kwDOCJ0aI84SCrwO","name":"napari-0.6.6rc2-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33823,"digest":"sha256:c3d0a1aa63a653dfcbcd60530563cc53c956aa73fe3f6ed00dad5cc65be24f4b","download_count":1,"created_at":"2025-10-10T11:03:08Z","updated_at":"2025-10-10T11:03:08Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302693337","id":302693337,"node_id":"RA_kwDOCJ0aI84SCrvZ","name":"napari-0.6.6rc2-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":363242973,"digest":"sha256:5f35f34c6de4a0095cf3d339d4d05b74ae30a1555bede977851289f8f633b8b8","download_count":4,"created_at":"2025-10-10T11:02:53Z","updated_at":"2025-10-10T11:03:07Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302694102","id":302694102,"node_id":"RA_kwDOCJ0aI84SCr7W","name":"napari-0.6.6rc2-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33386,"digest":"sha256:bfa39971bca6706740e13e2fba376c56f078452e536e82f1b8c3e7f46021a197","download_count":1,"created_at":"2025-10-10T11:06:24Z","updated_at":"2025-10-10T11:06:24Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302694046","id":302694046,"node_id":"RA_kwDOCJ0aI84SCr6e","name":"napari-0.6.6rc2-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":391153555,"digest":"sha256:9077ca3c6758f43d92fbc790c3954064ff0f0264e05a6b56892f37fa8c611d99","download_count":3,"created_at":"2025-10-10T11:06:04Z","updated_at":"2025-10-10T11:06:23Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302691922","id":302691922,"node_id":"RA_kwDOCJ0aI84SCrZS","name":"napari-0.6.6rc2-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3536379,"digest":"sha256:f2ec4ff1ae573a810a8bc69940c292514b7e23812191cb445a18f95a6484c36a","download_count":4,"created_at":"2025-10-10T10:56:33Z","updated_at":"2025-10-10T10:56:33Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302693535","id":302693535,"node_id":"RA_kwDOCJ0aI84SCryf","name":"napari-0.6.6rc2-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":456070024,"digest":"sha256:5a485e75c8bfff6902625da48a0e804fe81deff89d2180b475eab72f10ab3e93","download_count":25,"created_at":"2025-10-10T11:03:48Z","updated_at":"2025-10-10T11:04:01Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302693579","id":302693579,"node_id":"RA_kwDOCJ0aI84SCrzL","name":"napari-0.6.6rc2-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31857,"digest":"sha256:f37937de8a0782c89e780dd2682535cdbc3bd6a832c18bafc96273eb2cca719d","download_count":1,"created_at":"2025-10-10T11:04:02Z","updated_at":"2025-10-10T11:04:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302691921","id":302691921,"node_id":"RA_kwDOCJ0aI84SCrZR","name":"napari-0.6.6rc2.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3250573,"digest":"sha256:d15fdc9b5f60bee594ee22877f40dfd3f3e1909c0d13f7c61ba72beee46060a2","download_count":2,"created_at":"2025-10-10T10:56:33Z","updated_at":"2025-10-10T10:56:33Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc2/napari-0.6.6rc2.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.6rc2","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.6rc2","body":"# napari 0.6.6\n⚠️ *Note: these release notes are still in draft while 0.6.6 is in release candidate testing.* ⚠️\n\n*Fri, Oct 10, 2025*\n\nWe're happy to announce the release of napari 0.6.6!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\nThis a small bugfix release, following up the changes in 0.6.5.\n\n\n## Bug Fixes\n\n- Fix invisible zoom box ([#8344](https://github.com/napari/napari/pull/8344))\n\n## Documentation\n\n- Add release notes for v0.6.6 ([docs#866](https://github.com/napari/docs/pull/866))\n\n## Other Pull Requests\n\n- Add a new `attr_to_settr` utility function and simplify layer control widgets layer to widget setup ([#8274](https://github.com/napari/napari/pull/8274))\n- ci(dependabot): bump the actions group with 9 updates ([#8324](https://github.com/napari/napari/pull/8324))\n- Delay settings import to avoid circular import ([#8327](https://github.com/napari/napari/pull/8327))\n- Add info about conda forge manual trigger to release checklist ([#8328](https://github.com/napari/napari/pull/8328))\n\n\n## 3 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n\n## 6 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Tim Monko](https://github.com/napari/docs/commits?author=TimMonko) - @TimMonko\n","mentions_count":6},{"url":"https://api.github.com/repos/napari/napari/releases/253567501","assets_url":"https://api.github.com/repos/napari/napari/releases/253567501/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/253567501/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.6rc1","id":253567501,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84PHSIN","tag_name":"v0.6.6rc1","target_commitish":"51b966a962e53f48566914588820e310285bf03a","name":"0.6.6rc1","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-10-10T08:29:33Z","updated_at":"2025-10-10T08:31:02Z","published_at":"2025-10-10T08:31:01Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/302648806","id":302648806,"node_id":"RA_kwDOCJ0aI84SCg3m","name":"napari-0.6.6rc1-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3536379,"digest":"sha256:f317e4627ff8513f6af5af5c9342aba61fd4b7cb84b1f0b6479d1ca5fdf95cbc","download_count":4,"created_at":"2025-10-10T08:31:01Z","updated_at":"2025-10-10T08:31:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc1/napari-0.6.6rc1-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302648808","id":302648808,"node_id":"RA_kwDOCJ0aI84SCg3o","name":"napari-0.6.6rc1.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3250513,"digest":"sha256:b74b336455018ead0c0082fec46a0d6223608ccff22e7f49b965b5cf3c0bda85","download_count":3,"created_at":"2025-10-10T08:31:01Z","updated_at":"2025-10-10T08:31:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc1/napari-0.6.6rc1.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.6rc1","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.6rc1","body":"# napari 0.6.6\n⚠️ *Note: these release notes are still in draft while 0.6.6 is in release candidate testing.* ⚠️\n\n*Fri, Oct 10, 2025*\n\nWe're happy to announce the release of napari 0.6.6!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\nThis a small bugfix release, following up the changes in 0.6.5.\n\n\n## Bug Fixes\n\n- Fix invisible zoom box ([#8344](https://github.com/napari/napari/pull/8344))\n\n## Documentation\n\n- Add release notes for v0.6.6 ([docs#866](https://github.com/napari/docs/pull/866))\n\n## Other Pull Requests\n\n- Add a new `attr_to_settr` utility function and simplify layer control widgets layer to widget setup ([#8274](https://github.com/napari/napari/pull/8274))\n- ci(dependabot): bump the actions group with 9 updates ([#8324](https://github.com/napari/napari/pull/8324))\n- Delay settings import to avoid circular import ([#8327](https://github.com/napari/napari/pull/8327))\n- Add info about conda forge manual trigger to release checklist ([#8328](https://github.com/napari/napari/pull/8328))\n\n\n## 3 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n\n## 6 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Tim Monko](https://github.com/napari/docs/commits?author=TimMonko) - @TimMonko\n","mentions_count":6},{"url":"https://api.github.com/repos/napari/napari/releases/253322364","assets_url":"https://api.github.com/repos/napari/napari/releases/253322364/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/253322364/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.6rc0","id":253322364,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84PGWR8","tag_name":"v0.6.6rc0","target_commitish":"51b966a962e53f48566914588820e310285bf03a","name":"0.6.6rc0","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-10-09T11:48:48Z","updated_at":"2025-10-09T11:50:39Z","published_at":"2025-10-09T11:50:38Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/302312330","id":302312330,"node_id":"RA_kwDOCJ0aI84SBOuK","name":"napari-0.6.6rc0-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3536376,"digest":"sha256:9c0ee9485302a94552fbe9c3f88e13a2b51d5701947b43d89272ef2e9df3d2a2","download_count":4,"created_at":"2025-10-09T11:50:39Z","updated_at":"2025-10-09T11:50:39Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc0/napari-0.6.6rc0-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/302312331","id":302312331,"node_id":"RA_kwDOCJ0aI84SBOuL","name":"napari-0.6.6rc0.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3250549,"digest":"sha256:64c98cd7a82bbcb991d96214c7b4ac387c68c3055198561a94199f61439a7732","download_count":3,"created_at":"2025-10-09T11:50:39Z","updated_at":"2025-10-09T11:50:39Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.6rc0/napari-0.6.6rc0.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.6rc0","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.6rc0","body":"# napari 0.6.6\n⚠️ *Note: these release notes are still in draft while 0.6.6 is in release candidate testing.* ⚠️\n\n*Fri, Oct 10, 2025*\n\nWe're happy to announce the release of napari 0.6.6!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\nThis a small bugfix release, following up the changes in 0.6.5.\n\n\n## Bug Fixes\n\n- Fix invisible zoom box ([#8344](https://github.com/napari/napari/pull/8344))\n\n## Documentation\n\n- Add release notes for v0.6.6 ([docs#866](https://github.com/napari/docs/pull/866))\n\n## Other Pull Requests\n\n- Add a new `attr_to_settr` utility function and simplify layer control widgets layer to widget setup ([#8274](https://github.com/napari/napari/pull/8274))\n- ci(dependabot): bump the actions group with 9 updates ([#8324](https://github.com/napari/napari/pull/8324))\n- Delay settings import to avoid circular import ([#8327](https://github.com/napari/napari/pull/8327))\n- Add info about conda forge manual trigger to release checklist ([#8328](https://github.com/napari/napari/pull/8328))\n\n\n## 3 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n\n## 6 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Tim Monko](https://github.com/napari/docs/commits?author=TimMonko) - @TimMonko\n","mentions_count":6},{"url":"https://api.github.com/repos/napari/napari/releases/251609653","assets_url":"https://api.github.com/repos/napari/napari/releases/251609653/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/251609653/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.5","id":251609653,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84O_0I1","tag_name":"v0.6.5","target_commitish":"d2ec944fee10b7fe0fe5f2dc14493b2601b9df81","name":"0.6.5","draft":false,"immutable":false,"prerelease":false,"created_at":"2025-10-02T01:34:12Z","updated_at":"2025-10-02T02:29:00Z","published_at":"2025-10-02T02:18:34Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/299552652","id":299552652,"node_id":"RA_kwDOCJ0aI84R2s-M","name":"napari-0.6.5-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40126,"digest":"sha256:14701936b164164f07d91d9805300393021584e8e27b205446eb7bbe4951edb6","download_count":2,"created_at":"2025-10-02T02:23:24Z","updated_at":"2025-10-02T02:23:24Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299552572","id":299552572,"node_id":"RA_kwDOCJ0aI84R2s88","name":"napari-0.6.5-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":495005710,"digest":"sha256:2bf5b6b96fb15178c04da3158000c9a1ab00d93bd49a710d3c961a725b737b4b","download_count":26,"created_at":"2025-10-02T02:23:09Z","updated_at":"2025-10-02T02:23:23Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299553467","id":299553467,"node_id":"RA_kwDOCJ0aI84R2tK7","name":"napari-0.6.5-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33765,"digest":"sha256:eee9c4944386a8172193459fb72692193650fc2b8a58b792fabba3447dd5991f","download_count":1,"created_at":"2025-10-02T02:25:04Z","updated_at":"2025-10-02T02:25:04Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299553347","id":299553347,"node_id":"RA_kwDOCJ0aI84R2tJD","name":"napari-0.6.5-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":363141957,"digest":"sha256:f367e9ea51262fc493dca702a1f54bbc48d70b85dec557a9be39b98b8c6d6de8","download_count":18,"created_at":"2025-10-02T02:24:48Z","updated_at":"2025-10-02T02:25:03Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299555818","id":299555818,"node_id":"RA_kwDOCJ0aI84R2tvq","name":"napari-0.6.5-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33328,"digest":"sha256:a40297cf4ba27f025b5a72acb1ae0b610244a0bf35f5c1c4cdad3c4f7a314a97","download_count":1,"created_at":"2025-10-02T02:29:00Z","updated_at":"2025-10-02T02:29:00Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299555721","id":299555721,"node_id":"RA_kwDOCJ0aI84R2tuJ","name":"napari-0.6.5-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":391028746,"digest":"sha256:8d712f8ee932c9bd6a706ba0206f27c6f465b6a05d3c058398733dc1457b2990","download_count":12,"created_at":"2025-10-02T02:28:40Z","updated_at":"2025-10-02T02:28:59Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299549998","id":299549998,"node_id":"RA_kwDOCJ0aI84R2sUu","name":"napari-0.6.5-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3536276,"digest":"sha256:51bc0b0fb6b6271555ad4167ce510b9453735aaad0ef947cfbc38bdd03d6a7be","download_count":4,"created_at":"2025-10-02T02:18:35Z","updated_at":"2025-10-02T02:18:35Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299553922","id":299553922,"node_id":"RA_kwDOCJ0aI84R2tSC","name":"napari-0.6.5-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":456019200,"digest":"sha256:c58d0505848d5b3ba64640d3c9b129977664a35897074478e48d408e3082eac1","download_count":116,"created_at":"2025-10-02T02:25:57Z","updated_at":"2025-10-02T02:26:08Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299554010","id":299554010,"node_id":"RA_kwDOCJ0aI84R2tTa","name":"napari-0.6.5-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31798,"digest":"sha256:150be599a2df630e0fd993ef5cb476233944bd0b45ef0d01677b001c3d90cc19","download_count":3,"created_at":"2025-10-02T02:26:09Z","updated_at":"2025-10-02T02:26:09Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299549996","id":299549996,"node_id":"RA_kwDOCJ0aI84R2sUs","name":"napari-0.6.5.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3249897,"digest":"sha256:00663221583467f41fa956a672b0b4cd7a761e2642db41fc3c336d1c82339533","download_count":15,"created_at":"2025-10-02T02:18:34Z","updated_at":"2025-10-02T02:18:35Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5/napari-0.6.5.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.5","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.5","body":"# napari 0.6.5\n\n*Wed, Oct 1, 2025*\n\nWe're happy to announce the release of napari 0.6.5!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\nThis a sizeable release containing a few new exciting features and a lot of bugfixes.\n\n### EffVer and no more _alpha_\nIt is our first release officially following the [EffVer versioning scheme](https://effver.org/). We also took this occasion to (finally!) remove the `Alpha` qualifier from the project ([#8288](https://github.com/napari/napari/pull/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!\n\n### Define a startup script for custom launch behaviour\nDo 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](https://github.com/napari/napari/pull/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.\n\n![Screenshot of the application settings menu highlighting the field for the startup script path](https://github.com/user-attachments/assets/7b0e5e5c-252b-45a0-ae76-aac88e488cbc)\n### Automatically tiled overlays and ColorBar overlay\nCanvas overlays such as `scale_bar`, `text_overlay`, and `colorbar` overlay are now automatically tiling ([#7836](https://github.com/napari/napari/pull/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](https://github.com/napari/napari/pull/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:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n![Image depicting the napari viewer in grid mode with scale bars and color bars enabled](https://github.com/user-attachments/assets/622b2d36-11a7-4c55-9550-c82ddebc2fda)\n\nAlternatively, 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](https://github.com/napari/napari/pull/8319)).\n\n### Task manager will now try to prevent losing unfinished work\nWe added a new task manager ([#8211](https://github.com/napari/napari/pull/8211)) which automatically registers any running `thread_worker`, showing a confirmation dialog if you attempt to close napari while a task is running.\n\n### New *remove* and *pop* methods for Points and Shapes\nPoints and Shapes can now be easily removed, not just added :P ([#8031](https://github.com/napari/napari/pull/8031) and [#8072](https://github.com/napari/napari/pull/8072)).\n\n### A few shiny new updates to our website and documentation\n[napari.org](https://napari.org/) can now be visited in *dark mode* ([docs#840](https://github.com/napari/docs/pull/840))! You could try out this new relaxing colorscheme while exploring the new overhauled [Preferences documentation](https://napari.org/stable/guides/preferences.html#preferences) section 😉 ([docs#834](https://github.com/napari/docs/pull/834)).\nThere's also new sections on [viewer overlays](https://napari.org/stable/tutorials/fundamentals/viewer.html#viewer-overlays) and [layer overlays](https://napari.org/stable/guides/layers.html#layer-overlays), to better explain how to use these old and new tools.\nOur [release notes page](https://napari.org/dev/release/index.html) also received a glow-up ([docs#838](https://github.com/napari/docs/pull/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!\n\n### Extra dependencies for development moved to dependency groups\nA note for our contributors and plugin developers: we transferred our dev-related extra dependencies to the new python dependency groups ([#8227](https://github.com/napari/napari/pull/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.\n\n\n## New Features\n\n- Add color bar overlay ([#7832](https://github.com/napari/napari/pull/7832))\n- Tiling canvas overlays ([#7836](https://github.com/napari/napari/pull/7836))\n- Add `pop()` for `Points` and `Shapes` ([#8072](https://github.com/napari/napari/pull/8072))\n- add option to define startup script in settings ([#8188](https://github.com/napari/napari/pull/8188))\n- use `Selection` class in shapes layer ([#8297](https://github.com/napari/napari/pull/8297))\n\n## Improvements\n\n- Add `remove()` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Example from SciPy 2025 tutorial; image warping ([#8111](https://github.com/napari/napari/pull/8111))\n- Add a tasks manager status for plugins actions and napari processes ([#8211](https://github.com/napari/napari/pull/8211))\n- Use single settings path for all `uv tool run` ([#8250](https://github.com/napari/napari/pull/8250))\n- Add \"Hide completed\" checkbox to Tracks layer for improved visualization ([#8253](https://github.com/napari/napari/pull/8253))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number ([#8292](https://github.com/napari/napari/pull/8292))\n- Implement toggling colorbar and bounding box in layerlist context menu ([#8319](https://github.com/napari/napari/pull/8319))\n- Add warning for big stride when toggling grid mode ([#8320](https://github.com/napari/napari/pull/8320))\n\n## Bug Fixes\n\n- Layer controls widgets refactor ([#7355](https://github.com/napari/napari/pull/7355))\n- Fix effect of scaling when converting shapes to labels ([#8098](https://github.com/napari/napari/pull/8098))\n- Fix disappearing points ([#8223](https://github.com/napari/napari/pull/8223))\n- Fix shape position by using a stable algorithm for sorting z_position ([#8232](https://github.com/napari/napari/pull/8232))\n- Remove console print action shortcut to prevent collision with command palette shortcut ([#8233](https://github.com/napari/napari/pull/8233))\n- Do not update thumbnail on Labels empty slice ([#8251](https://github.com/napari/napari/pull/8251))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- fix slice_from_axis to wrap zarr in dask to keep lazy behavior ([#8260](https://github.com/napari/napari/pull/8260))\n- Add menu-xdg to XPRA containers ([#8263](https://github.com/napari/napari/pull/8263))\n- Check for zarr in `images_to_stack` and use da.stack instead of np.stack ([#8267](https://github.com/napari/napari/pull/8267))\n- Better handling of remote zarr ([#8268](https://github.com/napari/napari/pull/8268))\n- Use custom logger formatting to most of argument to string ([#8305](https://github.com/napari/napari/pull/8305))\n\n## Documentation\n\n- Use EffVer ([#8243](https://github.com/napari/napari/pull/8243))\n- Use shared workflows for build docs ([#8308](https://github.com/napari/napari/pull/8308))\n- Bump napari-sphinx-theme in deps and constraints ([#8315](https://github.com/napari/napari/pull/8315))\n- Update release notes 0.6.5 for full release ([docs#855](https://github.com/napari/docs/pull/855))\n- Add funding information to the home page ([docs#818](https://github.com/napari/docs/pull/818))\n- Update version switcher for 0.6.4 ([docs#826](https://github.com/napari/docs/pull/826))\n- Fix version switcher URL to prevent problems with unversioned pages ([docs#827](https://github.com/napari/docs/pull/827))\n- Update documentation for dependencies groups ([docs#829](https://github.com/napari/docs/pull/829))\n- Update and restructure the preferences guide ([docs#834](https://github.com/napari/docs/pull/834))\n- Fix @jaimergp's last name ([docs#835](https://github.com/napari/docs/pull/835))\n- Auto generate release index with highlights and timeline ([docs#838](https://github.com/napari/docs/pull/838))\n- Add EffVer to release guide and link to checklist template ([docs#839](https://github.com/napari/docs/pull/839))\n- Enable dark mode for website ([docs#840](https://github.com/napari/docs/pull/840))\n- Add draft of 0.6.5 release notes ([docs#845](https://github.com/napari/docs/pull/845))\n- Add documentation for startup script. ([docs#846](https://github.com/napari/docs/pull/846))\n- Add some info about running python scripts via cli ([docs#847](https://github.com/napari/docs/pull/847))\n- Add note about workers registration as tasks and close confirmation dialog when closing napari GUI via close button ([docs#851](https://github.com/napari/docs/pull/851))\n- Release notes v0.6.5 ([docs#853](https://github.com/napari/docs/pull/853))\n- Re-add palette shortcut to viewer guide ([docs#854](https://github.com/napari/docs/pull/854))\n- Add overlays to docs ([docs#857](https://github.com/napari/docs/pull/857))\n\n## Other Pull Requests\n\n- Move the test that requires `make_napari_viewer` from `test_qt_viewer` ([#8176](https://github.com/napari/napari/pull/8176))\n- Change headless setup for Windows and Linux to `pyvista/setup-headless-display-action` ([#8216](https://github.com/napari/napari/pull/8216))\n- Update `coverage`, `hypothesis`, `pint`, `pyopengl`, `virtualenv`, `xarray` ([#8221](https://github.com/napari/napari/pull/8221))\n- [pre-commit.ci] pre-commit autoupdate ([#8222](https://github.com/napari/napari/pull/8222))\n- Use global register for units in ScaleBar ([#8226](https://github.com/napari/napari/pull/8226))\n- Wait until viewer show in the test in `make_napari_viewer` ([#8228](https://github.com/napari/napari/pull/8228))\n- Update Qt backends used in tests to test more on Qt6 than Qt5 ([#8229](https://github.com/napari/napari/pull/8229))\n- Change properties for features usage in the Vectors layer controls ([#8231](https://github.com/napari/napari/pull/8231))\n- Add cache for pooch on CI for Linux jobs ([#8235](https://github.com/napari/napari/pull/8235))\n- Temporary increase timeout of macOS jobs ([#8237](https://github.com/napari/napari/pull/8237))\n- Update `coverage`, `hypothesis`, `ipython`, `matplotlib`, `pyside6`, `pytest-rerunfailures`, `tifffile` ([#8239](https://github.com/napari/napari/pull/8239))\n- ci(dependabot): bump the actions group with 6 updates ([#8240](https://github.com/napari/napari/pull/8240))\n- Make `connect_setattr` handle value conversion for widgets like checkboxes ([#8244](https://github.com/napari/napari/pull/8244))\n- Update `fsspec`, `hypothesis`, `pytest`, `pytest-rerunfailures`, `xarray` ([#8249](https://github.com/napari/napari/pull/8249))\n- [pre-commit.ci] pre-commit autoupdate ([#8252](https://github.com/napari/napari/pull/8252))\n- Add typing to points mouse bindings ([#8255](https://github.com/napari/napari/pull/8255))\n- Use proper name for ruff pre-commit hook and reorder hooks ([#8259](https://github.com/napari/napari/pull/8259))\n- [maint] Revert back to windows-2022 for windows runners ([#8265](https://github.com/napari/napari/pull/8265))\n- Update `dask`, `hypothesis`, `pydantic`, `qtconsole`, `scipy`, `tifffile` ([#8270](https://github.com/napari/napari/pull/8270))\n- Add napari to trove classifiers to populate builtins on napari hub ([#8277](https://github.com/napari/napari/pull/8277))\n- Add release checklist template ([#8295](https://github.com/napari/napari/pull/8295))\n- Update `coverage`, `dask`, `hypothesis`, `lxml`, `numpy`, `psutil`, `tensorstore`, `tifffile` ([#8296](https://github.com/napari/napari/pull/8296))\n- Move Jaime Rodríguez-Guerra to core-team section of CITATION.cff ([#8298](https://github.com/napari/napari/pull/8298))\n- Do not use verbose mode for headless test ([#8300](https://github.com/napari/napari/pull/8300))\n- Migrate macos-13 to macos-15-intel runner ([#8301](https://github.com/napari/napari/pull/8301))\n- Update `remove_ready_to_merge` so it only sweeps on pushed and crons ([#8302](https://github.com/napari/napari/pull/8302))\n- [maint] Revert docs constraints changes from #8270 ([#8307](https://github.com/napari/napari/pull/8307))\n- Fix constraints generation  ([#8309](https://github.com/napari/napari/pull/8309))\n- CI: Fix `github.rest.issues.removeLabel` call ([#8311](https://github.com/napari/napari/pull/8311))\n- Fix little typos ([#8316](https://github.com/napari/napari/pull/8316))\n- Add pooch cache for build docs ([docs#830](https://github.com/napari/docs/pull/830))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#831](https://github.com/napari/docs/pull/831))\n- add docs/release/index.md to gitignore ([docs#843](https://github.com/napari/docs/pull/843))\n- Add Jaime Rodríguez-Guerra to core-team ([docs#844](https://github.com/napari/docs/pull/844))\n- Bump python to 3.12 for build docs workflows ([docs#848](https://github.com/napari/docs/pull/848))\n- Use shared workflow for build docs ([docs#850](https://github.com/napari/docs/pull/850))\n\n\n## 14 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Jules Vanaret](https://github.com/napari/napari/commits?author=jules-vanaret) - @jules-vanaret\n- [Kanai Potts](https://github.com/napari/napari/commits?author=8bitbiscuit) - @8bitbiscuit\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n## 16 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Andrew Sweet](https://github.com/napari/docs/commits?author=andy-sweet) - @andy-sweet\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Davis Bennett](https://github.com/napari/docs/commits?author=d-v-b) - @d-v-b\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Jules Vanaret](https://github.com/napari/napari/commits?author=jules-vanaret) - @jules-vanaret\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/251609653/reactions","total_count":4,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":3,"eyes":0},"mentions_count":18},{"url":"https://api.github.com/repos/napari/napari/releases/251498735","assets_url":"https://api.github.com/repos/napari/napari/releases/251498735/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/251498735/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.5rc3","id":251498735,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84O_ZDv","tag_name":"v0.6.5rc3","target_commitish":"d2ec944fee10b7fe0fe5f2dc14493b2601b9df81","name":"0.6.5rc3","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-10-01T16:58:23Z","updated_at":"2025-10-01T17:24:26Z","published_at":"2025-10-01T17:00:07Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/299375006","id":299375006,"node_id":"RA_kwDOCJ0aI84R2Bme","name":"napari-0.6.5rc3-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40183,"digest":"sha256:d6f00a5f7be6a476c569326fe95cf061f142d15978782cb28c0e26dcb777e3fc","download_count":1,"created_at":"2025-10-01T17:07:38Z","updated_at":"2025-10-01T17:07:39Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299374895","id":299374895,"node_id":"RA_kwDOCJ0aI84R2Bkv","name":"napari-0.6.5rc3-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":495374359,"digest":"sha256:32bee6d433c2a9170268dfbec315f1bbd0757d0fdbc55856ed0bf136e576c2a0","download_count":4,"created_at":"2025-10-01T17:07:26Z","updated_at":"2025-10-01T17:07:38Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299379009","id":299379009,"node_id":"RA_kwDOCJ0aI84R2ClB","name":"napari-0.6.5rc3-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33822,"digest":"sha256:53d11f56e4085168356cea9d13c3a0ae80982c850c941b72a11bb73b4638b581","download_count":1,"created_at":"2025-10-01T17:18:13Z","updated_at":"2025-10-01T17:18:13Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299378934","id":299378934,"node_id":"RA_kwDOCJ0aI84R2Cj2","name":"napari-0.6.5rc3-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":363156184,"digest":"sha256:edb22518c16c0f26b4469903b4c5324f2b5c23d514c72a295e8e2370c5e910b6","download_count":5,"created_at":"2025-10-01T17:17:58Z","updated_at":"2025-10-01T17:18:12Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299380827","id":299380827,"node_id":"RA_kwDOCJ0aI84R2DBb","name":"napari-0.6.5rc3-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33385,"digest":"sha256:d0ff58a1f2544e6a71495989bccc5f716eb5a8a1f61a92a80a892585e695389e","download_count":1,"created_at":"2025-10-01T17:24:26Z","updated_at":"2025-10-01T17:24:26Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299380724","id":299380724,"node_id":"RA_kwDOCJ0aI84R2C_0","name":"napari-0.6.5rc3-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":391045758,"digest":"sha256:5aa6f910c889706e2831cb0eef202273cda29a39743ab8b719a147d5325ad7e3","download_count":4,"created_at":"2025-10-01T17:24:10Z","updated_at":"2025-10-01T17:24:25Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299372984","id":299372984,"node_id":"RA_kwDOCJ0aI84R2BG4","name":"napari-0.6.5rc3-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3536323,"digest":"sha256:41383535b6a56422f2568b78f883067634773619461c1eff6862600906bad842","download_count":4,"created_at":"2025-10-01T17:00:08Z","updated_at":"2025-10-01T17:00:08Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299377106","id":299377106,"node_id":"RA_kwDOCJ0aI84R2CHS","name":"napari-0.6.5rc3-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":456034224,"digest":"sha256:fc20e75a5238265887ef8a39483906abbdb88e633c57e0e6978c2f525b3d6246","download_count":21,"created_at":"2025-10-01T17:11:40Z","updated_at":"2025-10-01T17:11:53Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299377182","id":299377182,"node_id":"RA_kwDOCJ0aI84R2CIe","name":"napari-0.6.5rc3-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31855,"digest":"sha256:fe09bffd0292e67f3546bdabe89ef423c8d486eef013e4f446706ea752dfbf53","download_count":1,"created_at":"2025-10-01T17:11:54Z","updated_at":"2025-10-01T17:11:54Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299372983","id":299372983,"node_id":"RA_kwDOCJ0aI84R2BG3","name":"napari-0.6.5rc3.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3250194,"digest":"sha256:0d6198a3484eb7cbcc31721c2df2a4b631f51c7f16397a72d82adf73e8f28cae","download_count":4,"created_at":"2025-10-01T17:00:08Z","updated_at":"2025-10-01T17:00:08Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc3/napari-0.6.5rc3.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.5rc3","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.5rc3","body":"# napari 0.6.5\n\n*Wed, Oct 1, 2025*\n\nWe're happy to announce the release of napari 0.6.5!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\nThis a sizeable release containing a few new exciting features and a lot of bugfixes.\n\n### EffVer and no more _alpha_\nIt is our first release officially following the [EffVer versioning scheme](https://effver.org/). We also took this occasion to (finally!) remove the `Alpha` qualifier from the project ([#8288](https://github.com/napari/napari/pull/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!\n\n### Define a startup script for custom launch behaviour\nDo 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](https://github.com/napari/napari/pull/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.\n\n![Screenshot of the application settings menu highlighting the field for the startup script path](https://github.com/user-attachments/assets/7b0e5e5c-252b-45a0-ae76-aac88e488cbc)\n### Automatically tiled overlays and ColorBar overlay\nCanvas overlays such as `scale_bar`, `text_overlay`, and `colorbar` overlay are now automatically tiling ([#7836](https://github.com/napari/napari/pull/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](https://github.com/napari/napari/pull/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:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n![Image depicting the napari viewer in grid mode with scale bars and color bars enabled](https://github.com/user-attachments/assets/622b2d36-11a7-4c55-9550-c82ddebc2fda)\n\nAlternatively, 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](https://github.com/napari/napari/pull/8319)).\n\n### Task manager will now try to prevent losing unfinished work\nWe added a new task manager ([#8211](https://github.com/napari/napari/pull/8211)) which automatically registers any running `thread_worker`, showing a confirmation dialog if you attempt to close napari while a task is running.\n\n### New *remove* and *pop* methods for Points and Shapes\nPoints and Shapes can now be easily removed, not just added :P ([#8031](https://github.com/napari/napari/pull/8031) and [#8072](https://github.com/napari/napari/pull/8072)).\n\n### A few shiny new updates to our website and documentation\n[napari.org](https://napari.org/) can now be visited in *dark mode* ([docs#840](https://github.com/napari/docs/pull/840))! You could try out this new relaxing colorscheme while exploring the new overhauled [Preferences documentation](https://napari.org/stable/guides/preferences.html#preferences) section 😉 ([docs#834](https://github.com/napari/docs/pull/834)).\nThere's also new sections on [viewer overlays](https://napari.org/stable/tutorials/fundamentals/viewer.html#viewer-overlays) and [layer overlays](https://napari.org/stable/guides/layers.html#layer-overlays), to better explain how to use these old and new tools.\nOur [release notes page](https://napari.org/dev/release/index.html) also received a glow-up ([docs#838](https://github.com/napari/docs/pull/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!\n\n### Extra dependencies for development moved to dependency groups\nA note for our contributors and plugin developers: we transferred our dev-related extra dependencies to the new python dependency groups ([#8227](https://github.com/napari/napari/pull/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.\n\n\n## New Features\n\n- Add color bar overlay ([#7832](https://github.com/napari/napari/pull/7832))\n- Tiling canvas overlays ([#7836](https://github.com/napari/napari/pull/7836))\n- Add `pop()` for `Points` and `Shapes` ([#8072](https://github.com/napari/napari/pull/8072))\n- add option to define startup script in settings ([#8188](https://github.com/napari/napari/pull/8188))\n- use `Selection` class in shapes layer ([#8297](https://github.com/napari/napari/pull/8297))\n\n## Improvements\n\n- Add `remove()` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Example from SciPy 2025 tutorial; image warping ([#8111](https://github.com/napari/napari/pull/8111))\n- Add a tasks manager status for plugins actions and napari processes ([#8211](https://github.com/napari/napari/pull/8211))\n- Use single settings path for all `uv tool run` ([#8250](https://github.com/napari/napari/pull/8250))\n- Add \"Hide completed\" checkbox to Tracks layer for improved visualization ([#8253](https://github.com/napari/napari/pull/8253))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number ([#8292](https://github.com/napari/napari/pull/8292))\n- Implement toggling colorbar and bounding box in layerlist context menu ([#8319](https://github.com/napari/napari/pull/8319))\n- Add warning for big stride when toggling grid mode ([#8320](https://github.com/napari/napari/pull/8320))\n\n## Bug Fixes\n\n- Layer controls widgets refactor ([#7355](https://github.com/napari/napari/pull/7355))\n- Fix effect of scaling when converting shapes to labels ([#8098](https://github.com/napari/napari/pull/8098))\n- Fix disappearing points ([#8223](https://github.com/napari/napari/pull/8223))\n- Fix shape position by using a stable algorithm for sorting z_position ([#8232](https://github.com/napari/napari/pull/8232))\n- Remove console print action shortcut to prevent collision with command palette shortcut ([#8233](https://github.com/napari/napari/pull/8233))\n- Do not update thumbnail on Labels empty slice ([#8251](https://github.com/napari/napari/pull/8251))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- fix slice_from_axis to wrap zarr in dask to keep lazy behavior ([#8260](https://github.com/napari/napari/pull/8260))\n- Add menu-xdg to XPRA containers ([#8263](https://github.com/napari/napari/pull/8263))\n- Check for zarr in `images_to_stack` and use da.stack instead of np.stack ([#8267](https://github.com/napari/napari/pull/8267))\n- Better handling of remote zarr ([#8268](https://github.com/napari/napari/pull/8268))\n- Use custom logger formatting to most of argument to string ([#8305](https://github.com/napari/napari/pull/8305))\n\n## Documentation\n\n- Use EffVer ([#8243](https://github.com/napari/napari/pull/8243))\n- Use shared workflows for build docs ([#8308](https://github.com/napari/napari/pull/8308))\n- Bump napari-sphinx-theme in deps and constraints ([#8315](https://github.com/napari/napari/pull/8315))\n- Update release notes 0.6.5 for full release ([docs#855](https://github.com/napari/docs/pull/855))\n- Add funding information to the home page ([docs#818](https://github.com/napari/docs/pull/818))\n- Update version switcher for 0.6.4 ([docs#826](https://github.com/napari/docs/pull/826))\n- Fix version switcher URL to prevent problems with unversioned pages ([docs#827](https://github.com/napari/docs/pull/827))\n- Update documentation for dependencies groups ([docs#829](https://github.com/napari/docs/pull/829))\n- Update and restructure the preferences guide ([docs#834](https://github.com/napari/docs/pull/834))\n- Fix @jaimergp's last name ([docs#835](https://github.com/napari/docs/pull/835))\n- Auto generate release index with highlights and timeline ([docs#838](https://github.com/napari/docs/pull/838))\n- Add EffVer to release guide and link to checklist template ([docs#839](https://github.com/napari/docs/pull/839))\n- Enable dark mode for website ([docs#840](https://github.com/napari/docs/pull/840))\n- Add draft of 0.6.5 release notes ([docs#845](https://github.com/napari/docs/pull/845))\n- Add documentation for startup script. ([docs#846](https://github.com/napari/docs/pull/846))\n- Add some info about running python scripts via cli ([docs#847](https://github.com/napari/docs/pull/847))\n- Add note about workers registration as tasks and close confirmation dialog when closing napari GUI via close button ([docs#851](https://github.com/napari/docs/pull/851))\n- Release notes v0.6.5 ([docs#853](https://github.com/napari/docs/pull/853))\n- Re-add palette shortcut to viewer guide ([docs#854](https://github.com/napari/docs/pull/854))\n- Add overlays to docs ([docs#857](https://github.com/napari/docs/pull/857))\n\n## Other Pull Requests\n\n- Move the test that requires `make_napari_viewer` from `test_qt_viewer` ([#8176](https://github.com/napari/napari/pull/8176))\n- Change headless setup for Windows and Linux to `pyvista/setup-headless-display-action` ([#8216](https://github.com/napari/napari/pull/8216))\n- Update `coverage`, `hypothesis`, `pint`, `pyopengl`, `virtualenv`, `xarray` ([#8221](https://github.com/napari/napari/pull/8221))\n- [pre-commit.ci] pre-commit autoupdate ([#8222](https://github.com/napari/napari/pull/8222))\n- Use global register for units in ScaleBar ([#8226](https://github.com/napari/napari/pull/8226))\n- Wait until viewer show in the test in `make_napari_viewer` ([#8228](https://github.com/napari/napari/pull/8228))\n- Update Qt backends used in tests to test more on Qt6 than Qt5 ([#8229](https://github.com/napari/napari/pull/8229))\n- Change properties for features usage in the Vectors layer controls ([#8231](https://github.com/napari/napari/pull/8231))\n- Add cache for pooch on CI for Linux jobs ([#8235](https://github.com/napari/napari/pull/8235))\n- Temporary increase timeout of macOS jobs ([#8237](https://github.com/napari/napari/pull/8237))\n- Update `coverage`, `hypothesis`, `ipython`, `matplotlib`, `pyside6`, `pytest-rerunfailures`, `tifffile` ([#8239](https://github.com/napari/napari/pull/8239))\n- ci(dependabot): bump the actions group with 6 updates ([#8240](https://github.com/napari/napari/pull/8240))\n- Make `connect_setattr` handle value conversion for widgets like checkboxes ([#8244](https://github.com/napari/napari/pull/8244))\n- Update `fsspec`, `hypothesis`, `pytest`, `pytest-rerunfailures`, `xarray` ([#8249](https://github.com/napari/napari/pull/8249))\n- [pre-commit.ci] pre-commit autoupdate ([#8252](https://github.com/napari/napari/pull/8252))\n- Add typing to points mouse bindings ([#8255](https://github.com/napari/napari/pull/8255))\n- Use proper name for ruff pre-commit hook and reorder hooks ([#8259](https://github.com/napari/napari/pull/8259))\n- [maint] Revert back to windows-2022 for windows runners ([#8265](https://github.com/napari/napari/pull/8265))\n- Update `dask`, `hypothesis`, `pydantic`, `qtconsole`, `scipy`, `tifffile` ([#8270](https://github.com/napari/napari/pull/8270))\n- Add napari to trove classifiers to populate builtins on napari hub ([#8277](https://github.com/napari/napari/pull/8277))\n- Add release checklist template ([#8295](https://github.com/napari/napari/pull/8295))\n- Update `coverage`, `dask`, `hypothesis`, `lxml`, `numpy`, `psutil`, `tensorstore`, `tifffile` ([#8296](https://github.com/napari/napari/pull/8296))\n- Move Jaime Rodríguez-Guerra to core-team section of CITATION.cff ([#8298](https://github.com/napari/napari/pull/8298))\n- Do not use verbose mode for headless test ([#8300](https://github.com/napari/napari/pull/8300))\n- Migrate macos-13 to macos-15-intel runner ([#8301](https://github.com/napari/napari/pull/8301))\n- Update `remove_ready_to_merge` so it only sweeps on pushed and crons ([#8302](https://github.com/napari/napari/pull/8302))\n- [maint] Revert docs constraints changes from #8270 ([#8307](https://github.com/napari/napari/pull/8307))\n- Fix constraints generation  ([#8309](https://github.com/napari/napari/pull/8309))\n- CI: Fix `github.rest.issues.removeLabel` call ([#8311](https://github.com/napari/napari/pull/8311))\n- Fix little typos ([#8316](https://github.com/napari/napari/pull/8316))\n- Add pooch cache for build docs ([docs#830](https://github.com/napari/docs/pull/830))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#831](https://github.com/napari/docs/pull/831))\n- add docs/release/index.md to gitignore ([docs#843](https://github.com/napari/docs/pull/843))\n- Add Jaime Rodríguez-Guerra to core-team ([docs#844](https://github.com/napari/docs/pull/844))\n- Bump python to 3.12 for build docs workflows ([docs#848](https://github.com/napari/docs/pull/848))\n- Use shared workflow for build docs ([docs#850](https://github.com/napari/docs/pull/850))\n\n\n## 14 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Jules Vanaret](https://github.com/napari/napari/commits?author=jules-vanaret) - @jules-vanaret\n- [Kanai Potts](https://github.com/napari/napari/commits?author=8bitbiscuit) - @8bitbiscuit\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n## 16 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Andrew Sweet](https://github.com/napari/docs/commits?author=andy-sweet) - @andy-sweet\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Davis Bennett](https://github.com/napari/docs/commits?author=d-v-b) - @d-v-b\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Jules Vanaret](https://github.com/napari/napari/commits?author=jules-vanaret) - @jules-vanaret\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n","mentions_count":18},{"url":"https://api.github.com/repos/napari/napari/releases/251467921","assets_url":"https://api.github.com/repos/napari/napari/releases/251467921/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/251467921/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.5rc2","id":251467921,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84O_RiR","tag_name":"v0.6.5rc2","target_commitish":"d2ec944fee10b7fe0fe5f2dc14493b2601b9df81","name":"0.6.5rc2","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-10-01T15:15:19Z","updated_at":"2025-10-01T15:31:22Z","published_at":"2025-10-01T15:17:39Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/299345444","id":299345444,"node_id":"RA_kwDOCJ0aI84R16Yk","name":"napari-0.6.5rc2-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40183,"digest":"sha256:5bad9d958bd3918bee6757910c8df0c5e567389db3c7885326a4cf4c4c951547","download_count":2,"created_at":"2025-10-01T15:22:54Z","updated_at":"2025-10-01T15:22:54Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc2/napari-0.6.5rc2-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299345325","id":299345325,"node_id":"RA_kwDOCJ0aI84R16Wt","name":"napari-0.6.5rc2-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":495374359,"digest":"sha256:e4a2903687af0de42f8ecc0ca3753199cbb5b7d7ae06410d2c745fd0a288068b","download_count":3,"created_at":"2025-10-01T15:22:42Z","updated_at":"2025-10-01T15:22:53Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc2/napari-0.6.5rc2-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299346141","id":299346141,"node_id":"RA_kwDOCJ0aI84R16jd","name":"napari-0.6.5rc2-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33822,"digest":"sha256:00817e1a7da3cda20d03f582e9758b8e7305440ec37bd0c697adcfe85c149bc2","download_count":1,"created_at":"2025-10-01T15:25:09Z","updated_at":"2025-10-01T15:25:09Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc2/napari-0.6.5rc2-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299346055","id":299346055,"node_id":"RA_kwDOCJ0aI84R16iH","name":"napari-0.6.5rc2-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":363155166,"digest":"sha256:c86c747b391566071e94e5da448a3f2b4289db68df488a7ac55109e7f1c02659","download_count":5,"created_at":"2025-10-01T15:24:56Z","updated_at":"2025-10-01T15:25:08Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc2/napari-0.6.5rc2-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299348151","id":299348151,"node_id":"RA_kwDOCJ0aI84R17C3","name":"napari-0.6.5rc2-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33385,"digest":"sha256:74c255077dbf8c44abaced3960758d8c39fb5b3d4a8bb1ff107d439494532b87","download_count":1,"created_at":"2025-10-01T15:31:22Z","updated_at":"2025-10-01T15:31:22Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc2/napari-0.6.5rc2-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299348090","id":299348090,"node_id":"RA_kwDOCJ0aI84R17B6","name":"napari-0.6.5rc2-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":391044741,"digest":"sha256:a4de5b6e2ca348fce36bc6b34d05c43a5718b705c7a3db7f4c8c766ae546dfd2","download_count":4,"created_at":"2025-10-01T15:31:04Z","updated_at":"2025-10-01T15:31:20Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc2/napari-0.6.5rc2-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299343467","id":299343467,"node_id":"RA_kwDOCJ0aI84R155r","name":"napari-0.6.5rc2-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3536324,"digest":"sha256:2e195e741ec86d94779645994f2976a532a456c34592186daeb14cbb907fc21f","download_count":3,"created_at":"2025-10-01T15:17:40Z","updated_at":"2025-10-01T15:17:40Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc2/napari-0.6.5rc2-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299343468","id":299343468,"node_id":"RA_kwDOCJ0aI84R155s","name":"napari-0.6.5rc2.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3250117,"digest":"sha256:0866aa70ffc15ebd60753a821ae97c8bc0b100a55c48a6c07e3dd8e61bf95827","download_count":3,"created_at":"2025-10-01T15:17:40Z","updated_at":"2025-10-01T15:17:40Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc2/napari-0.6.5rc2.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.5rc2","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.5rc2","body":"# napari 0.6.5\n\n*Wed, Oct 1, 2025*\n\nWe're happy to announce the release of napari 0.6.5!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\nThis a sizeable release containing a few new exciting features and a lot of bugfixes.\n\n### EffVer and no more _alpha_\nIt is our first release officially following the [EffVer versioning scheme](https://effver.org/). We also took this occasion to (finally!) remove the `Alpha` qualifier from the project ([#8288](https://github.com/napari/napari/pull/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!\n\n### Define a startup script for custom launch behaviour\nDo 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](https://github.com/napari/napari/pull/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.\n\n![Screenshot of the application settings menu highlighting the field for the startup script path](https://github.com/user-attachments/assets/7b0e5e5c-252b-45a0-ae76-aac88e488cbc)\n### Automatically tiled overlays and ColorBar overlay\nCanvas overlays such as `scale_bar`, `text_overlay`, and `colorbar` overlay are now automatically tiling ([#7836](https://github.com/napari/napari/pull/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](https://github.com/napari/napari/pull/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:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n![Image depicting the napari viewer in grid mode with scale bars and color bars enabled](https://github.com/user-attachments/assets/622b2d36-11a7-4c55-9550-c82ddebc2fda)\n\nAlternatively, 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](https://github.com/napari/napari/pull/8319)).\n\n### Task manager will now try to prevent losing unfinished work\nWe added a new task manager ([#8211](https://github.com/napari/napari/pull/8211)) which automatically registers any running `thread_worker`, showing a confirmation dialog if you attempt to close napari while a task is running.\n\n### New *remove* and *pop* methods for Points and Shapes\nPoints and Shapes can now be easily removed, not just added :P ([#8031](https://github.com/napari/napari/pull/8031) and [#8072](https://github.com/napari/napari/pull/8072)).\n\n### A few shiny new updates to our website and documentation\n[napari.org](https://napari.org/) can now be visited in *dark mode* ([docs#840](https://github.com/napari/docs/pull/840))! You could try out this new relaxing colorscheme while exploring the new overhauled [Preferences documentation](https://napari.org/stable/guides/preferences.html#preferences) section 😉 ([docs#834](https://github.com/napari/docs/pull/834)).\nThere's also new sections on [viewer overlays](https://napari.org/stable/tutorials/fundamentals/viewer.html#viewer-overlays) and [layer overlays](https://napari.org/stable/guides/layers.html#layer-overlays), to better explain how to use these old and new tools.\nOur [release notes page](https://napari.org/dev/release/index.html) also received a glow-up ([docs#838](https://github.com/napari/docs/pull/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!\n\n### Extra dependencies for development moved to dependency groups\nA note for our contributors and plugin developers: we transferred our dev-related extra dependencies to the new python dependency groups ([#8227](https://github.com/napari/napari/pull/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.\n\n\n## New Features\n\n- Add color bar overlay ([#7832](https://github.com/napari/napari/pull/7832))\n- Tiling canvas overlays ([#7836](https://github.com/napari/napari/pull/7836))\n- Add `pop()` for `Points` and `Shapes` ([#8072](https://github.com/napari/napari/pull/8072))\n- add option to define startup script in settings ([#8188](https://github.com/napari/napari/pull/8188))\n- use `Selection` class in shapes layer ([#8297](https://github.com/napari/napari/pull/8297))\n\n## Improvements\n\n- Add `remove()` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Example from SciPy 2025 tutorial; image warping ([#8111](https://github.com/napari/napari/pull/8111))\n- Add a tasks manager status for plugins actions and napari processes ([#8211](https://github.com/napari/napari/pull/8211))\n- Use single settings path for all `uv tool run` ([#8250](https://github.com/napari/napari/pull/8250))\n- Add \"Hide completed\" checkbox to Tracks layer for improved visualization ([#8253](https://github.com/napari/napari/pull/8253))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number ([#8292](https://github.com/napari/napari/pull/8292))\n- Implement toggling colorbar and bounding box in layerlist context menu ([#8319](https://github.com/napari/napari/pull/8319))\n- Add warning for big stride when toggling grid mode ([#8320](https://github.com/napari/napari/pull/8320))\n\n## Bug Fixes\n\n- Layer controls widgets refactor ([#7355](https://github.com/napari/napari/pull/7355))\n- Fix effect of scaling when converting shapes to labels ([#8098](https://github.com/napari/napari/pull/8098))\n- Fix disappearing points ([#8223](https://github.com/napari/napari/pull/8223))\n- Fix shape position by using a stable algorithm for sorting z_position ([#8232](https://github.com/napari/napari/pull/8232))\n- Remove console print action shortcut to prevent collision with command palette shortcut ([#8233](https://github.com/napari/napari/pull/8233))\n- Do not update thumbnail on Labels empty slice ([#8251](https://github.com/napari/napari/pull/8251))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- fix slice_from_axis to wrap zarr in dask to keep lazy behavior ([#8260](https://github.com/napari/napari/pull/8260))\n- Add menu-xdg to XPRA containers ([#8263](https://github.com/napari/napari/pull/8263))\n- Check for zarr in `images_to_stack` and use da.stack instead of np.stack ([#8267](https://github.com/napari/napari/pull/8267))\n- Better handling of remote zarr ([#8268](https://github.com/napari/napari/pull/8268))\n- Use custom logger formatting to most of argument to string ([#8305](https://github.com/napari/napari/pull/8305))\n\n## Documentation\n\n- Use EffVer ([#8243](https://github.com/napari/napari/pull/8243))\n- Use shared workflows for build docs ([#8308](https://github.com/napari/napari/pull/8308))\n- Bump napari-sphinx-theme in deps and constraints ([#8315](https://github.com/napari/napari/pull/8315))\n- Update release notes 0.6.5 for full release ([docs#855](https://github.com/napari/docs/pull/855))\n- Add funding information to the home page ([docs#818](https://github.com/napari/docs/pull/818))\n- Update version switcher for 0.6.4 ([docs#826](https://github.com/napari/docs/pull/826))\n- Fix version switcher URL to prevent problems with unversioned pages ([docs#827](https://github.com/napari/docs/pull/827))\n- Update documentation for dependencies groups ([docs#829](https://github.com/napari/docs/pull/829))\n- Update and restructure the preferences guide ([docs#834](https://github.com/napari/docs/pull/834))\n- Fix @jaimergp's last name ([docs#835](https://github.com/napari/docs/pull/835))\n- Auto generate release index with highlights and timeline ([docs#838](https://github.com/napari/docs/pull/838))\n- Add EffVer to release guide and link to checklist template ([docs#839](https://github.com/napari/docs/pull/839))\n- Enable dark mode for website ([docs#840](https://github.com/napari/docs/pull/840))\n- Add draft of 0.6.5 release notes ([docs#845](https://github.com/napari/docs/pull/845))\n- Add documentation for startup script. ([docs#846](https://github.com/napari/docs/pull/846))\n- Add some info about running python scripts via cli ([docs#847](https://github.com/napari/docs/pull/847))\n- Add note about workers registration as tasks and close confirmation dialog when closing napari GUI via close button ([docs#851](https://github.com/napari/docs/pull/851))\n- Release notes v0.6.5 ([docs#853](https://github.com/napari/docs/pull/853))\n- Re-add palette shortcut to viewer guide ([docs#854](https://github.com/napari/docs/pull/854))\n- Add overlays to docs ([docs#857](https://github.com/napari/docs/pull/857))\n\n## Other Pull Requests\n\n- Move the test that requires `make_napari_viewer` from `test_qt_viewer` ([#8176](https://github.com/napari/napari/pull/8176))\n- Change headless setup for Windows and Linux to `pyvista/setup-headless-display-action` ([#8216](https://github.com/napari/napari/pull/8216))\n- Update `coverage`, `hypothesis`, `pint`, `pyopengl`, `virtualenv`, `xarray` ([#8221](https://github.com/napari/napari/pull/8221))\n- [pre-commit.ci] pre-commit autoupdate ([#8222](https://github.com/napari/napari/pull/8222))\n- Use global register for units in ScaleBar ([#8226](https://github.com/napari/napari/pull/8226))\n- Wait until viewer show in the test in `make_napari_viewer` ([#8228](https://github.com/napari/napari/pull/8228))\n- Update Qt backends used in tests to test more on Qt6 than Qt5 ([#8229](https://github.com/napari/napari/pull/8229))\n- Change properties for features usage in the Vectors layer controls ([#8231](https://github.com/napari/napari/pull/8231))\n- Add cache for pooch on CI for Linux jobs ([#8235](https://github.com/napari/napari/pull/8235))\n- Temporary increase timeout of macOS jobs ([#8237](https://github.com/napari/napari/pull/8237))\n- Update `coverage`, `hypothesis`, `ipython`, `matplotlib`, `pyside6`, `pytest-rerunfailures`, `tifffile` ([#8239](https://github.com/napari/napari/pull/8239))\n- ci(dependabot): bump the actions group with 6 updates ([#8240](https://github.com/napari/napari/pull/8240))\n- Make `connect_setattr` handle value conversion for widgets like checkboxes ([#8244](https://github.com/napari/napari/pull/8244))\n- Update `fsspec`, `hypothesis`, `pytest`, `pytest-rerunfailures`, `xarray` ([#8249](https://github.com/napari/napari/pull/8249))\n- [pre-commit.ci] pre-commit autoupdate ([#8252](https://github.com/napari/napari/pull/8252))\n- Add typing to points mouse bindings ([#8255](https://github.com/napari/napari/pull/8255))\n- Use proper name for ruff pre-commit hook and reorder hooks ([#8259](https://github.com/napari/napari/pull/8259))\n- [maint] Revert back to windows-2022 for windows runners ([#8265](https://github.com/napari/napari/pull/8265))\n- Update `dask`, `hypothesis`, `pydantic`, `qtconsole`, `scipy`, `tifffile` ([#8270](https://github.com/napari/napari/pull/8270))\n- Add napari to trove classifiers to populate builtins on napari hub ([#8277](https://github.com/napari/napari/pull/8277))\n- Add release checklist template ([#8295](https://github.com/napari/napari/pull/8295))\n- Update `coverage`, `dask`, `hypothesis`, `lxml`, `numpy`, `psutil`, `tensorstore`, `tifffile` ([#8296](https://github.com/napari/napari/pull/8296))\n- Move Jaime Rodríguez-Guerra to core-team section of CITATION.cff ([#8298](https://github.com/napari/napari/pull/8298))\n- Do not use verbose mode for headless test ([#8300](https://github.com/napari/napari/pull/8300))\n- Migrate macos-13 to macos-15-intel runner ([#8301](https://github.com/napari/napari/pull/8301))\n- Update `remove_ready_to_merge` so it only sweeps on pushed and crons ([#8302](https://github.com/napari/napari/pull/8302))\n- [maint] Revert docs constraints changes from #8270 ([#8307](https://github.com/napari/napari/pull/8307))\n- Fix constraints generation  ([#8309](https://github.com/napari/napari/pull/8309))\n- CI: Fix `github.rest.issues.removeLabel` call ([#8311](https://github.com/napari/napari/pull/8311))\n- Fix little typos ([#8316](https://github.com/napari/napari/pull/8316))\n- Add pooch cache for build docs ([docs#830](https://github.com/napari/docs/pull/830))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#831](https://github.com/napari/docs/pull/831))\n- add docs/release/index.md to gitignore ([docs#843](https://github.com/napari/docs/pull/843))\n- Add Jaime Rodríguez-Guerra to core-team ([docs#844](https://github.com/napari/docs/pull/844))\n- Bump python to 3.12 for build docs workflows ([docs#848](https://github.com/napari/docs/pull/848))\n- Use shared workflow for build docs ([docs#850](https://github.com/napari/docs/pull/850))\n\n\n## 14 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Constantin Aronssohn](https://github.com/napari/napari/commits?author=cnstt) - @cnstt\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Jules Vanaret](https://github.com/napari/napari/commits?author=jules-vanaret) - @jules-vanaret\n- [Kanai Potts](https://github.com/napari/napari/commits?author=8bitbiscuit) - @8bitbiscuit\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n## 16 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Andrew Sweet](https://github.com/napari/docs/commits?author=andy-sweet) - @andy-sweet\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Davis Bennett](https://github.com/napari/docs/commits?author=d-v-b) - @d-v-b\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Jules Vanaret](https://github.com/napari/napari/commits?author=jules-vanaret) - @jules-vanaret\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n","mentions_count":18},{"url":"https://api.github.com/repos/napari/napari/releases/251310324","assets_url":"https://api.github.com/repos/napari/napari/releases/251310324/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/251310324/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.5rc1","id":251310324,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84O-rD0","tag_name":"v0.6.5rc1","target_commitish":"1f368075830a2dde6c46ce7d60bd863d5a4c8e70","name":"0.6.5rc1","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-10-01T04:16:08Z","updated_at":"2025-10-01T04:35:11Z","published_at":"2025-10-01T04:18:20Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/299179717","id":299179717,"node_id":"RA_kwDOCJ0aI84R1R7F","name":"napari-0.6.5rc1-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40183,"digest":"sha256:559403d357665e4a83021b216500993421fc912d61a1ac129d688f1bd9e8c246","download_count":1,"created_at":"2025-10-01T04:23:33Z","updated_at":"2025-10-01T04:23:33Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc1/napari-0.6.5rc1-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299179603","id":299179603,"node_id":"RA_kwDOCJ0aI84R1R5T","name":"napari-0.6.5rc1-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":495384599,"digest":"sha256:66e6b45fdc6d08a93ff93d61a867642274d4bbd6d9995333cb6a5c03236ed496","download_count":3,"created_at":"2025-10-01T04:23:15Z","updated_at":"2025-10-01T04:23:32Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc1/napari-0.6.5rc1-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299182121","id":299182121,"node_id":"RA_kwDOCJ0aI84R1Sgp","name":"napari-0.6.5rc1-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33822,"digest":"sha256:16edf24b50dc7860943b533720e1366f3d450ebbfe5106532bf84a3a58a1ca36","download_count":1,"created_at":"2025-10-01T04:35:10Z","updated_at":"2025-10-01T04:35:11Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc1/napari-0.6.5rc1-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299182096","id":299182096,"node_id":"RA_kwDOCJ0aI84R1SgQ","name":"napari-0.6.5rc1-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":363154759,"digest":"sha256:7c15892fc90d24da1e9c1edb64108670147a2b71c7e7f42042013475030ca6ff","download_count":5,"created_at":"2025-10-01T04:34:56Z","updated_at":"2025-10-01T04:35:10Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc1/napari-0.6.5rc1-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299181252","id":299181252,"node_id":"RA_kwDOCJ0aI84R1STE","name":"napari-0.6.5rc1-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33385,"digest":"sha256:7a9eabddd907df8711237ff9fcfe416c8a246604a5fc341dcc38c3b4418e9f97","download_count":1,"created_at":"2025-10-01T04:29:22Z","updated_at":"2025-10-01T04:29:22Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc1/napari-0.6.5rc1-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299181140","id":299181140,"node_id":"RA_kwDOCJ0aI84R1SRU","name":"napari-0.6.5rc1-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":391041620,"digest":"sha256:2a6329d0eee9b4e81f186921d14cf43cd1ea259bbb2c6bf27f71994ace331a78","download_count":4,"created_at":"2025-10-01T04:29:05Z","updated_at":"2025-10-01T04:29:21Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc1/napari-0.6.5rc1-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299177684","id":299177684,"node_id":"RA_kwDOCJ0aI84R1RbU","name":"napari-0.6.5rc1-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3535089,"digest":"sha256:5d7804091a87eefeebfb685a94cfbf166165df77cac39fb5c10deed8b7dddc55","download_count":4,"created_at":"2025-10-01T04:18:21Z","updated_at":"2025-10-01T04:18:21Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc1/napari-0.6.5rc1-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/299177682","id":299177682,"node_id":"RA_kwDOCJ0aI84R1RbS","name":"napari-0.6.5rc1.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3249085,"digest":"sha256:8ec82ca1705e37b4774e2ef7660dc0e16a3d3595d61e77ca7977c2859a1b381d","download_count":3,"created_at":"2025-10-01T04:18:21Z","updated_at":"2025-10-01T04:18:21Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc1/napari-0.6.5rc1.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.5rc1","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.5rc1","body":"# napari 0.6.5\n⚠️ *Note: these release notes are still in draft while 0.6.5 is in release candidate testing.* ⚠️\n\n*Fri, Sep 26, 2025*\n\nWe're happy to announce the release of napari 0.6.5!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\n### Define a startup script for custom launch behaviour\nDo 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](https://github.com/napari/napari/pull/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.\n\n![Screenshot of the application settings menu highlighting the field for the startup script path](https://github.com/user-attachments/assets/7b0e5e5c-252b-45a0-ae76-aac88e488cbc)\n\n### Automatically tiled overlays and ColorBar overlay\nCanvas overlays such as `scale_bar`, `text_overlay`, and `colorbar` overlay are now automatically tiling ([#7836](https://github.com/napari/napari/pull/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](https://github.com/napari/napari/pull/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:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n![Image depicting the napari viewer in grid mode with scale bars and color bars enabled](https://github.com/user-attachments/assets/622b2d36-11a7-4c55-9550-c82ddebc2fda)\n\n### Task manager will now try to prevent losing unfinished work\nWe added a new task manager ([#8211](https://github.com/napari/napari/pull/8211)) which automatically registers any running `thread_worker`, showing a confirmation dialog if you attempt to close napari while a task is running.\n\n### New `remove()` and `pop()` methods for Points and Shapes\nPoints and Shapes can now be easily removed, not just added :P ([#8031](https://github.com/napari/napari/pull/8031) and [#8072](https://github.com/napari/napari/pull/8072)).\n\n### A new and updated guide on napari Preferences\nOur documentation on the napari Preferences has received a major overhaul! [Check it out here](https://napari.org/stable/guides/preferences.html#preferences)!\n\nTODO: does this link work?\n\n- Migrate non-user extras to dependency-groups ([#8227](https://github.com/napari/napari/pull/8227))\n- [maint] Drop alpha mentions ([#8288](https://github.com/napari/napari/pull/8288))\n- Auto generate release index with highlights and timeline ([docs#838](https://github.com/napari/docs/pull/838))\n\n## New Features\n\n- Add color bar overlay ([#7832](https://github.com/napari/napari/pull/7832))\n- Tiling canvas overlays ([#7836](https://github.com/napari/napari/pull/7836))\n- Add `pop()` for `Points` and `Shapes` ([#8072](https://github.com/napari/napari/pull/8072))\n- add option to define startup script in settings ([#8188](https://github.com/napari/napari/pull/8188))\n- use `Selection` class in shapes layer ([#8297](https://github.com/napari/napari/pull/8297))\n\n## Improvements\n\n- Add `remove()` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Example from SciPy 2025 tutorial; image warping ([#8111](https://github.com/napari/napari/pull/8111))\n- Add a tasks manager status for plugins actions and napari processes ([#8211](https://github.com/napari/napari/pull/8211))\n- Use single settings path for all `uv tool run` ([#8250](https://github.com/napari/napari/pull/8250))\n- Add \"Hide completed\" checkbox to Tracks layer for improved visualization ([#8253](https://github.com/napari/napari/pull/8253))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number ([#8292](https://github.com/napari/napari/pull/8292))\n\n## Bug Fixes\n\n- Layer controls widgets refactor ([#7355](https://github.com/napari/napari/pull/7355))\n- Fix effect of scaling when converting shapes to labels ([#8098](https://github.com/napari/napari/pull/8098))\n- Fix disappearing points ([#8223](https://github.com/napari/napari/pull/8223))\n- Fix shape position by using a stable algorithm for sorting z_position ([#8232](https://github.com/napari/napari/pull/8232))\n- Remove console print action shortcut to prevent collision with command palette shortcut ([#8233](https://github.com/napari/napari/pull/8233))\n- Do not update thumbnail on Labels empty slice ([#8251](https://github.com/napari/napari/pull/8251))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- fix slice_from_axis to wrap zarr in dask to keep lazy behavior ([#8260](https://github.com/napari/napari/pull/8260))\n- Add menu-xdg to XPRA containers ([#8263](https://github.com/napari/napari/pull/8263))\n- Check for zarr in `images_to_stack` and use da.stack instead of np.stack ([#8267](https://github.com/napari/napari/pull/8267))\n- Better handling of remote zarr ([#8268](https://github.com/napari/napari/pull/8268))\n- Use custom logger formatting to most of argument to string ([#8305](https://github.com/napari/napari/pull/8305))\n\n## Documentation\n\n- Use EffVer ([#8243](https://github.com/napari/napari/pull/8243))\n- Use shared workflows for build docs ([#8308](https://github.com/napari/napari/pull/8308))\n- Bump napari-sphinx-theme in deps and constraints ([#8315](https://github.com/napari/napari/pull/8315))\n- Add funding information to the home page ([docs#818](https://github.com/napari/docs/pull/818))\n- Update version switcher for 0.6.4 ([docs#826](https://github.com/napari/docs/pull/826))\n- Fix version switcher URL to prevent problems with unversioned pages ([docs#827](https://github.com/napari/docs/pull/827))\n- Update documentation for dependencies groups ([docs#829](https://github.com/napari/docs/pull/829))\n- Update and restructure the preferences guide ([docs#834](https://github.com/napari/docs/pull/834))\n- Fix @jaimergp's last name ([docs#835](https://github.com/napari/docs/pull/835))\n- Auto generate release index with highlights and timeline ([docs#838](https://github.com/napari/docs/pull/838))\n- Add EffVer to release guide and link to checklist template ([docs#839](https://github.com/napari/docs/pull/839))\n- Enable dark mode for website ([docs#840](https://github.com/napari/docs/pull/840))\n- Add draft of 0.6.5 release notes ([docs#845](https://github.com/napari/docs/pull/845))\n- Add documentation for startup script. ([docs#846](https://github.com/napari/docs/pull/846))\n- Add some info about running python scripts via cli ([docs#847](https://github.com/napari/docs/pull/847))\n- Add note about workers registration as tasks and close confirmation dialog when closing napari GUI via close button ([docs#851](https://github.com/napari/docs/pull/851))\n- Release notes v0.6.5 ([docs#853](https://github.com/napari/docs/pull/853))\n\n## Other Pull Requests\n\n- Improve workflow naming by prefixing triage- doc- make- ([#8159](https://github.com/napari/napari/pull/8159))\n- Move the test that requires `make_napari_viewer` from `test_qt_viewer` ([#8176](https://github.com/napari/napari/pull/8176))\n- Bump `superqt` min version ([#8212](https://github.com/napari/napari/pull/8212))\n- Change headless setup for Windows and Linux to `pyvista/setup-headless-display-action` ([#8216](https://github.com/napari/napari/pull/8216))\n- Update `coverage`, `hypothesis`, `pint`, `pyopengl`, `virtualenv`, `xarray` ([#8221](https://github.com/napari/napari/pull/8221))\n- [pre-commit.ci] pre-commit autoupdate ([#8222](https://github.com/napari/napari/pull/8222))\n- Use global register for units in ScaleBar ([#8226](https://github.com/napari/napari/pull/8226))\n- Wait until viewer show in the test in `make_napari_viewer` ([#8228](https://github.com/napari/napari/pull/8228))\n- Update Qt backends used in tests to test more on Qt6 than Qt5 ([#8229](https://github.com/napari/napari/pull/8229))\n- Change properties for features usage in the Vectors layer controls ([#8231](https://github.com/napari/napari/pull/8231))\n- Add cache for pooch on CI for Linux jobs ([#8235](https://github.com/napari/napari/pull/8235))\n- Temporary increase timeout of macOS jobs ([#8237](https://github.com/napari/napari/pull/8237))\n- Update `coverage`, `hypothesis`, `ipython`, `matplotlib`, `pyside6`, `pytest-rerunfailures`, `tifffile` ([#8239](https://github.com/napari/napari/pull/8239))\n- ci(dependabot): bump the actions group with 6 updates ([#8240](https://github.com/napari/napari/pull/8240))\n- Make `connect_setattr` handle value conversion for widgets like checkboxes ([#8244](https://github.com/napari/napari/pull/8244))\n- Update `fsspec`, `hypothesis`, `pytest`, `pytest-rerunfailures`, `xarray` ([#8249](https://github.com/napari/napari/pull/8249))\n- [pre-commit.ci] pre-commit autoupdate ([#8252](https://github.com/napari/napari/pull/8252))\n- Add typing to points mouse bindings ([#8255](https://github.com/napari/napari/pull/8255))\n- Use proper name for ruff pre-commit hook and reorder hooks ([#8259](https://github.com/napari/napari/pull/8259))\n- [maint] Revert back to windows-2022 for windows runners ([#8265](https://github.com/napari/napari/pull/8265))\n- Update `dask`, `hypothesis`, `pydantic`, `qtconsole`, `scipy`, `tifffile` ([#8270](https://github.com/napari/napari/pull/8270))\n- Add napari to trove classifiers to populate builtins on napari hub ([#8277](https://github.com/napari/napari/pull/8277))\n- Add release checklist template ([#8295](https://github.com/napari/napari/pull/8295))\n- Update `coverage`, `dask`, `hypothesis`, `lxml`, `numpy`, `psutil`, `tensorstore`, `tifffile` ([#8296](https://github.com/napari/napari/pull/8296))\n- Move Jaime Rodríguez-Guerra to core-team section of CITATION.cff ([#8298](https://github.com/napari/napari/pull/8298))\n- Do not use verbose mode for headless test ([#8300](https://github.com/napari/napari/pull/8300))\n- Migrate macos-13 to macos-15-intel runner ([#8301](https://github.com/napari/napari/pull/8301))\n- Update `remove_ready_to_merge` so it only sweeps on pushed and crons ([#8302](https://github.com/napari/napari/pull/8302))\n- [maint] Revert docs constraints changes from #8270 ([#8307](https://github.com/napari/napari/pull/8307))\n- Fix constraints generation  ([#8309](https://github.com/napari/napari/pull/8309))\n- CI: Fix `github.rest.issues.removeLabel` call ([#8311](https://github.com/napari/napari/pull/8311))\n- Add pooch cache for build docs ([docs#830](https://github.com/napari/docs/pull/830))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#831](https://github.com/napari/docs/pull/831))\n- add docs/release/index.md to gitignore ([docs#843](https://github.com/napari/docs/pull/843))\n- Add Jaime Rodríguez-Guerra to core-team ([docs#844](https://github.com/napari/docs/pull/844))\n- Bump python to 3.12 for build docs workflows ([docs#848](https://github.com/napari/docs/pull/848))\n- Use shared workflow for build docs ([docs#850](https://github.com/napari/docs/pull/850))\n\n\n## 12 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Kanai Potts](https://github.com/napari/napari/commits?author=8bitbiscuit) - @8bitbiscuit\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n## 15 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Andrew Sweet](https://github.com/napari/docs/commits?author=andy-sweet) - @andy-sweet\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Davis Bennett](https://github.com/napari/docs/commits?author=d-v-b) - @d-v-b\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n","mentions_count":16},{"url":"https://api.github.com/repos/napari/napari/releases/250422887","assets_url":"https://api.github.com/repos/napari/napari/releases/250422887/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/250422887/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.5rc0","id":250422887,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84O7SZn","tag_name":"v0.6.5rc0","target_commitish":"e951c0b102267e7e0158ca338ca0ef236a2518a7","name":"0.6.5rc0","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-09-26T21:25:39Z","updated_at":"2025-09-26T21:37:59Z","published_at":"2025-09-26T21:27:54Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/297676571","id":297676571,"node_id":"RA_kwDOCJ0aI84Rvi8b","name":"napari-0.6.5rc0-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40183,"digest":"sha256:0c9bbe8d0c160363be7319a8904b4ee78a69b9732c14080ccb288b889a577667","download_count":3,"created_at":"2025-09-26T21:33:04Z","updated_at":"2025-09-26T21:33:05Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc0/napari-0.6.5rc0-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/297676546","id":297676546,"node_id":"RA_kwDOCJ0aI84Rvi8C","name":"napari-0.6.5rc0-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":495415319,"digest":"sha256:c4f6659b80fad378f0d2ef59b6d4574a961d1aa383a8f9c92dad38593b8a0360","download_count":4,"created_at":"2025-09-26T21:32:45Z","updated_at":"2025-09-26T21:33:04Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc0/napari-0.6.5rc0-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/297676919","id":297676919,"node_id":"RA_kwDOCJ0aI84RvjB3","name":"napari-0.6.5rc0-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33822,"digest":"sha256:1b009f8c396c41e3fe24728e9148cb6b7117ba28af114ab76b98bb563d86fe6c","download_count":2,"created_at":"2025-09-26T21:35:08Z","updated_at":"2025-09-26T21:35:08Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc0/napari-0.6.5rc0-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/297676861","id":297676861,"node_id":"RA_kwDOCJ0aI84RvjA9","name":"napari-0.6.5rc0-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":363168020,"digest":"sha256:77a003c5d8f30a6d4d05fe99662fe7ffd6a1cd3c1853f2fba7816d2d533134df","download_count":5,"created_at":"2025-09-26T21:34:53Z","updated_at":"2025-09-26T21:35:07Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc0/napari-0.6.5rc0-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/297677495","id":297677495,"node_id":"RA_kwDOCJ0aI84RvjK3","name":"napari-0.6.5rc0-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33385,"digest":"sha256:fc0e7a472e319c597f6dae8810fba51a481e4f00102c7f774915727bd22de4da","download_count":2,"created_at":"2025-09-26T21:37:59Z","updated_at":"2025-09-26T21:37:59Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc0/napari-0.6.5rc0-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/297677422","id":297677422,"node_id":"RA_kwDOCJ0aI84RvjJu","name":"napari-0.6.5rc0-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":391147402,"digest":"sha256:e8d1259d346d7a52b54efb323a21cd5978885029914a6f03f178dcc179c7c100","download_count":4,"created_at":"2025-09-26T21:37:44Z","updated_at":"2025-09-26T21:37:58Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc0/napari-0.6.5rc0-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/297675740","id":297675740,"node_id":"RA_kwDOCJ0aI84Rvivc","name":"napari-0.6.5rc0-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3531228,"digest":"sha256:3763faa9fdb6378d6c9e7ad84fe12fcfafdc247a04e93316530d4312af570348","download_count":4,"created_at":"2025-09-26T21:27:55Z","updated_at":"2025-09-26T21:27:55Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc0/napari-0.6.5rc0-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/297675739","id":297675739,"node_id":"RA_kwDOCJ0aI84Rvivb","name":"napari-0.6.5rc0.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3246574,"digest":"sha256:0cfe79a21902cdd96b8955813df17be2c4fe911a2787bdb0f2dda65571fd570e","download_count":4,"created_at":"2025-09-26T21:27:55Z","updated_at":"2025-09-26T21:27:55Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.5rc0/napari-0.6.5rc0.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.5rc0","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.5rc0","body":"# napari 0.6.5\n⚠️ *Note: these release notes are still in draft while 0.6.5 is in release candidate testing.* ⚠️\n\n*Fri, Sep 26, 2025*\n\nWe're happy to announce the release of napari 0.6.5!\nnapari is a fast, interactive, multi-dimensional image viewer for Python.\nIt's designed for browsing, annotating, and analyzing large multi-dimensional\nimages. It's built on top of Qt (for the GUI), vispy (for performant GPU-based\nrendering), and the scientific Python stack (numpy, scipy).\n\nFor more information, examples, and documentation, please visit our website,\nhttps://napari.org.\n\nnapari follows [EffVer (Intended Effort Versioning)](https://effver.org/); this is a **Meso** release containing awesome new features, but some effort may be needed when updating previous projects to use this version.\n\n## Highlights\n\n### Define a startup script for custom launch behaviour\nDo 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](https://github.com/napari/napari/pull/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.\n\n![Screenshot of the application settings menu highlighting the field for the startup script path](https://github.com/user-attachments/assets/7b0e5e5c-252b-45a0-ae76-aac88e488cbc)\n\n### Automatically tiled overlays and ColorBar overlay\nCanvas overlays such as `scale_bar`, `text_overlay`, and `colorbar` overlay are now automatically tiling ([#7836](https://github.com/napari/napari/pull/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](https://github.com/napari/napari/pull/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:\n\n```py\nimport napari\n\nviewer = napari.Viewer()\n\n# enable grid with stride 2 to get layers split two-by-two\nviewer.grid.enabled = True\nviewer.grid.stride = 2\n\n# set the scale bar to gridded mode so it appears in each grid box\nviewer.scale_bar.visible = True\nviewer.scale_bar.gridded = True\n\nlayers = viewer.open_sample('napari', 'lily')\n\n# enable color bars\nfor layer in layers:\n    layer.colorbar.visible = True\n```\n\n![Image depicting the napari viewer in grid mode with scale bars and color bars enabled](https://github.com/user-attachments/assets/622b2d36-11a7-4c55-9550-c82ddebc2fda)\n\n### Task manager will now try to prevent losing unfinished work\nWe added a new task manager ([#8211](https://github.com/napari/napari/pull/8211)) which automatically registers any running `thread_worker`, showing a confirmation dialog if you attempt to close napari while a task is running.\n\n### New `remove()` and `pop()` methods for Points and Shapes\nPoints and Shapes can now be easily removed, not just added :P ([#8031](https://github.com/napari/napari/pull/8031) and [#8072](https://github.com/napari/napari/pull/8072)).\n\n### A new and updated guide on napari Preferences\nOur documentation on the napari Preferences has received a major overhaul! [Check it out here](https://napari.org/stable/guides/preferences.html#preferences)!\n\nTODO: does this link work?\n\n- Migrate non-user extras to dependency-groups ([#8227](https://github.com/napari/napari/pull/8227))\n- [maint] Drop alpha mentions ([#8288](https://github.com/napari/napari/pull/8288))\n- Auto generate release index with highlights and timeline ([docs#838](https://github.com/napari/docs/pull/838))\n\n## New Features\n\n- Add color bar overlay ([#7832](https://github.com/napari/napari/pull/7832))\n- Tiling canvas overlays ([#7836](https://github.com/napari/napari/pull/7836))\n- Add `pop()` for `Points` and `Shapes` ([#8072](https://github.com/napari/napari/pull/8072))\n- add option to define startup script in settings ([#8188](https://github.com/napari/napari/pull/8188))\n- use `Selection` class in shapes layer ([#8297](https://github.com/napari/napari/pull/8297))\n\n## Improvements\n\n- Add `remove()` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Example from SciPy 2025 tutorial; image warping ([#8111](https://github.com/napari/napari/pull/8111))\n- Add a tasks manager status for plugins actions and napari processes ([#8211](https://github.com/napari/napari/pull/8211))\n- Use single settings path for all `uv tool run` ([#8250](https://github.com/napari/napari/pull/8250))\n- Add \"Hide completed\" checkbox to Tracks layer for improved visualization ([#8253](https://github.com/napari/napari/pull/8253))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- Update the Shapes select_all_shapes action to allow selection in all modes and add notification of number ([#8292](https://github.com/napari/napari/pull/8292))\n\n## Bug Fixes\n\n- Layer controls widgets refactor ([#7355](https://github.com/napari/napari/pull/7355))\n- Fix effect of scaling when converting shapes to labels ([#8098](https://github.com/napari/napari/pull/8098))\n- Fix disappearing points ([#8223](https://github.com/napari/napari/pull/8223))\n- Fix shape position by using a stable algorithm for sorting z_position ([#8232](https://github.com/napari/napari/pull/8232))\n- Remove console print action shortcut to prevent collision with command palette shortcut ([#8233](https://github.com/napari/napari/pull/8233))\n- Do not update thumbnail on Labels empty slice ([#8251](https://github.com/napari/napari/pull/8251))\n- Handle affine layer metadata when splitting RGB images ([#8256](https://github.com/napari/napari/pull/8256))\n- fix slice_from_axis to wrap zarr in dask to keep lazy behavior ([#8260](https://github.com/napari/napari/pull/8260))\n- Add menu-xdg to XPRA containers ([#8263](https://github.com/napari/napari/pull/8263))\n- Check for zarr in `images_to_stack` and use da.stack instead of np.stack ([#8267](https://github.com/napari/napari/pull/8267))\n- Better handling of remote zarr ([#8268](https://github.com/napari/napari/pull/8268))\n- Use custom logger formatting to most of argument to string ([#8305](https://github.com/napari/napari/pull/8305))\n\n## Documentation\n\n- Use EffVer ([#8243](https://github.com/napari/napari/pull/8243))\n- Use shared workflows for build docs ([#8308](https://github.com/napari/napari/pull/8308))\n- Bump napari-sphinx-theme in deps and constraints ([#8315](https://github.com/napari/napari/pull/8315))\n- Add funding information to the home page ([docs#818](https://github.com/napari/docs/pull/818))\n- Update version switcher for 0.6.4 ([docs#826](https://github.com/napari/docs/pull/826))\n- Fix version switcher URL to prevent problems with unversioned pages ([docs#827](https://github.com/napari/docs/pull/827))\n- Update documentation for dependencies groups ([docs#829](https://github.com/napari/docs/pull/829))\n- Update and restructure the preferences guide ([docs#834](https://github.com/napari/docs/pull/834))\n- Fix @jaimergp's last name ([docs#835](https://github.com/napari/docs/pull/835))\n- Auto generate release index with highlights and timeline ([docs#838](https://github.com/napari/docs/pull/838))\n- Add EffVer to release guide and link to checklist template ([docs#839](https://github.com/napari/docs/pull/839))\n- Enable dark mode for website ([docs#840](https://github.com/napari/docs/pull/840))\n- Add draft of 0.6.5 release notes ([docs#845](https://github.com/napari/docs/pull/845))\n- Add documentation for startup script. ([docs#846](https://github.com/napari/docs/pull/846))\n- Add some info about running python scripts via cli ([docs#847](https://github.com/napari/docs/pull/847))\n- Add note about workers registration as tasks and close confirmation dialog when closing napari GUI via close button ([docs#851](https://github.com/napari/docs/pull/851))\n- Release notes v0.6.5 ([docs#853](https://github.com/napari/docs/pull/853))\n\n## Other Pull Requests\n\n- Improve workflow naming by prefixing triage- doc- make- ([#8159](https://github.com/napari/napari/pull/8159))\n- Move the test that requires `make_napari_viewer` from `test_qt_viewer` ([#8176](https://github.com/napari/napari/pull/8176))\n- Bump `superqt` min version ([#8212](https://github.com/napari/napari/pull/8212))\n- Change headless setup for Windows and Linux to `pyvista/setup-headless-display-action` ([#8216](https://github.com/napari/napari/pull/8216))\n- Update `coverage`, `hypothesis`, `pint`, `pyopengl`, `virtualenv`, `xarray` ([#8221](https://github.com/napari/napari/pull/8221))\n- [pre-commit.ci] pre-commit autoupdate ([#8222](https://github.com/napari/napari/pull/8222))\n- Use global register for units in ScaleBar ([#8226](https://github.com/napari/napari/pull/8226))\n- Wait until viewer show in the test in `make_napari_viewer` ([#8228](https://github.com/napari/napari/pull/8228))\n- Update Qt backends used in tests to test more on Qt6 than Qt5 ([#8229](https://github.com/napari/napari/pull/8229))\n- Change properties for features usage in the Vectors layer controls ([#8231](https://github.com/napari/napari/pull/8231))\n- Add cache for pooch on CI for Linux jobs ([#8235](https://github.com/napari/napari/pull/8235))\n- Temporary increase timeout of macOS jobs ([#8237](https://github.com/napari/napari/pull/8237))\n- Update `coverage`, `hypothesis`, `ipython`, `matplotlib`, `pyside6`, `pytest-rerunfailures`, `tifffile` ([#8239](https://github.com/napari/napari/pull/8239))\n- ci(dependabot): bump the actions group with 6 updates ([#8240](https://github.com/napari/napari/pull/8240))\n- Make `connect_setattr` handle value conversion for widgets like checkboxes ([#8244](https://github.com/napari/napari/pull/8244))\n- Update `fsspec`, `hypothesis`, `pytest`, `pytest-rerunfailures`, `xarray` ([#8249](https://github.com/napari/napari/pull/8249))\n- [pre-commit.ci] pre-commit autoupdate ([#8252](https://github.com/napari/napari/pull/8252))\n- Add typing to points mouse bindings ([#8255](https://github.com/napari/napari/pull/8255))\n- Use proper name for ruff pre-commit hook and reorder hooks ([#8259](https://github.com/napari/napari/pull/8259))\n- [maint] Revert back to windows-2022 for windows runners ([#8265](https://github.com/napari/napari/pull/8265))\n- Update `dask`, `hypothesis`, `pydantic`, `qtconsole`, `scipy`, `tifffile` ([#8270](https://github.com/napari/napari/pull/8270))\n- Add napari to trove classifiers to populate builtins on napari hub ([#8277](https://github.com/napari/napari/pull/8277))\n- Add release checklist template ([#8295](https://github.com/napari/napari/pull/8295))\n- Update `coverage`, `dask`, `hypothesis`, `lxml`, `numpy`, `psutil`, `tensorstore`, `tifffile` ([#8296](https://github.com/napari/napari/pull/8296))\n- Move Jaime Rodríguez-Guerra to core-team section of CITATION.cff ([#8298](https://github.com/napari/napari/pull/8298))\n- Do not use verbose mode for headless test ([#8300](https://github.com/napari/napari/pull/8300))\n- Migrate macos-13 to macos-15-intel runner ([#8301](https://github.com/napari/napari/pull/8301))\n- Update `remove_ready_to_merge` so it only sweeps on pushed and crons ([#8302](https://github.com/napari/napari/pull/8302))\n- [maint] Revert docs constraints changes from #8270 ([#8307](https://github.com/napari/napari/pull/8307))\n- Fix constraints generation  ([#8309](https://github.com/napari/napari/pull/8309))\n- CI: Fix `github.rest.issues.removeLabel` call ([#8311](https://github.com/napari/napari/pull/8311))\n- Add pooch cache for build docs ([docs#830](https://github.com/napari/docs/pull/830))\n- ci(dependabot): bump the github-actions group with 3 updates ([docs#831](https://github.com/napari/docs/pull/831))\n- add docs/release/index.md to gitignore ([docs#843](https://github.com/napari/docs/pull/843))\n- Add Jaime Rodríguez-Guerra to core-team ([docs#844](https://github.com/napari/docs/pull/844))\n- Bump python to 3.12 for build docs workflows ([docs#848](https://github.com/napari/docs/pull/848))\n- Use shared workflow for build docs ([docs#850](https://github.com/napari/docs/pull/850))\n\n\n## 12 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Kanai Potts](https://github.com/napari/napari/commits?author=8bitbiscuit) - @8bitbiscuit\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n## 15 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Andrew Sweet](https://github.com/napari/docs/commits?author=andy-sweet) - @andy-sweet\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) ([docs](https://github.com/napari/docs/commits?author=dalthviz))  - @dalthviz\n- [Davis Bennett](https://github.com/napari/docs/commits?author=d-v-b) - @d-v-b\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jaime Rodríguez-Guerra](https://github.com/napari/napari/commits?author=jaimergp) ([docs](https://github.com/napari/docs/commits?author=jaimergp))  - @jaimergp\n- [Johannes Soltwedel](https://github.com/napari/napari/commits?author=jo-mueller) - @jo-mueller\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/250422887/reactions","total_count":3,"+1":0,"-1":0,"laugh":0,"hooray":1,"confused":0,"heart":1,"rocket":1,"eyes":0},"mentions_count":16},{"url":"https://api.github.com/repos/napari/napari/releases/240274870","assets_url":"https://api.github.com/repos/napari/napari/releases/240274870/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/240274870/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.4","id":240274870,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84OUk22","tag_name":"v0.6.4","target_commitish":"8aa6ea45b0fce8ff2a9506d75b55a93fc8ac9589","name":"0.6.4","draft":false,"immutable":false,"prerelease":false,"created_at":"2025-08-15T17:01:34Z","updated_at":"2025-08-15T18:11:36Z","published_at":"2025-08-15T18:01:09Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/282901639","id":282901639,"node_id":"RA_kwDOCJ0aI84Q3LyH","name":"napari-0.6.4-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40122,"digest":"sha256:15390b6dc05be9d6765bb33ff90052af64d6025fa4f291defd72be41abacfdc1","download_count":1,"created_at":"2025-08-15T18:06:20Z","updated_at":"2025-08-15T18:06:21Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282901607","id":282901607,"node_id":"RA_kwDOCJ0aI84Q3Lxn","name":"napari-0.6.4-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":487888910,"digest":"sha256:63b03c982aaccd50e8c8214a81699e98e5889bb0172d8f4e5c72e30c418060f5","download_count":97,"created_at":"2025-08-15T18:06:07Z","updated_at":"2025-08-15T18:06:20Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282902119","id":282902119,"node_id":"RA_kwDOCJ0aI84Q3L5n","name":"napari-0.6.4-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33997,"digest":"sha256:568699c6bd749d6aae37858cba55b58d6af20ad23e3eac76791a5ed12d4c4349","download_count":3,"created_at":"2025-08-15T18:08:06Z","updated_at":"2025-08-15T18:08:06Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282902087","id":282902087,"node_id":"RA_kwDOCJ0aI84Q3L5H","name":"napari-0.6.4-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":396407105,"digest":"sha256:3958bda1a90e53f4f2dc69ebb40134cf7340a4327d156fdca033f41c766d0114","download_count":320,"created_at":"2025-08-15T18:07:51Z","updated_at":"2025-08-15T18:08:05Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282903006","id":282903006,"node_id":"RA_kwDOCJ0aI84Q3MHe","name":"napari-0.6.4-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33553,"digest":"sha256:9449f769cf439bd7320633e5d60a9b95b9abe57f361d735272df0d9657c60b6e","download_count":2,"created_at":"2025-08-15T18:11:36Z","updated_at":"2025-08-15T18:11:36Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282902949","id":282902949,"node_id":"RA_kwDOCJ0aI84Q3MGl","name":"napari-0.6.4-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":424824409,"digest":"sha256:e7dd795faf318d84f963afe1db04bd7bee14bc7ee3f2445d4923392de1fffd15","download_count":89,"created_at":"2025-08-15T18:11:17Z","updated_at":"2025-08-15T18:11:35Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282900614","id":282900614,"node_id":"RA_kwDOCJ0aI84Q3LiG","name":"napari-0.6.4-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3479235,"digest":"sha256:d29aa42ed061acf27c64e49c2e816f793dcaa5686e5cb3797f2a5946c6872c3e","download_count":4,"created_at":"2025-08-15T18:01:09Z","updated_at":"2025-08-15T18:01:10Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282902817","id":282902817,"node_id":"RA_kwDOCJ0aI84Q3MEh","name":"napari-0.6.4-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":493024368,"digest":"sha256:d73ac7e291779f60baf14dba4e37d49d8478d90a3f3f19a7aa17ff9d61f69a5b","download_count":778,"created_at":"2025-08-15T18:10:58Z","updated_at":"2025-08-15T18:11:14Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282902932","id":282902932,"node_id":"RA_kwDOCJ0aI84Q3MGU","name":"napari-0.6.4-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31799,"digest":"sha256:a855530b92c789bd6060b045a6b4119a017fe86c6f3a3f1ce88a6b776773be7a","download_count":5,"created_at":"2025-08-15T18:11:15Z","updated_at":"2025-08-15T18:11:15Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282900615","id":282900615,"node_id":"RA_kwDOCJ0aI84Q3LiH","name":"napari-0.6.4.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3222013,"digest":"sha256:0a768f66447c7d5ee79a29f43f42bd054c35bbca6310d91c604aadeedf2ea5be","download_count":3,"created_at":"2025-08-15T18:01:09Z","updated_at":"2025-08-15T18:01:10Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4/napari-0.6.4.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.4","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.4","body":"# napari 0.6.4\n\n*Sat, Aug 16, 2025*\n\nWe’re happy to announce the release of napari 0.6.4!\n\nnapari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for exploring, annotating, and analyzing multi-dimensional images. It’s built on Qt (for the GUI), VisPy (for performant GPU-based rendering), and the scientific Python stack (NumPy, SciPy, and friends).\n\nFor more information, examples, and documentation, please visit our website: https://napari.org/\n\n## Highlights\n\n### Run scripts with napari from the command line\n\nAs a follow-up to the ability to drag-n-drop scripts into the napari window from 0.6.3, you can now run scripts directly from the command line using the `napari` command and the path to the script ([#8185](https://github.com/napari/napari/pull/8185) and [#8187](https://github.com/napari/napari/pull/8187)).\nTo open a local napari and run a local script, enter: `napari examples/magic_immage_arithmetic.py`.\nYou can also run scripts from a remote location ([#8208](https://github.com/napari/napari/pull/8208)), including Github, Gist, Gitlab, and the napari gallery.\nTo run a remote script, for example, enter: `napari https://github.com/napari/napari/blob/main/examples/grid_mode.py`.\nIf you have `uv` you can even run a script without installing napari by using `uvx --with \"napari[gallery,all]\" napari https://napari.org/stable/_downloads/55f878f7d41dc4c7c2e28483653273cb/affine_coffee_cup.py`, serving as a clever way to trial napari or share your script. As always with remote connections, only use this feature with scripts you trust.\n\n### Toggling the napari console now places focus on the console\n\nToggling the napari console (with the keyboard (`Cmd/Ctrl+Shift+C`), GUI, or command palette) will now transfer focus on the console, allowing you to immediately start typing commands without needing to click into the console first ([#8182](https://github.com/napari/napari/pull/8182)). We have found this to be a very useful feature for a keyboard-centric workflow combining the power of the command palette and console together.\n\n## Improvements\n\n- Remove old path handle in napari start ([#8185](https://github.com/napari/napari/pull/8185))\n- Prevent `napari.run` from being executed when running scripts from napari ([#8187](https://github.com/napari/napari/pull/8187))\n- Add option to load script from a remote location ([#8208](https://github.com/napari/napari/pull/8208))\n\n## Bug Fixes\n\n- Set focus after toggling dockwidget via `DockWidgetToggleAction` ([#8182](https://github.com/napari/napari/pull/8182))\n- Fix slider label shifted down, by overrwite QLineEdit qss rules ([#8184](https://github.com/napari/napari/pull/8184))\n- Fix feature table widget sorting and editing of floats ([#8190](https://github.com/napari/napari/pull/8190))\n- Add check if selected label is out of data range. ([#8202](https://github.com/napari/napari/pull/8202))\n- Explicit copy of layers data for balls example ([#8203](https://github.com/napari/napari/pull/8203))\n\n## Documentation\n\n- Reorganize bundle instructions page to make it easier to navigate and provide download links ([docs#813](https://github.com/napari/docs/pull/813))\n- Simplify installation guide & better highlight bundle ([docs#814](https://github.com/napari/docs/pull/814))\n- Update codespell config and minor corrections ([docs#816](https://github.com/napari/docs/pull/816))\n- Add contracted roles to team page and rename core dev -> core TM ([docs#817](https://github.com/napari/docs/pull/817))\n- Pre-release notes for 0.6.4 ([docs#820](https://github.com/napari/docs/pull/820))\n- Final 0.6.4 Release Notes ([docs#822](https://github.com/napari/docs/pull/822))\n\n## Other Pull Requests\n\n- Pin Github Actions actions to their hashes ([#8140](https://github.com/napari/napari/pull/8140))\n- [pre-commit.ci] pre-commit autoupdate ([#8193](https://github.com/napari/napari/pull/8193))\n- Fix fallback version in setuptools_scm to pass schema validation ([#8196](https://github.com/napari/napari/pull/8196))\n- Use napari url for test rather than Fiji ([#8198](https://github.com/napari/napari/pull/8198))\n- [pre-commit.ci] pre-commit autoupdate ([#8204](https://github.com/napari/napari/pull/8204))\n- Pin `pytest-qt` for python 3.10 to fix pyapp-kit projects tests ([#8205](https://github.com/napari/napari/pull/8205))\n- Retry second fullscreen test ([#8206](https://github.com/napari/napari/pull/8206))\n- Fix script for checking for updated dependencies. ([#8207](https://github.com/napari/napari/pull/8207))\n- Update `certifi`, `coverage`, `hypothesis`, `matplotlib`, `psygnal`, `pytest-rerunfailures`, `rich`, `scipy`, `superqt`, `virtualenv`, `wrapt` ([#8209](https://github.com/napari/napari/pull/8209))\n- Update Version Switcher to 0.6.3 ([docs#808](https://github.com/napari/docs/pull/808))\n- ci(dependabot): bump napari/napari from 0.6.2 to 0.6.3 in the github-actions group ([docs#810](https://github.com/napari/docs/pull/810))\n\n\n## 8 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [jaime rodraguez-guerra](https://github.com/napari/napari/commits?author=jaimergp) - @jaimergp\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Peter Sobolewski](https://github.com/napari/docs/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n\n## 8 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/docs/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n","mentions_count":10},{"url":"https://api.github.com/repos/napari/napari/releases/239870649","assets_url":"https://api.github.com/repos/napari/napari/releases/239870649/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/239870649/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.4rc0","id":239870649,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84OTCK5","tag_name":"v0.6.4rc0","target_commitish":"3017071c12ea52c9638540b34c3ebc977fcd4889","name":"0.6.4rc0","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-08-14T06:00:20Z","updated_at":"2025-08-14T06:13:59Z","published_at":"2025-08-14T06:04:49Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/282403470","id":282403470,"node_id":"RA_kwDOCJ0aI84Q1SKO","name":"napari-0.6.4rc0-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40179,"digest":"sha256:d28d1a665503e0950fbe9b5ba734ebaec276264d37bdd41ff6ace8d4dcdefb85","download_count":2,"created_at":"2025-08-14T06:09:54Z","updated_at":"2025-08-14T06:09:54Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282403364","id":282403364,"node_id":"RA_kwDOCJ0aI84Q1SIk","name":"napari-0.6.4rc0-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":486916119,"digest":"sha256:9ac85ff373e14e65c404f2ae907d810e5659236f3f0008f17dae5d5c8a4b8050","download_count":5,"created_at":"2025-08-14T06:09:41Z","updated_at":"2025-08-14T06:09:53Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282403971","id":282403971,"node_id":"RA_kwDOCJ0aI84Q1SSD","name":"napari-0.6.4rc0-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34054,"digest":"sha256:86d5144a71680afc5da22af756090a5b84a6a25360b0f58e95616dd55ef4962a","download_count":1,"created_at":"2025-08-14T06:13:28Z","updated_at":"2025-08-14T06:13:28Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282403930","id":282403930,"node_id":"RA_kwDOCJ0aI84Q1SRa","name":"napari-0.6.4rc0-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":396301506,"digest":"sha256:ecbd744d1072960831626ba351e95100a858dd84eadd8b94dba9497a75f2be85","download_count":4,"created_at":"2025-08-14T06:13:11Z","updated_at":"2025-08-14T06:13:27Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282404064","id":282404064,"node_id":"RA_kwDOCJ0aI84Q1STg","name":"napari-0.6.4rc0-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33610,"digest":"sha256:3498d0475e0612ba714eb456e5a5be6e7150daf3398a813bcf07ff6c1d4bfd26","download_count":1,"created_at":"2025-08-14T06:13:59Z","updated_at":"2025-08-14T06:13:59Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282404019","id":282404019,"node_id":"RA_kwDOCJ0aI84Q1SSz","name":"napari-0.6.4rc0-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":424644051,"digest":"sha256:b3298b1ec48abfd202c0cbe880e5091771a54794a994c6c2fcfe393b9ce78495","download_count":4,"created_at":"2025-08-14T06:13:44Z","updated_at":"2025-08-14T06:13:58Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282402430","id":282402430,"node_id":"RA_kwDOCJ0aI84Q1R5-","name":"napari-0.6.4rc0-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3477630,"digest":"sha256:bacccb0471c6bb273d08fc90a08ddba6f6d6bfd840cb5d47e89a2ea1dde95a8d","download_count":5,"created_at":"2025-08-14T06:04:50Z","updated_at":"2025-08-14T06:04:50Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282403956","id":282403956,"node_id":"RA_kwDOCJ0aI84Q1SR0","name":"napari-0.6.4rc0-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":492872168,"digest":"sha256:95243c321c5c76485a859701b158bf0917ca84af3c71ca3b2f079b7c41e03acc","download_count":8,"created_at":"2025-08-14T06:13:21Z","updated_at":"2025-08-14T06:13:31Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282403979","id":282403979,"node_id":"RA_kwDOCJ0aI84Q1SSL","name":"napari-0.6.4rc0-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31856,"digest":"sha256:c6317e9aa2826bda1114a53e6f30b478c6604cd90165ca93d221f53625a08f22","download_count":2,"created_at":"2025-08-14T06:13:32Z","updated_at":"2025-08-14T06:13:32Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/282402429","id":282402429,"node_id":"RA_kwDOCJ0aI84Q1R59","name":"napari-0.6.4rc0.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3220378,"digest":"sha256:08e2ad2e02fd5179d16d0f2743cbacdb2f421e9d253187278abaa1b56bff4907","download_count":4,"created_at":"2025-08-14T06:04:50Z","updated_at":"2025-08-14T06:04:50Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.4rc0/napari-0.6.4rc0.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.4rc0","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.4rc0","body":"# napari 0.6.4\n⚠️ *Note: these release notes are still in draft while 0.6.4 is in release candidate testing.* ⚠️\n\n*Tue, Aug 12, 2025*\n\nWe’re happy to announce the release of napari 0.6.4!\n\nnapari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for exploring, annotating, and analyzing multi-dimensional images. It’s built on Qt (for the GUI), VisPy (for performant GPU-based rendering), and the scientific Python stack (NumPy, SciPy, and friends).\n\nFor more information, examples, and documentation, please visit our website: https://napari.org/\n\n## Highlights\n\n### Run scripts with napari from the command line\n\nAs a follow-up to the ability to drag-n-drop scripts into the napari window from 0.6.3, you can now run scripts directly from the command line using the `napari` command and the path to the script ([#8185](https://github.com/napari/napari/pull/8185) and [#8187](https://github.com/napari/napari/pull/8187)). For example `napari examples/magic_immage_arithmetic.py` will open napari and run the local script.\n\n\n## Improvements\n\n- Remove old path handle in napari start ([#8185](https://github.com/napari/napari/pull/8185))\n- Prevent `napari.run` from being executed when running scripts from napari ([#8187](https://github.com/napari/napari/pull/8187))\n\n## Bug Fixes\n\n- Set focus after toggling dockwidget via `DockWidgetToggleAction` ([#8182](https://github.com/napari/napari/pull/8182))\n- Fix feature table widget sorting and editing of floats ([#8190](https://github.com/napari/napari/pull/8190))\n- Explicit copy of layers data for balls example ([#8203](https://github.com/napari/napari/pull/8203))\n\n## Documentation\n\n- Reorganize bundle instructions page to make it easier to navigate and provide download links ([docs#813](https://github.com/napari/docs/pull/813))\n- Simplify installation guide & better highlight bundle ([docs#814](https://github.com/napari/docs/pull/814))\n- Update codespell config and minor corrections ([docs#816](https://github.com/napari/docs/pull/816))\n- Add contracted roles to team page and rename core dev -> core TM ([docs#817](https://github.com/napari/docs/pull/817))\n\n## Other Pull Requests\n\n- Pin Github Actions actions to their hashes ([#8140](https://github.com/napari/napari/pull/8140))\n- Move test that requires `make_napari_viewer` from `test_qt_viewer` ([#8176](https://github.com/napari/napari/pull/8176))\n- Fix slider label shifted down, by overrwite QLineEdit qss rules ([#8184](https://github.com/napari/napari/pull/8184))\n- [pre-commit.ci] pre-commit autoupdate ([#8193](https://github.com/napari/napari/pull/8193))\n- Fix fallback version in setuptools_scm to pass schema validation ([#8196](https://github.com/napari/napari/pull/8196))\n- Use napari url for test rather than Fiji ([#8198](https://github.com/napari/napari/pull/8198))\n- [pre-commit.ci] pre-commit autoupdate ([#8204](https://github.com/napari/napari/pull/8204))\n- Pin `pytest-qt` for python 3.10 to fix pyapp-kit projects tests ([#8205](https://github.com/napari/napari/pull/8205))\n- Retry second fullscreen test ([#8206](https://github.com/napari/napari/pull/8206))\n- Fix script for checking for updated dependencies. ([#8207](https://github.com/napari/napari/pull/8207))\n- Update Version Switcher to 0.6.3 ([docs#808](https://github.com/napari/docs/pull/808))\n- ci(dependabot): bump napari/napari from 0.6.2 to 0.6.3 in the github-actions group ([docs#810](https://github.com/napari/docs/pull/810))\n\n\n## 8 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Daniel Althviz Moré](https://github.com/napari/napari/commits?author=dalthviz) - @dalthviz\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [jaime rodraguez-guerra](https://github.com/napari/napari/commits?author=jaimergp) - @jaimergp\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Peter Sobolewski](https://github.com/napari/docs/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n\n## 7 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) - @Czaki\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/docs/commits?author=psobolewskiPhD) - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n","mentions_count":10},{"url":"https://api.github.com/repos/napari/napari/releases/236465057","assets_url":"https://api.github.com/repos/napari/napari/releases/236465057/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/236465057/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.3","id":236465057,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84OGCuh","tag_name":"v0.6.3","target_commitish":"2f7f0572fd371fb5241d00a78ba7a26754d56058","name":"0.6.3","draft":false,"immutable":false,"prerelease":false,"created_at":"2025-07-31T04:45:58Z","updated_at":"2025-07-31T05:45:00Z","published_at":"2025-07-31T05:28:37Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/278000156","id":278000156,"node_id":"RA_kwDOCJ0aI84QkfIc","name":"napari-0.6.3-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40133,"digest":"sha256:11d30144ce79858aab6a18f660ccb9a58d395039981fa1fd6e27d6b21c210081","download_count":5,"created_at":"2025-07-31T05:39:28Z","updated_at":"2025-07-31T05:39:28Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/278000099","id":278000099,"node_id":"RA_kwDOCJ0aI84QkfHj","name":"napari-0.6.3-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":485923046,"digest":"sha256:b44bacb19871ff968e9e4c6c80b4bfe3941b547c09a5574142f18657f81ba55d","download_count":75,"created_at":"2025-07-31T05:39:17Z","updated_at":"2025-07-31T05:39:28Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/278000655","id":278000655,"node_id":"RA_kwDOCJ0aI84QkfQP","name":"napari-0.6.3-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34016,"digest":"sha256:bb685817c719d5cfdece0fcf31f1f33520c408257558e73ae8d9d73e3cd3c391","download_count":4,"created_at":"2025-07-31T05:42:22Z","updated_at":"2025-07-31T05:42:22Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/278000616","id":278000616,"node_id":"RA_kwDOCJ0aI84QkfPo","name":"napari-0.6.3-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":395956880,"digest":"sha256:7736167bf3245b7a3c6f76efb7103403cbe7419f7a53fa1faa351181a1c834e7","download_count":105,"created_at":"2025-07-31T05:42:07Z","updated_at":"2025-07-31T05:42:21Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/278001126","id":278001126,"node_id":"RA_kwDOCJ0aI84QkfXm","name":"napari-0.6.3-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33572,"digest":"sha256:5e5a9d705fee9ec2cb7f3e49169aa799428d40f7005d3ebe3264672cf40dc68d","download_count":3,"created_at":"2025-07-31T05:45:00Z","updated_at":"2025-07-31T05:45:00Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/278001027","id":278001027,"node_id":"RA_kwDOCJ0aI84QkfWD","name":"napari-0.6.3-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":424148250,"digest":"sha256:8885ef774e3d3f40b2ff98f20764cc1b4d0e9c4457d0c820a5513f7eb91d5de8","download_count":66,"created_at":"2025-07-31T05:44:43Z","updated_at":"2025-07-31T05:44:59Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277996735","id":277996735,"node_id":"RA_kwDOCJ0aI84QkeS_","name":"napari-0.6.3-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3476717,"digest":"sha256:2c0d4152062ce0995ed1cba552991bb9647ba278c1647b954c3e88c355fd4740","download_count":4,"created_at":"2025-07-31T05:28:38Z","updated_at":"2025-07-31T05:28:38Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277999932","id":277999932,"node_id":"RA_kwDOCJ0aI84QkfE8","name":"napari-0.6.3-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":505272944,"digest":"sha256:9e1c34170db6a1b9685c14621056f1628c1da7697ed866eabc11232fc2fa96ab","download_count":261,"created_at":"2025-07-31T05:37:52Z","updated_at":"2025-07-31T05:38:09Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277999966","id":277999966,"node_id":"RA_kwDOCJ0aI84QkfFe","name":"napari-0.6.3-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31814,"digest":"sha256:9b56a04456baa1a96d35efc6ac0703bb9d74b85083f1116fb7365932903801b3","download_count":7,"created_at":"2025-07-31T05:38:10Z","updated_at":"2025-07-31T05:38:10Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277996734","id":277996734,"node_id":"RA_kwDOCJ0aI84QkeS-","name":"napari-0.6.3.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3217286,"digest":"sha256:9228359e84fd7d9c5e9bf5c511dd5a77ecb3e56a967d9cb8213188d151847180","download_count":3,"created_at":"2025-07-31T05:28:38Z","updated_at":"2025-07-31T05:28:38Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3/napari-0.6.3.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.3","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.3","body":"# napari 0.6.3\n\n*Thu, Jul 31, 2025*\n\nWe’re happy to announce the release of napari 0.6.3!\n\nnapari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for exploring, annotating, and analyzing multi-dimensional images. It’s built on Qt (for the GUI), VisPy (for performant GPU-based rendering), and the scientific Python stack (NumPy, SciPy, and friends).\n\nFor more information, examples, and documentation, please visit our website: https://napari.org/\n\n## Highlights\n\n### A Zoom with a View 🔍\n\nPardon the play on words, but you can now zoom directly to a region of interest in the viewer by holding `Alt` and dragging with the mouse [(#8004)](https://github.com/napari/napari/pull/8004). The camera will pan and zoom to fit the selected region, making it much easier to focus on specific areas of your data. This feature works in both 2D and 3D views.\n\n![GIF Displaying Alt-Drag Zoom Box Behavior](https://github.com/user-attachments/assets/f32ea020-28e2-4059-90b9-491bdd4a962b)\n\n### Fine Tuning Thick Slicing from the GUI 📏\n\nThick slicing controls are now available in the GUI [(#6146)](https://github.com/napari/napari/pull/6146)! This allows you to project multiple slices together using different modes (sum, mean, max, and min) for better visualization of your multidimensional data. You can access the thickness controls by right-clicking on the dimension sliders to open a popup to change the margins either symmetrically or asymmetrical and projection mode settings are now available per layer in the layer controls widget.\n\n![GIF Displaying Thick Slicing GUI Controls](https://github.com/user-attachments/assets/f61636d6-8540-4c33-9abc-1e065c5f9d38)\n\n### Run Scripts by Dragging and Dropping into the Viewer 🖱️\n\nScripts can now be run by dragging and dropping them into the viewer [(#8135)](https://github.com/napari/napari/pull/8135)! This is particularly useful for running [napari examples](https://napari.org/stable/gallery.html#gallery) without having to use the command line; you can even run these scripts from the bundled install! This works by adding a `.py` reader to napari's builtins.\n\n![Image Depicting a User dragging a script into the viewer](https://github.com/user-attachments/assets/af4edaa3-fd77-4697-85ea-4f2eb662f5ec)\n\n### Windows: Access ~~Denied~~ Fixed 🪟\n\nA critical Windows-specific bug that caused Access Violation errors has been resolved [(#8122)](https://github.com/napari/napari/pull/8122)! This longstanding issue would cause napari to stop displaying layers due to various events and often occurred at seemingly non-reproducible times, and required a full restart of napari. The fix ensures proper cleanup and syncing of GPU resources, also reducing memory usage on all platforms. If you were an effected user, you may recall it as `Access Violation`, `0x000000000000001C` if triggered without a plugin, or `0x000000000000034C` if triggered with a plugin.\n\n### Improved PySide6 Support 🛠️\n\nNapari now has improved support for PySide6 [(#7887)](https://github.com/napari/napari/pull/7887). We encourage plugin developers to test against PySide6, as a fully supported backend going forward. Additionally, this change will enable us to drop PySide2 along side Python 3.10, in the near future. If you are a plugin developer or otherwise depend on napari and PySide2, please reach out on Zulip or Github.\n\n\n## New Features\n\n- Qt controls for thick slicing ([#6146](https://github.com/napari/napari/pull/6146))\n- Add automatic area and perimeter measurement for shapes + action ([#7262](https://github.com/napari/napari/pull/7262))\n- Add 'zoom-box' to the viewer ([#8004](https://github.com/napari/napari/pull/8004))\n- Add viewbox coordinates to events and Cursor ([#8130](https://github.com/napari/napari/pull/8130))\n- feat: Add option to execute python code by drag'n'drop script to viewer ([#8135](https://github.com/napari/napari/pull/8135))\n\n## Improvements\n\n- Allow use functions from PartSegCore-compiled-backend as numba alternative for data to texture mapping  ([#6617](https://github.com/napari/napari/pull/6617))\n- Enable testing on recent PySide6  ([#7887](https://github.com/napari/napari/pull/7887))\n- Implement pasting spatial information into higher dimensions ([#7973](https://github.com/napari/napari/pull/7973))\n- Improve performance and memory usage of editing Shapes layer  ([#8006](https://github.com/napari/napari/pull/8006))\n- Colorblind friendly image sample of kidney and lily ([#8090](https://github.com/napari/napari/pull/8090))\n- Added fixed seed and tested the value. ([#8097](https://github.com/napari/napari/pull/8097))\n- Add alpha to split rgba into channels and remerge image. ([#8112](https://github.com/napari/napari/pull/8112))\n- Add keybinding (CtrlCmd-up/down) to select layer above/below ([#8119](https://github.com/napari/napari/pull/8119))\n- Do not calculate projection on slices of thickness 1 ([#8157](https://github.com/napari/napari/pull/8157))\n- Add variables from drag and drop to console ([#8174](https://github.com/napari/napari/pull/8174))\n\n## Performance\n\n- Allow use functions from PartSegCore-compiled-backend as numba alternative for data to texture mapping  ([#6617](https://github.com/napari/napari/pull/6617))\n\n## Bug Fixes\n\n- ensure sync when taking a screenshot ([#8064](https://github.com/napari/napari/pull/8064))\n- Updated code to use current symbol and border width for new points. ([#8102](https://github.com/napari/napari/pull/8102))\n- Improve performance and memory usage of editing Shapes layer (#8006 again) ([#8109](https://github.com/napari/napari/pull/8109))\n- Add alpha to split rgba into channels and remerge image. ([#8112](https://github.com/napari/napari/pull/8112))\n- Prevent Windows Access Violation with GPU resource cleanup on layer removal ([#8122](https://github.com/napari/napari/pull/8122))\n- Only use scale to transform margins in thick slices ([#8137](https://github.com/napari/napari/pull/8137))\n- Fix scalebar behaviour at high/low zoom ([#8144](https://github.com/napari/napari/pull/8144))\n- Ensure contrast limits are computed on original dtype with projected thick slices ([#8149](https://github.com/napari/napari/pull/8149))\n- Fix multiscale clim estimation by using full visible data, not first row ([#8152](https://github.com/napari/napari/pull/8152))\n- Remove `np.asarray(self.cursor._view_direction)` that return unbound array ([#8172](https://github.com/napari/napari/pull/8172))\n\n## API Changes\n\n- Add viewbox coordinates to events and Cursor ([#8130](https://github.com/napari/napari/pull/8130))\n\n## Documentation\n\n- Update docs constraints and pyprojecttoml for npe2 ([#8075](https://github.com/napari/napari/pull/8075))\n- Typo ismhow -> imshow ([#8084](https://github.com/napari/napari/pull/8084))\n- Replace deprecated `view_*()` method from examples ([#8091](https://github.com/napari/napari/pull/8091))\n- Comment the HEX codes of each color theme and where they're used ([#8099](https://github.com/napari/napari/pull/8099))\n- New example for affine transformations in 3D using meshio and stl ([#8103](https://github.com/napari/napari/pull/8103))\n- Added a try it out now section to README.md for using uv. ([#8107](https://github.com/napari/napari/pull/8107))\n- Update README wording about scikit-image example ([#8125](https://github.com/napari/napari/pull/8125))\n- Add example for grid mode. ([#8131](https://github.com/napari/napari/pull/8131))\n- Update xarray_nD_image_.py to use xarray tag ([#8167](https://github.com/napari/napari/pull/8167))\n- Autogenerate images of parts of the viewer ([docs#621](https://github.com/napari/docs/pull/621))\n- Update instructions on how to update constraints files ([docs#672](https://github.com/napari/docs/pull/672))\n- Updates to NAP-9: Multiple Views ([docs#730](https://github.com/napari/docs/pull/730))\n- Update guides.md to add menu contribution guide ([docs#747](https://github.com/napari/docs/pull/747))\n- Update building your first plugin guide ([docs#753](https://github.com/napari/docs/pull/753))\n- Update version switcher for 0.6.2 ([docs#754](https://github.com/napari/docs/pull/754))\n- Update Release Guide ([docs#755](https://github.com/napari/docs/pull/755))\n- Fix information about `site-packages` directory ([docs#756](https://github.com/napari/docs/pull/756))\n- Add empty release notes for 0.6.3 ([docs#757](https://github.com/napari/docs/pull/757))\n- Add roadmap to sidebar links ([docs#760](https://github.com/napari/docs/pull/760))\n- Refactor contributing guide landing page ([docs#761](https://github.com/napari/docs/pull/761))\n- Reorganize homepage with grid columns ([docs#767](https://github.com/napari/docs/pull/767))\n- Fix sidebar roadmap link ([docs#768](https://github.com/napari/docs/pull/768))\n- Fix Image Annotation example ([docs#777](https://github.com/napari/docs/pull/777))\n- Add website colors to community resources ([docs#779](https://github.com/napari/docs/pull/779))\n- Update napari.org homepage to remove the `imshow` \"button\" ([docs#780](https://github.com/napari/docs/pull/780))\n- Add instructions for headless docs build on Wayland ([docs#781](https://github.com/napari/docs/pull/781))\n- Add module docstrings to scripts ([docs#787](https://github.com/napari/docs/pull/787))\n- Update pre-commit config to add some python checkers ([docs#788](https://github.com/napari/docs/pull/788))\n- Group event docs in order ([docs#789](https://github.com/napari/docs/pull/789))\n- Add 0.6.3 release notes draft for release candidate ([docs#792](https://github.com/napari/docs/pull/792))\n- Add docs for thick slicing ([docs#794](https://github.com/napari/docs/pull/794))\n- Minor roadmap update ([docs#795](https://github.com/napari/docs/pull/795))\n- Add \"feature highlights\" page ([docs#796](https://github.com/napari/docs/pull/796))\n- Add introductory paragraph to starting an event loop api doc ([docs#797](https://github.com/napari/docs/pull/797))\n- Update title of event loop api page for discoverability of napari.run ([docs#799](https://github.com/napari/docs/pull/799))\n- Improve API docs for view_* pending removal in 0.7 ([docs#800](https://github.com/napari/docs/pull/800))\n- Update 0.6.3 release notes ([docs#803](https://github.com/napari/docs/pull/803))\n- Drag and drop python scripts ([docs#805](https://github.com/napari/docs/pull/805))\n- Add Carol Willing to list of core developers in documentation ([docs#806](https://github.com/napari/docs/pull/806))\n- Update announcement and version switcher ([docs#807](https://github.com/napari/docs/pull/807))\n\n## Other Pull Requests\n\n- Move export ROI and export figure implementations into `QtViewer` ([#7950](https://github.com/napari/napari/pull/7950))\n- [pre-commit.ci] pre-commit autoupdate ([#8062](https://github.com/napari/napari/pull/8062))\n- Block the recent pytest-qt version on python 3.10 to keep PySide2 support in testing. ([#8067](https://github.com/napari/napari/pull/8067))\n- Add configurable suffix for test artifacts ([#8069](https://github.com/napari/napari/pull/8069))\n- Update `coverage`, `hypothesis`, `ipython`, `pillow`, `psygnal`, `pytest-qt`, `tensorstore`, `xarray` ([#8073](https://github.com/napari/napari/pull/8073))\n- [pre-commit.ci] pre-commit autoupdate ([#8074](https://github.com/napari/napari/pull/8074))\n- Move non-qt file actions from qactions module ([#8076](https://github.com/napari/napari/pull/8076))\n- Move more view actions from qaction to actions ([#8077](https://github.com/napari/napari/pull/8077))\n- Report benchmark on non skipped status ([#8086](https://github.com/napari/napari/pull/8086))\n- Enable SIM117 ruff rule ([#8088](https://github.com/napari/napari/pull/8088))\n- Remove dotenv from dev dependencies ([#8089](https://github.com/napari/napari/pull/8089))\n- Add deprecation warning for view_<layer_type> functions ([#8092](https://github.com/napari/napari/pull/8092))\n- Revert #8006 Improve performance and memory usage of editing Shapes layer ([#8104](https://github.com/napari/napari/pull/8104))\n- Improve stability of tests by ensuring cleaning of QtViewer instances ([#8113](https://github.com/napari/napari/pull/8113))\n- Do not crash test with leaked graph if test failed ([#8123](https://github.com/napari/napari/pull/8123))\n- [pre-commit.ci] pre-commit autoupdate ([#8124](https://github.com/napari/napari/pull/8124))\n- Cleanup of `test_qt_utils.py` ([#8129](https://github.com/napari/napari/pull/8129))\n- Small fix to shapes measurement ([#8133](https://github.com/napari/napari/pull/8133))\n- Update Citation file for 0.6.1 through 0.6.3 ([#8138](https://github.com/napari/napari/pull/8138))\n- Slightly increase pip test workflow timeout ([#8143](https://github.com/napari/napari/pull/8143))\n- Use `pytest-rerunfailures` for flaky `test_toggle_fullscreen_from_maximized` test ([#8151](https://github.com/napari/napari/pull/8151))\n- [pre-commit.ci] pre-commit autoupdate ([#8158](https://github.com/napari/napari/pull/8158))\n- Move scalar field _slice machinery to proper module and update naming ([#8164](https://github.com/napari/napari/pull/8164))\n- Fix reporting python version in benchmark bug reports ([#8169](https://github.com/napari/napari/pull/8169))\n- Clean benchmark logs by using the non-deprecated layer-adding method ([#8170](https://github.com/napari/napari/pull/8170))\n- Update list of affiliation of Grzegorz Bokota ([#8179](https://github.com/napari/napari/pull/8179))\n- Update triggered_target_build.yml regex to ensure we match on hyphen ([docs#764](https://github.com/napari/docs/pull/764))\n- Pin Github Actions actions to their hashes ([docs#804](https://github.com/napari/docs/pull/804))\n\n\n## 15 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Andrew](https://github.com/napari/napari/commits?author=ahuang11) - @ahuang11 +\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) ([docs](https://github.com/napari/docs/commits?author=willingc))  - @willingc\n- [Filippo Balzaretti](https://github.com/napari/napari/commits?author=FilBalza) ([docs](https://github.com/napari/docs/commits?author=FilBalza))  - @FilBalza +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Ian Coccimiglio](https://github.com/napari/docs/commits?author=ian-coccimiglio) - @ian-coccimiglio +\n- [jaime rodraguez-guerra](https://github.com/napari/docs/commits?author=jaimergp) - @jaimergp\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Kanai Potts](https://github.com/napari/napari/commits?author=8bitbiscuit) - @8bitbiscuit +\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n\n## 18 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [andrew sweet](https://github.com/napari/docs/commits?author=andy-sweet) - @andy-sweet\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) ([docs](https://github.com/napari/docs/commits?author=willingc))  - @willingc\n- [Constantin Aronssohn](https://github.com/napari/docs/commits?author=cnstt) - @cnstt\n- [Daniel Althviz Moré](https://github.com/napari/docs/commits?author=dalthviz) - @dalthviz\n- [Davis Bennett](https://github.com/napari/docs/commits?author=d-v-b) - @d-v-b\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [jaime rodraguez-guerra](https://github.com/napari/docs/commits?author=jaimergp) - @jaimergp\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wouter-Michiel Vierdag](https://github.com/napari/docs/commits?author=melonora) - @melonora\n\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/236465057/reactions","total_count":2,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":2,"eyes":0},"mentions_count":22},{"url":"https://api.github.com/repos/napari/napari/releases/235960015","assets_url":"https://api.github.com/repos/napari/napari/releases/235960015/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/235960015/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.3rc1","id":235960015,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84OEHbP","tag_name":"v0.6.3rc1","target_commitish":"0848c20ba910cdfd0b7114865f31d3b02d9add60","name":"0.6.3rc1","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-07-29T12:57:04Z","updated_at":"2025-07-29T13:08:43Z","published_at":"2025-07-29T12:59:21Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/277413950","id":277413950,"node_id":"RA_kwDOCJ0aI84QiQA-","name":"napari-0.6.3rc1-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40194,"digest":"sha256:fd51f3a49755be6526e33bc84c6d97198e81973c666557c3bdd36bb00131a7f8","download_count":1,"created_at":"2025-07-29T13:04:39Z","updated_at":"2025-07-29T13:04:39Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277413874","id":277413874,"node_id":"RA_kwDOCJ0aI84QiP_y","name":"napari-0.6.3rc1-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":485933295,"digest":"sha256:517ab15d22f39120faac31cd41df348888fc8fe46911e8f93700849f453a262d","download_count":4,"created_at":"2025-07-29T13:04:28Z","updated_at":"2025-07-29T13:04:38Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277414997","id":277414997,"node_id":"RA_kwDOCJ0aI84QiQRV","name":"napari-0.6.3rc1-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34077,"digest":"sha256:c7960c2c32e8886d07397ea023f625ec9b7bafea6bab18cae8f868259a745602","download_count":2,"created_at":"2025-07-29T13:08:09Z","updated_at":"2025-07-29T13:08:09Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277414895","id":277414895,"node_id":"RA_kwDOCJ0aI84QiQPv","name":"napari-0.6.3rc1-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":395968996,"digest":"sha256:db1d654d02b5ae7c07751cd8cdcee79bc30763c36ab161425d17a72ebc837641","download_count":4,"created_at":"2025-07-29T13:07:50Z","updated_at":"2025-07-29T13:08:08Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277415204","id":277415204,"node_id":"RA_kwDOCJ0aI84QiQUk","name":"napari-0.6.3rc1-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33633,"digest":"sha256:b55934227dd1ee086ed476e9086776dedbf47bd26f0db973a084559a3f5059c1","download_count":2,"created_at":"2025-07-29T13:08:42Z","updated_at":"2025-07-29T13:08:43Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277415124","id":277415124,"node_id":"RA_kwDOCJ0aI84QiQTU","name":"napari-0.6.3rc1-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":424125414,"digest":"sha256:77ca00e5150a1ee428e0d15c6b64c05d7a47abb9b503ae4fd77b492a0205212f","download_count":4,"created_at":"2025-07-29T13:08:27Z","updated_at":"2025-07-29T13:08:42Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277412056","id":277412056,"node_id":"RA_kwDOCJ0aI84QiPjY","name":"napari-0.6.3rc1-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3473842,"digest":"sha256:11f685fbcc95faae0bce2fc07ee8b052a92e28239eaeab9dccf120dbead54243","download_count":4,"created_at":"2025-07-29T12:59:21Z","updated_at":"2025-07-29T12:59:21Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277414542","id":277414542,"node_id":"RA_kwDOCJ0aI84QiQKO","name":"napari-0.6.3rc1-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":505312688,"digest":"sha256:8ce9e7195aea97c5b640d4dde6f0433a98163a9dd9cc917116ddc1dcb7a456fa","download_count":44,"created_at":"2025-07-29T13:06:35Z","updated_at":"2025-07-29T13:07:01Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277414667","id":277414667,"node_id":"RA_kwDOCJ0aI84QiQML","name":"napari-0.6.3rc1-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31875,"digest":"sha256:57285dcaae63206849dbfc27c5e8c5d051768d149dff60cf9e4848f7d9ba39f8","download_count":2,"created_at":"2025-07-29T13:07:02Z","updated_at":"2025-07-29T13:07:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/277412057","id":277412057,"node_id":"RA_kwDOCJ0aI84QiPjZ","name":"napari-0.6.3rc1.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3214689,"digest":"sha256:c9713bd52ccac1b66ba450389955e1618d0c3f76988d189bb1b7cc3f64477ee8","download_count":3,"created_at":"2025-07-29T12:59:21Z","updated_at":"2025-07-29T12:59:21Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc1/napari-0.6.3rc1.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.3rc1","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.3rc1","body":"# napari 0.6.3\n⚠️ *Note: these release notes are still in draft while 0.6.3 is in release candidate testing.* ⚠️\n\n*Wed, Jul 23, 2025*\n\nWe’re happy to announce the release of napari 0.6.3!\n\nnapari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for exploring, annotating, and analyzing multi-dimensional images. It’s built on Qt (for the GUI), VisPy (for performant GPU-based rendering), and the scientific Python stack (NumPy, SciPy, and friends).\n\nFor more information, examples, and documentation, please visit our website: https://napari.org/\n\n## Highlights\n\n### A Zoom with a View 🔍\n\nPardon the play on words, but you can now zoom directly to a region of interest in the viewer by holding `Alt` and dragging with the mouse [(#8004)](https://github.com/napari/napari/pull/8004). The camera will pan and zoom to fit the selected region, making it much easier to focus on specific areas of your data. This feature works in both 2D and 3D views.\n\n### Fine Tuning Thick Slicing from the GUI 📏\n\nThick slicing controls are now available in the GUI [(#6146)](https://github.com/napari/napari/pull/6146)! This allows you to project multiple slices together using different modes (sum, mean, max, and min) for better visualization of your multidimensional data. You can access the thickness controls by right-clicking on the dimension sliders to open a popup to change the margins either symmetrically or asymmetrical and projection mode settings are now available per layer in the layer controls widget.\n\n### Windows: Access ~~Denied~~ Fixed 🪟\n\nA critical Windows-specific bug that caused Access Violation errors has been resolved [(#8122)](https://github.com/napari/napari/pull/8122)! This longstanding issue would cause napari to stop displaying layers due to various events and often occurred at seemingly non-reproducible times, and required a full restart of napari. The fix ensures proper cleanup and syncing of GPU resources, also reducing memory usage on all platforms. If you were an effected user, you may recall it as `Access Violation`, `0x000000000000001C` if triggered without a plugin, or `0x000000000000034C` if triggered with a plugin.\n\n### Improved PySide6 Support 🛠️\n\nNapari now has improved support for PySide6 [(#7887)](https://github.com/napari/napari/pull/7887), resolving various compatibility issues and segfaults. This update enhances stability across platforms and prepares napari for the future as Qt5 approaches end-of-life.\n\n\n## New Features\n\n- Qt controls for thick slicing ([#6146](https://github.com/napari/napari/pull/6146))\n- Add automatic area and perimeter measurement for shapes + action ([#7262](https://github.com/napari/napari/pull/7262))\n- Tiling canvas overlays ([#7836](https://github.com/napari/napari/pull/7836))\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Add 'zoom-box' to the viewer ([#8004](https://github.com/napari/napari/pull/8004))\n- Add hot-reload for the devs ([#8007](https://github.com/napari/napari/pull/8007))\n- Add viewbox coordinates to events and Cursor ([#8130](https://github.com/napari/napari/pull/8130))\n\n## Improvements\n\n- Allow use functions from PartSegCore-compiled-backend as numba alternative for data to texture mapping  ([#6617](https://github.com/napari/napari/pull/6617))\n- Enable testing on recent PySide6  ([#7887](https://github.com/napari/napari/pull/7887))\n- Implement pasting spatial information into higher dimensions ([#7973](https://github.com/napari/napari/pull/7973))\n- Improve performance and memory usage of editing Shapes layer  ([#8006](https://github.com/napari/napari/pull/8006))\n- [Update] Added `remove` and `remove_selected` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Colorblind friendly image sample of kidney and lily ([#8090](https://github.com/napari/napari/pull/8090))\n- Add Features using Features Table widget ([#8093](https://github.com/napari/napari/pull/8093))\n- Added fixed seed and tested the value. ([#8097](https://github.com/napari/napari/pull/8097))\n- Add keybinding (CtrlCmd-up/down) to select layer above/below ([#8119](https://github.com/napari/napari/pull/8119))\n\n## Performance\n\n- Allow use functions from PartSegCore-compiled-backend as numba alternative for data to texture mapping  ([#6617](https://github.com/napari/napari/pull/6617))\n\n## Bug Fixes\n\n- ensure sync when taking a screenshot ([#8064](https://github.com/napari/napari/pull/8064))\n- Set the dimensions of the label equal to the maximum value of the layers world ([#8098](https://github.com/napari/napari/pull/8098))\n- Updated code to use current symbol and border width for new points. ([#8102](https://github.com/napari/napari/pull/8102))\n- Improve performance and memory usage of editing Shapes layer (#8006 again) ([#8109](https://github.com/napari/napari/pull/8109))\n- Prevent Windows Access Violation with GPU resource cleanup on layer removal ([#8122](https://github.com/napari/napari/pull/8122))\n\n## API Changes\n\n- Add viewbox coordinates to events and Cursor ([#8130](https://github.com/napari/napari/pull/8130))\n\n## Documentation\n\n- Update docs constraints and pyprojecttoml for npe2 ([#8075](https://github.com/napari/napari/pull/8075))\n- Typo ismhow -> imshow ([#8084](https://github.com/napari/napari/pull/8084))\n- Replace deprecated `view_*()` method from examples ([#8091](https://github.com/napari/napari/pull/8091))\n- Comment the HEX codes of each color theme and where they're used ([#8099](https://github.com/napari/napari/pull/8099))\n- New example for affine transformations in 3D using meshio and stl ([#8103](https://github.com/napari/napari/pull/8103))\n- Added a try it out now section to README.md for using uv. ([#8107](https://github.com/napari/napari/pull/8107))\n- Update README wording about scikit-image example ([#8125](https://github.com/napari/napari/pull/8125))\n- Autogenerate images of parts of the viewer ([docs#621](https://github.com/napari/docs/pull/621))\n- Update instructions on how to update constraints files ([docs#672](https://github.com/napari/docs/pull/672))\n- Updates to NAP-9: Multiple Views ([docs#730](https://github.com/napari/docs/pull/730))\n- Update guides.md to add menu contribution guide ([docs#747](https://github.com/napari/docs/pull/747))\n- Update building your first plugin guide ([docs#753](https://github.com/napari/docs/pull/753))\n- Update version switcher for 0.6.2 ([docs#754](https://github.com/napari/docs/pull/754))\n- Update Release Guide ([docs#755](https://github.com/napari/docs/pull/755))\n- Fix information about `site-packages` directory ([docs#756](https://github.com/napari/docs/pull/756))\n- Add empty release notes for 0.6.3 ([docs#757](https://github.com/napari/docs/pull/757))\n- Add roadmap to sidebar links ([docs#760](https://github.com/napari/docs/pull/760))\n- Refactor contributing guide landing page ([docs#761](https://github.com/napari/docs/pull/761))\n- Reorganize homepage with grid columns ([docs#767](https://github.com/napari/docs/pull/767))\n- Fix sidebar roadmap link ([docs#768](https://github.com/napari/docs/pull/768))\n- Fix Image Annotation example ([docs#777](https://github.com/napari/docs/pull/777))\n- Add website colors to community resources ([docs#779](https://github.com/napari/docs/pull/779))\n- Update napari.org homepage to remove the `imshow` \"button\" ([docs#780](https://github.com/napari/docs/pull/780))\n- Add instructions for headless docs build on Wayland ([docs#781](https://github.com/napari/docs/pull/781))\n- Add module docstrings to scripts ([docs#787](https://github.com/napari/docs/pull/787))\n- Update pre-commit config to add some python checkers ([docs#788](https://github.com/napari/docs/pull/788))\n- Group event docs in order ([docs#789](https://github.com/napari/docs/pull/789))\n- Add 0.6.3 release notes draft for release candidate ([docs#792](https://github.com/napari/docs/pull/792))\n- Add \"useful features\" page ([docs#796](https://github.com/napari/docs/pull/796))\n- Add introductory paragraph to starting an event loop api doc ([docs#797](https://github.com/napari/docs/pull/797))\n\n## Other Pull Requests\n\n- Add codespell support (config, workflow to detect/not fix) and make it fix few typos ([#7619](https://github.com/napari/napari/pull/7619))\n- Move export ROI and export figure implementations into `QtViewer` ([#7950](https://github.com/napari/napari/pull/7950))\n- [pre-commit.ci] pre-commit autoupdate ([#8062](https://github.com/napari/napari/pull/8062))\n- Block the recent pytest-qt version on python 3.10 to keep PySide2 support in testing. ([#8067](https://github.com/napari/napari/pull/8067))\n- Add configurable suffix for test artifacts ([#8069](https://github.com/napari/napari/pull/8069))\n- [Update] Added `pop` for `Points` and `Shapes` ([#8072](https://github.com/napari/napari/pull/8072))\n- Update `coverage`, `hypothesis`, `ipython`, `pillow`, `psygnal`, `pytest-qt`, `tensorstore`, `xarray` ([#8073](https://github.com/napari/napari/pull/8073))\n- [pre-commit.ci] pre-commit autoupdate ([#8074](https://github.com/napari/napari/pull/8074))\n- Move non-qt file actions from qactions module ([#8076](https://github.com/napari/napari/pull/8076))\n- Move more view actions from qaction to actions ([#8077](https://github.com/napari/napari/pull/8077))\n- Report benchmark on non skipped status ([#8086](https://github.com/napari/napari/pull/8086))\n- Enable SIM117 ruff rule ([#8088](https://github.com/napari/napari/pull/8088))\n- Remove dotenv from dev dependencies ([#8089](https://github.com/napari/napari/pull/8089))\n- Add deprecation warning for view_<layer_type> functions ([#8092](https://github.com/napari/napari/pull/8092))\n- Revert #8006 Improve performance and memory usage of editing Shapes layer ([#8104](https://github.com/napari/napari/pull/8104))\n- Example from SciPy 2025 tutorial; image warping ([#8111](https://github.com/napari/napari/pull/8111))\n- Improve stability of tests by ensuring cleaning of QtViewer instances ([#8113](https://github.com/napari/napari/pull/8113))\n- Do not crash test with leaked graph if test failed ([#8123](https://github.com/napari/napari/pull/8123))\n- [pre-commit.ci] pre-commit autoupdate ([#8124](https://github.com/napari/napari/pull/8124))\n- Cleanup of `test_qt_utils.py` ([#8129](https://github.com/napari/napari/pull/8129))\n- Update triggered_target_build.yml regex to ensure we match on hyphen ([docs#764](https://github.com/napari/docs/pull/764))\n\n\n## 13 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Andrew](https://github.com/napari/napari/commits?author=ahuang11) - @ahuang11 +\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) ([docs](https://github.com/napari/docs/commits?author=willingc))  - @willingc\n- [Filippo Balzaretti](https://github.com/napari/napari/commits?author=FilBalza) ([docs](https://github.com/napari/docs/commits?author=FilBalza))  - @FilBalza +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Ian Coccimiglio](https://github.com/napari/docs/commits?author=ian-coccimiglio) - @ian-coccimiglio +\n- [Kanai Potts](https://github.com/napari/napari/commits?author=8bitbiscuit) - @8bitbiscuit +\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n\n## 19 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [andrew sweet](https://github.com/napari/docs/commits?author=andy-sweet) - @andy-sweet\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) ([docs](https://github.com/napari/docs/commits?author=willingc))  - @willingc\n- [Constantin Aronssohn](https://github.com/napari/docs/commits?author=cnstt) - @cnstt\n- [Daniel Althviz Moré](https://github.com/napari/docs/commits?author=dalthviz) - @dalthviz\n- [Davis Bennett](https://github.com/napari/docs/commits?author=d-v-b) - @d-v-b\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [jaime rodraguez-guerra](https://github.com/napari/docs/commits?author=jaimergp) - @jaimergp\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wouter-Michiel Vierdag](https://github.com/napari/docs/commits?author=melonora) - @melonora\n- [Yaroslav Halchenko](https://github.com/napari/docs/commits?author=yarikoptic) - @yarikoptic\n\n","mentions_count":23},{"url":"https://api.github.com/repos/napari/napari/releases/234436468","assets_url":"https://api.github.com/repos/napari/napari/releases/234436468/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/234436468/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.3rc0","id":234436468,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84N-Td0","tag_name":"v0.6.3rc0","target_commitish":"e59c1ac5cbb7ac9d4baec4a05acd4e1a64408425","name":"0.6.3rc0","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-07-23T05:27:27Z","updated_at":"2025-07-23T08:59:35Z","published_at":"2025-07-23T05:29:06Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/275532614","id":275532614,"node_id":"RA_kwDOCJ0aI84QbEtG","name":"napari-0.6.3rc0-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40196,"digest":"sha256:7b8276726dae6b56010aa351750d69c771056b6db86590665a7d600fbaa111c0","download_count":2,"created_at":"2025-07-23T08:55:18Z","updated_at":"2025-07-23T08:55:18Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275532552","id":275532552,"node_id":"RA_kwDOCJ0aI84QbEsI","name":"napari-0.6.3rc0-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":485830895,"digest":"sha256:a06931e190706fed0eff06384090431512a34515e9a70bed4e08918526df2471","download_count":4,"created_at":"2025-07-23T08:54:57Z","updated_at":"2025-07-23T08:55:17Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275533039","id":275533039,"node_id":"RA_kwDOCJ0aI84QbEzv","name":"napari-0.6.3rc0-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34079,"digest":"sha256:4c1f54c829eba8791154f38b86a23755edc5d9e8f3cf86685e7ae3296d024cc5","download_count":1,"created_at":"2025-07-23T08:57:27Z","updated_at":"2025-07-23T08:57:27Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275532946","id":275532946,"node_id":"RA_kwDOCJ0aI84QbEyS","name":"napari-0.6.3rc0-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":396545054,"digest":"sha256:7b9d9a51c0e1c7af2ac5cc42e2da6e34617ed4946450695d043b42ad1ec6d165","download_count":4,"created_at":"2025-07-23T08:57:12Z","updated_at":"2025-07-23T08:57:26Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275533509","id":275533509,"node_id":"RA_kwDOCJ0aI84QbE7F","name":"napari-0.6.3rc0-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33635,"digest":"sha256:6060cd2fd63cad0fdc3f680abff42c8e76402e16e9601e75b7b53a4e9a0bff11","download_count":2,"created_at":"2025-07-23T08:59:35Z","updated_at":"2025-07-23T08:59:35Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275533449","id":275533449,"node_id":"RA_kwDOCJ0aI84QbE6J","name":"napari-0.6.3rc0-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":424101361,"digest":"sha256:13544f631f8cb98cda1d1a9fe0f123068ae079b12ea586dca210f9185a3acf1f","download_count":5,"created_at":"2025-07-23T08:59:16Z","updated_at":"2025-07-23T08:59:34Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275491302","id":275491302,"node_id":"RA_kwDOCJ0aI84Qa6nm","name":"napari-0.6.3rc0-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3468978,"digest":"sha256:95202188d55661b236d11cc99e72633b7ea46ac84d1b394bbc4a7e6480b2cc45","download_count":4,"created_at":"2025-07-23T05:29:06Z","updated_at":"2025-07-23T05:29:07Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275533386","id":275533386,"node_id":"RA_kwDOCJ0aI84QbE5K","name":"napari-0.6.3rc0-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":505184224,"digest":"sha256:d9200a0cb9067452af3b639cb5e26b2c8fea1c95b7d25ec4a76e3e98f742670d","download_count":45,"created_at":"2025-07-23T08:58:56Z","updated_at":"2025-07-23T08:59:15Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275533450","id":275533450,"node_id":"RA_kwDOCJ0aI84QbE6K","name":"napari-0.6.3rc0-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31759,"digest":"sha256:a4db07fdf3a8ba7be1ea227a48e4445fcefdb4ec7ca7c8488d5a199d6d7950b0","download_count":3,"created_at":"2025-07-23T08:59:16Z","updated_at":"2025-07-23T08:59:16Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/275491301","id":275491301,"node_id":"RA_kwDOCJ0aI84Qa6nl","name":"napari-0.6.3rc0.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3210837,"digest":"sha256:97150acc3bf9cec9175340df86bd4465aa9907e04bab9ed9569ce7fd0285c228","download_count":4,"created_at":"2025-07-23T05:29:06Z","updated_at":"2025-07-23T05:29:07Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.3rc0/napari-0.6.3rc0.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.3rc0","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.3rc0","body":"# napari 0.6.3\n⚠️ *Note: these release notes are still in draft while 0.6.3 is in release candidate testing.* ⚠️\n\n*Wed, Jul 23, 2025*\n\nWe’re happy to announce the release of napari 0.6.3!\n\nnapari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for exploring, annotating, and analyzing multi-dimensional images. It’s built on Qt (for the GUI), VisPy (for performant GPU-based rendering), and the scientific Python stack (NumPy, SciPy, and friends).\n\nFor more information, examples, and documentation, please visit our website: https://napari.org/\n\n## Highlights\n\n### A Zoom with a View 🔍\n\nPardon the play on words, but you can now zoom directly to a region of interest in the viewer by holding `Alt` and dragging with the mouse [(#8004)](https://github.com/napari/napari/pull/8004). The camera will pan and zoom to fit the selected region, making it much easier to focus on specific areas of your data. This feature works in both 2D and 3D views.\n\n### Fine Tuning Thick Slicing from the GUI 📏\n\nThick slicing controls are now available in the GUI [(#6146)](https://github.com/napari/napari/pull/6146)! This allows you to project multiple slices together using different modes (sum, mean, max, and min) for better visualization of your multidimensional data. You can access the thickness controls by right-clicking on the dimension sliders to open a popup to change the margins either symmetrically or asymmetrical and projection mode settings are now available per layer in the layer controls widget.\n\n### Windows: Access ~~Denied~~ Fixed 🪟\n\nA critical Windows-specific bug that caused Access Violation errors has been resolved [(#8122)](https://github.com/napari/napari/pull/8122)! This longstanding issue would cause napari to stop displaying layers due to various events and often occurred at seemingly non-reproducible times, and required a full restart of napari. The fix ensures proper cleanup and syncing of GPU resources, also reducing memory usage on all platforms. If you were an effected user, you may recall it as `Access Violation`, `0x000000000000001C` if triggered without a plugin, or `0x000000000000034C` if triggered with a plugin.\n\n### Improved PySide6 Support 🛠️\n\nNapari now has improved support for PySide6 [(#7887)](https://github.com/napari/napari/pull/7887), resolving various compatibility issues and segfaults. This update enhances stability across platforms and prepares napari for the future as Qt5 approaches end-of-life.\n\n\n## New Features\n\n- Qt controls for thick slicing ([#6146](https://github.com/napari/napari/pull/6146))\n- Add automatic area and perimeter measurement for shapes + action ([#7262](https://github.com/napari/napari/pull/7262))\n- Tiling canvas overlays ([#7836](https://github.com/napari/napari/pull/7836))\n- Use information about units when calculate scale of layers when render ([#7889](https://github.com/napari/napari/pull/7889))\n- Add 'zoom-box' to the viewer ([#8004](https://github.com/napari/napari/pull/8004))\n- Add hot-reload for the devs ([#8007](https://github.com/napari/napari/pull/8007))\n- Add viewbox coordinates to events and Cursor ([#8130](https://github.com/napari/napari/pull/8130))\n\n## Improvements\n\n- Allow use functions from PartSegCore-compiled-backend as numba alternative for data to texture mapping  ([#6617](https://github.com/napari/napari/pull/6617))\n- Enable testing on recent PySide6  ([#7887](https://github.com/napari/napari/pull/7887))\n- Implement pasting spatial information into higher dimensions ([#7973](https://github.com/napari/napari/pull/7973))\n- Improve performance and memory usage of editing Shapes layer  ([#8006](https://github.com/napari/napari/pull/8006))\n- [Update] Added `remove` and `remove_selected` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Colorblind friendly image sample of kidney and lily ([#8090](https://github.com/napari/napari/pull/8090))\n- Add Features using Features Table widget ([#8093](https://github.com/napari/napari/pull/8093))\n- Added fixed seed and tested the value. ([#8097](https://github.com/napari/napari/pull/8097))\n- Add keybinding (CtrlCmd-up/down) to select layer above/below ([#8119](https://github.com/napari/napari/pull/8119))\n\n## Performance\n\n- Allow use functions from PartSegCore-compiled-backend as numba alternative for data to texture mapping  ([#6617](https://github.com/napari/napari/pull/6617))\n\n## Bug Fixes\n\n- ensure sync when taking a screenshot ([#8064](https://github.com/napari/napari/pull/8064))\n- Set the dimensions of the label equal to the maximum value of the layers world ([#8098](https://github.com/napari/napari/pull/8098))\n- Updated code to use current symbol and border width for new points. ([#8102](https://github.com/napari/napari/pull/8102))\n- Improve performance and memory usage of editing Shapes layer (#8006 again) ([#8109](https://github.com/napari/napari/pull/8109))\n- Prevent Windows Access Violation with GPU resource cleanup on layer removal ([#8122](https://github.com/napari/napari/pull/8122))\n\n## API Changes\n\n- Add viewbox coordinates to events and Cursor ([#8130](https://github.com/napari/napari/pull/8130))\n\n## Documentation\n\n- Update docs constraints and pyprojecttoml for npe2 ([#8075](https://github.com/napari/napari/pull/8075))\n- Typo ismhow -> imshow ([#8084](https://github.com/napari/napari/pull/8084))\n- Replace deprecated `view_*()` method from examples ([#8091](https://github.com/napari/napari/pull/8091))\n- Comment the HEX codes of each color theme and where they're used ([#8099](https://github.com/napari/napari/pull/8099))\n- New example for affine transformations in 3D using meshio and stl ([#8103](https://github.com/napari/napari/pull/8103))\n- Added a try it out now section to README.md for using uv. ([#8107](https://github.com/napari/napari/pull/8107))\n- Update README wording about scikit-image example ([#8125](https://github.com/napari/napari/pull/8125))\n- Autogenerate images of parts of the viewer ([docs#621](https://github.com/napari/docs/pull/621))\n- Update instructions on how to update constraints files ([docs#672](https://github.com/napari/docs/pull/672))\n- Updates to NAP-9: Multiple Views ([docs#730](https://github.com/napari/docs/pull/730))\n- Update guides.md to add menu contribution guide ([docs#747](https://github.com/napari/docs/pull/747))\n- Update building your first plugin guide ([docs#753](https://github.com/napari/docs/pull/753))\n- Update version switcher for 0.6.2 ([docs#754](https://github.com/napari/docs/pull/754))\n- Update Release Guide ([docs#755](https://github.com/napari/docs/pull/755))\n- Fix information about `site-packages` directory ([docs#756](https://github.com/napari/docs/pull/756))\n- Add empty release notes for 0.6.3 ([docs#757](https://github.com/napari/docs/pull/757))\n- Add roadmap to sidebar links ([docs#760](https://github.com/napari/docs/pull/760))\n- Refactor contributing guide landing page ([docs#761](https://github.com/napari/docs/pull/761))\n- Reorganize homepage with grid columns ([docs#767](https://github.com/napari/docs/pull/767))\n- Fix sidebar roadmap link ([docs#768](https://github.com/napari/docs/pull/768))\n- Fix Image Annotation example ([docs#777](https://github.com/napari/docs/pull/777))\n- Add website colors to community resources ([docs#779](https://github.com/napari/docs/pull/779))\n- Update napari.org homepage to remove the `imshow` \"button\" ([docs#780](https://github.com/napari/docs/pull/780))\n- Add instructions for headless docs build on Wayland ([docs#781](https://github.com/napari/docs/pull/781))\n- Add module docstrings to scripts ([docs#787](https://github.com/napari/docs/pull/787))\n- Update pre-commit config to add some python checkers ([docs#788](https://github.com/napari/docs/pull/788))\n- Group event docs in order ([docs#789](https://github.com/napari/docs/pull/789))\n- Add 0.6.3 release notes draft for release candidate ([docs#792](https://github.com/napari/docs/pull/792))\n- Add \"useful features\" page ([docs#796](https://github.com/napari/docs/pull/796))\n- Add introductory paragraph to starting an event loop api doc ([docs#797](https://github.com/napari/docs/pull/797))\n\n## Other Pull Requests\n\n- Add codespell support (config, workflow to detect/not fix) and make it fix few typos ([#7619](https://github.com/napari/napari/pull/7619))\n- Move export ROI and export figure implementations into `QtViewer` ([#7950](https://github.com/napari/napari/pull/7950))\n- [pre-commit.ci] pre-commit autoupdate ([#8062](https://github.com/napari/napari/pull/8062))\n- Block the recent pytest-qt version on python 3.10 to keep PySide2 support in testing. ([#8067](https://github.com/napari/napari/pull/8067))\n- Add configurable suffix for test artifacts ([#8069](https://github.com/napari/napari/pull/8069))\n- [Update] Added `pop` for `Points` and `Shapes` ([#8072](https://github.com/napari/napari/pull/8072))\n- Update `coverage`, `hypothesis`, `ipython`, `pillow`, `psygnal`, `pytest-qt`, `tensorstore`, `xarray` ([#8073](https://github.com/napari/napari/pull/8073))\n- [pre-commit.ci] pre-commit autoupdate ([#8074](https://github.com/napari/napari/pull/8074))\n- Move non-qt file actions from qactions module ([#8076](https://github.com/napari/napari/pull/8076))\n- Move more view actions from qaction to actions ([#8077](https://github.com/napari/napari/pull/8077))\n- Report benchmark on non skipped status ([#8086](https://github.com/napari/napari/pull/8086))\n- Enable SIM117 ruff rule ([#8088](https://github.com/napari/napari/pull/8088))\n- Remove dotenv from dev dependencies ([#8089](https://github.com/napari/napari/pull/8089))\n- Add deprecation warning for view_<layer_type> functions ([#8092](https://github.com/napari/napari/pull/8092))\n- Revert #8006 Improve performance and memory usage of editing Shapes layer ([#8104](https://github.com/napari/napari/pull/8104))\n- Example from SciPy 2025 tutorial; image warping ([#8111](https://github.com/napari/napari/pull/8111))\n- Improve stability of tests by ensuring cleaning of QtViewer instances ([#8113](https://github.com/napari/napari/pull/8113))\n- Do not crash test with leaked graph if test failed ([#8123](https://github.com/napari/napari/pull/8123))\n- [pre-commit.ci] pre-commit autoupdate ([#8124](https://github.com/napari/napari/pull/8124))\n- Cleanup of `test_qt_utils.py` ([#8129](https://github.com/napari/napari/pull/8129))\n- Update triggered_target_build.yml regex to ensure we match on hyphen ([docs#764](https://github.com/napari/docs/pull/764))\n\n\n## 13 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Andrew](https://github.com/napari/napari/commits?author=ahuang11) - @ahuang11 +\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) ([docs](https://github.com/napari/docs/commits?author=willingc))  - @willingc\n- [Filippo Balzaretti](https://github.com/napari/napari/commits?author=FilBalza) ([docs](https://github.com/napari/docs/commits?author=FilBalza))  - @FilBalza +\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Ian Coccimiglio](https://github.com/napari/docs/commits?author=ian-coccimiglio) - @ian-coccimiglio +\n- [Kanai Potts](https://github.com/napari/napari/commits?author=8bitbiscuit) - @8bitbiscuit +\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n\n## 19 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [andrew sweet](https://github.com/napari/docs/commits?author=andy-sweet) - @andy-sweet\n- [Carol Willing](https://github.com/napari/napari/commits?author=willingc) ([docs](https://github.com/napari/docs/commits?author=willingc))  - @willingc\n- [Constantin Aronssohn](https://github.com/napari/docs/commits?author=cnstt) - @cnstt\n- [Daniel Althviz Moré](https://github.com/napari/docs/commits?author=dalthviz) - @dalthviz\n- [Davis Bennett](https://github.com/napari/docs/commits?author=d-v-b) - @d-v-b\n- [Draga Doncila Pop](https://github.com/napari/docs/commits?author=DragaDoncila) - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/docs/commits?author=jacopoabramo) - @jacopoabramo\n- [jaime rodraguez-guerra](https://github.com/napari/docs/commits?author=jaimergp) - @jaimergp\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk\n- [rwkozar](https://github.com/napari/napari/commits?author=rwkozar) - @rwkozar\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wouter-Michiel Vierdag](https://github.com/napari/docs/commits?author=melonora) - @melonora\n- [Yaroslav Halchenko](https://github.com/napari/docs/commits?author=yarikoptic) - @yarikoptic\n\n","mentions_count":23},{"url":"https://api.github.com/repos/napari/napari/releases/228972915","assets_url":"https://api.github.com/repos/napari/napari/releases/228972915/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/228972915/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.2","id":228972915,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84Npdlz","tag_name":"v0.6.2","target_commitish":"eb7a00f243c1e65725c418ef86289f8414d7886b","name":"0.6.2","draft":false,"immutable":false,"prerelease":false,"created_at":"2025-07-01T02:35:19Z","updated_at":"2025-07-01T02:50:41Z","published_at":"2025-07-01T02:37:46Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/268858559","id":268858559,"node_id":"RA_kwDOCJ0aI84QBnS_","name":"napari-0.6.2-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40383,"digest":"sha256:80059e5f467eaf0936e2fbcce2329cca18bf93a03c580c9d2839ba9764129096","download_count":1,"created_at":"2025-07-01T02:45:47Z","updated_at":"2025-07-01T02:45:47Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268858544","id":268858544,"node_id":"RA_kwDOCJ0aI84QBnSw","name":"napari-0.6.2-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":483537126,"digest":"sha256:ab520c613390a8421e1ba226451745f9a22f08c6a4b5a1f198ee675ede9413b1","download_count":45,"created_at":"2025-07-01T02:45:37Z","updated_at":"2025-07-01T02:45:46Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268859068","id":268859068,"node_id":"RA_kwDOCJ0aI84QBna8","name":"napari-0.6.2-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34266,"digest":"sha256:63f1cc4e97af1a22cef5025f07bb2b85fb560d875b89f434b08595855d23c6a2","download_count":4,"created_at":"2025-07-01T02:47:40Z","updated_at":"2025-07-01T02:47:40Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268859010","id":268859010,"node_id":"RA_kwDOCJ0aI84QBnaC","name":"napari-0.6.2-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":396742724,"digest":"sha256:058049dd1a281ac934a5af30f1b48b2d766e4e290614859cac54d55e74ef58f6","download_count":124,"created_at":"2025-07-01T02:47:27Z","updated_at":"2025-07-01T02:47:39Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268860196","id":268860196,"node_id":"RA_kwDOCJ0aI84QBnsk","name":"napari-0.6.2-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33822,"digest":"sha256:c349de94492de946acbbb23260450f4c0bedf40dc0edf5b26589f1580587a7d2","download_count":4,"created_at":"2025-07-01T02:50:41Z","updated_at":"2025-07-01T02:50:41Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268860096","id":268860096,"node_id":"RA_kwDOCJ0aI84QBnrA","name":"napari-0.6.2-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":423179489,"digest":"sha256:31c486ae9d0ac8f05ce4b97a824d439263e4320609e5a956681c2130014329fd","download_count":47,"created_at":"2025-07-01T02:50:24Z","updated_at":"2025-07-01T02:50:40Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268856024","id":268856024,"node_id":"RA_kwDOCJ0aI84QBmrY","name":"napari-0.6.2-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3454914,"digest":"sha256:9c960e2d0c16d2447279cac30e18a38a4c42d867764911bfc1cc760296d08c22","download_count":5,"created_at":"2025-07-01T02:37:47Z","updated_at":"2025-07-01T02:37:48Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268859603","id":268859603,"node_id":"RA_kwDOCJ0aI84QBnjT","name":"napari-0.6.2-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":503235336,"digest":"sha256:40be620187a27f79f294ad1308458c0056de54803c8d97d4199c48abc4eb96cd","download_count":368,"created_at":"2025-07-01T02:49:10Z","updated_at":"2025-07-01T02:49:22Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268859670","id":268859670,"node_id":"RA_kwDOCJ0aI84QBnkW","name":"napari-0.6.2-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31948,"digest":"sha256:374266488efc4dec2f5c8f05c291ef366e891bbf35cd56e5395d8cef5ade5e93","download_count":9,"created_at":"2025-07-01T02:49:23Z","updated_at":"2025-07-01T02:49:23Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/268856023","id":268856023,"node_id":"RA_kwDOCJ0aI84QBmrX","name":"napari-0.6.2.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3202040,"digest":"sha256:c74c0fbcf087faa524475d5ef6d16a0e0ed09a7ab4a3afaf45a8fddc93cf274d","download_count":7,"created_at":"2025-07-01T02:37:47Z","updated_at":"2025-07-01T02:37:47Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2/napari-0.6.2.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.2","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.2","body":"# napari 0.6.2\n\n*Tue, Jul 01, 2025*\n\nWe’re happy to announce the release of napari 0.6.2!\n\nnapari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for exploring, annotating, and analyzing multi-dimensional images. It’s built on Qt (for the GUI), VisPy (for performant GPU-based rendering), and the scientific Python stack (NumPy, SciPy, and friends).\n\nFor more information, examples, and documentation, please visit our website: https://napari.org/\n\n## Highlights\n\n### The amazing new Grid mode! 🗺️\n\nThe visualization of Grid mode has been redone from the ground up! This new Grid mode [(#7870)](https://github.com/napari/napari/pull/7870) now puts each layer into its own view (a VisPy Viewbox) with cameras linked together. Now, you can pan and zoom one view, and all other views in the grid will follow along. Layers are no longer awkwardly transformed into the same world space and displayed in a grid, only to make comparing the details of each a challenge.\n\nGrid based exploration is now fluid, fast, and intuitive, especially when working with large images and 3D+ data! The mouse can even be used over one View, while updating the data, such as a label or shape annotation, in the selected layer of a different view. The usual napari overlays can now also be added to each grid, instead of just the canvas (eg. `viewer.scale_bar.gridded = True`).\n\nGrid mode spacing now works proportionally to the layer extents (i.e. [0,1), as in 0.6.0) or as a pixel value [1,1500) and will automatically adjust if needed.\n\n![grid mode](https://github.com/user-attachments/assets/fbcb216c-666b-43a6-bf25-aad82d5e9d92)\n\nTo coincide with this new Grid mode, we have chosen to reverse the ordering of layers in the grid [(#8053)](https://github.com/napari/napari/pull/8053). The first layer added to the viewer will now be at the top left of the grid, and the last layer added will be at the bottom right; new layers will be added to the bottom right of the grid. If you prefer the previous behavior, you can set the Grid Stride to `-1` in the Preferences dialog. \n\n![Stride preference](https://github.com/user-attachments/assets/528aebca-d623-4f9a-97f4-691329d2a2a7)\n\n### The Features Table Widget is now a napari builtin! 📊\n\nThe features table from [napari-properties-viewer](https://github.com/kevinyamauchi/napari-properties-viewer) is now a builtin widget in napari [(#7877)](https://github.com/napari/napari/pull/7877) *and* greatly improved! This widget allows you to view and edit the properties of Points, Shapes, and Labels layers in a table widget.\n\nThe widget can be opened from the `Layers` menu -> `Visualize` -> `Features table widget (napari builtins)` or from the command palette.  You can also save the properties table to a CSV file. Check out the [Features table widget](https://napari.org/dev/gallery/features_table_widget.html) example to learn more.\n\n![Features table widget in napari](https://github.com/user-attachments/assets/2c218f05-6510-4192-b5c8-fb6d135e4863)\n\n### Community developments! 📅\n\nWe are excited to share our new [active roadmap](https://napari.org/stable/roadmaps/active_roadmap.html) which is a living document that will be updated as we continue to develop napari. This document is intended to help the community understand the priorities of the napari team and to help us all work together to make napari better. \n\nWe are also now including all napari related events in the [community calendar](https://napari.org/stable/community/meeting_schedule.html) and as an [image.sc post](https://forum.image.sc/t/napari-community-meetings-and-events/113689), including conferences, tutorials, sprints, virtual seminars, and more. If you have an event you would like to add, please reach out to us!\n\n### Some great features for contributors! 🛠️\n\n1. **Contributing documentation is now a much smoother experience!** By default, new documentation will build in around 3 minutes, instead of the previous 20 minutes. This speed is thanks to new, slimmer `make` commands (`slimfast` by default) that can also be triggered in PRs with a bot (eg. `@napari-bot make docs`). Read our updated [docs contribution guide](https://napari.org/dev/developers/contributing/documentation/index.html) and reach out for help.\n2. **The organization of the napari repo has been updated by moving into a `src/` directory [(#7952)](https://github.com/napari/napari/pull/7952).** This is modern best practice in Python projects (and what has long been standard in our [napari-plugin-template](https://github.com/napari/napari-plugin-template)) to avoid issues with relative imports and *should* now always result in importing the napari version installed in the current environment. For developers, especially of pull requests prior to this release, you may have many merge conflicts to resolve. Please ping the napari team if you would like help resolving these conflicts.\n3. **There is now public API to access widgets docked in the viewer [(#7965)](https://github.com/napari/napari/pull/7965).** Check out the new documentation on the napari website to learn more about using this API to [communicate between widgets](https://napari.org/dev/plugins/advanced_topics/widget_communication.html). If you previously used `viewer.window._dock_widgets`, you should now use `viewer.window.dock_widgets`.\n\n\n## New Features\n\n- Grid mode using vispy ViewBox and linked cameras ([#7870](https://github.com/napari/napari/pull/7870))\n- Features table widget as builtin ([#7877](https://github.com/napari/napari/pull/7877))\n\n## Improvements\n\n- Add check if there is mix of local and non local installation ([#7745](https://github.com/napari/napari/pull/7745))\n- Reduce warmup of numba if non numba backend is selected ([#7917](https://github.com/napari/napari/pull/7917))\n- Optional rotation handle for selection box overlay + simplify inheritance for Vispy overlays ([#7958](https://github.com/napari/napari/pull/7958))\n- Add public API to get access to docked widgets ([#7965](https://github.com/napari/napari/pull/7965))\n- Allow to use ViewerModel as annotation of plugin constructor argument ([#8002](https://github.com/napari/napari/pull/8002))\n- Update [shapes]: 'make select_all_shapes' keybinding a toggle ([#8014](https://github.com/napari/napari/pull/8014))\n- Update[shortcuts]: add Ctrl/Cmd-A as secondary keybinding for select_all_shapes ([#8015](https://github.com/napari/napari/pull/8015))\n- Fix Shapes layer to work with Features Table ([#8048](https://github.com/napari/napari/pull/8048))\n- Reverse canvas grid order ([#8053](https://github.com/napari/napari/pull/8053))\n- Improve tooltips for Grid attributes ([#8058](https://github.com/napari/napari/pull/8058))\n\n## Performance\n\n- [Shapes] Use the plural methods to update colors of all selected shapes at once ([#7995](https://github.com/napari/napari/pull/7995))\n\n## Bug Fixes\n\n- Fix scalebar theme connection ([#7902](https://github.com/napari/napari/pull/7902))\n- Don't add widgets to non-contributable menus ([#7926](https://github.com/napari/napari/pull/7926))\n- Fix handle mouse events ([#7936](https://github.com/napari/napari/pull/7936))\n- Fix moving of first/last vertex of polygons added in ring mode ([#7942](https://github.com/napari/napari/pull/7942))\n- Update shapes highlight on zoom ([#7953](https://github.com/napari/napari/pull/7953))\n- Fix invalidate of extent cache in Layers ([#7972](https://github.com/napari/napari/pull/7972))\n- [Points] Fix events.data_indices for ActionType.ADDED event when adding single point ([#7983](https://github.com/napari/napari/pull/7983))\n- Fix interaction box initialization ([#8011](https://github.com/napari/napari/pull/8011))\n- Fix angles not showing correctly in UI ([#8013](https://github.com/napari/napari/pull/8013))\n- Bugfix: ensure multiscale images can be merged using contextual action ([#8025](https://github.com/napari/napari/pull/8025))\n- Fix Shapes layer to work with Features Table ([#8048](https://github.com/napari/napari/pull/8048))\n- Fix grid stride layering ([#8057](https://github.com/napari/napari/pull/8057))\n\n## Build Tools\n\n- Bump requests from 2.32.3 to 2.32.4 in /resources ([#8010](https://github.com/napari/napari/pull/8010))\n\n## Documentation\n\n- Update README to use `imshow` and add example to generate image ([#7989](https://github.com/napari/napari/pull/7989))\n- Update docstring in `mouse_drag_callback.py` ([#8019](https://github.com/napari/napari/pull/8019))\n- Add information about conda version and downloads to badges ([#8054](https://github.com/napari/napari/pull/8054))\n- Add links to napari troubleshooting documentation ([#8061](https://github.com/napari/napari/pull/8061))\n- Update version switcher for 0.6.1 ([docs#713](https://github.com/napari/docs/pull/713))\n- Update contributing docs page ([docs#715](https://github.com/napari/docs/pull/715))\n- Update code of conduct committee members ([docs#716](https://github.com/napari/docs/pull/716))\n- Add features table widget ([docs#718](https://github.com/napari/docs/pull/718))\n- Update docker build links ([docs#720](https://github.com/napari/docs/pull/720))\n- Add initial documentation about widget communication ([docs#721](https://github.com/napari/docs/pull/721))\n- update grid mode explanation and add video ([docs#725](https://github.com/napari/docs/pull/725))\n- Update installation.md to link to conda getting started not miniconda ([docs#726](https://github.com/napari/docs/pull/726))\n- Update governance docs ([docs#729](https://github.com/napari/docs/pull/729))\n- Initial release notes for alpha of 0.6.2 ([docs#734](https://github.com/napari/docs/pull/734))\n- Add active roadmap document ([docs#735](https://github.com/napari/docs/pull/735))\n- Use darker blue for community meetings in napari calendar ([docs#736](https://github.com/napari/docs/pull/736))\n- Add draft of 0.6.2 release notes ([docs#743](https://github.com/napari/docs/pull/743))\n- 0.6.2rc1 release notes ([docs#744](https://github.com/napari/docs/pull/744))\n- Final 0.6.2 Release Notes ([docs#751](https://github.com/napari/docs/pull/751))\n- Add troubleshooting section about mixed local and non local installations ([docs#752](https://github.com/napari/docs/pull/752))\n\n## Other Pull Requests\n\n- Add docs constraints for python 3.12 ([#7714](https://github.com/napari/napari/pull/7714))\n- Include Qt PyPI server for pre-releases ([#7803](https://github.com/napari/napari/pull/7803))\n- Refactor layer overlays visuals from VispyLayer to VispyCanvas ([#7835](https://github.com/napari/napari/pull/7835))\n- Update `dask`, `hypothesis`, `numpy`, `tensorstore`, `vispy` ([#7948](https://github.com/napari/napari/pull/7948))\n- [pre-commit.ci] pre-commit autoupdate ([#7951](https://github.com/napari/napari/pull/7951))\n- Restore image in Readme ([#7959](https://github.com/napari/napari/pull/7959))\n- Add cron check to update reader extensions v3 ([#7966](https://github.com/napari/napari/pull/7966))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `pydantic`, `tifffile`, `vispy` ([#7967](https://github.com/napari/napari/pull/7967))\n- fix vendored script and trigger workflow on pull_request ([#7968](https://github.com/napari/napari/pull/7968))\n- [pre-commit.ci] pre-commit autoupdate ([#7970](https://github.com/napari/napari/pull/7970))\n- Remove `layers_change` event that is marked to be removed in 0.5.0 ([#7971](https://github.com/napari/napari/pull/7971))\n- [maintenance] Use Wandalen/wretry.action to auto-retry fail in --pre tests ([#7986](https://github.com/napari/napari/pull/7986))\n- Update `hypothesis`, `ipython`, `jsonschema`, `tifffile` ([#7987](https://github.com/napari/napari/pull/7987))\n- [pre-commit.ci] pre-commit autoupdate ([#7988](https://github.com/napari/napari/pull/7988))\n- Remove the reset_scroll_progress action and keybinding ([#7990](https://github.com/napari/napari/pull/7990))\n- Stop status thread on Keyboard Interruption (Ctrl+C) ([#7994](https://github.com/napari/napari/pull/7994))\n- Update `hypothesis`, `magicgui`, `pandas`, `pyqt6`, `pytest`, `pytest-pretty` ([#8000](https://github.com/napari/napari/pull/8000))\n- Update pyproject.toml to fix coverage paths (alt) ([#8001](https://github.com/napari/napari/pull/8001))\n- [Maintenance] Remove redundant initialization in Points layer and restructure for clarity ([#8005](https://github.com/napari/napari/pull/8005))\n- Fix numba fail of compile on GHA macOS runners ([#8018](https://github.com/napari/napari/pull/8018))\n- Update `certifi`, `coverage`, `hypothesis`, `pydantic`, `superqt`, `tifffile`, `xarray` ([#8029](https://github.com/napari/napari/pull/8029))\n- Update `hypothesis`, `pytest`, `superqt` ([#8036](https://github.com/napari/napari/pull/8036))\n- Stop benchmark reporting if benchmark action is skipped ([#8037](https://github.com/napari/napari/pull/8037))\n- Update `app-model` pin to >=0.4.0, update `hypothesis`, `pygments`, `scipy` ([#8041](https://github.com/napari/napari/pull/8041))\n- [pre-commit.ci] pre-commit autoupdate ([#8042](https://github.com/napari/napari/pull/8042))\n- Bump bermuda to 0.1.5 ([#8052](https://github.com/napari/napari/pull/8052))\n- Update `hypothesis`, `lxml`, `numpydoc` ([#8060](https://github.com/napari/napari/pull/8060))\n- Fix comment and manual dispatch triggered build jobs ([docs#723](https://github.com/napari/docs/pull/723))\n- Test passing PR number instead of ref on triggered build ([docs#738](https://github.com/napari/docs/pull/738))\n- [maint] fix circleCI branch naming in trigger action ([docs#739](https://github.com/napari/docs/pull/739))\n- [Enh] When `ready-to-merge` is applied, do a full build of docs ([docs#745](https://github.com/napari/docs/pull/745))\n- Only build artifact on ready-to-merge label ([docs#749](https://github.com/napari/docs/pull/749))\n\n\n## 13 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/docs/commits?author=aganders3) - @aganders3\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo +\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Maximilian Mayrhauser](https://github.com/napari/napari/commits?author=Llewi) - @Llewi +\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n\n## 11 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/docs/commits?author=aganders3) - @aganders3\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo +\n- [Juan Nunez-Iglesias](https://github.com/napari/napari/commits?author=jni) ([docs](https://github.com/napari/docs/commits?author=jni))  - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wouter-Michiel Vierdag](https://github.com/napari/docs/commits?author=melonora) - @melonora\n\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/228972915/reactions","total_count":4,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":4,"eyes":0},"mentions_count":14},{"url":"https://api.github.com/repos/napari/napari/releases/228394848","assets_url":"https://api.github.com/repos/napari/napari/releases/228394848/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/228394848/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.2rc1","id":228394848,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84NnQdg","tag_name":"v0.6.2rc1","target_commitish":"fb41348f2dc8436477cbe333c6b947f877c1bb11","name":"0.6.2rc1","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-06-27T14:58:09Z","updated_at":"2025-06-27T15:13:23Z","published_at":"2025-06-27T15:00:11Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/267883282","id":267883282,"node_id":"RA_kwDOCJ0aI84P95MS","name":"napari-0.6.2rc1-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40440,"digest":"sha256:8e60e6aa4a63fcce8cdfc9b57b49ae94cdfa0abc9784ec5770159067dca6a0da","download_count":2,"created_at":"2025-06-27T15:08:47Z","updated_at":"2025-06-27T15:08:47Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267883224","id":267883224,"node_id":"RA_kwDOCJ0aI84P95LY","name":"napari-0.6.2rc1-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":483793135,"digest":"sha256:f5aef378533546190a6c81904af16377f95c67e32334d8d4afd5abb5604334d3","download_count":4,"created_at":"2025-06-27T15:08:31Z","updated_at":"2025-06-27T15:08:46Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267883909","id":267883909,"node_id":"RA_kwDOCJ0aI84P95WF","name":"napari-0.6.2rc1-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34323,"digest":"sha256:2effcba5cd2c33198ad2935b42cb99cf4c42e3ee895f86f2c838084cfe2da794","download_count":1,"created_at":"2025-06-27T15:10:45Z","updated_at":"2025-06-27T15:10:45Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267883793","id":267883793,"node_id":"RA_kwDOCJ0aI84P95UR","name":"napari-0.6.2rc1-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":397409397,"digest":"sha256:2e76caedd029a27f977c3734f3a5015b1fc77f285c1bb526bb2b8881f93da726","download_count":5,"created_at":"2025-06-27T15:10:31Z","updated_at":"2025-06-27T15:10:44Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267884979","id":267884979,"node_id":"RA_kwDOCJ0aI84P95mz","name":"napari-0.6.2rc1-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33879,"digest":"sha256:60968ea3682685ef672d76c1e375cca40743d306ed9ec00134a9129588e4d555","download_count":2,"created_at":"2025-06-27T15:13:23Z","updated_at":"2025-06-27T15:13:23Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267884921","id":267884921,"node_id":"RA_kwDOCJ0aI84P95l5","name":"napari-0.6.2rc1-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":423746130,"digest":"sha256:63b756ea002e1478cf8ea1a51d35b9c4482385d240cae8d448b6ecc334a72cbb","download_count":8,"created_at":"2025-06-27T15:13:07Z","updated_at":"2025-06-27T15:13:22Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267879950","id":267879950,"node_id":"RA_kwDOCJ0aI84P94YO","name":"napari-0.6.2rc1-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3454407,"digest":"sha256:bd8da9a737b39b647db317deb97382690f669aad379b84de9b6e2d15f9b3ab11","download_count":5,"created_at":"2025-06-27T15:00:12Z","updated_at":"2025-06-27T15:00:12Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267883921","id":267883921,"node_id":"RA_kwDOCJ0aI84P95WR","name":"napari-0.6.2rc1-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":503481336,"digest":"sha256:d89604fb43dbb56f6eebd6ed552529c799be318781d86a621e9623349389a952","download_count":25,"created_at":"2025-06-27T15:10:46Z","updated_at":"2025-06-27T15:11:01Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267884051","id":267884051,"node_id":"RA_kwDOCJ0aI84P95YT","name":"napari-0.6.2rc1-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":32005,"digest":"sha256:d69e6b7e92c7ede58d47d4241aee04f3ebb3f01a6ca44c3b860c85f2e8f9ac77","download_count":2,"created_at":"2025-06-27T15:11:02Z","updated_at":"2025-06-27T15:11:02Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267879951","id":267879951,"node_id":"RA_kwDOCJ0aI84P94YP","name":"napari-0.6.2rc1.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3201722,"digest":"sha256:1326b6c729978ad7914a7280ad7b8f5d3c2e436518af9c6cf01866755c558272","download_count":5,"created_at":"2025-06-27T15:00:12Z","updated_at":"2025-06-27T15:00:13Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc1/napari-0.6.2rc1.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.2rc1","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.2rc1","body":"# napari 0.6.2\n⚠️ *Note: these release notes are still in draft while 0.6.2 is in release candidate testing.* ⚠️\n\n*Mon, Jun 30, 2025*\n\nWe’re happy to announce the release of napari 0.6.2!\n\nnapari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for exploring, annotating, and analyzing multi-dimensional images. It’s built on Qt (for the GUI), VisPy (for performant GPU-based rendering), and the scientific Python stack (NumPy, SciPy, and friends).\n\nFor more information, examples, and documentation, please visit our website: https://napari.org/\n\n## Highlights\n\n### The amazing new Grid mode! 🗺️\n\nThe visualization of Grid mode has been redone from the ground up! This new Grid mode [(#7870)](https://github.com/napari/napari/pull/7870) now puts each layer into its own view (a VisPy Viewbox) with cameras linked together. Now, you can pan and zoom one view, and all other views in the grid will follow along. Layers are no longer awkwardly transformed into the same world space and displayed in a grid, only to make comparing the details of each a challenge.\n\nGrid based exploration is now fluid, fast, and intuitive, especially when working with large images and 3D+ data! The mouse can even be used over one View, while updating the data, such as a label or shape annotation, in the selected layer of a different view. The usual napari overlays can now also be added to each grid, instead of just the canvas (eg. `viewer.scale_bar.gridded = True`).\n\nGrid mode spacing now works proportionally to the layer extents (i.e. [0,1), as in 0.6.0) or as a pixel value (1,1500] and will automatically adjust if needed.\n\n![new Grid mode in napari](https://github.com/user-attachments/assets/f49c38e0-2cce-4729-a2d1-7b9c0023574c)\n\n### The Features Table Widget is now a napari builtin! 📊\n\nThe features table from [napari-properties-viewer](https://github.com/kevinyamauchi/napari-properties-viewer) is now a builtin widget in napari [(#7877)](https://github.com/napari/napari/pull/7877) *and* greatly improved! This widget allows you to view and edit the properties of Points, Shapes, and Labels layers in a table widget.\n\nThe widget can be opened from the `Layers` menu -> `Visualize` -> `Features table widget (napari builtins)` or from the command palette.  You can also save the properties table to a CSV file. Check out the [Features table widget](https://napari.org/dev/gallery/features_table_widget.html) example to learn more.\n\n![Features table widget in napari](https://github.com/user-attachments/assets/2c218f05-6510-4192-b5c8-fb6d135e4863)\n\n### Community developments! 📅\n\nWe are excited to share our new [active roadmap](https://napari.org/stable/roadmaps/active_roadmap.html) which is a living document that will be updated as we continue to develop napari. This document is intended to help the community understand the priorities of the napari team and to help us all work together to make napari better. \n\nWe are also now including all napari related events in the [community calendar](https://napari.org/stable/community/meeting_schedule.html) and as an [image.sc post](https://forum.image.sc/t/napari-community-meetings-and-events/113689), including conferences, tutorials, sprints, virtual seminars, and more. If you have an event you would like to add, please reach out to us!\n\n### Some great features for contributors! 🛠️\n\n1. **Contributing documentation is now a much smoother experience!** By default, new documentation will build in around 3 minutes, instead of the previous 20 minutes. This speed is thanks to new, slimmer `make` commands (`slimfast` by default) that can also be triggered in PRs with a bot (eg. `@napari-bot make docs`). Read our updated [docs contribution guide](https://napari.org/dev/developers/contributing/documentation/index.html) and reach out for help.\n2. **The organization of the napari repo has been updated by moving into a `src/` directory [(#7952)](https://github.com/napari/napari/pull/7952).** This is modern best practice in Python projects (and what has long been standard in our [napari-plugin-template](https://github.com/napari/napari-plugin-template)) to avoid issues with relative imports and *should* now always result in importing the napari version installed in the current environment. For developers, especially of pull requests prior to this release, you may have many merge conflicts to resolve. Please ping the napari team if you would like help resolving these conflicts.\n3. **There is now public API to access widgets docked in the viewer [(#7965)](https://github.com/napari/napari/pull/7965).** Check out the new documentation on the napari website to learn more about using this API to [communicate between widgets](https://napari.org/dev/plugins/advanced_topics/widget_communication.html). If you previously used `viewer.window._dock_widgets`, you should now use `viewer.window.dock_widgets`.\n\n- Add 'zoom-box' to the viewer ([#8004](https://github.com/napari/napari/pull/8004))\n- \"Reverse\" ordering of layers in grid mode, now matching LayerList index ([#8044](https://github.com/napari/napari/pull/8044))\n- Reverse canvas grid order ([#8053](https://github.com/napari/napari/pull/8053))\n\n## New Features\n\n- Grid mode using vispy ViewBox and linked cameras ([#7870](https://github.com/napari/napari/pull/7870))\n- Features table widget as builtin ([#7877](https://github.com/napari/napari/pull/7877))\n- Add 'zoom-box' to the viewer ([#8004](https://github.com/napari/napari/pull/8004))\n\n## Improvements\n\n- Reduce warmup of numba if non numba backend is selected ([#7917](https://github.com/napari/napari/pull/7917))\n- Optional rotation handle for selection box overlay + simplify inheritance for Vispy overlays ([#7958](https://github.com/napari/napari/pull/7958))\n- Add public API to get access to docked widgets ([#7965](https://github.com/napari/napari/pull/7965))\n- Allow to use ViewerModel as annotation of plugin constructor argument ([#8002](https://github.com/napari/napari/pull/8002))\n- speedup edge width set by use `batched_updates` context manager ([#8006](https://github.com/napari/napari/pull/8006))\n- Update [shapes]: 'make select_all_shapes' keybinding a toggle ([#8014](https://github.com/napari/napari/pull/8014))\n- Update[shortcuts]: add Ctrl/Cmd-A as secondary keybinding for select_all_shapes ([#8015](https://github.com/napari/napari/pull/8015))\n- \"Reverse\" ordering of layers in grid mode, now matching LayerList index ([#8044](https://github.com/napari/napari/pull/8044))\n- Fix Shapes layer to work with Features Table ([#8048](https://github.com/napari/napari/pull/8048))\n\n## Performance\n\n- [Shapes] Use the plural methods to update colors of all selected shapes at once ([#7995](https://github.com/napari/napari/pull/7995))\n\n## Bug Fixes\n\n- Fix scalebar theme connection ([#7902](https://github.com/napari/napari/pull/7902))\n- Don't add widgets to non-contributable menus ([#7926](https://github.com/napari/napari/pull/7926))\n- Fix handle mouse events ([#7936](https://github.com/napari/napari/pull/7936))\n- Fix moving of first/last vertex of polygons added in ring mode ([#7942](https://github.com/napari/napari/pull/7942))\n- Update shapes highlight on zoom ([#7953](https://github.com/napari/napari/pull/7953))\n- Fix invalidate of extent cache in Layers ([#7972](https://github.com/napari/napari/pull/7972))\n- [Points] Fix events.data_indices for ActionType.ADDED event when adding single point ([#7983](https://github.com/napari/napari/pull/7983))\n- Fix interaction box initialization ([#8011](https://github.com/napari/napari/pull/8011))\n- Fix angles not showing correctly in UI ([#8013](https://github.com/napari/napari/pull/8013))\n- Bugfix: ensure multiscale images can be merged using contextual action ([#8025](https://github.com/napari/napari/pull/8025))\n- Fix Shapes layer to work with Features Table ([#8048](https://github.com/napari/napari/pull/8048))\n- Fix grid stride layering ([#8057](https://github.com/napari/napari/pull/8057))\n\n## Build Tools\n\n- Bump requests from 2.32.3 to 2.32.4 in /resources ([#8010](https://github.com/napari/napari/pull/8010))\n\n## Documentation\n\n- Update README to use `imshow` and add example to generate image ([#7989](https://github.com/napari/napari/pull/7989))\n- Update docstring in `mouse_drag_callback.py` ([#8019](https://github.com/napari/napari/pull/8019))\n- Add information about conda version and downloads to badges ([#8054](https://github.com/napari/napari/pull/8054))\n- Update version switcher for 0.6.1 ([docs#713](https://github.com/napari/docs/pull/713))\n- Update contributing docs page ([docs#715](https://github.com/napari/docs/pull/715))\n- Update code of conduct committee members ([docs#716](https://github.com/napari/docs/pull/716))\n- Add features table widget ([docs#718](https://github.com/napari/docs/pull/718))\n- Update docker build links ([docs#720](https://github.com/napari/docs/pull/720))\n- Add initial documentation about widget communication ([docs#721](https://github.com/napari/docs/pull/721))\n- update grid mode explanation and add video ([docs#725](https://github.com/napari/docs/pull/725))\n- Update installation.md to link to conda getting started not miniconda ([docs#726](https://github.com/napari/docs/pull/726))\n- Update governance docs ([docs#729](https://github.com/napari/docs/pull/729))\n- Initial release notes for alpha of 0.6.2 ([docs#734](https://github.com/napari/docs/pull/734))\n- Add active roadmap document ([docs#735](https://github.com/napari/docs/pull/735))\n- Use darker blue for community meetings in napari calendar ([docs#736](https://github.com/napari/docs/pull/736))\n- Add draft of 0.6.2 release notes ([docs#743](https://github.com/napari/docs/pull/743))\n- 0.6.2 release notes ([docs#744](https://github.com/napari/docs/pull/744))\n\n## Other Pull Requests\n\n- Add docs constraints for python 3.12 ([#7714](https://github.com/napari/napari/pull/7714))\n- Include Qt PyPI server for pre-releases ([#7803](https://github.com/napari/napari/pull/7803))\n- Refactor layer overlays visuals from VispyLayer to VispyCanvas ([#7835](https://github.com/napari/napari/pull/7835))\n- Update `dask`, `hypothesis`, `numpy`, `tensorstore`, `vispy` ([#7948](https://github.com/napari/napari/pull/7948))\n- [pre-commit.ci] pre-commit autoupdate ([#7951](https://github.com/napari/napari/pull/7951))\n- Restore image in Readme ([#7959](https://github.com/napari/napari/pull/7959))\n- Add cron check to update reader extensions v3 ([#7966](https://github.com/napari/napari/pull/7966))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `pydantic`, `tifffile`, `vispy` ([#7967](https://github.com/napari/napari/pull/7967))\n- fix vendored script and trigger workflow on pull_request ([#7968](https://github.com/napari/napari/pull/7968))\n- [pre-commit.ci] pre-commit autoupdate ([#7970](https://github.com/napari/napari/pull/7970))\n- Remove `layers_change` event that is marked to be removed in 0.5.0 ([#7971](https://github.com/napari/napari/pull/7971))\n- [maintenance] Use Wandalen/wretry.action to auto-retry fail in --pre tests ([#7986](https://github.com/napari/napari/pull/7986))\n- Update `hypothesis`, `ipython`, `jsonschema`, `tifffile` ([#7987](https://github.com/napari/napari/pull/7987))\n- [pre-commit.ci] pre-commit autoupdate ([#7988](https://github.com/napari/napari/pull/7988))\n- Remove the reset_scroll_progress action and keybinding ([#7990](https://github.com/napari/napari/pull/7990))\n- Stop status thread on Keyboard Interruption (Ctrl+C) ([#7994](https://github.com/napari/napari/pull/7994))\n- Update `hypothesis`, `magicgui`, `pandas`, `pyqt6`, `pytest`, `pytest-pretty` ([#8000](https://github.com/napari/napari/pull/8000))\n- Update pyproject.toml to fix coverage paths (alt) ([#8001](https://github.com/napari/napari/pull/8001))\n- [Maintenance] Remove redundant initialization in Points layer and restructure for clarity ([#8005](https://github.com/napari/napari/pull/8005))\n- Fix numba fail of compile on GHA macOS runners ([#8018](https://github.com/napari/napari/pull/8018))\n- Update `certifi`, `coverage`, `hypothesis`, `pydantic`, `superqt`, `tifffile`, `xarray` ([#8029](https://github.com/napari/napari/pull/8029))\n- [Update] Added `remove` , `remove_selected` and `pop` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Update `hypothesis`, `pytest`, `superqt` ([#8036](https://github.com/napari/napari/pull/8036))\n- Stop benchmark reporting if benchmark action is skipped ([#8037](https://github.com/napari/napari/pull/8037))\n- Update `app-model` pin to >=0.4.0, update `hypothesis`, `pygments`, `scipy` ([#8041](https://github.com/napari/napari/pull/8041))\n- [pre-commit.ci] pre-commit autoupdate ([#8042](https://github.com/napari/napari/pull/8042))\n- Bump bermuda to 0.1.5 ([#8052](https://github.com/napari/napari/pull/8052))\n- Improve tooltips for Grid Stride ([#8058](https://github.com/napari/napari/pull/8058))\n- Fix comment and manual dispatch triggered build jobs ([docs#723](https://github.com/napari/docs/pull/723))\n- Test passing PR number instead of ref on triggered build ([docs#738](https://github.com/napari/docs/pull/738))\n- [maint] fix circleCI branch naming in trigger action ([docs#739](https://github.com/napari/docs/pull/739))\n- [Enh] When `ready-to-merge` is applied, do a full build of docs ([docs#745](https://github.com/napari/docs/pull/745))\n\n\n## 13 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/docs/commits?author=aganders3) - @aganders3\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo +\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Maximilian Mayrhauser](https://github.com/napari/napari/commits?author=Llewi) - @Llewi +\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n\n## 13 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/docs/commits?author=aganders3) - @aganders3\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo +\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wouter-Michiel Vierdag](https://github.com/napari/docs/commits?author=melonora) - @melonora\n\n","mentions_count":14},{"url":"https://api.github.com/repos/napari/napari/releases/227836125","assets_url":"https://api.github.com/repos/napari/napari/releases/227836125/assets","upload_url":"https://uploads.github.com/repos/napari/napari/releases/227836125/assets{?name,label}","html_url":"https://github.com/napari/napari/releases/tag/v0.6.2rc0","id":227836125,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOCJ0aI84NlIDd","tag_name":"v0.6.2rc0","target_commitish":"b4d9fe9ff56d3737277d779a2192e253fe211a39","name":"0.6.2rc0","draft":false,"immutable":false,"prerelease":true,"created_at":"2025-06-25T20:58:21Z","updated_at":"2025-06-25T21:28:24Z","published_at":"2025-06-25T21:00:06Z","assets":[{"url":"https://api.github.com/repos/napari/napari/releases/assets/267279717","id":267279717,"node_id":"RA_kwDOCJ0aI84P7l1l","name":"napari-0.6.2rc0-Linux-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":40323,"digest":"sha256:24d8f4f1bf9963cc6d72e33460f87ed1624b1088c8b4d926776867ef1bb29aeb","download_count":1,"created_at":"2025-06-25T21:24:25Z","updated_at":"2025-06-25T21:24:25Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-Linux-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267279690","id":267279690,"node_id":"RA_kwDOCJ0aI84P7l1K","name":"napari-0.6.2rc0-Linux-x86_64.sh","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":483424495,"digest":"sha256:72252de024e46ddc969b56dde5bec20f85d4d1dd331e5f6806cfaf2216b230ff","download_count":4,"created_at":"2025-06-25T21:24:08Z","updated_at":"2025-06-25T21:24:24Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-Linux-x86_64.sh"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267280166","id":267280166,"node_id":"RA_kwDOCJ0aI84P7l8m","name":"napari-0.6.2rc0-macOS-arm64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":34205,"digest":"sha256:6739dbc753e6381d546640340ec1c6e98f2cc7e8f0e0a1fd63811ef2d08bdaf7","download_count":2,"created_at":"2025-06-25T21:26:36Z","updated_at":"2025-06-25T21:26:36Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-macOS-arm64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267280099","id":267280099,"node_id":"RA_kwDOCJ0aI84P7l7j","name":"napari-0.6.2rc0-macOS-arm64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":397087660,"digest":"sha256:04cbda9704438cf1fd8b1f5216f2999b364b6653f704595577070931e8bfa120","download_count":2,"created_at":"2025-06-25T21:26:18Z","updated_at":"2025-06-25T21:26:35Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-macOS-arm64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267280439","id":267280439,"node_id":"RA_kwDOCJ0aI84P7mA3","name":"napari-0.6.2rc0-macOS-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":33764,"digest":"sha256:c4fccd9ba45c4530844e01ff0b9d42da3f08840acb62bfe89ea91d3947f10471","download_count":1,"created_at":"2025-06-25T21:28:24Z","updated_at":"2025-06-25T21:28:24Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-macOS-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267280422","id":267280422,"node_id":"RA_kwDOCJ0aI84P7mAm","name":"napari-0.6.2rc0-macOS-x86_64.pkg","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":423403636,"digest":"sha256:a35c6e2be8abe710861b0ea485ecd09227dd3d3d923ea78ad89cebbbdfdc9b50","download_count":3,"created_at":"2025-06-25T21:28:07Z","updated_at":"2025-06-25T21:28:23Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-macOS-x86_64.pkg"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267273510","id":267273510,"node_id":"RA_kwDOCJ0aI84P7kUm","name":"napari-0.6.2rc0-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":3454192,"digest":"sha256:9b205b76731b74063fc8733391ddf44b8bb62805cab91b04d3eb3d08bdb1aa88","download_count":6,"created_at":"2025-06-25T21:00:07Z","updated_at":"2025-06-25T21:00:07Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-py3-none-any.whl"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267280184","id":267280184,"node_id":"RA_kwDOCJ0aI84P7l84","name":"napari-0.6.2rc0-Windows-x86_64.exe","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":503247184,"digest":"sha256:8572c97a013fd0ff9e30971b36adb68a32db429f52842fca82cb36a056efe218","download_count":16,"created_at":"2025-06-25T21:26:43Z","updated_at":"2025-06-25T21:26:57Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-Windows-x86_64.exe"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267280236","id":267280236,"node_id":"RA_kwDOCJ0aI84P7l9s","name":"napari-0.6.2rc0-Windows-x86_64.lockfile.txt","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":31889,"digest":"sha256:d2802cd3a68db45666e715262269da6e0ddf0e8d5e03680f92735d31ab61571c","download_count":1,"created_at":"2025-06-25T21:26:58Z","updated_at":"2025-06-25T21:26:58Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0-Windows-x86_64.lockfile.txt"},{"url":"https://api.github.com/repos/napari/napari/releases/assets/267273511","id":267273511,"node_id":"RA_kwDOCJ0aI84P7kUn","name":"napari-0.6.2rc0.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":3201357,"digest":"sha256:8b83239fa83f7c446d38a81616437aff303b20e851985bf6f70eb5010db24c46","download_count":6,"created_at":"2025-06-25T21:00:07Z","updated_at":"2025-06-25T21:00:07Z","browser_download_url":"https://github.com/napari/napari/releases/download/v0.6.2rc0/napari-0.6.2rc0.tar.gz"}],"tarball_url":"https://api.github.com/repos/napari/napari/tarball/v0.6.2rc0","zipball_url":"https://api.github.com/repos/napari/napari/zipball/v0.6.2rc0","body":"# napari 0.6.2\n⚠️ *Note: these release notes are still in draft while 0.6.2 is in release candidate testing.* ⚠️\n\n*Thurs, Jun 26, 2025*\n\nWe’re happy to announce the release of napari 0.6.2!\n\nnapari is a fast, interactive, multi-dimensional image viewer for Python. It’s designed for exploring, annotating, and analyzing multi-dimensional images. It’s built on Qt (for the GUI), VisPy (for performant GPU-based rendering), and the scientific Python stack (NumPy, SciPy, and friends).\n\nFor more information, examples, and documentation, please visit our website: https://napari.org/\n\n## Highlights\n\n### The amazing new Grid mode! 🗺️\n\nThe visualization of Grid mode has been redone from the ground up! This new Grid mode [(#7870)](https://github.com/napari/napari/pull/7870) now puts each layer into its own view (a VisPy Viewbox) with cameras linked together. Now, you can pan and zoom one view, and all other views in the grid will follow along. Layers are no longer awkwardly transformed into the same world space and displayed in a grid, only to make comparing the details of each a challenge.\n\nGrid based exploration is now fluid, fast, and intuitive, especially when working with large images and 3D+ data! The mouse can even be used over one View, while updating the data, such as a label or shape annotation, in the selected layer of a different view. The usual napari overlays can now also be added to each grid, instead of just the canvas (eg. `viewer.scale_bar.gridded = True`).\n\nGrid mode spacing now works proportionally to the layer extents (i.e. [0,1), as in 0.6.0) or as a pixel value (1,1500] and will automatically adjust if needed.\n\n![new Grid mode in napari](https://github.com/user-attachments/assets/f49c38e0-2cce-4729-a2d1-7b9c0023574c)\n\n### The Features Table Widget is now a napari builtin! 📊\n\nThe features table from [napari-properties-viewer](https://github.com/kevinyamauchi/napari-properties-viewer) is now a builtin widget in napari [(#7877)](https://github.com/napari/napari/pull/7877) *and* greatly improved! This widget allows you to view and edit the properties of Points, Shapes, and Labels layers in a table widget.\n\nThe widget can be opened from the `Layers` menu -> `Visualize` -> `Features table widget (napari builtins)` or from the command palette.  You can also save the properties table to a CSV file. Check out the [Features table widget](https://napari.org/dev/gallery/features_table_widget.html) example to learn more.\n\n![Features table widget in napari](https://github.com/user-attachments/assets/2c218f05-6510-4192-b5c8-fb6d135e4863)\n\n### Community developments! 📅\n\nWe are excited to share our new [active roadmap](https://napari.org/stable/roadmaps/active_roadmap.html) which is a living document that will be updated as we continue to develop napari. This document is intended to help the community understand the priorities of the napari team and to help us all work together to make napari better. \n\nWe are also now including all napari related events in the [community calendar](https://napari.org/stable/community/meeting_schedule.html) and as an [image.sc post](https://forum.image.sc/t/napari-community-meetings-and-events/113689), including conferences, tutorials, sprints, virtual seminars, and more. If you have an event you would like to add, please reach out to us!\n\n### Some great features for contributors! 🛠️\n\n1. **Contributing documentation is now a much smoother experience!** By default, new documentation will build in around 3 minutes, instead of the previous 20 minutes. This speed is thanks to new, slimmer `make` commands (`slimfast` by default) that can also be triggered in PRs with a bot (eg. `@napari-bot make docs`). Read our updated [docs contribution guide](https://napari.org/dev/developers/contributing/documentation/index.html) and reach out for help.\n2. **The organization of the napari repo has been updated by moving into a `src/` directory [(#7952)](https://github.com/napari/napari/pull/7952).** This is modern best practice in Python projects (and what has long been standard in our [napari-plugin-template](https://github.com/napari/napari-plugin-template)) to avoid issues with relative imports and *should* now always result in importing the napari version installed in the current environment. For developers, especially of pull requests prior to this release, you may have many merge conflicts to resolve. Please ping the napari team if you would like help resolving these conflicts.\n3. **There is now public API to access widgets docked in the viewer [(#7965)](https://github.com/napari/napari/pull/7965).** Check out the new documentation on the napari website to learn more about using this API to [communicate between widgets](https://napari.org/dev/plugins/advanced_topics/widget_communication.html). If you previously used `viewer.window._dock_widgets`, you should now use `viewer.window.dock_widgets`.\n\n## New Features\n\n- Grid mode using vispy ViewBox and linked cameras ([#7870](https://github.com/napari/napari/pull/7870))\n- Features table widget as builtin ([#7877](https://github.com/napari/napari/pull/7877))\n- Add 'zoom-box' to the viewer ([#8004](https://github.com/napari/napari/pull/8004))\n\n## Improvements\n\n- Reduce warmup of numba if non numba backend is selected ([#7917](https://github.com/napari/napari/pull/7917))\n- Optional rotation handle for selection box overlay + simplify inheritance for Vispy overlays ([#7958](https://github.com/napari/napari/pull/7958))\n- Add public API to get access to docked widgets ([#7965](https://github.com/napari/napari/pull/7965))\n- Allow to use ViewerModel as annotation of plugin constructor argument ([#8002](https://github.com/napari/napari/pull/8002))\n- speedup edge width set by use `batched_updates` context manager ([#8006](https://github.com/napari/napari/pull/8006))\n- Update [shapes]: 'make select_all_shapes' keybinding a toggle ([#8014](https://github.com/napari/napari/pull/8014))\n- Update[shortcuts]: add Ctrl/Cmd-A as secondary keybinding for select_all_shapes ([#8015](https://github.com/napari/napari/pull/8015))\n- \"Reverse\" ordering of layers in grid mode, now matching LayerList index ([#8044](https://github.com/napari/napari/pull/8044))\n- Fix Shapes layer to work with Features Table ([#8048](https://github.com/napari/napari/pull/8048))\n\n## Performance\n\n- [Shapes] Use the plural methods to update colors of all selected shapes at once ([#7995](https://github.com/napari/napari/pull/7995))\n\n## Bug Fixes\n\n- Fix scalebar theme connection ([#7902](https://github.com/napari/napari/pull/7902))\n- Don't add widgets to non-contributable menus ([#7926](https://github.com/napari/napari/pull/7926))\n- Fix handle mouse events ([#7936](https://github.com/napari/napari/pull/7936))\n- Fix moving of first/last vertex of polygons added in ring mode ([#7942](https://github.com/napari/napari/pull/7942))\n- Update shapes highlight on zoom ([#7953](https://github.com/napari/napari/pull/7953))\n- Fix invalidate of extent cache in Layers ([#7972](https://github.com/napari/napari/pull/7972))\n- [Points] Fix events.data_indices for ActionType.ADDED event when adding single point ([#7983](https://github.com/napari/napari/pull/7983))\n- Fix interaction box initialization ([#8011](https://github.com/napari/napari/pull/8011))\n- Fix angles not showing correctly in UI ([#8013](https://github.com/napari/napari/pull/8013))\n- Bugfix: ensure multiscale images can be merged using contextual action ([#8025](https://github.com/napari/napari/pull/8025))\n- Fix Shapes layer to work with Features Table ([#8048](https://github.com/napari/napari/pull/8048))\n\n## Build Tools\n\n- Bump requests from 2.32.3 to 2.32.4 in /resources ([#8010](https://github.com/napari/napari/pull/8010))\n\n## Documentation\n\n- Update README to use `imshow` and add example to generate image ([#7989](https://github.com/napari/napari/pull/7989))\n- Update docstring in `mouse_drag_callback.py` ([#8019](https://github.com/napari/napari/pull/8019))\n- Update version switcher for 0.6.1 ([docs#713](https://github.com/napari/docs/pull/713))\n- Update contributing docs page ([docs#715](https://github.com/napari/docs/pull/715))\n- Update code of conduct committee members ([docs#716](https://github.com/napari/docs/pull/716))\n- Add features table widget ([docs#718](https://github.com/napari/docs/pull/718))\n- Update docker build links ([docs#720](https://github.com/napari/docs/pull/720))\n- Add initial documentation about widget communication ([docs#721](https://github.com/napari/docs/pull/721))\n- Update installation.md to link to conda getting started not miniconda ([docs#726](https://github.com/napari/docs/pull/726))\n- Update governance docs ([docs#729](https://github.com/napari/docs/pull/729))\n- Initial release notes for alpha of 0.6.2 ([docs#734](https://github.com/napari/docs/pull/734))\n- Add active roadmap document ([docs#735](https://github.com/napari/docs/pull/735))\n- Use darker blue for community meetings in napari calendar ([docs#736](https://github.com/napari/docs/pull/736))\n- Add draft of 0.6.2 release notes ([docs#743](https://github.com/napari/docs/pull/743))\n\n## Other Pull Requests\n\n- Add docs constraints for python 3.12 ([#7714](https://github.com/napari/napari/pull/7714))\n- Include Qt PyPI server for pre-releases ([#7803](https://github.com/napari/napari/pull/7803))\n- Refactor layer overlays visuals from VispyLayer to VispyCanvas ([#7835](https://github.com/napari/napari/pull/7835))\n- Add cron check to update reader extensions ([#7907](https://github.com/napari/napari/pull/7907))\n- Update `dask`, `hypothesis`, `numpy`, `tensorstore`, `vispy` ([#7948](https://github.com/napari/napari/pull/7948))\n- [pre-commit.ci] pre-commit autoupdate ([#7951](https://github.com/napari/napari/pull/7951))\n- Add cron check to update reader extensions v2 ([#7957](https://github.com/napari/napari/pull/7957))\n- Restore image in Readme ([#7959](https://github.com/napari/napari/pull/7959))\n- Add cron check to update reader extensions v3 ([#7966](https://github.com/napari/napari/pull/7966))\n- Update `coverage`, `dask`, `fsspec`, `hypothesis`, `pydantic`, `tifffile`, `vispy` ([#7967](https://github.com/napari/napari/pull/7967))\n- fix vendored script and trigger workflow on pull_request ([#7968](https://github.com/napari/napari/pull/7968))\n- [pre-commit.ci] pre-commit autoupdate ([#7970](https://github.com/napari/napari/pull/7970))\n- Remove `layers_change` event that is marked to be removed in 0.5.0 ([#7971](https://github.com/napari/napari/pull/7971))\n- [maintenance] Use Wandalen/wretry.action to auto-retry fail in --pre tests ([#7986](https://github.com/napari/napari/pull/7986))\n- Update `hypothesis`, `ipython`, `jsonschema`, `tifffile` ([#7987](https://github.com/napari/napari/pull/7987))\n- [pre-commit.ci] pre-commit autoupdate ([#7988](https://github.com/napari/napari/pull/7988))\n- Remove the reset_scroll_progress action and keybinding ([#7990](https://github.com/napari/napari/pull/7990))\n- Stop status thread on Keyboard Interruption (Ctrl+C) ([#7994](https://github.com/napari/napari/pull/7994))\n- Update `hypothesis`, `magicgui`, `pandas`, `pyqt6`, `pytest`, `pytest-pretty` ([#8000](https://github.com/napari/napari/pull/8000))\n- Update pyproject.toml to fix coverage paths (alt) ([#8001](https://github.com/napari/napari/pull/8001))\n- [Maintenance] Remove redundant initialization in Points layer and restructure for clarity ([#8005](https://github.com/napari/napari/pull/8005))\n- Fix numba fail of compile on GHA macOS runners ([#8018](https://github.com/napari/napari/pull/8018))\n- Update `certifi`, `coverage`, `hypothesis`, `pydantic`, `superqt`, `tifffile`, `xarray` ([#8029](https://github.com/napari/napari/pull/8029))\n- [Update] Added `remove` , `remove_selected` and `pop` in Shapes and Points ([#8031](https://github.com/napari/napari/pull/8031))\n- Update `hypothesis`, `pytest`, `superqt` ([#8036](https://github.com/napari/napari/pull/8036))\n- Stop benchmark reporting if benchmark action is skipped ([#8037](https://github.com/napari/napari/pull/8037))\n- Update `app-model`, `hypothesis`, `pygments`, `scipy` ([#8040](https://github.com/napari/napari/pull/8040))\n- Update `app-model` pin to >=0.4.0, update `hypothesis`, `pygments`, `scipy` ([#8041](https://github.com/napari/napari/pull/8041))\n- [pre-commit.ci] pre-commit autoupdate ([#8042](https://github.com/napari/napari/pull/8042))\n- Fix comment and manual dispatch triggered build jobs ([docs#723](https://github.com/napari/docs/pull/723))\n- Test passing PR number instead of ref on triggered build ([docs#738](https://github.com/napari/docs/pull/738))\n- [maint] fix circleCI branch naming in trigger action ([docs#739](https://github.com/napari/docs/pull/739))\n\n\n## 13 authors added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/docs/commits?author=aganders3) - @aganders3\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo +\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Maximilian Mayrhauser](https://github.com/napari/napari/commits?author=Llewi) - @Llewi +\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n\n\n## 13 reviewers added to this release (alphabetical)\n\n(+) denotes first-time contributors 🥳\n\n- [Ashley Anderson](https://github.com/napari/docs/commits?author=aganders3) - @aganders3\n- [Carol Willing](https://github.com/napari/docs/commits?author=willingc) - @willingc\n- [Draga Doncila Pop](https://github.com/napari/napari/commits?author=DragaDoncila) ([docs](https://github.com/napari/docs/commits?author=DragaDoncila))  - @DragaDoncila\n- [Grzegorz Bokota](https://github.com/napari/napari/commits?author=Czaki) ([docs](https://github.com/napari/docs/commits?author=Czaki))  - @Czaki\n- [Jacopo Abramo](https://github.com/napari/napari/commits?author=jacopoabramo) - @jacopoabramo +\n- [Juan Nunez-Iglesias](https://github.com/napari/docs/commits?author=jni) - @jni\n- [Lorenzo Gaifas](https://github.com/napari/napari/commits?author=brisvag) ([docs](https://github.com/napari/docs/commits?author=brisvag))  - @brisvag\n- [Lukasz Migas](https://github.com/napari/napari/commits?author=lukasz-migas) - @lukasz-migas\n- [Melissa Weber Mendonça](https://github.com/napari/docs/commits?author=melissawm) - @melissawm\n- [Peter Sobolewski](https://github.com/napari/napari/commits?author=psobolewskiPhD) ([docs](https://github.com/napari/docs/commits?author=psobolewskiPhD))  - @psobolewskiPhD\n- [Rahul Kumar](https://github.com/napari/napari/commits?author=rahul713rk) - @rahul713rk +\n- [Tim Monko](https://github.com/napari/napari/commits?author=TimMonko) ([docs](https://github.com/napari/docs/commits?author=TimMonko))  - @TimMonko\n- [Wouter-Michiel Vierdag](https://github.com/napari/docs/commits?author=melonora) - @melonora\n\n","reactions":{"url":"https://api.github.com/repos/napari/napari/releases/227836125/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":1},"mentions_count":14}]