a ¥ÈYjã@s,ddlZddlZddlZGdd„deƒZdS)éNc@s.eZdZd dd„Zdd„Zdd„Zd d „ZdS) Ú ComponentNFcCs´||_||_d|_g|_g|_|�r°tj |jd¡}tj |¡�s@| |d¡}|sft d|jdƒ‚n |d|_| |d¡|_tj |jd¡}tj |¡rÒt |dƒ�}|  ¡  ¡|_Wdƒn1sÈ0Y| |d ¡|_|j|j|jd œ}t |d ƒ�0}|  tj|d d d�¡|  d¡Wdƒn1�s40Ynpt |dƒ�}t |  ¡¡}Wdƒn1�sp0Y|�s’t d|jdƒ‚|d|_|d|_|d|_dS)NÚpkg5zprint-value-COMPONENT_NAMEz Component returns empty name at Ú.rzprint-package-namesz pkg5.fmrisÚrzprint-required-packages)ÚnameÚfmrisÚ dependenciesÚwTé)Ú sort_keysÚindentÚ z&Component pkg5 data is empty for path rrr)ÚdebugÚpathrÚsupplied_packagesÚrequired_packagesÚosÚjoinÚisfileÚrun_makeÚ ValueErrorÚopenÚreadÚ splitlinesÚwriteÚjsonÚdumpsÚloads)ÚselfrrZcomponent_pkg5_fileZcomponent_nameZcomponent_pkg5_fmris_fileÚfÚdata©r!ús