Skip to content

Fix ordering and dyne sourcing bugs

Akmod requested to merge Akm0d/pop-config:v12_0_1 into master

Description:

  • Refactored the "dirs" plugin so that it is clear in what order configs are being processed
  • Added docstrings and comments so that it is clear what each function is doing.
  • Sources and dynes are now processed correctly and in the right order.
  • Don't process all dynes, only the ones used by "sources"
  • Don't deepcopy anything when processing configs (Cyclomatic complexity was through the roof), instead just handle it in the right order
  • options using the cli dyne now ONLY show up under the proper source in OPT, not their OG source AND the cli source
  • Merged projects that extend a dyne only add to the cli if the source explicitly requires it.
  • "dynes" was being used instead of "sources" for processing CONFIGs and CLI_CONFIGs, they were improperly mashed together causing a number of bugs -- this was the main driver for refactoring config.dirs -- to process dynes and sources separately, then merge them deliberately at the END.

Testing: Current tests passing, added new tests, and tested manually with idem's test suite, idem's cli, and heist's cli

Edited by Akmod

Merge request reports