Closed essenciary closed 4 years ago
Hi,
Thanks for submitting this issue. Could you provide some extra details as it's hard to tell whether this is a julia, timezones or system configuration issue?
Sys.which("curl")
on your system? My initial thought is that the download command should include the full path to the curl
binary, but the Sys.which("curl")
call happening here should be finding curl
on the PATH.download
function work for other urls or paths?Regarding whether Memento should depend on TimeZones is probably be a larger conversation. Apart from downloading and building the tz database I'd consider it a pretty light dependency and I like the idea of having timezone aware logs by default.
Regards
Hi,
Thanks for getting back to me.
Actually, I managed to dive a bit deeper into this. So we're talking about Ubuntu 16.04 -- a fresh install through Parallels Desktop (running on macOS).
The issue is that curl
does not come bundled with the OS. Running the
curl -g -L -f -o /home/parallels/.julia/packages/TimeZones/wytr8/deps/tzarchive/tzdata2018e.tar.gz https://www.iana.org/time-zones/repository/releases/tzdata2018e.tar.gz
command in the terminal errored saying that curl
is not installed.
Running
sudo apt-get curl
did fix the problem.
On the other hand wget
is distributed with the os. So maybe you could use that? Or have it as a fallback?
Or maybe better, HTTP
-- I presume it handles the various OS issues?
Update 1 - ugh, why am I putting all this here, it should be in TimeZones.jl :)
This seems like an issue with the implementation of download
in base julia, so TimeZones.jl wouldn't be the place for it either. The download
function should fallback to wget
if curl isn't installed, so I'm wondering if Sys.which("curl")
isn't returning nothing
on your system. Once we better understand the issue we can file an issue/PR against base julia.
Cross reference: https://github.com/JuliaTime/TimeZones.jl/issues/153
Oh, looks like this is already fixed in master, and is currently sitting in the backports branch for 1.0.1.
https://github.com/JuliaLang/julia/commit/d6e43e25ff7ca57ff85342243fd072e51ae303d5
@rofinn @omus Thanks for looking into it -- that's good to know. Hopefully, we'll see the fix soon, as it crashes the Genie installation and it's a pain in the cheeks.
Another issue on Windows -- possibly due to firewall restrictions: https://github.com/essenciary/Genie.jl/issues/59
In my opinion, this kind of coupling is not doing Memento
any service...
Okay, so AFAICT there are 3 issues here w/ 1 that relates to Memento directly:
download
in julia 1.0 is broken and we're currently waiting on 1.0.1 to be released. https://github.com/JuliaLang/julia/pull/28764TimeZones.localzone
errors when machines are using a deprecated timezones (e.g., America/Indianapolis
). https://github.com/JuliaTime/TimeZones.jl/issues/154With https://github.com/JuliaTime/TimeZones.jl/issues/154 being fixed and Julia 1.0.1 being released long ago I think it's safe to close this issue.
Is it really necessary to have this dependency? TimeZones.jl consistently breaks build on Ubuntu and I had reports of happening the same on Windows in some cases.