Skip to content

Pybind with error dictionary changed size during iteration #224

@xijq227

Description

@xijq227

I'm trying to generate a class of openconfig-interfaces.yang with augment in openconfig-if-ip.yang

nexus@Nexus-XPS MINGW64 ~/Documents/NERA/Starhub/QFX Phase1B/NorthStar Appformix Demo Project
$ python --version
Python 2.7.14
(env)
nexus@Nexus-XPS MINGW64 ~/Documents/NERA/Starhub/QFX Phase1B/NorthStar Appformix Demo Project
$ pyang --version
pyang 1.7.5
(env)
$ pyang --plugindir env/Lib/site-packages/pyangbind/plugin/ -f pybind -o openconfig_interfaces.py -p yang_modules/ yang_modules/oc_models/interfaces/openconfig-interfaces.yang yang_modules/oc_models/interfaces/openconfig-if-ip.yang --lax-quote-checks
Traceback (most recent call last):
  File "C:/Users/nexus/DOCUME~1/NERA/Starhub/QFXPHA~1/NORTHS~1/env/Scripts/pyang", line 450, in <module>
    run()
  File "C:/Users/nexus/DOCUME~1/NERA/Starhub/QFXPHA~1/NORTHS~1/env/Scripts/pyang", line 419, in run
    emit_obj.emit(ctx, modules, fd)
  File "env/Lib/site-packages/pyangbind/plugin/pybind.py", line 222, in emit
    build_pybind(ctx, modules, fd)
  File "env/Lib/site-packages/pyangbind/plugin/pybind.py", line 406, in build_pybind
    build_identities(ctx, defn['identity'])
  File "env/Lib/site-packages/pyangbind/plugin/pybind.py", line 446, in build_identities
    idstore.build_store_from_definitions(ctx, defnd)
  File "C:\users\nexus\docume~1\nera\starhub\qfxpha~1\norths~1\env\lib\site-packages\pyangbind\helpers\identity.py", line 75, in build_store_from_definitions
    mod_ref_prefixes = module_import_prefixes(ctx)
  File "C:\users\nexus\docume~1\nera\starhub\qfxpha~1\norths~1\env\lib\site-packages\pyangbind\helpers\misc.py", line 24, in module_import_prefixes
    for mod in ctx.modules:
RuntimeError: dictionary changed size during iteration

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions