This experimental project aims to provide a public database of comprehensive information about releases and builds.
Browse the database: Elm UI - Searchkit UI
This repository has two main folders:
- ui/: A Web UI to browse the available data
- jobs/: Python tools in charge of aggregating and keeping the data up-to-date.
Currently we use Kinto as a generic database service. It allows us to leverage its simple API for storing and querying records. It also comes with a set of client libraries for JavaScript, Python etc.
More specific solutions may replace it when the product scope evolves.
Beyond the Kinto API itself, the schema is the main contract between the UI and the importing jobs.
source
[object]: about the release sourcesproduct
[string]: Product namerepository
(optional) [string]: Full repository URLtree
(optional) [string]: Mercurial tree (e.g. mozilla-central)revision
(optional) [string]: Mercurial changeset
build
(optional) [object]: about the build processid
[string]: Build identificator (eg. 20170413214900)date
[date-time]: Build date (e.g. 2017-04-13T21:49:00Z)
target
[object]: about the release targetplatform
[string]: Operating system and architecture (e.g. linux-x64_86)locale
[string]: Locale (e.g. en-US)version
[string]: Final version (e.g. 54.0)channel
[string]: Update channel (e.g. beta)
download
[object]: about the downloadable fileurl
[string]: URL of the archivedate
[date-time]: Publication datemimetype
[string]: Mime type (e.g. archive/zip)size
[integer]: Size in bytes
systemaddons
(optional) [array]: List of system addonsid
[string]: Addon id (e.g. shield@mozilla.org)builtin
(optional) [string]: Version in release (e.g. 1.0.0)updated
(optional) [string]: Last available update version (e.g. 1.0.3)
All fields marked as (optional) can be missing from the records, depending on what could be found by the importing jobs. Information about release source and revision or build date is not available for all versions and locales during the archives scraping phase.
Apache 2