Some fixes to the magic import system #349
Merged
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.
rpc.capnp
should doimport capnp.rpc_capnp
instead ofimport rpc_capnp
. This fixes another bug similar to Absolute import causes duplicate ID #278.ma.mb.mc_capnp
gets imported by python, is to first importma
, then importma.mb
, and finallyma.mb.mc_capnp
. Pycapnp's magic importing is only involved in the last step. So any additional paths specified don't work for nested imports. It is very confusing to only have this for non-nested imports. Users with folder layouts that don't follow pythons import paths can still usecapnp.load(.., .., imports=[blah])
.Possibly this is also a fix for #279 but I cannot verify that.