Difference between revisions of "Tinderbox front page improvements"
m (→Project Contributor(s)) |
(→Release) |
||
(68 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | __NOTOC__ | |
− | + | == Project Information == | |
+ | === Project Name === | ||
− | + | Tinderbox front page improvements | |
− | Description | + | === Project Description === |
− | = | + | [http://tinderbox.mozilla.org/showbuilds.cgi?tree=Firefox Tinderbox] is a web app showing the results of multiple machines building Firefox, running unit tests on it, and running performance tests on it, all on three different platforms (Windows, Linux, Mac). The display is very crowded right now, and can be difficult to read. In addition, some of the interesting information (changes in performance, for example) are hard to notice. The tinderbox server software recently was updated to include [http://www.json.org/ JSON] output, which means that webpages can now easily access the data to build their own displays. Using this data, create a new display for the Tinderbox data that helps developers monitor the status of the builds and performance data. |
− | [[ | + | * [http://tinderbox.mozilla.org/Firefox/json.js Tinderbox JSON data] |
+ | * [http://people.mozilla.org/~rhelmer/mockups/tinderbox/ajax.html An example page using the data] | ||
+ | * [http://mavra.perilith.com/~luser/tboxtest.html Another example page using the data]. (Requires a [http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/ recent Firefox 3 build]) | ||
− | == Project | + | === Project Leader(s) === |
− | + | * [[User:dominic|Dominic Baranski (dominic) ]] | |
− | + | === Project Contributor(s) === | |
+ | |||
+ | [http://zenit.senecac.on.ca/wiki/index.php/User:Awdelyea Adam Delyea] - Assisted by helping me troubleshoot a local Tinderbox setup. | ||
== Project Details == | == Project Details == | ||
− | + | We are currently looking for people who make use of Tinderbox to give their suggestions and comments on how it could be improved. Please include some specifics because the display has many areas which could be improved. Contribution ideas include what you believe would be the most important information presented, general annoyances, or things to make finding information easier on Tinderbox. | |
+ | |||
+ | Either Leave your feedback below or contact me ([[User:dominic|Dominic]]) directly. | ||
+ | |||
+ | ==1.0== | ||
+ | ===Goals - Bugfixes and Final Push=== | ||
+ | * Log link acted up with certain build machines | ||
+ | * Comment link did not show under certain circumstances | ||
+ | * Not feasible to implement commenting without touching physical notes.txt file. | ||
+ | ** Re-implemented reading files directly with a slightly different approach | ||
+ | |||
+ | ===Release=== | ||
+ | [http://zenit.senecac.on.ca/wiki/imgs/V1.diff.zip V1.0] of my code | ||
+ | |||
+ | ==0.9== | ||
+ | ===Goals - Update Commenting Polling=== | ||
+ | * Rewrite how I deal with comments | ||
+ | ** Direct file access was undesirable | ||
+ | |||
+ | ===Release=== | ||
+ | [http://zenit.senecac.on.ca/wiki/imgs/V9.1.diff.zip v0.9] of my code | ||
+ | |||
+ | ==0.8== | ||
+ | ===Goals - Destroy Perl=== | ||
+ | * Get in contact with ''justdave'' to push the release along to a commit | ||
+ | ** Can't get a hold of him on IRC - I might have to email him despite it being "unkosher" practice (waiting for commit forever now) | ||
+ | * moved the "log" link to a better location | ||
+ | * moved the "admin" link to a better location | ||
+ | * added "Comment" link beside the log link now per build machine | ||
+ | ** all links correspond to the NEWEST build. For older logs and comments you must view the full tree | ||
+ | ===Release=== | ||
+ | * [http://zenit.senecac.on.ca/wiki/imgs/V9.diff.zip V4 of CLS's code] (v9 of my code) | ||
+ | |||
+ | ==0.7.1== | ||
+ | * Fix up the log links only showing per tree. Not per build machine. | ||
+ | ===Release=== | ||
+ | * [http://zenit.senecac.on.ca/wiki/imgs/V8.1.diff.zip V3.1 of CLS's code] (v8.1 of my code) | ||
+ | |||
+ | ==0.7== | ||
+ | ===Goals - Add Logging linkage and perform other aesthetic fixes=== | ||
+ | * Add Log link beside build machines | ||
+ | * Add comment link if there are comments on a build machine | ||
+ | * make the new front end not overwrite the current front end. | ||
+ | * Destroy the Perl programming language | ||
+ | |||
+ | ===Release=== | ||
+ | * [http://zenit.senecac.on.ca/wiki/imgs/V8.diff.zip V3 of CLS's code] (v8 of my code) | ||
+ | |||
+ | ==0.6== | ||
+ | ===Goals - Release the front end as directed by tinderbox maintainers=== | ||
+ | This release was primarily attempting to please the tinderbox maintainers since my work was got gaining any ground in terms of acceptance. I've used a patch that was given to me by maintainer cls as the groundwork for the current release. | ||
+ | |||
+ | The release uses the look of my very first version of the front end I ever produced. However, the back end looks completly different now since it has all been done in Perl and JSON has been scrapped. I'm hoping that this version will have a more successful approach and get moving on adoption. | ||
+ | |||
+ | Here's a shot of my work: | ||
+ | |||
+ | [[Image:Tinderbox_v6.png]] | ||
+ | |||
+ | ===Release=== | ||
+ | * Diff of code | ||
+ | ** https://bugzilla.mozilla.org/attachment.cgi?id=306651 | ||
+ | |||
+ | * changes | ||
+ | ** No JSON | ||
+ | ** Perl backend used to generate the front end now | ||
+ | ** Some CSS used during production. (A good thing) | ||
+ | |||
+ | ==0.5== | ||
+ | ===Goals - Work out the remainder of the user interface=== | ||
+ | As the perl code gets reviewed and fixed up I'd like to work out the remainder of the user interface. This includes making it usable and would put the final touches on the tinderbox main page improvement | ||
+ | ===Release=== | ||
+ | Here's a screen-shot of the colorized version of the Tinderbox front end. As soon as the tinderbox perl code gets committed to the project I'll be able to use real life data to test the page instead. Until then I'm forced to use a local instance which is very flaky. | ||
+ | |||
+ | [[Image:Tinderbox_colored.png]] | ||
+ | |||
+ | * updated Perl code for release | ||
+ | ** https://bugzilla.mozilla.org/attachment.cgi?id=300959&action=diff | ||
+ | |||
+ | * the front end files | ||
+ | ** http://zenit.senecac.on.ca/wiki/imgs/Tinderbox_html.zip | ||
+ | |||
+ | ==0.4== | ||
+ | ===Goals - Send out Perl code for review=== | ||
+ | As production moves forward on the tinderbox project I've compiled only my perl code into a single .diff file to send for review to the tinderbox maintainers. | ||
+ | ===Release=== | ||
+ | * First release of the perl code for review.. | ||
+ | ** https://bugzilla.mozilla.org/attachment.cgi?id=297395 | ||
+ | |||
+ | |||
+ | ==0.3== | ||
+ | ===Goals - Make my existing Tinderbox code use the new json output === | ||
+ | Now that I've got a patch that gives me a list of Tinderbox trees with basic build information I can update my code. I'll be updating the AJAX on the .html file that I created for the 0.1 to use this new information. | ||
+ | ===Release=== | ||
+ | |||
+ | Okay, with much hard work and re-learning of javascript I've finally come out with my 0.3a release of tinderbox.. Here's what it does. | ||
+ | |||
+ | * Modified some of the perl files to dynamically generate a generic list of tinderbox trees with their builders, it states success, build time, and URL. | ||
+ | * fixed up my own index file and JavaScript to parse the JSON file and display the results on the page. | ||
+ | |||
+ | ==== Files ==== | ||
+ | |||
+ | * All files individually in here, plop this into a local tinderbox instance and all should work. | ||
+ | ** https://bugzilla.mozilla.org/attachment.cgi?id=293189 | ||
+ | |||
+ | * And the diff file to use with cvs | ||
+ | ** https://bugzilla.mozilla.org/attachment.cgi?id=293188 | ||
+ | |||
+ | ==0.2== | ||
+ | ===Goals - Implement JSON output to showbuilds.pl=== | ||
+ | In the 0.2 release the major goal will be to implement the use of JSON output into the showbuilds.pl file found in tinderbox. The reason for this is that there is currently no way of extracting per tree information in an easy way. (IE. only the tinderbox panel.htm files are available) With the release of this 0.2 JSON fix I hope to now be able to remake my tinderbox interface and submit it for use using JSON. This will make my index page in the last build less server intensive which was the main reason for its rejection. | ||
+ | |||
+ | ===Contributions=== | ||
+ | I'm looking for people who could help me with: | ||
+ | * JSON - A fairly new concept to me. | ||
+ | * Someone to look over my code who knows perl (For efficiency and bugs) | ||
+ | * Always looking for interesting and good ideas to improve tinderbox layout | ||
+ | |||
+ | ===Release=== | ||
+ | The 0.2 Release deals with creating a lean JSON output dynamically for all tinderbox trees available. | ||
+ | |||
+ | The patch can be found at [https://bugzilla.mozilla.org/attachment.cgi?id=289456&action=diff Bug# 400708] | ||
+ | |||
+ | ==0.1== | ||
+ | |||
+ | ===Goals - Create index.html for tinderbox.mozilla.org=== | ||
+ | |||
+ | Since [http://tinderbox.mozilla.org tinderbox.mozilla.org] only redirects users to showbuilds.cgi there is no useful information presented to users immediately. The goal of the initial release will be to build a working index.html page based of [https://bugzilla.mozilla.org/show_bug.cgi?id=366784 Bug #366784] by Rob Helmer. The idea is to use the [http://tinderbox.mozilla.org/Mozilla1.8/panel.html panels] that are automatically generated by Tinderbox and put them into iFrames or the like to display a list of available trees for checkin. The idea is a layout that will look similar to the following figure. | ||
+ | |||
+ | [[Image:Tinderbox_example.png|Tinderbox Example index.html]] | ||
+ | |||
+ | === 0.1 Release === | ||
+ | The 0.1 Release is done. I've uploaded the files to [https://bugzilla.mozilla.org/show_bug.cgi?id=366784 Bug #366784] and received much feedback from the community! I'm currently awaiting review of my code by Chris Seawood and then hopefully incorporation into Tinderbox will follow! | ||
+ | |||
+ | [[Image:Tinderbox-index.html-0.1.jpg]] | ||
+ | |||
+ | ==Bug list== | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=366784 Bug #366784] - Request to change Tinderbox front page layout | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=390341 Bug #390341] - Support gzip encoding for Tinderbox | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=381104 Bug #381104] - Large number of builds requires horizontal scrolling | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=400708 Bug #400707] - Adding JSON output to showbuilds.pl | ||
== Project News == | == Project News == | ||
Line 26: | Line 170: | ||
* Project taken by [[User:dominic|Dominic Baranski (dominic)]] | * Project taken by [[User:dominic|Dominic Baranski (dominic)]] | ||
+ | ** See [http://dbaranski.wordpress.com Dominic's blog] for news and updates |
Latest revision as of 05:18, 19 April 2008
Project Information
Project Name
Tinderbox front page improvements
Project Description
Tinderbox is a web app showing the results of multiple machines building Firefox, running unit tests on it, and running performance tests on it, all on three different platforms (Windows, Linux, Mac). The display is very crowded right now, and can be difficult to read. In addition, some of the interesting information (changes in performance, for example) are hard to notice. The tinderbox server software recently was updated to include JSON output, which means that webpages can now easily access the data to build their own displays. Using this data, create a new display for the Tinderbox data that helps developers monitor the status of the builds and performance data.
- Tinderbox JSON data
- An example page using the data
- Another example page using the data. (Requires a recent Firefox 3 build)
Project Leader(s)
Project Contributor(s)
Adam Delyea - Assisted by helping me troubleshoot a local Tinderbox setup.
Project Details
We are currently looking for people who make use of Tinderbox to give their suggestions and comments on how it could be improved. Please include some specifics because the display has many areas which could be improved. Contribution ideas include what you believe would be the most important information presented, general annoyances, or things to make finding information easier on Tinderbox.
Either Leave your feedback below or contact me (Dominic) directly.
1.0
Goals - Bugfixes and Final Push
- Log link acted up with certain build machines
- Comment link did not show under certain circumstances
- Not feasible to implement commenting without touching physical notes.txt file.
- Re-implemented reading files directly with a slightly different approach
Release
V1.0 of my code
0.9
Goals - Update Commenting Polling
- Rewrite how I deal with comments
- Direct file access was undesirable
Release
v0.9 of my code
0.8
Goals - Destroy Perl
- Get in contact with justdave to push the release along to a commit
- Can't get a hold of him on IRC - I might have to email him despite it being "unkosher" practice (waiting for commit forever now)
- moved the "log" link to a better location
- moved the "admin" link to a better location
- added "Comment" link beside the log link now per build machine
- all links correspond to the NEWEST build. For older logs and comments you must view the full tree
Release
- V4 of CLS's code (v9 of my code)
0.7.1
- Fix up the log links only showing per tree. Not per build machine.
Release
- V3.1 of CLS's code (v8.1 of my code)
0.7
Goals - Add Logging linkage and perform other aesthetic fixes
- Add Log link beside build machines
- Add comment link if there are comments on a build machine
- make the new front end not overwrite the current front end.
- Destroy the Perl programming language
Release
- V3 of CLS's code (v8 of my code)
0.6
Goals - Release the front end as directed by tinderbox maintainers
This release was primarily attempting to please the tinderbox maintainers since my work was got gaining any ground in terms of acceptance. I've used a patch that was given to me by maintainer cls as the groundwork for the current release.
The release uses the look of my very first version of the front end I ever produced. However, the back end looks completly different now since it has all been done in Perl and JSON has been scrapped. I'm hoping that this version will have a more successful approach and get moving on adoption.
Here's a shot of my work:
Release
- changes
- No JSON
- Perl backend used to generate the front end now
- Some CSS used during production. (A good thing)
0.5
Goals - Work out the remainder of the user interface
As the perl code gets reviewed and fixed up I'd like to work out the remainder of the user interface. This includes making it usable and would put the final touches on the tinderbox main page improvement
Release
Here's a screen-shot of the colorized version of the Tinderbox front end. As soon as the tinderbox perl code gets committed to the project I'll be able to use real life data to test the page instead. Until then I'm forced to use a local instance which is very flaky.
- updated Perl code for release
- the front end files
0.4
Goals - Send out Perl code for review
As production moves forward on the tinderbox project I've compiled only my perl code into a single .diff file to send for review to the tinderbox maintainers.
Release
- First release of the perl code for review..
0.3
Goals - Make my existing Tinderbox code use the new json output
Now that I've got a patch that gives me a list of Tinderbox trees with basic build information I can update my code. I'll be updating the AJAX on the .html file that I created for the 0.1 to use this new information.
Release
Okay, with much hard work and re-learning of javascript I've finally come out with my 0.3a release of tinderbox.. Here's what it does.
- Modified some of the perl files to dynamically generate a generic list of tinderbox trees with their builders, it states success, build time, and URL.
- fixed up my own index file and JavaScript to parse the JSON file and display the results on the page.
Files
- All files individually in here, plop this into a local tinderbox instance and all should work.
- And the diff file to use with cvs
0.2
Goals - Implement JSON output to showbuilds.pl
In the 0.2 release the major goal will be to implement the use of JSON output into the showbuilds.pl file found in tinderbox. The reason for this is that there is currently no way of extracting per tree information in an easy way. (IE. only the tinderbox panel.htm files are available) With the release of this 0.2 JSON fix I hope to now be able to remake my tinderbox interface and submit it for use using JSON. This will make my index page in the last build less server intensive which was the main reason for its rejection.
Contributions
I'm looking for people who could help me with:
- JSON - A fairly new concept to me.
- Someone to look over my code who knows perl (For efficiency and bugs)
- Always looking for interesting and good ideas to improve tinderbox layout
Release
The 0.2 Release deals with creating a lean JSON output dynamically for all tinderbox trees available.
The patch can be found at Bug# 400708
0.1
Goals - Create index.html for tinderbox.mozilla.org
Since tinderbox.mozilla.org only redirects users to showbuilds.cgi there is no useful information presented to users immediately. The goal of the initial release will be to build a working index.html page based of Bug #366784 by Rob Helmer. The idea is to use the panels that are automatically generated by Tinderbox and put them into iFrames or the like to display a list of available trees for checkin. The idea is a layout that will look similar to the following figure.
0.1 Release
The 0.1 Release is done. I've uploaded the files to Bug #366784 and received much feedback from the community! I'm currently awaiting review of my code by Chris Seawood and then hopefully incorporation into Tinderbox will follow!
Bug list
- Bug #366784 - Request to change Tinderbox front page layout
- Bug #390341 - Support gzip encoding for Tinderbox
- Bug #381104 - Large number of builds requires horizontal scrolling
- Bug #400707 - Adding JSON output to showbuilds.pl
Project News
September 17 2007
- Project taken by Dominic Baranski (dominic)
- See Dominic's blog for news and updates