Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes potential circular import during the import-and-crawl phrase of localized function caching, where a localized file attempts to reference its parent. By initializing the rest of the parent file before attempting to populate the localized function dictionary, it seems to delay the whole thing (and therefore the import-and-crawl phrase) long enough to avoid the ImportError.
In reality, when the potential error hits, the parent file is still partially initialized. In other words, this could technically still be described as a circular import, but, because Python is Python, does not have the effect of one; whatever the localized file is attempting to reference in its parent, that function will necessarily already have been parsed before the localized function is imported.
This is known to work, because HelloChatterbox ran into the problem, and I've already tested the fix against their code.