Adjust codegen to allow custom mainargs.TokensReader
s and exercise it via example tests for Bundle Libraries
docs
#3504
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.
mainargs.TokensReader[os.Path]
by default for convenience, and added example tests for 4 of the listed bundled librariesDiscover[T]
, since it was not necessary and only ever caused type inference problemslazy val millDiscover = Discover[T]
call from theMillMiscInfo
object to the main body of the class containing user code, so it can see anything the user writes inbuild.mill
, includingTokensReader
instances. The old reasoning for having it outside (that we want it to propagate implicitly to be picked up by nestedRootModule
s) no longer applies with the codegen-timeRootModule
unpackingFixes #2029
Fixes #2857