-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error writing to JLD2 file with Julia nightly #320
Comments
I have exactly the same question. The CI of my package failed due to JLD2 on Julia nightly. |
Hi @simonp0420 & @BoundaryValueProblems Your errors message looks like the fields / field names of To fix this, we should do the following:
|
Thanks for taking a look at this. I guess I'll keep on eye on JLD2 and update the compatibility requirement for my package once the fix is implemented. |
I'm still getting the error on 1.7 with JLD2 at version 0.4.8: _
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.7.0-DEV.1225 (2021-06-01)
_/ |\__'_|_|_|\__'_| | Commit cfd940e9eb (1 day old master)
|__/ |
(@v1.7) pkg> activate .
Activating project at `/run/timeshift/backup/simonp_win/julia/packages/PSSFSS`
(PSSFSS) pkg> test
Testing PSSFSS
Status `/tmp/jl_b5aIjn/Project.toml`
[667455a9] Cubature v1.5.1
[7a1cc6ca] FFTW v1.4.1
[5789e2e9] FileIO v1.9.1
[19dc6840] HCubature v1.5.0
[033835bb] JLD2 v0.4.8
[e6f89c97] LoggingExtras v0.4.6
[b8a86587] NearestNeighbors v0.4.8
[6fe1bfb0] OffsetArrays v1.9.2
[6b20a5d4] PSSFSS v0.1.3 `/run/timeshift/backup/simonp_win/julia/packages/PSSFSS`
[92933f4c] ProgressMeter v1.7.1
[3cdcf5f2] RecipesBase v1.1.1
[189a3867] Reexport v1.0.0 `https://github.com/simonster/Reexport.jl.git#master`
[1bc83da4] SafeTestsets v0.0.1
[90137ffa] StaticArrays v1.2.2
[f7e6ffb2] Triangulate v1.0.2
[1986cc42] Unitful v1.8.0
[ade2ca70] Dates `@stdlib/Dates`
[8bb1440f] DelimitedFiles `@stdlib/DelimitedFiles`
[37e2e46d] LinearAlgebra `@stdlib/LinearAlgebra`
[56ddb016] Logging `@stdlib/Logging`
[de0858da] Printf `@stdlib/Printf`
[10745b16] Statistics `@stdlib/Statistics`
[8dfed614] Test `@stdlib/Test`
Status `/tmp/jl_b5aIjn/Manifest.toml`
[621f4979] AbstractFFTs v1.0.1
[79e6a3ab] Adapt v3.3.1
[861a8166] Combinatorics v1.0.2
[34da2185] Compat v3.30.0
[187b0558] ConstructionBase v1.2.1
[667455a9] Cubature v1.5.1
[864edb3b] DataStructures v0.18.9
[b4f34e82] Distances v0.10.3
[ffbed154] DocStringExtensions v0.8.4
[7a1cc6ca] FFTW v1.4.1
[5789e2e9] FileIO v1.9.1
[19dc6840] HCubature v1.5.0
[033835bb] JLD2 v0.4.8
[692b3bcd] JLLWrappers v1.3.0
[e6f89c97] LoggingExtras v0.4.6
[1914dd2f] MacroTools v0.5.6
[b8a86587] NearestNeighbors v0.4.8
[6fe1bfb0] OffsetArrays v1.9.2
[bac558e1] OrderedCollections v1.4.1
[6b20a5d4] PSSFSS v0.1.3 `/run/timeshift/backup/simonp_win/julia/packages/PSSFSS`
[21216c6a] Preferences v1.2.2
[92933f4c] ProgressMeter v1.7.1
[1fd47b50] QuadGK v2.4.1
[3cdcf5f2] RecipesBase v1.1.1
[189a3867] Reexport v1.0.0 `https://github.com/simonster/Reexport.jl.git#master`
[ae029012] Requires v1.1.3
[1bc83da4] SafeTestsets v0.0.1
[90137ffa] StaticArrays v1.2.2
[82ae8749] StatsAPI v1.0.0
[3bb67fe8] TranscodingStreams v0.9.5
[f7e6ffb2] Triangulate v1.0.2
[1986cc42] Unitful v1.8.0
[7bc98958] Cubature_jll v1.0.4+0
[f5851436] FFTW_jll v3.3.9+7
[1d5cc7b8] IntelOpenMP_jll v2018.0.3+2
[856f044c] MKL_jll v2021.1.1+1
[5639c1d2] Triangle_jll v1.6.0+0
[0dad84c5] ArgTools `@stdlib/ArgTools`
[56f22d72] Artifacts `@stdlib/Artifacts`
[2a0f44e3] Base64 `@stdlib/Base64`
[ade2ca70] Dates `@stdlib/Dates`
[8bb1440f] DelimitedFiles `@stdlib/DelimitedFiles`
[8ba89e20] Distributed `@stdlib/Distributed`
[f43a241f] Downloads `@stdlib/Downloads`
[b77e0a4c] InteractiveUtils `@stdlib/InteractiveUtils`
[4af54fe1] LazyArtifacts `@stdlib/LazyArtifacts`
[b27032c2] LibCURL `@stdlib/LibCURL`
[76f85450] LibGit2 `@stdlib/LibGit2`
[8f399da3] Libdl `@stdlib/Libdl`
[37e2e46d] LinearAlgebra `@stdlib/LinearAlgebra`
[56ddb016] Logging `@stdlib/Logging`
[d6f4376e] Markdown `@stdlib/Markdown`
[a63ad114] Mmap `@stdlib/Mmap`
[ca575930] NetworkOptions `@stdlib/NetworkOptions`
[44cfe95a] Pkg `@stdlib/Pkg`
[de0858da] Printf `@stdlib/Printf`
[3fa0cd96] REPL `@stdlib/REPL`
[9a3f8284] Random `@stdlib/Random`
[ea8e919c] SHA `@stdlib/SHA`
[9e88b42a] Serialization `@stdlib/Serialization`
[1a1011a3] SharedArrays `@stdlib/SharedArrays`
[6462fe0b] Sockets `@stdlib/Sockets`
[2f01184e] SparseArrays `@stdlib/SparseArrays`
[10745b16] Statistics `@stdlib/Statistics`
[fa267f1f] TOML `@stdlib/TOML`
[a4e569a6] Tar `@stdlib/Tar`
[8dfed614] Test `@stdlib/Test`
[cf7118a7] UUIDs `@stdlib/UUIDs`
[4ec0a83e] Unicode `@stdlib/Unicode`
[e66e0078] CompilerSupportLibraries_jll `@stdlib/CompilerSupportLibraries_jll`
[deac9b47] LibCURL_jll `@stdlib/LibCURL_jll`
[29816b5a] LibSSH2_jll `@stdlib/LibSSH2_jll`
[c8ffd9c3] MbedTLS_jll `@stdlib/MbedTLS_jll`
[14a3606d] MozillaCACerts_jll `@stdlib/MozillaCACerts_jll`
[4536629a] OpenBLAS_jll `@stdlib/OpenBLAS_jll`
[83775a58] Zlib_jll `@stdlib/Zlib_jll`
[8e850b90] libblastrampoline_jll `@stdlib/libblastrampoline_jll`
[8e850ede] nghttp2_jll `@stdlib/nghttp2_jll`
[3f19e933] p7zip_jll `@stdlib/p7zip_jll`
Precompiling project...
43 dependencies successfully precompiled in 17 seconds
Testing Running tests...
Test Summary: | Pass Total
Rings Tests | 5 5
read and write: Error During Test at /run/timeshift/backup/simonp_win/julia/packages/PSSFSS/test/RWGSheet_test.jl:83
Got exception outside of a @test
type DataType has no field mutable
Stacktrace:
[1] getproperty(x::Type, f::Symbol)
@ Base ./Base.jl:28
[2] ismutabletype(x::DataType)
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/datasets.jl:515
[3] hasfielddata(T::Any, encounteredtypes::Vector{DataType})
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/data/writing_datatypes.jl:24
[4] hasdata(T::DataType, encounteredtypes::Vector{DataType})
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/data/writing_datatypes.jl:32
[5] hasdata
@ ~/.julia/packages/JLD2/F7wiE/src/data/writing_datatypes.jl:30 [inlined]
[6] odr(#unused#::Type{PSSFSS.Sheets.RWGSheet})
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/data/writing_datatypes.jl:563
[7] objodr
@ ~/.julia/packages/JLD2/F7wiE/src/data/writing_datatypes.jl:109 [inlined]
[8] write_dataset
@ ~/.julia/packages/JLD2/F7wiE/src/datasets.jl:518 [inlined]
[9] write(g::JLD2.Group{JLD2.JLDFile{JLD2.MmapIO}}, name::String, obj::PSSFSS.Sheets.RWGSheet, wsession::JLD2.JLDWriteSession{Dict{UInt64, JLD2.RelOffset}}; compress::Nothing)
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/compression.jl:87
[10] write(g::JLD2.Group{JLD2.JLDFile{JLD2.MmapIO}}, name::String, obj::PSSFSS.Sheets.RWGSheet, wsession::JLD2.JLDWriteSession{Dict{UInt64, JLD2.RelOffset}}) (repeats 2 times)
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/compression.jl:76
[11] setindex!(g::JLD2.Group{JLD2.JLDFile{JLD2.MmapIO}}, obj::PSSFSS.Sheets.RWGSheet, name::String)
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/groups.jl:124
[12] setindex!(f::JLD2.JLDFile{JLD2.MmapIO}, obj::PSSFSS.Sheets.RWGSheet, name::String)
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/JLD2.jl:380
[13] (::PSSFSS.Sheets.var"#5#6"{PSSFSS.Sheets.RWGSheet})(file::JLD2.JLDFile{JLD2.MmapIO})
@ PSSFSS.Sheets /run/timeshift/backup/simonp_win/julia/packages/PSSFSS/src/Sheets.jl:115
[14] jldopen(::PSSFSS.Sheets.var"#5#6"{PSSFSS.Sheets.RWGSheet}, ::String, ::Vararg{String}; kws::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/loadsave.jl:4
[15] jldopen(::Function, ::String, ::String)
@ JLD2 ~/.julia/packages/JLD2/F7wiE/src/loadsave.jl:2
[16] write_sheet_data(filename::String, sheet::PSSFSS.Sheets.RWGSheet)
@ PSSFSS.Sheets /run/timeshift/backup/simonp_win/julia/packages/PSSFSS/src/Sheets.jl:114
[17] macro expansion
@ /run/timeshift/backup/simonp_win/julia/packages/PSSFSS/test/RWGSheet_test.jl:85 [inlined]
[18] macro expansion
@ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/Test/src/Test.jl:1282 [inlined]
[19] top-level scope
@ /run/timeshift/backup/simonp_win/julia/packages/PSSFSS/test/RWGSheet_test.jl:84
[20] include(mod::Module, _path::String)
@ Base ./Base.jl:389
[21] include(x::String)
@ Main.##272 ~/.julia/packages/SafeTestsets/A83XK/src/SafeTestsets.jl:23
[22] macro expansion
@ /run/timeshift/backup/simonp_win/julia/packages/PSSFSS/test/runtests.jl:5 [inlined]
[23] macro expansion
@ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/Test/src/Test.jl:1282 [inlined]
[24] top-level scope
@ /run/timeshift/backup/simonp_win/julia/packages/PSSFSS/test/runtests.jl:5
[25] eval(m::Module, e::Any)
@ Core ./boot.jl:369
[26] top-level scope
@ ~/.julia/packages/SafeTestsets/A83XK/src/SafeTestsets.jl:23
[27] include(fname::String)
@ Base.MainInclude ./client.jl:451
[28] top-level scope
@ none:6
[29] eval
@ ./boot.jl:369 [inlined]
[30] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:268
[31] _start()
@ Base ./client.jl:495
Test Summary: | Pass Error Total
RWGSheet Tests | 29 1 30
recttri | 9 9
combine right | 5 5
combine top | 5 5
combine topright | 5 5
combine disjoint | 5 5
read and write | 1 1
ERROR: LoadError: Some tests did not pass: 29 passed, 0 failed, 1 errored, 0 broken.
in expression starting at /run/timeshift/backup/simonp_win/julia/packages/PSSFSS/test/runtests.jl:5
ERROR: Package PSSFSS errored during testing |
Yeah, I only realized it after the fact, that
I'm not sure whether there is any way at all to fix this for nightly (before 1.7 comea out) |
How about testing against julia> ver = v"1.7.0-A"
v"1.7.0-A"
julia> testvec = [v"1.7.0-beta", v"1.7.0-rc1", v"1.7.0-dev", v"1.7.0", v"1.7",
v"1.7.0-BETA", v"1.7.0-RC1", v"1.7.0-DEV", v"1.7.0-dev.1225",
v"1.7.0-DEV.1225", v"1.7.1", v"1.8"]
12-element Vector{VersionNumber}:
v"1.7.0-beta"
v"1.7.0-rc1"
⋮
v"1.7.1"
v"1.8.0"
julia> any(isless.(testvec,ver))
false |
Thanks ! I didn't know about this. |
0.4.9 did the trick! Thanks again for your hard work on this essential piece of the Julia ecosystem. |
@JonasIsensee I updated the Project.toml's compat section as |
Here is the error I got. The error message is slightly different from what @simonp0420 initially reported.
|
..... Yeah, I'm sorry. There's nothing that you can do to fix it on your side. For JLD2 to work it needs to use a lot of julia internals and it seems that those are getting changed very frequently now. |
I pushed a commit to my package PSSFSS yesterday and saw that it was failing a CI test involving writing to a JLD2 file. I downloaded the Julia nightly and was able to reproduce the following error at the REPL:
Here is my package environment:
I'm not even sure if I should worry about this error. Should I just remove the nightly tests from my CI?
Thanks,
Peter
The text was updated successfully, but these errors were encountered: