Strip topdir from paths to config files in configvars view. Got rid of specific filter cut_layer_path_prefix.
[YOCTO #7463] Signed-off-by: Ed Bartosh <[email protected]> --- .../lib/toaster/toastergui/templates/configvars.html | 4 ++-- .../lib/toaster/toastergui/templatetags/projecttags.py | 17 ++++------------- bitbake/lib/toaster/toastergui/views.py | 8 ++------ 3 files changed, 8 insertions(+), 21 deletions(-) diff --git a/bitbake/lib/toaster/toastergui/templates/configvars.html b/bitbake/lib/toaster/toastergui/templates/configvars.html index 3e4c7e8..42d8fa7 100644 --- a/bitbake/lib/toaster/toastergui/templates/configvars.html +++ b/bitbake/lib/toaster/toastergui/templates/configvars.html @@ -55,7 +55,7 @@ <td class="variable_value"><a data-toggle="modal" href="#variable-{{variable.pk}}">{{variable.variable_value|truncatechars:153}}</a></td> <td class="file"><a data-toggle="modal" href="#variable-{{variable.pk}}"> {% if variable.vhistory.all %} {% autoescape off %} - {{variable.vhistory.all | filter_setin_files:file_filter | cut_layer_path_prefix:layer_names}} + {{variable.vhistory.all | filter_setin_files:file_filter | cut_path_prefix:topdir}} {% endautoescape %} {% endif %} </a></td> <td class="description"> @@ -115,7 +115,7 @@ <tbody> {% for vh in variable.vhistory.all %} <tr> - <td>{{forloop.counter}}</td><td>{{vh.file_name|cut_layer_path_prefix:layer_names}}</td><td>{{vh.operation}}</td><td>{{vh.line_number}}</td> + <td>{{forloop.counter}}</td><td>{{vh.file_name|cut_path_prefix:topdir}}</td><td>{{vh.operation}}</td><td>{{vh.line_number}}</td> </tr> {%endfor%} </tbody> diff --git a/bitbake/lib/toaster/toastergui/templatetags/projecttags.py b/bitbake/lib/toaster/toastergui/templatetags/projecttags.py index 54700e3..4c3bffd 100644 --- a/bitbake/lib/toaster/toastergui/templatetags/projecttags.py +++ b/bitbake/lib/toaster/toastergui/templatetags/projecttags.py @@ -20,6 +20,7 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from datetime import datetime, timedelta +from os.path import relpath import re from django import template from django.utils import timezone @@ -313,16 +314,6 @@ def is_shaid(text): return False @register.filter -def cut_layer_path_prefix(fullpath,layer_names): - ### if some part of the full local path to a layer matches - ### an entry in layer_names (sorted desc), return the layer - ### name relative path. - for lname in layer_names: - # import rpdb; rpdb.set_trace() - # only try layer names that are non-trivial to avoid false matches - if len(lname) >= 4: - # match layer name with as a subdir / or for remote layers /_ - if re.search('/' + lname, fullpath) or re.search('/_' + lname, fullpath): - parts = re.split(lname, fullpath, 1) - return lname + parts[1] - return fullpath +def cut_path_prefix(fullpath, topdir): + """Cut topdir from the fullpath.""" + return relpath(fullpath, topdir) if fullpath.startswith(topdir) else fullpath diff --git a/bitbake/lib/toaster/toastergui/views.py b/bitbake/lib/toaster/toastergui/views.py index b5c4d87..e7110c8 100755 --- a/bitbake/lib/toaster/toastergui/views.py +++ b/bitbake/lib/toaster/toastergui/views.py @@ -39,6 +39,7 @@ from datetime import timedelta, datetime, date from django.utils import formats from toastergui.templatetags.projecttags import json as jsonfilter import json +from os.path import dirname # all new sessions should come through the landing page; # determine in which mode we are running in, and redirect appropriately @@ -1326,11 +1327,6 @@ def configvars(request, build_id): variables = _build_page_range(Paginator(queryset, pagesize), request.GET.get('page', 1)) - layers = Layer.objects.filter(layer_version_layer__projectlayer__project__build=build_id).order_by("-name") - layer_names = map(lambda layer : layer.name, layers) - # special case for meta built-in layer - layer_names.append('meta') - # show all matching files (not just the last one) file_filter= search_term + ":" if filter_string.find('/conf/') > 0: @@ -1353,7 +1349,7 @@ def configvars(request, build_id): 'total_count':queryset_with_search.count(), 'default_orderby' : 'variable_name:+', 'search_term':search_term, - 'layer_names' : layer_names, + 'topdir': dirname(build_dir), # Specifies the display of columns for the table, appearance in "Edit columns" box, toggling default show/hide, and specifying filters for columns 'tablecols' : [ {'name': 'Variable', -- 2.1.4 -- _______________________________________________ toaster mailing list [email protected] https://lists.yoctoproject.org/listinfo/toaster
