Closed matt-chan closed 7 years ago
Yes, I'd be happier with the conda debug builds too. We can replicate on our own machines easier that way. Also I think we can take the packages and send them around. The cost is a slightly longer build I think.
@tovrstra can you take a look at the .cardboardlint recipe if you get time? It's giving an error and I don't know why. I think something changed in the most recent version of cardboardlint?
This should fix it. The latest cardboardlinter fails when unknown config tags are used. At some point I made the doxygen linter simpler to use (less config).
Merging #10 into master will not change coverage. The diff coverage is
n/a
.
@@ Coverage Diff @@
## master #10 +/- ##
=======================================
Coverage 98.22% 98.22%
=======================================
Files 6 6
Lines 225 225
Branches 30 30
=======================================
Hits 221 221
Partials 4 4
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 58b176c...d3d4f13. Read the comment docs.
I'll merge because this is already a very nice improvement! We can always refine later.
Looks pretty good. I think most problems you encounter can be solved by making a debug package (with all the coverage and other debug flags set), installing it and running all tests and linting on it.
The way to do so is to add a line to you recipe to pass a variable to the conda build.sh script that triggers the debug build. See https://conda.io/docs/user-guide/tasks/build-packages/define-metadata.html#use-environment-variables E.g. you can set a
DEBUG_PACKAGE
variable to 1 or something along those lines. It can then be picked up in the build.sh files to perform the compilation with debug settings.The advantage of such an approach is that all libraries will be found as if you are building a release package, without too much effort, e.g. you won't need
python-qcgrids/setup.cfg
.That said, you can wonder how in-place builds should be done right?