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 recipe for google-weather-tools #20892

Open
wants to merge 32 commits into
base: main
Choose a base branch
from

Conversation

blackvvine
Copy link

@blackvvine blackvvine commented Oct 25, 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.
  • Package does not ship static libraries. If static libraries are needed, follow CFEP-18.
  • 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/google-weather-tools) and found some lint.

Here's what I've got...

For recipes/google-weather-tools:

  • requirements: build: python=3.8 must contain a space between the name and the pin, i.e. python =3.8
  • requirements: build: apache-beam[gcp]==2.40.0 must contain a space between the name and the pin, i.e. apache-beam[gcp] ==2.40.0
  • requirements: build: urllib3==1.26.5 must contain a space between the name and the pin, i.e. urllib3 ==1.26.5
  • requirements: host: python=3.8 must contain a space between the name and the pin, i.e. python =3.8
  • requirements: run: apache-beam[gcp]==2.40.0 must contain a space between the name and the pin, i.e. apache-beam[gcp] ==2.40.0
  • requirements: run: python=3.8 must contain a space between the name and the pin, i.e. python =3.8
  • 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/google-weather-tools:

  • 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 just wanted to let you know that I linted all conda-recipes in your PR (recipes/google-weather-tools) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/google-weather-tools:

  • 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/google-weather-tools) and found some lint.

Here's what I've got...

For recipes/google-weather-tools:

  • requirements: build: python=3.8.13 must contain a space between the name and the pin, i.e. python =3.8.13
  • requirements: build: cdsapi=0.5.1 must contain a space between the name and the pin, i.e. cdsapi =0.5.1
  • requirements: build: ecmwf-api-client=1.6.3 must contain a space between the name and the pin, i.e. ecmwf-api-client =1.6.3
  • requirements: build: apache-beam[gcp]=2.40.0 must contain a space between the name and the pin, i.e. apache-beam[gcp] =2.40.0
  • requirements: build: numpy=1.22.4 must contain a space between the name and the pin, i.e. numpy =1.22.4
  • requirements: build: pandas=1.5.1 must contain a space between the name and the pin, i.e. pandas =1.5.1
  • requirements: build: xarray=2022.10.0 must contain a space between the name and the pin, i.e. xarray =2022.10.0
  • requirements: build: requests=2.28.1 must contain a space between the name and the pin, i.e. requests =2.28.1
  • requirements: build: google-cloud-firestore=2.7.0 must contain a space between the name and the pin, i.e. google-cloud-firestore =2.7.0
  • requirements: build: dataclasses=0.8 must contain a space between the name and the pin, i.e. dataclasses =0.8
  • requirements: build: cfgrib=0.9.10.2 must contain a space between the name and the pin, i.e. cfgrib =0.9.10.2
  • requirements: build: netcdf4=1.6.1 must contain a space between the name and the pin, i.e. netcdf4 =1.6.1
  • requirements: build: geojson=2.5.0=py_0 must contain a space between the name and the pin, i.e. geojson =2.5.0=py_0
  • requirements: build: simplejson=3.17.6 must contain a space between the name and the pin, i.e. simplejson =3.17.6
  • requirements: build: rioxarray=0.12.2 must contain a space between the name and the pin, i.e. rioxarray =0.12.2
  • requirements: build: pyproj=3.4.0 must contain a space between the name and the pin, i.e. pyproj =3.4.0
  • requirements: build: gdal=3.5.2 must contain a space between the name and the pin, i.e. gdal =3.5.2
  • requirements: build: pygrib=2.1.4 must contain a space between the name and the pin, i.e. pygrib =2.1.4
  • requirements: build: flake8=5.0.4 must contain a space between the name and the pin, i.e. flake8 =5.0.4
  • requirements: build: pytest=7.2.0 must contain a space between the name and the pin, i.e. pytest =7.2.0
  • requirements: build: pytest-subtests=0.8.0 must contain a space between the name and the pin, i.e. pytest-subtests =0.8.0
  • requirements: build: xarray-beam=0.3.1 must contain a space between the name and the pin, i.e. xarray-beam =0.3.1
  • requirements: build: absl-py=1.3.0 must contain a space between the name and the pin, i.e. absl-py =1.3.0
  • requirements: build: metview-batch=5.17.0 must contain a space between the name and the pin, i.e. metview-batch =5.17.0
  • requirements: build: pip=22.3 must contain a space between the name and the pin, i.e. pip =22.3
  • requirements: build: google-cloud-datastore==2.9.0 must contain a space between the name and the pin, i.e. google-cloud-datastore ==2.9.0
  • requirements: build: google-cloud-bigquery==3.3.5 must contain a space between the name and the pin, i.e. google-cloud-bigquery ==3.3.5
  • requirements: build: urllib3==1.26.5 must contain a space between the name and the pin, i.e. urllib3 ==1.26.5
  • requirements: build: earthengine-api==0.1.329 must contain a space between the name and the pin, i.e. earthengine-api ==0.1.329
  • requirements: build: google-cloud-storage==2.2.1 must contain a space between the name and the pin, i.e. google-cloud-storage ==2.2.1

