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

Adding conda-recipe-manager as a conda-forge feedstock #26371

Merged
merged 10 commits into from
May 31, 2024
32 changes: 32 additions & 0 deletions recipes/conda-recipe-manager/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
BSD 3-Clause License
Copy link
Member

Choose a reason for hiding this comment

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

It looks like this file is already in the source distribution you're using so you shouldn't include an additional copy of it here.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Ok I'm confused then because every piece of documentation I saw says to include it with the recipe file. I thought that was standard practice.

# It is strongly encouraged to include a license file in the package,
# (even if the license doesn't require it) using the license_file entry.
# See http://conda.pydata.org/docs/building/meta-yaml.html#license-file
license_file: LICENSE.txt

  # It is strongly encouraged to include a license file in the package,
  # (even if the license doesn't require it) using the license_file entry.
  # See http://conda.pydata.org/docs/building/meta-yaml.html#license-file
  license_file: LICENSE.txt

https://conda-forge.org/docs/maintainer/adding_pkgs/#the-staging-process

With the help of the staging process, add a package's recipe and license to the staged-recipes repository and create a PR.

https://conda-forge.org/docs/maintainer/adding_pkgs/#checklist

Ensure that you have included a license file if your license requires one – most do. (see here)

Copy link
Member

Choose a reason for hiding this comment

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

Just to clarify, you are correct that this means that it should be included. Most packages package the license file in the source distribution, the file then just needs to list it in the meta.yaml and it is included. You only need to manually include the license file if it isn't included.
So the difference comes from including the actual file (which is often not necessary) and including the path to the file (which is always necessary).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks for the clarification! Maybe the docs or linter could be improved to reflect that nuance?

Either way, I just removed the file in the latest commit.

Copy link
Member

Choose a reason for hiding this comment

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

Yes, I think there is an issue for that, we just haven't gotten around to it... 😄


Copyright (c) 2024, conda-incubator
Copyright (c) 2012, Anaconda, Inc.
Copyright (c) 2015-2022, conda-forge
Copyright (c) 2015-2022 The Bioconda team
Copyright (c) 2015-2022, conda-forge contributors

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
64 changes: 64 additions & 0 deletions recipes/conda-recipe-manager/meta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{% set name = "conda-recipe-manager" %}
{% set version = "0.2.0" %}

package:
name: {{ name|lower }}
version: {{ version }}

source:
url: https://github.com/conda-incubator/conda-recipe-manager/archive/refs/tags/v{{ version }}.tar.gz
sha256: e26102b317ff6bb2d63040db10cfee4db9d660447c3f1c076ddd524805abd1b2

build:
number: 0
script: pip install . --no-deps --no-build-isolation -vv
noarch: python
entry_points:
- conda-recipe-manager = conda_recipe_manager.commands.conda_recipe_manager:conda_recipe_manager
- crm = conda_recipe_manager.commands.conda_recipe_manager:conda_recipe_manager

requirements:
host:
- python >=3.11
- pip
- setuptools
- wheel
run:
- python >=3.11
- click >=8.1.7
- conda
- jinja2
- pyyaml
- jsonschema
- requests

test:
imports:
- conda_recipe_manager.commands
- conda_recipe_manager.licenses
- conda_recipe_manager.parser
source_files:
- tests/
requires:
- pip
- pytest
- pytest-xdist
commands:
- pip check
- python -m pytest -n auto tests/

about:
home: https://github.com/anaconda/conda-recipe-manager
license: BSD-3-Clause
license_family: BSD
license_file: LICENSE
license_url: https://github.com/anaconda/conda-recipe-manager/blob/main/LICENSE
summary: Helper tool for recipes on aggregate.
description: |
Renders local recipes, provides build orders, find outdated recipes.
doc_url: https://github.com/anaconda/conda-recipe-manager
dev_url: https://github.com/anaconda/conda-recipe-manager

extra:
recipe-maintainers:
- schuylermartin45
Loading