Giter Club home page Giter Club logo

Comments (4)

KristofferC avatar KristofferC commented on June 11, 2024 1

JuliaLang/julia#50578 for reference when this was introduced.

from packagecompiler.jl.

JeffBezanson avatar JeffBezanson commented on June 11, 2024

It looks like the issue is not type piracy but method overwriting?

from packagecompiler.jl.

krynju avatar krynju commented on June 11, 2024

Yes, but technically type piracy is the only(?) way to achieve this

I'm glad it's validating this and it's throwing warnings/errors, although it would be nice to somehow opt out of errors for this use case.

Currently the only workaround for this is to remove any type piracy on Base from the base sysimage layer, which turns out to be a difficult thing to do (not impossible though)

There's piracy in many major packages like:

  1. OrderedCollections.jl
  2. TimeZones.jl
  3. HTTP.jl

Also Compat.jl is a type piracy factory when used in some Julia version / Compat.jl version configurations

from packagecompiler.jl.

JackDunnNZ avatar JackDunnNZ commented on June 11, 2024

We also ran into this as we previously used method overwriting as an ugly hack to workaround the problem described here: #743 (comment)

In Julia versions 1.9 and earlier, during sysimg compilation we were able to overwrite _artifact_str to download all artifacts rather than just the lazy ones, so that any missing artifacts would be downloaded during julia_init. In 1.10+, that is no longer an option because of this change - obviously the previous solution was pretty hacky but at least was functional. Of course if there is any suggestion for a better solution that would be great

from packagecompiler.jl.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.