JuliaTime / TimeZones.jl

IANA time zone database access for the Julia programming language
Other
87 stars 53 forks source link

`TimeZones.chr2ind` is not defined #427

Open lgeissbauer-btig opened 1 year ago

lgeissbauer-btig commented 1 year ago

https://github.com/JuliaTime/TimeZones.jl/blob/906cea08c2ca4a5c76b12e14fb60d5df7990fbf7/src/parse.jl#L9 https://github.com/JuliaTime/TimeZones.jl/blob/906cea08c2ca4a5c76b12e14fb60d5df7990fbf7/src/parse.jl#L41

││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\file.jl:162 CSV.:(var"#File#28")(_51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, 
_51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _51, _3, source)
│││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\file.jl:222 CSV.File(ctx)
││││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\file.jl:226 #self#(ctx, false)
│││││││┌ @ threadingconstructs.jl:344 task = Base.Threads.Task(#30)
││││││││┌ @ task.jl:5 #self#(f, 0)
│││││││││┌ @ C:\.julia\packages\WorkerUtilities\ey0fP\src\WorkerUtilities.jl:384 ret = CSV.multithreadparse(getfield(#self#, Symbol("##296")), getfield(#self#, Symbol("##297")), getfield(#self#, Symbol("##298")), getfield(#self#, Symbol("##299")), getfield(#self#, Symbol("##300")), getfield(#self#, Symbol("##301")))
││││││││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\file.jl:359 CSV.parsefilechunk!(ctx, task_pos, task_len, rowchunkguess, rowchunkoffset, task_columns, ctx.customtypes)
│││││││││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\file.jl:549 CSV.parserow(startpos, row, numwarnings, ctx, buf, pos, len, rowsguess, rowoffset, columns, customtypes)
││││││││││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\file.jl:884 CSV.parserow(startpos, row, numwarnings, ctx, buf, pos, len, rowsguess, rowoffset, cols, customtypes)
│││││││││││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\file.jl:696 CSV.detectcell(buf, pos, len, row, rowoffset, j, col, ctx, rowsguess)
││││││││││││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\file.jl:714 CSV.detect(CSV.pass, buf, pos, len, opts, false, ctx.downcast, rowoffset CSV.:+ row, i)
│││││││││││││││┌ @ C:\.julia\packages\CSV\b8ebJ\src\utils.jl:501 date = Parsers.xparse(CSV.Date, buf, pos, len, opts, CSV.Date)
││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\Parsers.jl:346 Parsers._xparse(T, buf, pos, len, options, S)
│││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\Parsers.jl:338 Parsers.Result(Parsers.emptysentinel(options)(Parsers.delimiter(options)(Parsers.whitespace(options)(Parsers.quoted(options)(Parsers.whitespace(options)(Parsers.sentinel(options)(Parsers.typeparser(options))))))))(T, source, pos, len, S)
││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\components.jl:9 getfield(#self#, :parser)(T, source, pos, len, b, code, pl)
│││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\components.jl:36 getfield(#self#, :parser)(T, source, pos, len, b, code, pl)
││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\components.jl:364 getfield(#self#, :parser)(T, source, pos, len, b, code, pl)
│││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\components.jl:85 getfield(#self#, :parser)(T, source, pos, len, b, code, pl)
││││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\components.jl:216 getfield(#self#, :parser)(T, source, pos, len, b, code, pl)
│││││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\components.jl:85 getfield(#self#, :parser)(T, source, pos, len, b, code, pl)
││││││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\components.jl:240 getfield(#self#, :parser)(T, source, pos, len, b, code, pl)
│││││││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\components.jl:378 Parsers.typeparser(T, source, pos, len, b, code, pl, getfield(#self#, :opts))
││││││││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\dates.jl:380 Parsers.tryparsenext(tok, source, pos, len, b, code)
│││││││││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\dates.jl:318 res = Dates.tryparsenext(tok, str, 1, strlen)
││││││││││││││││││││││││││││┌ @ C:\.julia\packages\TimeZones\V28u7\src\parse.jl:69 TimeZones.tryparsenext_fixedtz(str, i, len, TimeZones.min_width(d), TimeZones.max_width(d))
│││││││││││││││││││││││││││││┌ @ C:\.julia\packages\TimeZones\V28u7\src\parse.jl:9 TimeZones.ind2chr(str, i)
││││││││││││││││││││││││││││││ `TimeZones.ind2chr` is not defined
│││││││││││││││││││││││││││││└─────────────────────────────────────────────────────
│││││││││││││││││││││││││││││┌ @ C:\.julia\packages\TimeZones\V28u7\src\parse.jl:9 TimeZones.chr2ind(str, TimeZones.ind2chr(str, i) TimeZones.:+ max_width TimeZones.:- 1)
││││││││││││││││││││││││││││││ `TimeZones.chr2ind` is not defined
│││││││││││││││││││││││││││││└─────────────────────────────────────────────────────
││││││││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\dates.jl:382 Parsers.tryparsenext(tok, source, pos, len, b, code)
│││││││││││││││││││││││││││┌ @ C:\.julia\packages\Parsers\LU05s\src\dates.jl:318 res = Dates.tryparsenext(tok, str, 1, strlen)
││││││││││││││││││││││││││││┌ @ C:\.julia\packages\TimeZones\V28u7\src\parse.jl:73 TimeZones.tryparsenext_tz(str, i, len, TimeZones.min_width(d), TimeZones.max_width(d))
│││││││││││││││││││││││││││││┌ @ C:\.julia\packages\TimeZones\V28u7\src\parse.jl:41 TimeZones.ind2chr(str, i)
││││││││││││││││││││││││││││││ `TimeZones.ind2chr` is not defined
│││││││││││││││││││││││││││││└──────────────────────────────────────────────────────
omus commented 1 year ago

So ind2chr and chr2ind were deprecated way back in Julia 0.7:

Looks like this code path is untested and needs to be updated.