Tyler Plotting Error

I’m getting the following error using Tyler right out of the box. The versions of the packages are…

(temp) pkg> st
Status `(path)\Project.toml`
⌃ [e9467ef8] GLMakie v0.10.18
⌃ [e170d443] Tyler v0.1.5
⌃ [e9467ef8] GLMakie v0.10.18
⌃ [e170d443] Tyler v0.1.5

Is anyone else having issues with this? I believe Makie recently had a big update to its internals and I’m wondering if they are related.

julia> tyler = Tyler.Map(Rect2f(-0.0921, 51.5, 0.04, 0.025))
ERROR: MethodError: no method matching getindex(::typeof(Makie.Combined))
The function `getindex` exists, but no method is defined for this combination of argument types.
Stacktrace:
 [1] Tyler.Map(extent::GeometryBasics.HyperRectangle{…}, extent_crs::MapTiles.WGS84; resolution::Tuple{…}, figure::Figure, axis::Axis, provider::TileProviders.Provider, crs::MapTiles.WebMercator, max_parallel_downloads::Int64, cache_size_gb::Int64, depth::Int64, halo::Float64, scale::Float64, max_zoom::Int64)
   @ Tyler C:\Users\elipi\.julia\packages\Tyler\u3wcB\src\Tyler.jl:141
 [2] Tyler.Map(extent::GeometryBasics.HyperRectangle{2, Float32}, extent_crs::MapTiles.WGS84)
   @ Tyler C:\Users\elipi\.julia\packages\Tyler\u3wcB\src\Tyler.jl:126
 [3] top-level scope
   @ REPL[29]:1
Some type information was truncated. Use `show(err)` to see complete types.

It looks to me like you somehow got a really old Makie and Tyler version. Try ]pin Makie@0.23 and see what happens? Tyler is also now on v0.2.3.

Did you notice that the version above is for GLMakie? For Makie, I have

julia> pkgversion(Makie)
v"0.21.18"
(temp) pkg> pin Makie@0.23
ERROR: The following package names could not be resolved:
 * Makie (ee78f7c6-11fb-53f2-987a-cfe4a2b5a57a in manifest but not in project)

I also tried to update Tyler past v0.1.5, but I had the following mess show up:

(temp) pkg> add Tyler@0.2.3
   Resolving package versions...
