Sometimes we need to open a gap in special locations; for example, the gap is usually opened 3 bp upstream of the PAM sequence in CRISPR-Cas9 editing. When we meet some repeat nucleotides, the gap usually opens on the left side other than on -3 if we don't add the gap_incentive parameter.
There is already a Cython implementation here https://github.com/pinellolab/CRISPResso2/blob/master/CRISPResso2/CRISPResso2Align.pyx. I think it will extend the applicability of Bioalignment.jl if you can add the gap_incentive support.