[yocto] [layerindex-web][PATCH 1/5] utils.py: fix remove obsolete dependencies

Robert Yang liezhi.yang at windriver.com
Mon Jan 15 17:51:35 PST 2018


Hi Paul,

Do you have any comments, please ?

// Robert

On 01/03/2018 01:42 PM, Robert Yang wrote:
> The obsolete dependency is the one which is in database but not in
> conf/layer.conf anymore. The old code had a problem for newly created
> layerbranch, the new layerbranch has no dependencies, so no need remove. And it
> had a side effect was that when need_remove was cleaned up, it would be set
> again in the next for loop, thus might wrongly remove dependencies. This patch
> can fix the problem.
> 
> Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
> ---
>   layerindex/utils.py | 6 ++----
>   1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/layerindex/utils.py b/layerindex/utils.py
> index e58d8f6..08a4001 100644
> --- a/layerindex/utils.py
> +++ b/layerindex/utils.py
> @@ -122,7 +122,7 @@ def _add_dependency(var, name, layerbranch, config_data, logger=None, required=T
>           logger.debug('Error parsing %s_%s for %s\n%s' % (var, var_name, layer_name, str(vse)))
>           return
>   
> -    need_remove = None
> +    need_remove = LayerDependency.objects.filter(layerbranch=layerbranch).filter(required=required)
>       for dep, ver_list in list(dep_dict.items()):
>           ver_str = None
>           if ver_list:
> @@ -142,9 +142,7 @@ def _add_dependency(var, name, layerbranch, config_data, logger=None, required=T
>                   continue
>   
>           # Preparing to remove obsolete ones
> -        if not need_remove:
> -            need_remove = LayerDependency.objects.filter(layerbranch=layerbranch).filter(required=required).exclude(dependency=dep_layer)
> -        else:
> +        if need_remove:
>               need_remove = need_remove.exclude(dependency=dep_layer)
>   
>           # Skip existing entries.
> 



More information about the yocto mailing list