Julia-Tempering/Pigeons.jl

Export conflict with `load` function

Closed this issue · 2 comments

Hi all, and thank you for the excellent package!
I recently rolled out support for Pigeons in https://sefffal.github.io/Octofitter.jl/dev/ with great success.

I noticed that Pigeons currently exports a load symbol. load and save are widely used across the Julia ecosystem through by packages using the FileIO interface. FileIO lets packages register formats so that users can generically write load("fname.ext") and the correct package will be selected based on ext and any magic bytes in the file.
The upshot is that many (perhaps most) users using Pigeons as part of a larger program will already have a load function in the namespace that causes naming conflicts.

Would you consider either 1) un-exporting load so that it must be used via Pigeons.load or 2) adopting the FileIO interface to remove this conflict?
There are of course workarounds, this is just a matter of convenience.

Thank you very much!

Thank you! So glad it is helpful, I was just looking at Octofitter recently and what an amazing package!

Completely agree about load, I'll consult with the others for which of the 2 ideas to do (leaning to 1 atm) but I should be able to get around to do it in the next few days! Have a good evening and I'll ping you once the change is pushed...

Resolved in v0.4.1. Thanks again for the suggestion!