Checklist
What is the idea?
While looking at the release notes for the just-released 0.16.5 (which conda-build 25.3 finally became compatible with after a chain of fixes culminating in #5627), I noticed the following: https://lief.re/doc/latest/changelog/pe-0-17-0.html
In short, there's been a big refactor in how windows DLLs are being treated, including again some renamed structures (see "Resources" section), though from a quick code search here, conda-build doesn't seem to be using any of them.
It's probably mostly about testing conda-build together with lief 0.17 as comprehensively as possible.
We already have a defensive upper bound on the conda-forge feedstock that will ensure we can publish lief 0.17 without breaking the world (this was done without knowing about the PE changes, just caution based on recent breakages - good call from @beckermr! 😉)
The recipe in this repo is still lacking such a bound though:
Sidenote: py-lief should probably be listed under the dependencies in pyproject.toml? 🤔
What we can do once 0.17 is out is to publish an uncapped conda-build to a separate label, and test it on as many feedstocks as we feel necessary.
CC @tkelman
Why is this needed?
Staying up to date on lief is essential for getting support for new python versions, performance improvements, fixes etc.
What should happen?
- Add a
<0.17.0a0 bound to recipe/meta.yaml
- Add
py-lief <0.17 to pyprojects.toml
- Once lief 0.17 is out
- do any adaptations that are necessary for conda-build; test them in CI here
- once there's a compatible conda-build release, publish it to a label and test it in conda-forge
Additional Context
No response
Checklist
What is the idea?
While looking at the release notes for the just-released 0.16.5 (which conda-build 25.3 finally became compatible with after a chain of fixes culminating in #5627), I noticed the following: https://lief.re/doc/latest/changelog/pe-0-17-0.html
In short, there's been a big refactor in how windows DLLs are being treated, including again some renamed structures (see "Resources" section), though from a quick code search here, conda-build doesn't seem to be using any of them.
It's probably mostly about testing conda-build together with lief 0.17 as comprehensively as possible.
We already have a defensive upper bound on the conda-forge feedstock that will ensure we can publish lief 0.17 without breaking the world (this was done without knowing about the PE changes, just caution based on recent breakages - good call from @beckermr! 😉)
The recipe in this repo is still lacking such a bound though:
conda-build/recipe/meta.yaml
Line 51 in f3315ff
Sidenote:
py-liefshould probably be listed under the dependencies inpyproject.toml? 🤔conda-build/pyproject.toml
Line 24 in f3315ff
What we can do once 0.17 is out is to publish an uncapped conda-build to a separate label, and test it on as many feedstocks as we feel necessary.
CC @tkelman
Why is this needed?
Staying up to date on lief is essential for getting support for new python versions, performance improvements, fixes etc.
What should happen?
<0.17.0a0bound torecipe/meta.yamlpy-lief <0.17topyprojects.tomlAdditional Context
No response