Space: Apache OpenOffice Community
(https://cwiki.apache.org/confluence/display/OOOUSERS)
Page: Improvements for the download webpages
(https://cwiki.apache.org/confluence/display/OOOUSERS/Improvements+for+the+download+webpages)
Change Comment:
---------------------------------------------------------------------
Updated table for overview about Linux differences
Edited by Marcus Lange:
---------------------------------------------------------------------
{toc}
h2. Immediate Concerns, Short Term Improvements
The following tasks need to be done to improve the download webpages:
|| Desciption || File || Issue ID || Owner || Target || Status ||
| Extended the logic to recognize "IceWeasel" to create download URL with deb
package. | download/download.js | -- | marcus | shortly after AOO 3.4.0 |
{highlight:green} Resolved {highlight} |
| Extended the logic to recognize Chromium browser to create download URL with
deb or rpm package. | download/download.js | -- | ? | ? | New |
| Chrom browser provide different platform data in "navigator.platform" and
"navigator.userAgent" (i686 and x86_64), so it's not possible to handle this in
our DL magic (see issue IDs for update). | download/download.js | Google \\
[44905 | http://code.google.com/p/chromium/issues/detail?id=44905] \\
[128167 | http://code.google.com/p/chromium/issues/detail?id=128167] \\
[117524 | http://trac.webkit.org/changeset/117524] \\
[86778 | https://bugs.webkit.org/show_bug.cgi?id=86778] | ? | ? | Waiting for
Google's bugfix |
| In the sub-green box, shorten the text to make space for links to checksum
files directly. Exampe: \\ \\
[Other Platforms and Languages|http://www.openoffice.org/download/other.html] │
[Legacy OOo Version|http://www.openoffice.org/download/legacy/index.html] │
[Release Notes|http://www.openoffice.org/development/releases/AOO3.4.0.html] │
Signatures and Hashes: (Link to ASC), (Link to MD5), (Link to SHA1), (Link to
SHA512) │ [Verify your download with
checksums|http://www.openoffice.org/download/checksums.html#howto] |
download/index.html \\
download/download.js | -- | ? | shortly after AOO 3.4.0 | New |
| Create the table with download links automatically by some parameters. |
download/other.html download/globalvars.js | -- | marcus | AOO 3.4.1 | New |
| In the green box, name clearly the Linux package that will be downloaded.
Example: \\ \\
Click to start downloading the most recent version for Linux <32-bit │ 64-bit>
<DEB │ RPM> and English (US) | download/index.html download/download.js | -- |
marcus | shortly after AOO 3.4.0 | {highlight:green} Resolved {highlight} |
| Delete all stuff that has to do with Bouncer. | download/*.js | -- | ? | AOO
3.4.1 | New |
| Delete all stuff that has to do with file name schema "old". These have the
structure that was needed for Bouncer and is now no longer needed. |
download/*.js | -- | ? | AOO 3.4.1 | {highlight:yellow} In Progress {highlight}
\\
[download_new_dl_aoo.js |
http://www.openoffice.org/download/download_new_dl_aoo.js] \\
[download_new_mirrorbrain_aoo.js |
http://www.openoffice.org/download/download_new_mirrorbrain_aoo.js] |
| Delete all stuff that has to do with offering JRE builds. This will simplify
making script work for all 3.x versions. | download/*.js | -- | ? | AOO 3.4.1 |
{highlight:yellow} In Progress {highlight} \\
[index_aoo.html | http://www.openoffice.org/download/index_aoo.html] \\
[download_new_dl_aoo.js |
http://www.openoffice.org/download/download_new_dl_aoo.js] \\
[download_new_mirrorbrain_aoo.js |
http://www.openoffice.org/download/download_new_mirrorbrain_aoo.js] |
| Delete the additional JS file and make sure that all is still working. |
download/download2.js | -- | ? | AOO 3.4.1 | {highlight:yellow} In Progress
{highlight} \\
[index_aoo.html | http://www.openoffice.org/download/index_aoo.html] \\
[download_new_dl_aoo.js |
http://www.openoffice.org/download/download_new_dl_aoo.js] \\
[download_new_mirrorbrain_aoo.js |
http://www.openoffice.org/download/download_new_mirrorbrain_aoo.js] |
| Delete all stuff that has to do with the old download and webtracking |
download/download.js \\ download/download_mirrorbrain.js | -- | ? | AOO 3.4.1 |
{highlight:yellow} In Progress {highlight} \\
[download_new_dl_aoo.js |
http://www.openoffice.org/download/download_new_dl_aoo.js] \\
[download_new_mirrorbrain_aoo.js |
http://www.openoffice.org/download/download_new_mirrorbrain_aoo.js] |
| Separate the DL logic for ASF, SF and MB mirror systems into own files to get
a better overview where is what located. \\ {color:#ff0000}\[not sure this is
needed - Kay\] \\
\[right, when all logic is in single file local variables can be used all over
the place, clearly better - Marcus\]{color} | download/*.js | -- | ? | AOO
3.4.1 | New |
| Attempt to put getLink() and hasMirror() in main page body with variable
assignments to eliminate duplicate calls during processing. | download/*.js \\
| \- \\ | kschenk \\ | AOO 3.4.1 \\ | New \\
\\ |
| Use version name and schema name to generate pack names to eliminate the long
"if" statements. \\ | download/*.js \\ | \- \\ | kschenk | AOO 3.4.1 \\ | New
\\ |
| Set download directory names for any language based on version and mirror.
Use in conjunction with name and schema for accessing installs--providing
complete path to mirrors. \\ | download/index.html \\
download/*.js \\ | \- \\ | kschenk/marcus \\ | AOO 3.4.1 \\ | New \\
\\ |
| Toggle all sites in languages.js with jre to 'n' and investigate Mac setting
for each. \\ | download/languages.js \\ | \- \\ | kschenk | AOO 3.4.1 | New \\ |
| Refactor \*.js files to cull out unused routines.\\ | download/*.js\\ | \-\\
| ?\\ | AOO 3.4.1 | New\\ |
| Cleanup the "download/test" subdir. \\
{color:#ff0000}\[see comments\]{color} | download/test/\* | -- |
kschenk/marcus ? \\ | AOO 3.4.1 | New |
| Delete legacy MD5sums files from "download/" as they are already in the
"legacy/" subdir. | download/md5sums/\* \\
download/legacy/md5sums/ | -- | marcus | shortly after AOO 3.4.0 |
{highlight:green} Resolved {highlight} |
| Integrate the dev builds / nightly builds into the download webpages, refer
to the [Wiki
page|https://cwiki.apache.org/confluence/display/OOOUSERS/AOO+3.4+Unofficial+Developer+Snapshots]
instead to create new download links | download/\* | -- | ? | ? | New |
| Extend the getLink() function to accept a specific ISO code to get forced to
build a download URL for a specific language (and not only recognize the ISO
code by "navigator.language") to allow localized download webpages on the
several NL websites | download/index.html \\
download/download.js \\
download_mirrorbrain.js | -- | marcus | shortly after AOO 3.4.0 |
{highlight:yellow} In Progress {highlight} \\
[index_aoo.html | http://www.openoffice.org/download/index_aoo.html] \\
[download_new_dl_aoo.js |
http://www.openoffice.org/download/download_new_dl_aoo.js] \\
[download_new_mirrorbrain_aoo.js |
http://www.openoffice.org/download/download_new_mirrorbrain_aoo.js] |
h2. Is the download working correctly for specific Linux + platform + browser
combinations?
|| Linux || Package Manager || Platform || Browser || Correct download ||
Status ||
| Fedora | RPM | x86 | Firefox | {highlight:green} Yes {highlight} | |
| Fedora | RPM | x86_86 | Firefox | {highlight:green} Yes {highlight} | |
| Fedora | RPM | x86 | Chrom | {highlight:green} Yes {highlight} | |
| Fedora | RPM | x86_86 | Chrom | {highlight:red} No {highlight} | Browser
doesn't provide the correct platform value, see item in table above, x86 will
be used |
| openSUSE | RPM | x86 | Firefox | {highlight:green} Yes {highlight} | |
| openSUSE | RPM | x86_86 | Firefox | {highlight:green} Yes {highlight} | |
| openSUSE | RPM | x86 | Chrom | {highlight:green} Yes {highlight} | |
| openSUSE | RPM | x86_86 | Chrom | {highlight:red} No {highlight} | Browser
doesn't provide the correct platform value, see item in table above, x86 will
be used
| Debian | DEB | x86 | IceWeasel | {highlight:green} Yes {highlight} | |
| Debian | DEB | x86_86 | IceWeasel | {highlight:green} Yes {highlight} | |
| Debian | DEB | x86 | Chrom | {highlight:red} No {highlight} | Browser doesn't
provide a recognizable value to differentiate between RPM and DEB, RPM will be
used |
| Debian | DEB | x86_86 | Chrom | {highlight:red} No {highlight} | Browser
doesn't provide a recognizable value to differentiate between RPM and DEB, RPM
will be used \\ Browser doesn't provide the correct platform value, see item in
table above, x86 will be used |
| Ubuntu | DEB | x86 | IceWeasel | {highlight:green} Yes {highlight} | |
| Ubuntu | DEB | x86_86 | IceWeasel | {highlight:green} Yes {highlight} | |
| Ubuntu | DEB | x86 | Chrom (from distro) | {highlight:green} Yes {highlight}
| |
| Ubuntu | DEB | x86_86 | Chrom (from distro) | {highlight:red} No {highlight}
| Browser doesn't provide the correct platform value, see item in table above,
x86 will be used |
| Ubuntu | DEB | x86 | Chrom (from Google) | {highlight:red} No {highlight} |
Browser doesn't provide a recognizable value to differentiate between RPM and
DEB, RPM will be used |
| Ubuntu | DEB | x86_86 | Chrom (from Google) | {highlight:red} No {highlight}
| Browser doesn't provide a recognizable value to differentiate between RPM and
DEB, RPM will be used \\ Browser doesn't provide the correct platform value,
see item in table above, x86 will be used |
| Ubuntu | DEB | x86 | Opera | {highlight:red} No {highlight} | Browser doesn't
provide a recognizable value to differentiate between RPM and DEB, RPM will be
used |
| Ubuntu | DEB | x86_86 | Opera | {highlight:red} No {highlight} | Browser
doesn't provide a recognizable value to differentiate between RPM and DEB, RPM
will be used \\ Browser doesn't provide the correct platform value, see item in
table above, x86 will be used |
h2. Design Overhaul -- why we need it
h5. Current State
* Client is identified for OS, OS variant, language with JS
(navigator.platform, navigator.user-agent).
* Package for client is provided based on a schema and a mirror location in JS
-- globalvars.js
combined with a package naming, SCHEMA (for the desired version), client's
language, and whether that client is available from the standard mirror
or elsewhere.
* Language, package locations, and other variables (most no longer used) are
defined as a JS array in languages.js.
h5. Current state -- problems.
* The languages array now contains fields that are no longer used.
* The languages array is setup with majors of some languages, i.e. "en", with a
cumbersome structure of sub-versions.
* As new language translations are added as standard to the mirror repository,
the languages.js must be edited to reflect this.
* As new versions are provided, a change to the SCHEMA variable must be made.
* The current file structure on the mirrors for the distribution -- "stable" vs
"localized" makes it difficult to easily collect download statistics.
* The internal logic in the ".js" files -- download.js , and
download_mirrobrain.js -- is fairly cumbersome and circuitous, making it
difficult to ascertain results for more complicated cases, lack of
navigator.platform, non-identifiable language, etc.
* Manual editing is needed to properly construct package names depending on the
SCHEMA for the version.
* Due to so much manual editing, mistakes are likely.
* It's basically impossible to proved the same set of js scripts for each
version we might want to provide to the client.
h5. Current state -- good aspects.
* So far, it mostly works.
h2. Design Overhaul -- Ideas for Retooling
* A means to generate an XML feed from the package build process that would
provide information (existence) for each language/platform. This file would
need to be concatenated with the existng XML file and saved in
www.openoffice.org/download. Older versions no longer provided could be easily
eliminated. An entry indicating mirror name would need to be provided in this
tree as well. {color:#ff0000}Additional details will follow.{color}
This would eliminate manual editing to control much of the DL process.
* Retool much of the js scripts to process the XML file, checking for the
existence of the desired version w/language.
Change your notification preferences:
https://cwiki.apache.org/confluence/users/viewnotifications.action