For recipes/google-weather-tools:

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

Documentation on acceptable licenses can be found here.

recipes/google-weather-tools/meta.yaml Outdated Show resolved Hide resolved
@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/google-weather-tools) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/google-weather-tools:

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

Documentation on acceptable licenses can be found here.

@xhochy
Copy link
Member

xhochy commented Oct 31, 2022

The recipe still looks very wrong. I strongly suggest you try out grayskull and read a bit on the conda-build documentation https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html about what you are doing here. This kind of package doesn't need a build section at all.

@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/google-cloud-storage, recipes/google-weather-tools) and found some lint.

Here's what I've got...

For recipes/google-cloud-storage:

  • Feedstock with the same name exists in conda-forge.

For recipes/google-cloud-storage:

  • A conda package with same name (google-cloud-storage) already exists.
  • License is not an SPDX identifier (or a custom LicenseRef) nor an SPDX license expression.

Documentation on acceptable licenses can be found here.

For recipes/google-weather-tools:

  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [54]

For recipes/google-weather-tools:

  • Jinja2 variable references are suggested to take a {{<one space><variable name><one space>}} form. See lines [10].
  • 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/google-cloud-storage, recipes/google-weather-tools) and found some lint.

Here's what I've got...

For recipes/google-cloud-storage:

  • Feedstock with the same name exists in conda-forge.

For recipes/google-cloud-storage:

  • A conda package with same name (google-cloud-storage) already exists.
  • License is not an SPDX identifier (or a custom LicenseRef) nor an SPDX license expression.

Documentation on acceptable licenses can be found here.

For recipes/google-weather-tools:

  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [53]

For recipes/google-weather-tools:

  • Jinja2 variable references are suggested to take a {{<one space><variable name><one space>}} form. See lines [10].
  • 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/google-weather-tools) and found some lint.

Here's what I've got...

For recipes/google-weather-tools:

  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [53]

For recipes/google-weather-tools:

  • Jinja2 variable references are suggested to take a {{<one space><variable name><one space>}} form. See lines [10].
  • 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/google-weather-tools) and found some lint.

Here's what I've got...

For recipes/google-weather-tools:

  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [49]

For recipes/google-weather-tools:

  • Jinja2 variable references are suggested to take a {{<one space><variable name><one space>}} form. See lines [10].
  • 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 just wanted to let you know that I linted all conda-recipes in your PR (recipes/google-weather-tools) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/google-weather-tools:

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

Documentation on acceptable licenses can be found here.

@blackvvine
Copy link
Author

@conda-forge/help-python The recipe has passed all checks and is ready for your review. Thanks.

recipes/google-weather-tools/meta.yaml Show resolved Hide resolved
git_rev: "{{ git_rev }}"

build:
skip: true # [win]
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
skip: true # [win]
noarch: python

Copy link
Author

Choose a reason for hiding this comment

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

@xhochy Thanks for your help and happy new year! Some of our runtime dependencies are not supported in Windows, what is the right way to release for Unix only if having noarch is mandatory?

Copy link
Author

Choose a reason for hiding this comment

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

