JuliaGPU / CUDA.jl

CUDA programming in Julia.
https://juliagpu.org/cuda/
Other
1.16k stars 206 forks source link

EnzymeCore is an unconditional dependency. #2380

Closed maleadt closed 1 month ago

maleadt commented 1 month ago

I just noticed that https://github.com/JuliaGPU/CUDA.jl/pull/2281 also added EnzymeCore as a full dependency, next to it being a weak dependency. That defeats most of the point of it being a package extension. I guess it can just be removed from being a full dependency?

@wsmoses This blocks a 5.3.4 backport release, which shouldn't introduce new dependencies.

vchuravy commented 1 month ago

Hm that's the default extension pattern to make things work prior to 1.10

We can drop it of course, but it will gate functionality on that.

maleadt commented 1 month ago

Hm that's the default extension pattern to make things work prior to 1.10

I don't think it is? Pre 1.9 we used Requires, which doesn't require a dependency https://pkgdocs.julialang.org/v1/creating-packages/#Backwards-compatibility

wsmoses commented 1 month ago

I think it should just be removable then?

maleadt commented 1 month ago

Pre 1.9 we used Requires, which doesn't require a dependency

For completeness: https://github.com/JuliaGPU/CUDA.jl/blob/a0b1b8d200d4bfd45a1ac2c553204aeb9090003d/src/initialization.jl#L158-L160