Previously (v0.3), to collect optional arguments in a dictionary, I used:
Dict(zip(optargs...)...)

After 0.4 release, in response to this warning:
WARNING: Dict{K,V}(ks::Tuple{Vararg{K}},vs::Tuple{Vararg{V}}) is 
deprecated, use Dict{K,V}(zip(ks,vs)) instead.

I started using
Dict{Symbol,Any}(zip(opta))

which was working in 0.4.1.

Today my Ubuntu updater pulled in 0.4.2, and the following error happens:

fopt(x::Float64; optargs...) = optargs
opta = fopt(2.0, z=true)
Dict{Symbol,Any}(zip(opta))

ERROR: BoundsError: attempt to access ((:z,true),)
  at index [2]
 in call at dict.jl:390


2 questions:
(1) What was the breaking change between 0.4.1. and 0.4.2?
(2) What is the recommended way to collect optional arguments inside a 
function into an associative dictionary and then (after some exploration of 
it) pass to another function?
Thanks!

Reply via email to