v6
A major release of KCIDB. Changes include:
- Implement schema v3.0, with the following changes. See the attached
kcidb.v3.0.schema.json
for details.- Re-introduce the separate
origin
field, but keep the origin in IDs as necessary, regardless. - Tighten the definition of the revision ID: now it must be the commit hash, optionally followed by a plus (
+
) character and a sha256 hash identifying the applied patches. This allows correlating received reports across submitters. - Add
tree_name
field to revisions, containing the widely-recognized name of the base code's sub-tree. E.g. "mainline", or "net-next". - Rename revision fields
git_repository_commit_name
andgit_repository_commit_hash
togit_commit_name
andgit_commit_hash
respectively, making them easier to read and not linked to the containing repository. - Require Git repository URLs to start with either
https://
(preferably) orgit://
.
- Re-introduce the separate
- Add
kcidb-notify
tool, taking new (and existing) I/O data and outputtingNUL
-terminated notification messages. Could be used to debug notifications, or as an alternative way of generating them in production. - Add support for merging I/O data, and the corresponding
kcidb-merge
tool. Could be useful for merging smaller submissions together into bigger ones. - Add support for specifying logging level to every command-line tool. Nothing much is logged yet, only queries executed by the database client. The default level is
NONE
, disabling any logging. - Add minimal logging to Google Cloud Functions, set
INFO
as the log level. - Log data coming to Google Cloud Functions with
DEBUG
level. - Add a dummy subscription for mainline tree failures.
- Support sending notifications to selected subscriptions only in Google Cloud Functions, select "mainline".
- Support querying objects using exact IDs (both for library and command-line tools), in addition to LIKE patterns, which works much faster.
- Switch to querying exact object IDs in notification generation, speeding it up dramatically.
- Add
X-KCIDB-Notification-ID
header to notification messages, containing the (unique) notification ID. - Support and require specifying the Firestore collection path with the spooled notifications, both for Google Cloud Functions and the
kcidb-spool-wipe
tool.
The IDs in the existing dataset were updated for the new schema using the attached update-revision-ids
script.