Repository: james-project Updated Branches: refs/heads/master 6d72e4d20 -> 42c50f2c6
Remove James 3.0 roadmap progress Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/42c50f2c Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/42c50f2c Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/42c50f2c Branch: refs/heads/master Commit: 42c50f2c6d33546906b27cc648a5c97ca8afe525 Parents: 6d72e4d Author: Benoit Tellier <[email protected]> Authored: Fri Feb 1 13:53:54 2019 +0700 Committer: Matthieu Baechler <[email protected]> Committed: Wed Feb 6 15:52:55 2019 +0100 ---------------------------------------------------------------------- james3-roadmap-progress/index.html | 156 ----------------------------- james3-roadmap-progress/progress.json | 87 ---------------- 2 files changed, 243 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/42c50f2c/james3-roadmap-progress/index.html ---------------------------------------------------------------------- diff --git a/james3-roadmap-progress/index.html b/james3-roadmap-progress/index.html deleted file mode 100644 index b87dd6a..0000000 --- a/james3-roadmap-progress/index.html +++ /dev/null @@ -1,156 +0,0 @@ -<!DOCTYPE HTML> -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <!-- Plotly.js --> - <script type="text/javascript" src="https://cdn.plot.ly/plotly-latest.min.js"></script> - <title> James 3 progressing tasks </title> -</head> - -<body> - <div id="myDiv" style="width: 100%; height: 800px;"> - <!-- Plotly chart will be drawn inside this DIV --> - </div> - <script> - function createChart(x, y, text, title, height) { - if (!height) { - height = 210; - } else if (height && (height < 400)) { - height = 400; - } - - return { - data: [ - { - name: 'Completion', - type: 'bar', - x: x, - y: y, - orientation: 'h', - text: text, - hoverinfo: 'x + y + text' - }], - layout: { - hovermode: 'closest', - shapes: { - fillcolor: '#444' - }, - title: title, - height: height, - xaxis: { - title: 'Percent', - showgrid: false, - zeroline: false, - range: [0, 100] - }, - margin: { - l: 400 - } - } - }; - } - - function getTaskPercent(task) { - if (task.hasOwnProperty('completion')) { - return task.completion; - } - - if (task.hasOwnProperty('children') && task.children.length) { - var sum = 0; - task.children.forEach(function(subtask) { - if (subtask.hasOwnProperty('completion')) { - sum += subtask.completion; - } else if (subtask.hasOwnProperty('children')) { - sum += parseInt(getTaskPercent(subtask)); - } - }); - return (sum / task.children.length).toFixed(0); - } - - return 0; - } - - function createCharts(jsonData) { - var jsonData = jsonData - var charts = []; - var dataToScan = [jsonData]; - while (dataToScan.length) { - var data = dataToScan.pop(); - var x = []; - var y = []; - var text = []; - var title = data.name; - var height = 10; - - data.children.forEach(function(value) { - x.push(getTaskPercent(value)); - y.push(value.name); - text.push('Complexity: ' + value.complexity); - - height = height + 40; - - if (value.hasOwnProperty('children')) { - dataToScan.push(value); - } - }); - - x.unshift(getTaskPercent(data)); - y.unshift('Summarize'); - text.unshift(''); - - if (x.length) { - charts.push(createChart(x, y, text, title, height)); - } - } - - return charts; - } - - function drawCharts(jsonData) { - var charts = createCharts(jsonData); - - charts.forEach(function(chart, index) { - var parentDiv = document.createElement('div'); - parentDiv.id = chart.layout.title; - - var div = document.createElement('div'); - var divID = 'chart-' + index; - div.id = divID; - parentDiv.appendChild(div); - - document.getElementById('myDiv').appendChild(parentDiv); - - Plotly.newPlot(div.id, chart.data, chart.layout); - - div.on('plotly_click', function(data) { - var pts = ''; - for (var i = 0; i < data.points.length; i++) { - //pts = 'x = '+data.points[i].x +'\ny = '+ data.points[i].y + '\n\n'; - pts = data.points[i].y; - } - if (document.getElementById(pts)) { - window.location.href = '#' + pts; - } else { - window.location.href = '#' + jsonData.name + '(summarize)'; - } - }); - - - }); - } - - function getData(callback) { - var req = new XMLHttpRequest(); - req.addEventListener('load', function() { - callback(JSON.parse(this.responseText)) - }); - req.open('GET', 'progress.json'); - req.send(); - } - - getData(drawCharts); - </script> -</body> - -</html> http://git-wip-us.apache.org/repos/asf/james-project/blob/42c50f2c/james3-roadmap-progress/progress.json ---------------------------------------------------------------------- diff --git a/james3-roadmap-progress/progress.json b/james3-roadmap-progress/progress.json deleted file mode 100644 index 7935e3a..0000000 --- a/james3-roadmap-progress/progress.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "name": "3.0 release", - "children": [ - { - "name" : "Remove design violation by using only mailbox-api from jmap", - "completion" : 100, - "complexity" : 10 - }, - { - "name" : "Make a marketing James 3.0 website", - "completion" : 100, - "complexity" : 30 - }, - { - "name" : "Assign a unique Id to message entity (and handle move and move to trash)", - "completion" : 100, - "complexity" : 50 - }, - { - "name" : "Deploy James @ Linagora", - "completion" : 100, - "complexity" : 10 - }, - { - "name" : "Gatling load and endurance testing", - "completion" : 100, - "complexity" : 30 - }, - { - "name" : "Publish a completion status documentation along James 3.0 release notes", - "completion" : 100, - "complexity" : 5 - }, - { - "name" : "Finish Vacation partial update", - "completion" : 100, - "complexity" : 2 - }, - { - "name" : "Complete IMAP METADATA implementation", - "completion" : 100, - "complexity" : 15 - }, - { - "name" : "Re-submit a new James logo for contest", - "completion" : 100, - "complexity" : 5 - }, - { - "name" : "Make sure default (JPA + Lucene) backends work well", - "completion" : 100, - "complexity" : 10 - }, - { - "name" : "Implement a Guice JPA + Lucene module", - "completion" : 100, - "complexity" : 5 - }, - { - "name" : "Make security audits", - "completion" : 100, - "complexity" : 5 - }, - { - "name" : "bug triaging", - "completion" : 100, - "complexity" : 5 - }, - { - "name": "TTN", - "completion" : 100, - "complexity": 10 - }, - { - "name": "Mailet refactor", - "children": [ - {"name": "AbstractNotify", "completion": 100, "complexity" : 10}, - {"name": "LocalDelivery", "completion": 100, "complexity" : 10}, - {"name": "RemoteDelivery", "completion": 100, "complexity" : 10}, - {"name": "RecipientRewriteTable", "completion": 100, "complexity" : 5}, - {"name": "All other mailets", "completion": 100, "complexity" : 25} - ], - "complexity" : 60 - } - ] -} - --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