According to this answer, I assume the recipe should not be noarch since it's not supported in Windows. Please correct me if I'm wrong.

Copy link
Member

Choose a reason for hiding this comment

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

No, if it's just that the dependencies are unavailable on Windows, that's fine for this to be noarch. It's only a problem with dependencies that are only install on Windows/not-Windows. noarch packages are generally only built on Linux systems, which will succeed. The missing dependencies will then keep it from being installable on Windows.

Copy link

Choose a reason for hiding this comment

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

I'm a bit confused by the discussion here. In my understanding, the solution to move forward is to configure this to be noarch.

To add some general background context: We have not yet implemented windows support in the package we want to release (google/weather-tools#64). If we set this to noarch, does that mean we have to fix this bug in order to proceed?

Thanks for your inputs, @dopplershift and @xhochy.

Copy link
Member

Choose a reason for hiding this comment

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

Well since you said:

Some of our runtime dependencies are not supported in Windows

That's why I said noarch was the right answer. This is the first time it's been mentioned that it doesn't work properly on Windows. In that case, we can proceed with non-noarch.

Having said that though, it looks like the problem is just that you're using scripts for the executables. That's pretty easy to move to console_scripts which work on Windows and are supported by our noarch builds.

recipes/google-weather-tools/meta.yaml Outdated Show resolved Hide resolved
recipes/google-weather-tools/meta.yaml Outdated Show resolved Hide resolved
@conda-forge-webservices
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/google-weather-tools) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/google-weather-tools:

  • 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-webservices
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/google-weather-tools) and found some lint.

Here's what I've got...

For recipes/google-weather-tools:

  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [33]
  • noarch packages can't have selectors. If the selectors are necessary, please remove noarch: python.

For recipes/google-weather-tools:

  • 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-webservices
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/google-weather-tools) and found some lint.

Here's what I've got...

For recipes/google-weather-tools:

  • Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [28]
  • noarch packages can't have selectors. If the selectors are necessary, please remove noarch: python.

For recipes/google-weather-tools:

  • 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-webservices
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/google-weather-tools) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/google-weather-tools:

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

Documentation on acceptable licenses can be found here.

@blackvvine
Copy link
Author

@conda-forge/help-python The recipe has passed all checks and is ready for your review. Thanks.

Comment on lines +10 to +12
git_url: https://github.com/google/weather-tools.git
git_rev: "{{ git_rev }}"

Copy link
Member

Choose a reason for hiding this comment

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

We generally only want to be using released versions.

Copy link

Choose a reason for hiding this comment

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

+1 - is there a way to configure this to reflect our git release tags?

Comment on lines +10 to +11
git_url: https://github.com/google/weather-tools.git
git_rev: "{{ git_rev }}"
Copy link
Member

Choose a reason for hiding this comment

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

If all you want is to just get a git tag, use:

Suggested change
git_url: https://github.com/google/weather-tools.git
git_rev: "{{ git_rev }}"
url: https://github.com/google/weather-tools/archive/refs/tags/v{{ version }}.tar.gz
sha256: YOURSHAHERE

Copy link

Choose a reason for hiding this comment

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

Thanks! Will TAL at this soon.

@stale
Copy link

stale bot commented Jul 22, 2023

Hi friend!

We really, really, really appreciate that you have taken the time to make a PR on conda-forge/staged-recipes! conda-forge only exists because people like you donate their time to build and maintain conda recipes for use by the community.

In an effort to maintain this repository and increase the signal-to-noise for open PRs, the maintainers of staged-recipes close excessively old PRs after six months. This PR will remain open for another month, and then will be closed.

If you'd like to keep it open, please comment/push and we will be happy to oblige! Note that very old PRs will likely need to be rebased on main so that they can be rebuilt with the most recent CI scripts. If you have any trouble, or we missed reviewing this PR in the first place (sorry!), feel free to ping the team using a special command in a comment on the PR to get the attention of the staged-recipes team.

Cheers and thank you for contributing to this community effort!

@stale stale bot added the stale will be closed in 30 days label Jul 22, 2023
@stale stale bot removed stale will be closed in 30 days labels Sep 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

None yet

6 participants