Skip to content
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

bpart: Skip implicit import reval if using'd export set is unchanged #57421

Merged
merged 1 commit into from
Feb 15, 2025

Conversation

Keno
Copy link
Member

@Keno Keno commented Feb 15, 2025

When loading a pkgimage, the new bpart validation code needs to check if the export set of any using'd packages differs from what it would have been during precompile. This could e.g. happen if somebody (or Revise) eval'd a new export statement into a package that was using'd. However, this case is somewhat rare, so let's optimize it by keeping a bit in Module that keeps track of whether anything like that has happened and if not skipping the revalidation. This slightly improves pkgimage load time in the ordinary case. More optimizations to follow.

Base automatically changed from kf/partitionexport to master February 15, 2025 07:54
@Keno Keno force-pushed the kf/optimimplicitreval branch 2 times, most recently from 4fa6bd5 to 657b5d5 Compare February 15, 2025 18:37
…hanged

When loading a pkgimage, the new bpart validation code needs to check if the
export set of any using'd packages differs from what it would have been during
precompile. This could e.g. happen if somebody (or Revise) eval'd a new `export`
statement into a package that was `using`'d. However, this case is somewhat
rare, so let's optimize it by keeping a bit in `Module` that keeps track of
whether anything like that has happened and if not skipping the revalidation.
This slightly improves pkgimage load time in the ordinary case. More optimizations
to follow.
@Keno Keno force-pushed the kf/optimimplicitreval branch from 657b5d5 to a7a09e3 Compare February 15, 2025 18:40
@KristofferC KristofferC added the backport 1.12 Change should be backported to release-1.12 label Feb 15, 2025
@KristofferC KristofferC mentioned this pull request Feb 15, 2025
31 tasks
@Keno Keno merged commit 39255d4 into master Feb 15, 2025
8 checks passed
@Keno Keno deleted the kf/optimimplicitreval branch February 15, 2025 22:59
KristofferC pushed a commit that referenced this pull request Feb 17, 2025
…57421)

When loading a pkgimage, the new bpart validation code needs to check if
the export set of any using'd packages differs from what it would have
been during precompile. This could e.g. happen if somebody (or Revise)
eval'd a new `export` statement into a package that was `using`'d.
However, this case is somewhat rare, so let's optimize it by keeping a
bit in `Module` that keeps track of whether anything like that has
happened and if not skipping the revalidation. This slightly improves
pkgimage load time in the ordinary case. More optimizations to follow.

(cherry picked from commit 39255d4)
@KristofferC KristofferC mentioned this pull request Feb 17, 2025
15 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport 1.12 Change should be backported to release-1.12
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants