https://pantsbuild.org/ logo
#development
Title
# development
b

bitter-ability-32190

10/10/2022, 4:02 PM
Maybe ๐Ÿž on 2.14.0rc3?
Copy code
MappingError: Failed to parse ./path/to/BUILD.pants:
Name 'wo_resolved_system_packages' is not defined.
...
All registered symbols: ['__defaults__', ..., 'wo_resolved_system_packages', ...]
๐Ÿงต
โœ… 1
So I have 2 macro files declared as:
Copy code
build_file_prelude_globs = [
    # These are our Watson Orders macros (for reducing boilerplate)
    "pants-plugins/wo_syspkg_macros.py",
    "pants-plugins/wo_macros.py",
]
The first defines
wo_resolved_system_packages
and the latter uses it inside another macro. The
BUILD.pants
file is referring to a macro in the latter which refers to the former. This "works" on 2.13
(Jumping from 2.13.0rc1 to 2.14.0rc3)
(And I can't easily merge the two files ๐Ÿ™‚ One is generated ๐Ÿ˜›)
Hmm:
pants.engine.internals.build_files.parse_address_family
is where the error is
Copy code
This also means that if multiple
        # prelude files are present, they probably cannot see each others' symbols. We may choose
        # to change this at some point.
๐Ÿ‘ 1
๐Ÿ‘€ 1
h

hundreds-father-404

10/10/2022, 5:56 PM
feel free to improve that
b

bitter-ability-32190

10/10/2022, 5:57 PM
well whats weird from looking at the code is that this worked in 2.13 and the code doesn't seem to have changed (much). Defintely not the code referenced in the comment
h

hundreds-father-404

10/10/2022, 5:58 PM
I made a lot of changes to parser.py etc for the sake of environments, but I thought it was only on 2.15
b

bitter-ability-32190

10/10/2022, 5:59 PM
__defaults__
seems to be the only substantial change for 2.14.x
h

hundreds-father-404

10/10/2022, 5:59 PM
ah yeah, which was a big change
b

bitter-ability-32190

10/10/2022, 6:00 PM
The parsing code wasn't heavily changed though ๐Ÿ˜• https://github.com/pantsbuild/pants/pull/15836/files
Debugging it shows that symbol is defined ๐Ÿค”