deps: one lib_wfa2 everywhere, fix aarch64 and the conda build - #230
Merged
Conversation
lib_wfa2 cast alignment inputs to *const i8. c_char is u8 on aarch64-linux, so every aarch64 build failed to compile. Point lib_wfa2, tpa, tracepoints and allwave at one revision carrying the fix, and drop the two [patch] entries that used to reconcile the ekg and AndreaGuarracino forks.
lib_wfa2 cast alignment inputs to a concrete *const i8. c_char is u8 on aarch64-linux, so every aarch64 build failed to compile. Fixed upstream, and every consumer now points at one revision of AndreaGuarracino/lib_wfa2, so the two [patch] entries that reconciled the two forks are gone. lib_wfa2 gained the scope and span setters and the with_penalties constructors that allwave needs, which keeps allwave's match penalty rather than dropping it. onecode moves to f531f5b, which ships pre-generated bindings. The old revision ran bindgen at build time, where an allowlisted _IO_FILE came out as an empty struct while the layout assertion still used the real 216 bytes. That broke the conda build, which is the only environment where clang sees the full glibc definition. Handle the new tracepoints variant FastgaNoDiff: it stores the same target deltas as Fastga without the diff counts, and reconstruction re-aligns each segment, so only the identity estimate is affected.
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes two build failures found by bioconda CI for v0.5.0.
aarch64 did not compile.
lib_wfa2::aligncast its input to a concrete*const i8.c_charisu8on aarch64-linux, so that only matched on x86-64. It now casts toc_charby name.The conda build died in bindgen.
onecodeemitted_IO_FILEas an empty struct while asserting its real 216-byte size. It moves tof531f5b, which ships pre-generated bindings.One lib_wfa2. The
ekgandAndreaGuarracinoforks had diverged, and impg reconciled them with two[patch]entries. Everything now usesAndreaGuarracino/lib_wfa232ad5bb, and both patches are gone. That repo gained the scope and span setters plus thewith_penalties_*constructors allwave needs, so allwave keeps its match penalty instead of dropping it.Also handles the new
TracepointData::FastgaNoDiff: same target deltas asFastgawithout diff counts. Reconstruction re-aligns each segment, so only the identity estimate is affected.572 tests pass. This pulls in a different WFA2-lib submodule and 27 new tpa / 32 new tracepoints commits.