Known bugs
Below you will find a list of known bugs in Swift in the pipeline for being fixed for relevant releases/hot fixes. Bugs will enter this list as soon as they are verified by the QA team.
In general we aim at fixing all registered bugs for the upcoming release but certain bug fixes requires extensive testing which will push them to the next release.
NOTE: Resolved bugs are resolved by the developer, but not released, because it still needs code review and test, before it's finally closed and released (check the list of latest closed bugs).
Between the package releases the bugs that are closed and released can also be found at GitHub.
Error executing template "Designs/dwdoc/Paragraph/Workitem_List.cshtml" System.NullReferenceException: Object reference not set to an instance of an object. at CompiledRazorTemplates.Dynamic.RazorEngine_3a6c148a735f48438592798da1f7c917.Execute() in E:\Dynamicweb.net\Solutions\Dynamicweb\doc.dynamicweb-cms.com\Files\Templates\Designs\dwdoc\Paragraph\Workitem_List.cshtml:line 110 at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader) at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer) at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter) at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template) at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template) at Dynamicweb.Rendering.Template.RenderRazorTemplate()
1 @using BugList; 2 @using System.Threading.Tasks; 3 @using System.Net.Http 4 @using System.Net.Http.Headers 5 @using System.Threading.Tasks 6 @using System.Collections.Generic 7 @using Newtonsoft.Json 8 9 @{ 10 string pat = @GetString("Item.Personal_Access_Token.Value"); 11 string project = @GetString("Item.Project.Value"); 12 string query = @GetString("Item.Query_ID.Value"); 13 string[] states = @GetString("Item.State").Split(','); 14 string build = @GetString("Item.Build"); 15 string tag = @GetString("Item.Tag"); 16 17 var currentuser = Dynamicweb.Security.UserManagement.User.GetCurrentExtranetUser(); 18 19 } 20 21 @{ 22 if (string.IsNullOrWhiteSpace(project)) 23 { 24 project = "dynamicweb"; 25 } 26 27 if (string.IsNullOrWhiteSpace(query)) 28 { 29 query = "6b8fb4d1-fe99-4f0a-9fd4-c554dabc0d66"; //All customer bugs (Non-Rapido) 30 } 31 32 } 33 34 @functions{ 35 36 /// <summary> 37 /// Query: Open Bugs (Customer Bugs), all work items 38 /// </summary> 39 /// <returns></returns> 40 async Task<List<WorkItem>> GetAllItemsInQueryAsync(string pat, string projectName, string queryId) 41 { 42 return await GetAllItemsFromWebApiAsync(queryId); 43 } 44 45 async Task<List<WorkItem>> GetAllItemsFromWebApiAsync(string queryId) 46 { 47 using (var client = new HttpClient()) 48 { 49 client.BaseAddress = new Uri("https://devopsservice.dynamicweb-cms.com/"); 50 client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 51 52 var response = await client.GetAsync($"api/workitem/query/{queryId}"); 53 response.EnsureSuccessStatusCode(); 54 55 var json = await response.Content.ReadAsStringAsync(); 56 return JsonConvert.DeserializeObject<List<WorkItem>>(json); 57 } 58 } 59 60 async Task<string> Test(string queryId) 61 { 62 using (var client = new HttpClient()) 63 { 64 client.BaseAddress = new Uri("https://devopsservice.dynamicweb-cms.com/"); 65 client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 66 67 var response = await client.GetAsync($"api/workitem/query/{queryId}"); 68 69 response.EnsureSuccessStatusCode(); 70 71 72 var json = await response.Content.ReadAsStringAsync(); 73 return json; 74 } 75 } 76 77 public class WorkItem 78 { 79 public int id { get; set; } 80 public Dictionary<string, string> fields { get; set; } 81 } 82 } 83 84 @{ 85 //Fetches query data 86 List<WorkItem> workitems = GetAllItemsFromWebApiAsync(@query).Result; 87 } 88 89 <div class="col-md-12"> 90 91 <table class="table table-responsive"> 92 <thead> 93 <tr> 94 <th>ID</th> 95 <th>Type</th> 96 <th>Description</th> 97 <th>State</th> 98 99 <th>Fixed in</th> 100 </tr> 101 </thead> 102 <tbody> 103 @foreach (var workitem in workitems) 104 { 105 if (states.Contains(workitem.fields["state"])) 106 { 107 if (string.IsNullOrWhiteSpace(build) || (workitem.fields.ContainsKey("integratedInBuild") && workitem.fields["integratedInBuild"] == build)) 108 { 109 110 if (workitem.fields["tags"].Contains(tag) || string.IsNullOrWhiteSpace(tag)) 111 { 112 <tr> 113 <td>@workitem.id</td> 114 <td>@workitem.fields["type"]</td> 115 <td> 116 @workitem.fields["title"] 117 <br /> 118 <em><small>@workitem.fields["areaPath"]</small></em> 119 <br /> 120 <small style="font-size:80%">Date Created: @workitem.fields["created"]</small> 121 <br /> 122 @if (!string.IsNullOrEmpty(workitem.fields["closeddate"])) 123 { 124 var FixedIn = workitem.fields["closeddate"]; 125 <small style="font-size:80%">Date Fixed: @FixedIn</small> 126 } 127 @if(workitem.fields.ContainsKey("FoundIn")){<small style="font-size:80%; display:block;">Found in version: @workitem.fields["FoundIn"]</small>} 128 </td> 129 <td>@workitem.fields["state"]</td> 130 @if(@workitem.fields.ContainsKey("integratedInBuild")) 131 { 132 <td>@workitem.fields["integratedInBuild"]</td> 133 } 134 else 135 { 136 <td></td> 137 } 138 </tr> 139 } 140 } 141 } 142 } 143 <tr> 144 <td align="center" colspan="5"> 145 @if (currentuser != null) 146 { 147 foreach (var customfield in currentuser.CustomFieldValues) 148 { 149 if (customfield.CustomField.SystemName == "AccessUser_DWEmployee" && customfield.Value.ToString() == "True") 150 { 151 <br /> 152 <div> 153 <em> 154 <small> 155 <b>Applied Filters</b> 156 @if (!string.IsNullOrWhiteSpace(states[0])) 157 { 158 <div> 159 States (@foreach (var state in states){<text>@state;</text>}) 160 </div> 161 } 162 @if (!string.IsNullOrWhiteSpace(build)) 163 { 164 <div> Build (@build)</div> 165 } 166 @if (!string.IsNullOrWhiteSpace(tag)) 167 { 168 <div>Tags (@tag)</div> 169 } 170 </small> 171 </em> 172 </div> 173 } 174 } 175 } 176 </td> 177 </tr> 178 </tbody> 179 180 </table> 181 182 </div> 183 184 185 186