ERROR: Unsatisfiable requirements detected for package NetCDF_jll [7243133f]:
 NetCDF_jll [7243133f] log:
 ├─possible versions are: 4.7.4 - 401.900.300 or uninstalled
 ├─restricted by compatibility requirements with Bzip2_jll [6e34b625] to versions: 4.7.4 - 400.902.211 or uninstalled
 │ └─Bzip2_jll [6e34b625] log:
 │   ├─possible versions are: 1.0.8 or uninstalled (package in sysimage!)
 ├─restricted by compatibility requirements with HDF5_jll [0234f1f7] to versions: 400.902.207 - 400.902.211 or uninstalled
 │ └─HDF5_jll [0234f1f7] log:
 │   ├─possible versions are: 1.10.5 - 1.14.6 or uninstalled
 │   ├─restricted by compatibility requirements with OpenSSL_jll [458c3c95] to versions: [1.10.5, 1.14.0 - 1.14.5] or uninstalled
 │   │ └─OpenSSL_jll [458c3c95] log:
 │   │   ├─possible versions are: 3.0.15 or uninstalled (package in sysimage!)
 │   └─restricted by compatibility requirements with GDAL_jll [a7073274] to versions: 1.14.0 - 1.14.3
 │     └─GDAL_jll [a7073274] log:
 │       ├─possible versions are: 3.0.3 - 303.1100.300 or uninstalled
 │       ├─restricted by julia compatibility requirements to versions: [3.0.3 - 3.2.1, 300.202.100 - 303.1100.300] or uninstalled
 │       ├─restricted by compatibility requirements with NetCDF_jll [7243133f] to versions: 3.0.3 - 302.1000.100 or uninstalled, leaving only versions: [3.0.3 - 3.2.1, 300.202.100 - 302.1000.100] or uninstalled       
 │       │ └─NetCDF_jll [7243133f] log: see above
 │       ├─restricted by compatibility requirements with HDF5_jll [0234f1f7] to versions: [3.0.3 - 300.500.101, 301.700.200 - 302.1000.100] or uninstalled, leaving only versions: [3.0.3 - 3.2.1, 300.202.100 - 300.500.101, 301.700.200 - 302.1000.100] or uninstalled
 │       │ └─HDF5_jll [0234f1f7] log: see above
 │       └─restricted by compatibility requirements with GDAL [add2ef01] to versions: 301.700.200 - 302.1000.300, leaving only versions: 301.700.200 - 302.1000.100
 │         └─GDAL [add2ef01] log:
 │           ├─possible versions are: 0.1.0 - 1.11.0 or uninstalled
 │           ├─restricted by compatibility requirements with BinaryProvider [b99e7846] to versions: 1.1.0 - 1.11.0 or uninstalled
 │           │ └─BinaryProvider [b99e7846] log:
 │           │   ├─possible versions are: 0.4.0 - 0.5.10 or uninstalled
 │           │   └─restricted by julia compatibility requirements to versions: uninstalled
 │           ├─restricted by compatibility requirements with ArchGDAL [c9ce4bd3] to versions: 1.5.1 - 1.11.0
 │           │ └─ArchGDAL [c9ce4bd3] log:
 │           │   ├─possible versions are: 0.1.0 - 0.10.10 or uninstalled
 │           │   ├─restricted by compatibility requirements with Tyler [e170d443] to versions: 0.10.0 - 0.10.10
 │           │   │ └─Tyler [e170d443] log:
 │           │   │   ├─possible versions are: 0.1.0 - 0.2.3 or uninstalled
 │           │   │   └─restricted to versions 0.2.3 by an explicit requirement, leaving only versions: 0.2.3
 │           │   ├─restricted by compatibility requirements with CEnum [fa961155] to versions: [0.1.0 - 0.7.4, 0.10.2 - 0.10.10] or uninstalled, leaving only versions: 0.10.2 - 0.10.10
 │           │   │ └─CEnum [fa961155] log:
 │           │   │   ├─possible versions are: 0.5.0 or uninstalled (package in sysimage!)
 │           │   └─restricted by compatibility requirements with Makie [ee78f7c6] to versions: [0.1.0 - 0.10.2, 0.10.8 - 0.10.10] or uninstalled, leaving only versions: [0.10.2, 0.10.8 - 0.10.10]
 │           │     └─Makie [ee78f7c6] log:
 │           │       ├─possible versions are: 0.9.0 - 0.24.3 or uninstalled
 │           │       ├─restricted by compatibility requirements with Tyler [e170d443] to versions: 0.21.6 - 0.23.0
 │           │       │ └─Tyler [e170d443] log: see above
 │           │       └─restricted by compatibility requirements with GeometryBasics [5c1252a2] to versions: [0.9.0 - 0.12.0, 0.22.0 - 0.24.3] or uninstalled, leaving only versions: 0.22.0 - 0.23.0
 │           │         └─GeometryBasics [5c1252a2] log:
 │           │           ├─possible versions are: 0.1.0 - 0.5.10 or uninstalled
 │           │           ├─restricted by compatibility requirements with Tyler [e170d443] to versions: 0.5.0 - 0.5.10
 │           │           │ └─Tyler [e170d443] log: see above
 │           │           └─restricted by compatibility requirements with GridLayoutBase [3955a311] to versions: [0.4.11, 0.5.1 - 0.5.10], leaving only versions: 0.5.1 - 0.5.10
 │           │             └─GridLayoutBase [3955a311] log:
 │           │               ├─possible versions are: 0.1.0 - 0.11.1 or uninstalled
 │           │               ├─restricted by compatibility requirements with GeometryBasics [5c1252a2] to versions: [0.1.0 - 0.1.3, 0.11.1] or uninstalled
 │           │               │ └─GeometryBasics [5c1252a2] log: see above
 │           │               └─restricted by compatibility requirements with Makie [ee78f7c6] to versions: 0.11.0 - 0.11.1, leaving only versions: 0.11.1
 │           │                 └─Makie [ee78f7c6] log: see above
 │           ├─restricted by compatibility requirements with CEnum [fa961155] to versions: [0.1.0 - 0.2.0, 1.7.1 - 1.11.0] or uninstalled, leaving only versions: 1.7.1 - 1.11.0
 │           │ └─CEnum [fa961155] log: see above
 │           └─restricted by compatibility requirements with GDAL_jll [a7073274] to versions: 0.1.0 - 1.10.0 or uninstalled, leaving only versions: 1.7.1 - 1.10.0
 │             └─GDAL_jll [a7073274] log: see above
 ├─restricted by compatibility requirements with XML2_jll [02c8fc9c] to versions: 4.7.4 - 400.802.103 or uninstalled, leaving only versions: uninstalled
 │ └─XML2_jll [02c8fc9c] log:
 │   └─possible versions are: 2.13.3 or uninstalled (package in sysimage!)
 └─restricted by compatibility requirements with GDAL_jll [a7073274] to versions: 400.902.208 - 400.902.211 — no versions left
   └─GDAL_jll [a7073274] log: see above

Ah yeah, I didn’t notice that when I read the post the first time, hence the edits :D. Yeah I did see the Makie thing, that is a pretty old version from my perspective but it probably dates to this or last year :smiley:

What’s your Julia version by the way? Looks like XML_jll is restricting NetCDF_jll to an old version that is incompatible with current GDAL…

My Julia version is 1.11.5. Is it possible for the restriction on XML_jll to come from a systemimage I have loaded to use this Interpretable AI package: Home · Documentation?

Very possible yes. You should probably try without the sysimage..

Trying without the sysimage got things working! I just wish I understood more about how sysimages interact with the rest of julia. Thanks for the help!

A sysimg is basically a bunch of code baked into a Julia session. Typically this code comes from some packages. In that case you have essentially frozen that environment and baked into Julia to improve startup times. Once started, you can of course load additional packages on top (but they won’t be saved/backed in unless you dump a new sysimg after loading). However, since in Julia you can only load a package once, using a sysimg impacts the package resolution of all further packages. You effectively pinned the versions of the packages in the sysimg.

That’s really all a sysimg is: An environment of pinned/fixed packages baked into Julia to speed up the startup.

2 Likes