JuliaGraphs / GraphIO.jl

Graph IO functionality for various formats.
Other
61 stars 28 forks source link

Precompilation error with ParserCombinator #56

Open abelsiqueira opened 1 year ago

abelsiqueira commented 1 year ago

I have the following error when adding GraphIO and ParserCombinator in a brand new Julia session:

Warning: Module GraphIOGMLExt with build ID ffffffff-ffff-ffff-0000-177dba44e6bc is missing from the cache.
│  │ This may mean GraphIOGMLExt [10735248-2040-59e9-9abe-fdd6b710d968] does not support precompilation but is imported by a module that does.
│  └ @ Base loading.jl:1793
│  ┌ Error: Error during loading of extension GraphIOGMLExt of GraphIO, use `Base.retry_load_extensions()` to retry.
...

And a similar error for GraphIODOTExt.

I have not been able to identify where the issue comes from, but I am opening the issue here since the error only happens if I add both packages and the extension is defined here. However, it doesn't seem to be an error exclusive to this package, so I will open a discourse thread as well.

abelsiqueira commented 1 year ago

x-ref: https://discourse.julialang.org/t/precompilation-of-package-extension-failure/103983

dgleich commented 4 days ago

In case it helps, steps to replicate ...

] activate --temp ] add GraphIO, EzXML, ParserCombinator

On Julia 1.10, this throws the error above )with more detail here...

│ ┌ Warning: Module GraphIOGMLExt with build ID ffffffff-ffff-ffff-0000-2a0ca37d43b9 is missing from the cache. │ │ This may mean GraphIOGMLExt [10735248-2040-59e9-9abe-fdd6b710d968] does not support precompilation but is imported by a module that does. │ └ @ Base loading.jl:1948 │ ┌ Error: Error during loading of extension GraphIOGMLExt of GraphIO, use Base.retry_load_extensions() to retry. │ │ exception = │ │ 1-element ExceptionStack: │ │ Declaring precompile(false) is not allowed in files that are being precompiled. │ │ Stacktrace:

On Julia 1.11, this throws a circular dependency warning.

┌ Warning: Circular dependency detected. Precompilation will be skipped for: │ Base.PkgId(Base.UUID("357b67ce-33f7-597c-8dc9-7304118606a9"), "GraphIOGraphMLExt") │ Base.PkgId(Base.UUID("10735248-2040-59e9-9abe-fdd6b710d968"), "GraphIOGMLExt") │ Base.PkgId(Base.UUID("2b66b2ab-f48c-58da-9972-304391d605c5"), "GraphIOGEXFExt") │ Base.PkgId(Base.UUID("ab8fad05-3411-592a-a0d6-35146cf9cd29"), "GraphIODOTExt")