ImageIO.jl
ImageIO.jl copied to clipboard
Not embracing package extensions
This is a memo to get some agreement on why I don't want to introduce the new package extension mechanism for ImageIO (and FileIO).
- Compatibility:
- we want downstream users to refrain from managing the compatibility of different backends
- package authors that only want minimal jpeg support can use JpegTurbo and maintain the compatibility themselves
- workflow:
- we don't want our users to remember every image IO backend name to trigger the wrapper module loading, we want our users to remember only
ImageIOandFileIO.load/FileIO.save. - A common workflow is
(v1.9) pkg> add ImageIO FileIOand every project above it just works (without needing to add them repeatedly). The package extension doesn't support this workflow IIUC. (CRef: https://github.com/JuliaLang/julia/pull/49701)
- we don't want our users to remember every image IO backend name to trigger the wrapper module loading, we want our users to remember only
Agreed! For exactly the reasons you cite.
Would it make sense to make an exception for sixel? It's a pain that it depends on REPL, which takes so long to compile