[Project_owners] Should mozdev.org generate an updates.rdf file for our projects?
Eric H. Jung
eric.jung at yahoo.com
Fri Dec 7 12:23:23 PST 2007
--- "Douglas E. Warner" <silfreed at silfreed.net> wrote:
> 1) PO uploads their XPI file to their downloads/ folder
Can't this be done from the HTML pages in steps 2-3 using <input type="file"/>?
> 3) PO chooses "release" beside the file and is asked to provide the following
> a) file hash (md5/sha1) to verify the file was uploaded properly
> b) update info url
For 3b: the update url is already provided in install.rdf, which is within the previously uploaded
XPI, as a text node child of the <em:updateURL/> element. Therefore, no need to prompt the user
for it again--right?
> This would allow us to provide the following features:
> 1) generation of updates.rdf files
Note the filename by convention is update.rdf (singular) not updates.rdf.
> 2) search projects by supported applications
> 3) secure installations through InstallTrigger()
> Thoughs/comments on this process?
Looks good otherwise!
> Question: would we need to be able to provide some way to "age out" updates,
> or should only the most recent release show up in an updates.rdf?
Firefox used to force users to update extensions incrementally. For example, if Extension ABC had
the following versions published in its update.rdf:
then a user with Extension ABC 1.0 would be updated first to 1.1, then 1.2, then 1.3, etc. He
didn't update from 1.0 to 2.0 directly and, indeed, extensions authors don't always want that
behavior. Oftentimes, we put "upgrade code" or "conversion code" in one release then deprecate it.
This was because we could rely on extensions being upgraded incrementally. For example, say the
file format of a file created by an extension changed in from 1.0 to 1.1. The code to convert
existing 1.0 files into their 1.1 format might only exist in XPI version 1.1, and not 1.2-2.0.
I don't know if incremental updates are still forced by the extension manager. I hope they are :)
More information about the Project_owners