Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add mne-connectivity #17982

Merged
merged 6 commits into from
Feb 11, 2022
Merged

Conversation

hoechenberger
Copy link
Member

@hoechenberger hoechenberger commented Feb 9, 2022

Checklist

  • Title of this PR is meaningful: e.g. "Adding my_nifty_package", not "updated meta.yaml".
  • License file is packaged (see here for an example).
  • Source is from official source.
  • Package does not vendor other packages. (If a package uses the source of another package, they should be separate packages or the licenses of all packages need to be packaged).
  • If static libraries are linked in, the license of the static library is packaged.
  • Build number is 0.
  • A tarball (url) rather than a repo (e.g. git_url) is used in your recipe (see here for more details).
  • GitHub users listed in the maintainer section have posted a comment confirming they are willing to be listed there.
  • When in trouble, please check our knowledge base documentation before pinging a team.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/mne-connectivity) and found some lint.

Here's what I've got...

For recipes/mne-connectivity:

  • about/license_family 'BSD-3-Clause' not allowed. Allowed families are
    AGPL, APACHE, BSD, CC, GPL, GPL2, GPL3, LGPL, MIT, MOZILLA, NONE,
    OTHER, PROPRIETARY, PSF, and PUBLIC-DOMAIN.
  • noarch: python recipes are required to have a lower bound on the python version. Typically this means putting python >=3.6 in both host and run but you should check upstream for the package's Python compatibility.

For recipes/mne-connectivity:

  • License is not an SPDX identifier (or a custom LicenseRef) nor an SPDX license expression.

Documentation on acceptable licenses can be found here.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/mne-connectivity) and found some lint.

Here's what I've got...

For recipes/mne-connectivity:

  • noarch: python recipes are required to have a lower bound on the python version. Typically this means putting python >=3.6 in both host and run but you should check upstream for the package's Python compatibility.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/mne-connectivity) and found it was in an excellent condition.

@hoechenberger
Copy link
Member Author

@larsoner I've added you as a co-maintainer; please confirm if that's okay with you, thanks!

extra:
recipe-maintainers:
- hoechenberger
- larsoner
Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, I'm happy to be a maintainer!

@hoechenberger hoechenberger marked this pull request as ready for review February 10, 2022 19:03
@hoechenberger hoechenberger reopened this Feb 10, 2022
@hoechenberger
Copy link
Member Author

@conda-forge-admin, please restart ci

@hoechenberger
Copy link
Member Author

@conda-forge/staged-recipes, this one is ready for review. Thank you!

Comment on lines 23 to 35
- python >=3.7
- mne-base >=0.24
- numpy
- scipy
- xarray
- netCDF4
- pandas
- scikit-learn
- pyvista >=0.30
- pyvistaqt >=0.4
- sip
- pyqt
- pyqt5-sip
Copy link
Member

Choose a reason for hiding this comment

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

These requirements don't align with what upstream has. Are you sure they are correct?

Copy link
Member Author

Choose a reason for hiding this comment

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

The specification of the upstream requirements is a bit sloppy in setup.py; the "actual" deps are in requirements.txt:

numpy
scipy
mne>=0.24
xarray
netCDF4
h5netcdf
pooch
tqdm
matplotlib
pyqt5>=5.10,<5.14; platform_system == "Darwin"
pyqt5>=5.10,!=5.15.2,!=5.15.3; platform_system == "Linux"
pyqt5>=5.10,!=5.15.3; platform_system != "Linux" and platform_system != "Darwin"
pyqt5-sip
sip
pyvista>=0.30
pyvistaqt>=0.4
pandas

cc @larsoner could you confirm this?

Copy link
Member Author

Choose a reason for hiding this comment

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

But I see I missed a few, I'll update

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah that looks right. setup.py is intentionally minimal, we should probably add a [full] option someday...

Copy link
Member Author

Choose a reason for hiding this comment

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

@BastianZim I think with 829b34a now the dependencies of this package are in sync with upstream.

Copy link
Member

Choose a reason for hiding this comment

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

I cannot find scikit-learn upstream otherwise yes, looks the same now.

Copy link
Member Author

Choose a reason for hiding this comment

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

You are right, but scikit-learn is listed in their installation instructions:
https://mne.tools/mne-connectivity/dev/install.html

It seems everything is slightly out of sync here :\ (setup.py, requirements.txt, installation instructions)

Copy link
Member

@BastianZim BastianZim Feb 11, 2022

Choose a reason for hiding this comment

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

Ahh ok thanks. There, minimum versions are listed, those should probably be included here?

Copy link
Member Author

Choose a reason for hiding this comment

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

I have no idea if those listed are up to date. But since they usually don't decrease as time passes, I think I'll just list them here, alright

Copy link
Member Author

Choose a reason for hiding this comment

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

Alright, done! Now we have the best melange of all three: install docs, requirements file, setup.py.
My job here is done! 👩‍🍳

😂

@hoechenberger
Copy link
Member Author

Thank you, @BastianZim!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants