Comments (12)
I did some more investigating.
The else
clause in build.sh
is for noarch packages (--use-noarch-generic
) source
I know there is interest in making noarch R packages (see conda-forge/r-base-feedstock#43), so we may want to leave this. Also, does the script need to decide if the package should be noarch and pass the appropriate flag? We could use the NeedsCompilation
field from the DESCRIPTION file.
And the DISABLE_AUTOBREW
is explained here.
from conda_r_skeleton_helper.
I'm a little bit confused. Why is the skeleton builder not using the host section at all. Or do you see it?
I thought we need to use the host-section nowadays and more or less all build-dependencies are now host-dependencies.
from conda_r_skeleton_helper.
I see the host section when using cb3:
$ conda build --version
conda-build 3.9.1
$ conda skeleton cran r-ggplot2
$ cat r-ggplot2/meta.yaml | grep -v '^#'
{% set version = '2.2.1' %}
{% set posix = 'm2-' if win else '' %}
{% set native = 'm2w64-' if win else '' %}
package:
name: r-ggplot2
version: {{ version|replace("-", "_") }}
source:
fn: ggplot2_2.2.1.tar.gz
url:
- {{ cran_mirror }}/src/contrib/ggplot2_2.2.1.tar.gz
- {{ cran_mirror }}/src/contrib/Archive/ggplot2/ggplot2_2.2.1.tar.gz
sha256: 5fbc89fec3160ad14ba90bd545b151c7a2e7baad021c0ab4b950ecd6043a8314
build:
merge_build_host: True # [win]
# If this is a new build for the same version, increment the build number.
number: 0
# This is required to make R link correctly on Linux.
rpaths:
- lib/R/lib/
- lib/
requirements:
build:
host:
- r-base
- r-mass
- r-digest
- r-gtable >=0.1.1
- r-lazyeval
- r-plyr >=1.7.1
- r-reshape2
- r-scales >=0.4.1
- r-tibble
run:
- r-base
- r-mass
- r-digest
- r-gtable >=0.1.1
- r-lazyeval
- r-plyr >=1.7.1
- r-reshape2
- r-scales >=0.4.1
- r-tibble
test:
commands:
# You can put additional test commands to be run here.
- $R -e "library('ggplot2')" # [not win]
- "\"%R%\" -e \"library('ggplot2')\"" # [win]
# You can also put a file called run_test.py, run_test.sh, or run_test.bat
# in the recipe that will be run at test time.
# requires:
# Put any additional test requirements here.
about:
home: http://ggplot2.tidyverse.org, https://github.com/tidyverse/ggplot2
license: GPL-2 | file LICENSE
summary: A system for 'declaratively' creating graphics, based on "The Grammar of Graphics".
You provide the data, tell 'ggplot2' how to map variables to aesthetics, what graphical
primitives to use, and it takes care of the details.
license_family: GPL2
from conda_r_skeleton_helper.
Do we want to remove the build section, if not used?
from conda_r_skeleton_helper.
Do we want to remove the build section, if not used?
It's not really important to me, but I confirmed that the recipe will build if that section is missing. Our current helper scripts check line-by-line (and not by integer, but using the for line in file
style), so it'd require some hacking (if I would write it at least) to check the build:
line and the one after it to determine if it needs to be removed. How important is this to you?
from conda_r_skeleton_helper.
It seems that the conda-forge linter doesn't like merge_build_host
, so I think we should remove that.
conda-forge/staged-recipes@4c76367
conda-forge/staged-recipes#5762 (comment)
from conda_r_skeleton_helper.
Lastly, you've merged recipes with unfiltered build.sh
files, e.g.
https://github.com/conda-forge/r-sessioninfo-feedstock/blob/master/recipe/build.sh
Do you still want the helper script to delete the following two lines?
mv DESCRIPTION DESCRIPTION.old
grep -v '^Priority: ' DESCRIPTION.old > DESCRIPTION
from conda_r_skeleton_helper.
@jdblischak lets leave this in. Thanks a lot John!
from conda_r_skeleton_helper.
lets leave this in. Thanks a lot John!
@bgruening Sorry, I'm not sure what "this" refers to (I apologize for the multiple posts in a row). Specifically, what is your opinion on each of the following? Keep or remove?
- meta.yaml: An empty
build:
when their are no build dependencies - meta.yaml:
merge_build_host
- build.sh: Removing 'Priority' from DESCRIPTION
from conda_r_skeleton_helper.
meta.yaml: An empty build: when their are no build dependencies
keep, it can have implications
meta.yaml: merge_build_host
remove
build.sh: Removing 'Priority' from DESCRIPTION
remove
from conda_r_skeleton_helper.
Thanks! :)
from conda_r_skeleton_helper.
relevant discussion and some good documentation here: https://github.com/conda-forge/conda-forge.github.io/pull/576/files#r184472132
from conda_r_skeleton_helper.
Related Issues (20)
- Don't remove `merge_build_host`
- Add sed, coreutils in meta.yaml when make is present HOT 2
- [win] license file for GPL-(2/3) does not exist HOT 5
- r-base minimum version should be parsed from CRAN HOT 2
- The DESCRIPTION text gets removed from the recipes. HOT 5
- noarch packages fail the staged-recipes linter HOT 4
- R packages on Github HOT 9
- Drop binary relocating code HOT 3
- build.sh fails when using a new version of conda skeleton
- Apache License fails linter HOT 4
- recipe generates a conda-forge-linter warning HOT 2
- Add integration tests HOT 3
- packages.txt HOT 3
- GLP-2: License is not an SPDX identifier HOT 20
- Helper ask to install conda-build HOT 6
- GPL-3 is not a valid license? HOT 2
- Archived CRAN R package can be compatible for conda R skeleton helper? HOT 5
- Monitoring grayskull support for R package recipes
- Windows build fails for r-bipartitemodularitymaximization HOT 5
- All run scripts fail on conda version 24 HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from conda_r_skeleton_helper.