JuliaLang / PackageCompiler.jl

Compile your Julia Package
https://julialang.github.io/PackageCompiler.jl/dev/
MIT License
1.41k stars 189 forks source link

Allow passing projects (and not just packages) to `create_library` #848

Closed sloede closed 11 months ago

sloede commented 11 months ago

This is an attempt to resolve #840, using the suggestion by @staticfloat in https://github.com/JuliaLang/PackageCompiler.jl/issues/840#issuecomment-1721601096.

Before, create_library only accepted a package_dir to a directory with a Project.toml that describes an actual package, i.e., with a name and uuid. This PR relaxes this requirement and allows one to also pass a mere project directory to create_library.

sloede commented 11 months ago

At the moment, this PR is not functional, since the @ccallable functions from my dependencies do not end up in the final library. Do you see where I went wrong here @KristofferC, seeing that it was you who implemented a lot of the surrounding functionality that I touched?

sloede commented 11 months ago

OK, I seem to have found the issue and fixed it. From some initial tests, this seems to work. It would be great to get some feedback from @staticfloat or @KristofferC regarding whether this is on the right track to being mergeable.

codecov[bot] commented 11 months ago

Codecov Report

Merging #848 (515db8d) into master (6b0adaa) will decrease coverage by 0.29%. The diff coverage is 82.35%.

@@            Coverage Diff             @@
##           master     #848      +/-   ##
==========================================
- Coverage   84.07%   83.79%   -0.29%     
==========================================
  Files           3        3              
  Lines         716      722       +6     
==========================================
+ Hits          602      605       +3     
- Misses        114      117       +3     
Files Changed Coverage Δ
src/PackageCompiler.jl 93.10% <82.35%> (-0.46%) :arrow_down:
KristofferC commented 11 months ago

Nightly CI should be fixed so rerunning it.