Skip to content

Add downstream Julia CI using locally-built libdaqp#146

Merged
darnstrom merged 3 commits intomasterfrom
copilot/test-cis-for-julia-packages
Mar 28, 2026
Merged

Add downstream Julia CI using locally-built libdaqp#146
darnstrom merged 3 commits intomasterfrom
copilot/test-cis-for-julia-packages

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 26, 2026

No CI existed to catch regressions in the C library that would break downstream Julia packages (ParametricDAQP.jl, ASCertain.jl, PolyDAQP.jl, LinearMPC.jl).

Changes

  • interfaces/daqp-julia/src/DAQPBase.jl — At module-load time, check for a libdaqp.{so,dylib,dll} next to the package root and, if found, override DAQP_jll.libdaqp to point at it. This is the same pattern already in core_tests.jl, lifted to module scope so any downstream package that Pkg.develops this DAQPBase inherits the override automatically — no changes required in downstream test files.

    let _local_lib = joinpath(@__DIR__, "..", "libdaqp." * Libc.Libdl.dlext)
        if isfile(_local_lib)
            @info "DAQPBase: using local libdaqp at $_local_lib"
            DAQP_jll.libdaqp = _local_lib
        end
    end
  • .github/workflows/ci_downstream_julia.yml — New workflow (push/PR to master) that:

    1. Builds libdaqp.so via CMake with -DJULIA=ON; the sync_julia_interface target copies the library alongside the Julia sources in build/interfaces/daqp-julia/.
    2. Runs four parallel matrix jobs (fail-fast: false), one per downstream package — clones the repo, Pkg.develops the local DAQPBase, and calls Pkg.test(). The local library is picked up automatically via the DAQPBase change above.

⌨️ Start Copilot coding agent tasks without leaving your editor — available in VS Code, Visual Studio, JetBrains IDEs and Eclipse.

Copilot AI changed the title [WIP] Add CI to test Julia libraries against updated DAQP Add downstream Julia CI using locally-built libdaqp Mar 26, 2026
Copilot AI requested a review from darnstrom March 26, 2026 22:18
@darnstrom darnstrom marked this pull request as ready for review March 28, 2026 16:03
@darnstrom darnstrom merged commit 5150d0e into master Mar 28, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants