You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/maintainer/adding_pkgs.md
-1Lines changed: 0 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1174,7 +1174,6 @@ Jinja expressions serve following purposes in the meta.yaml:
1174
1174
- numpy
1175
1175
run:
1176
1176
- python
1177
-
- {{ pin_compatible('numpy') }}
1178
1177
```
1179
1178
1180
1179
For more information please refer to the [Templating with Jinja](https://docs.conda.io/projects/conda-build/en/stable/resources/define-metadata.html#templating-with-jinja) section in the conda-build docs.
Copy file name to clipboardExpand all lines: docs/maintainer/pinning_deps.md
+19-4Lines changed: 19 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -44,23 +44,38 @@ Should be replaced by
44
44
requirements:
45
45
host:
46
46
- gmp
47
+
# most libraries will automatically add the corresponding runtime requirement using
48
+
# a so-called "run-export" from the gmp build pulled into the host environment.
49
+
# In that case you can leave out the following run-requirement:
47
50
run:
48
51
- gmp
49
52
```
50
53
51
-
When there's a new ABI version of gmp (say 7.0), then conda-forge-pinning will be updated. A re-rendering of a package using gmp will change. Therefore to check that a recipe needs to be rebuilt for updated pinnings, you only need to check if the package needs a rerender.
54
+
The run-export mechanism (see below) additionally ensures the correct version constraints
55
+
(corresponding to the expected API/ABI stability of `gmp`) are added, so a recipe with an
56
+
unpinned `gmp` dependency in the host environment will, in the end, work as follows:
`NumPy` is an exception to this (See [Building Against NumPy](knowledge_base.md#linking-numpy)).
66
+
When there's a new ABI version of gmp (say 7.0), then conda-forge-pinning will be updated. A re-rendering of a package using gmp will change. Therefore to check that a recipe needs to be rebuilt for updated pinnings, you only need to check if the package needs a rerender.
56
67
57
68
:::
58
69
59
70
If a package is not pinned in [conda-forge-pinning](https://github.com/conda-forge/conda-forge-pinning-feedstock/blob/master/recipe/conda_build_config.yaml), then the pinning needs to be done manually. If the package is a `C/C++` library with a `C/C++` API that is consumed and linked to by other libraries, then that package is a candidate to be added to `conda-forge-pinning`. Please open an issue in [conda-forge-pinning-feedstock](https://github.com/conda-forge/conda-forge-pinning-feedstock) for discussion.
60
71
61
72
:::note
62
73
63
-
If the constraints in `conda-forge-pinning` are not strict enough, you can override them by changing back to pinning the package with a version manually. You can make a pinning stricter by adding `{{ pin_compatible('gmp', max_pin='x.x.x') }}` to run requirements.
74
+
If the constraints in `conda-forge-pinning` (resp. those coming from the package's run-exports)
75
+
are not strict enough, you can override them by changing back to pinning the package with
76
+
a version manually.
77
+
You can make a pinning stricter by adding `{{ pin_compatible('gmp', max_pin='x.x.x') }}`
0 commit comments