Difference between revisions of "Development:Planning:Software Update"

From Camino Wiki
Jump to navigation Jump to search
(in progress; i'll finish updating this later)
(herewith some updates, and a table we can use to compare)
Line 11: Line 11:
 
* one thing i don't like about sparkle is that it doesn't check to see if you have permission to update the app first
 
* one thing i don't like about sparkle is that it doesn't check to see if you have permission to update the app first
 
* We should only enable update checking in official release builds
 
* We should only enable update checking in official release builds
 +
* en-only and ML Camino
 +
** what if your language drops from ML in a major update?
 +
* Automated generation of update and update notification
  
 
== Potential requirements==
 
== Potential requirements==
Line 20: Line 23:
 
==Concerns==
 
==Concerns==
 
* QA
 
* QA
* Generation
+
* Documentation
 
* Gecko
 
* Gecko
 +
* Well-maintained
  
 
==Comparison Table==
 
==Comparison Table==
Line 70: Line 74:
 
<tr>
 
<tr>
 
<td>Uses https for "need to update" notice downloads</td>
 
<td>Uses https for "need to update" notice downloads</td>
<<td></td>
+
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
Line 111: Line 115:
  
 
<tr>
 
<tr>
<td>Support for resuming lost connections</td>
+
<td>Can handle ML as well as en-only Camino</td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
Line 118: Line 122:
  
 
<tr>
 
<tr>
<td>Can download in background</td>
+
<td>Release automation</td>
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td></tr>
 
 
 
<tr>
 
<td>Can download at low speed to not affect connection</td>
 
<td style="background: #FF8;" colspan="5">Probably won't make it</td>
 
<!--td></td>
 
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
<td></td-->
 
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<td>nl</td>
+
<td colspan=4>Desirables</td>
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">1.5rc</td>
 
<td>2 odd strings on 10.4.9 PPC</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">28 May ML</td>
 
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<td>no</td>
+
<td>Support for resuming lost connections</td>
<td style="background: #88F;">Y</td>
+
<td></td>
<td style="background: #88F;">Y</td>
+
<td></td>
<td style="background: #88F;">1.5rc</td>
 
<td>No, but a couple of strings missing (fixed)</td>
 
<td style="background: #88F;">Y</td>
 
 
<td></td>
 
<td></td>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<td>pl</td>
+
<td>Can download in background</td>
<td style="background: #8F8;">Y</td>
+
<td></td>
<td style="background: #8F8;">Y</td>
+
<td></td>
<td style="background: #8F8;">1.5rc</td>
+
<td></td>
<td style="background: #8F8;">N</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">28 May ML</td>
 
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<td>pt-BR</td>
+
<td>Can download at low speed to not affect connection</td>
<td style="background: #8F8;">Y</td>
+
<td></td>
<td style="background: #8F8;">Y</td>
+
<td></td>
<td style="background: #8F8;">1.5rc</td>
+
<td></td>
<td style="background: #8F8;">Yes but fixed now</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">28 May ML</td>
 
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<td>pt-PT</td>
+
<td>Can remind to download later</td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 +
</tr>
 +
 +
<tr>
 +
<td>Can install later once downloaded</td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
Line 187: Line 168:
  
 
<tr>
 
<tr>
<td>ru</td>
+
<td colspan=4>Other concerns</td>
<td style="background: #8F8;">Y</td>
+
<td>Expanded QA requirements</td>
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">1.5rc</td>
 
<td style="background: #8F8;">N</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">28 May ML</td>
 
</tr>
 
 
 
<tr>
 
<td>sk</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">1.5rc</td>
 
<td>had AD issues; fixed</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">28 May ML</td>
 
</tr>
 
 
 
<tr>
 
<td>sv</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">1.5rc</td>
 
<td style="background: #8F8;">N</td>
 
<td style="background: #8F8;">Y</td>
 
<td style="background: #8F8;">28 May ML</td>
 
</tr>
 
 
 
<tr>
 
<td>tr</td>
 
<td></td>
 
<td></td>
 
<td></td>
 
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
Line 227: Line 176:
  
 
<tr>
 
<tr>
<td>th</td>
+
<td>Documentation</td>
<td style="background: #FF8;" colspan="5">Untouched since 0.8.4</td>
 
<!--<td></td>
 
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
<td></td>-->
 
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<td>zh-CN</td>
+
<td>Complexity added to the app<br />''e.g.'' wrapping Gecko</td>
<td></td>
 
<td></td>
 
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
Line 247: Line 191:
  
 
<tr>
 
<tr>
<td>zh-TW</td>
+
<td>Actively maintained and supported</td>
<td></td>
 
<td></td>
 
<td></td>
 
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 
<td></td>
 +
</tr>
 +
 +
<tr>
 +
<td colspan=4>Color key</td>
 
</tr>
 
</tr>
  
Line 259: Line 204:
 
<td>Sample colors</td>
 
<td>Sample colors</td>
 
<td style="background: #8F8;">Present</td>
 
<td style="background: #8F8;">Present</td>
<td style="background: #FF8;">In progress or At-risk</td>
+
<td style="background: #FF8;">Unknown</td>
 
<td style="background: #F88;">Missing</td>
 
<td style="background: #F88;">Missing</td>
<td style="background: #88F;">Completed/waiting for files</td>
+
<!--<td style="background: #88F;">Completed/waiting for files</td>-->
<td></td>
 
<td></td>
 
 
</tr>
 
</tr>
 
 
</table>
 
</table>

Revision as of 17:59, 22 August 2007

Requirements

  • can build in a 10.3/10.3.9 SDK/gcc3.3 and 10.4/10.4u/gcc4 Universal configuration
  • Compatible license
  • Approval to land in cvs (if not using mozUpdate) - mento prefers landing source code instead of binary drops
  • https capabilities
    • Everything needs to be either https or signed (signing is an option for the Sparkle downloads, but there's a logistical issue that would come with that)
  • Update checking (OS version, etc.)
    • say, 1.6.x updates to 2.0.x at some point unless you're running 10.3, in which case you only get 1.6.x updates
    • and if you move to 10.4, do you get re-offered 2.0.x
  • provide a way to turn off update checking from inside the app (unlike adium - with apologies to cbarrett for the jab)
  • one thing i don't like about sparkle is that it doesn't check to see if you have permission to update the app first
  • We should only enable update checking in official release builds
  • en-only and ML Camino
    • what if your language drops from ML in a major update?
  • Automated generation of update and update notification

Potential requirements

  • Resuming lost connections
  • Background/throttled downloads
  • Remind me later
  • Install update later

Concerns

  • QA
  • Documentation
  • Gecko
  • Well-maintained

Comparison Table

Requirement mozUpdate Sparkle Option 3
Can build as 10.3/10.4 Universal
License
cvs Approval
Can land source code
(instead of binary drops)
Uses https for binary downloads
Uses https for "need to update" notice downloads
https server available
Supports fine-grained checking for version/OS pairs
Can disable update checking within Camino
Verifies user has permission to update first
Can enable updates/update checking only in official release builds
Can handle ML as well as en-only Camino
Release automation
Desirables
Support for resuming lost connections
Can download in background
Can download at low speed to not affect connection
Can remind to download later
Can install later once downloaded
Other concerns Expanded QA requirements
Documentation
Complexity added to the app
e.g. wrapping Gecko
Actively maintained and supported
Color key
Sample colors Present Unknown Missing