Skip to content

Commit

Permalink
Add napari-base output and reorganize dependencies (#63)
Browse files Browse the repository at this point in the history
I've added a new output, `napari-base`, following conversation in this PR, this [Zulip thread](https://napari.zulipchat.com/#narrow/stream/212875-general/topic/.E2.9C.94.20The.20plugin.20.22install.2Funinstall.22.20button.20not.20shown.20in.20.22Plu.2E.2E.2E), and [this other one](https://napari.zulipchat.com/#narrow/stream/212875-general/topic/napari.20plugin.20manager.20in.20conda.20recipe).

With this PR we will have these outputs:

* `napari-base`: the core library, with only the required dependencies. Use it for your Pyhton imports but no GUI action.
* `napari`: the application sans the Qt backend. It contains optional yet recommended dependencies for (performant) GUI usage, like the plugin manager or `numba`. 
* `napari-menu`: just the `menuinst` JSON file, in case you want a desktop shortcut.

Most end-users will want to `conda install napari pyqt` or `conda install napari pyside2`.

---------

Co-authored-by: jaimergp <[email protected]>
Co-authored-by: conda-forge-webservices[bot] <91080706+conda-forge-webservices[bot]@users.noreply.github.com>
  • Loading branch information
3 people authored Jul 16, 2024
1 parent 149c206 commit e9e6f6a
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 17 deletions.
10 changes: 8 additions & 2 deletions .scripts/build_steps.sh

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 17 additions & 3 deletions README.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

41 changes: 29 additions & 12 deletions recipe/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ source:
sha256: 3920b144d72e8af8fe0da3da679b2d39aa2d097c10a2c75a3b4e42ffcef17cac

build:
number: 1
number: 2

outputs:
- name: napari
- name: napari-base
version: {{ version }}
build:
noarch: python
Expand Down Expand Up @@ -49,7 +49,6 @@ outputs:
- magicgui >=0.7.0
- napari-console >=0.0.9
- napari-plugin-engine >=0.1.9
- napari-svg >=0.1.8
- npe2 >=0.7.6
- numpy >=1.22.2
- numpydoc >=0.9.2
Expand All @@ -73,19 +72,10 @@ outputs:
- vispy >=0.14.1,<0.15.0a0
- wrapt >=1.11.1

# additional dependencies for convenience in conda-forge
- fsspec
- pooch >=1.3.0
- zarr >=2.12.0

run_constrained:
- napari-plugin-manager >=0.1.0a2,<0.3.0a0
- pyside2 >=5.13.2,!=5.15.0
- pyside6 <6.5|>=6.7
- pyqt >=5.12.3,!=5.15.0,<6.0a0|>=6.5,!=6.6.1
# Nice for performance, but optional. Inclusion under discussion.
# - py-triangle
# - numba >=0.57.1 # https://github.com/napari/napari/pull/6467#issuecomment-1819038165

test:
requires:
Expand Down Expand Up @@ -115,6 +105,33 @@ outputs:
- LICENSE
- napari/_vendor/darkdetect/LICENSE
- napari/_vendor/qt_json_builder/LICENSE
summary: a fast n-dimensional image viewer in Python, with only the required dependencies
doc_url: http://napari.org
dev_url: https://github.com/napari/napari

- name: napari
version: {{ version }}
build:
noarch: python
requirements:
run:
- {{ pin_subpackage('napari-base', exact=True) }}
- fsspec
- napari-plugin-manager >=0.1.0a2,<0.3.0a0
- napari-svg >=0.1.8
- numba >=0.57.1
- pooch >=1.3.0
# - py-triangle # can segfault with bad data: https://github.com/napari/napari/pull/6654
- zarr >=2.12.0
test: # just to check that the environment can indeed solve
requires:
- pyside2 # use this opportunity to test solvability with other backend
imports:
- napari
about:
home: http://napari.org
license: BSD-3-Clause AND MIT
license_file: LICENSE
summary: a fast n-dimensional image viewer in Python
description: a fast n-dimensional image viewer in Python
doc_url: http://napari.org
Expand Down

1 comment on commit e9e6f6a

@conda-forge-webservices
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi! This is the friendly automated conda-forge-webservice.

I updated the Github team because of this commit.

You should get push access to this feedstock and CI services.

Your package won't be available for installation locally until it is built
and synced to the anaconda.org CDN (takes 1-2 hours after the build finishes).

Feel free to join the community Element channel.

NOTE: Please make sure to not push to the repository directly.
Use branches in your fork for any changes and send a PR.
More details on this are here.

Please sign in to comment.