#411: Tag all messages logged by Glean with the component they are coming from.
#399: Check if there are ping data before attempting to delete it.
This change lowers the amount of log messages related to attempting to delete inexistent data.
#415, #430: Gzip ping paylod before upload
This changes the signature of
Uploader.post to accept
string | Uint8Array for the
body parameter, instead of only
#431: BUGFIX: Record the timestamp for events before dispatching to the internal task queue.
#389: BUGFIX: Make sure to submit a
deletion-request ping before clearing data when toggling upload.
#375: Release Glean.js for Qt as a QML module.
#342: BUGFIX: Fix timespan payload representatin to match exactly the payload expected according to the Glean schema.
#343: BUGFIX: Report the correct failure exit code when the Glean command line tool fails.
#313: Send Glean.js version and platform information on X-Telemetry-Agent header instead of User-Agent header.
#313: Implement error recording mechanism and error checking testing API.
#319: BUGFIX: Do not allow recording floats with the quantity and counter metric types.
#279: BUGFIX: Ensure only empty pings triggers logging of "empty ping" messages.
#288: Support collecting
Qt applications. Only OS name and locale are supported.
#281: Add the QuantityMetricType.
#303: Implement setRawNanos API for the TimespanMetricType.
#260: Set minimum node (>= 12.0.0) and npm (>= 7.0.0) versions.
#202: Add a testing API for the ping type.
Implement the timespan metric type.
BUGFIX: Report event timestamps in milliseconds.
#261: Show a spinner while setting up python virtual environment
#273: BUGFIX: Expose the missing
TimespanMetricType in Qt.
#256: BUGFIX: Add the missing
js extension to the dispatcher.
#254: BUGFIX: Allow the usage of the Glean specific metrics API before Glean is initialized.
#228: Provide a Qt build with every new release.
#227: BUGFIX: Fix a bug that prevented using
#226: BUGFIX: Fix Qt build configuration to target ES5.
glean_parser to version 3.1.1.
#219: BUGFIX: Fix path to ping entry point in package.json.
#201: BUGFIX: Do not let the platform be changed after Glean is initialized.
#215: Update the
glean-parser to version 3.1.0.
#214: Improve error reporting of the Glean command.
#206: BUGFIX: Fix ping URL path.
Application ID was being reporting as
#173: Drop Node.js support from webext entry points
#155: Allow to define custom uploaders in the configuration.
#184: Correctly report
appDisplayVersion if provided by the user.
#198, #192, #184, #180, #174, #165: BUGFIX: Remove all circular dependencies.
#143: Provide a way to initialize and reset Glean.js in tests.
#130: BUGFIX: Fix destination path of CommonJS' build
#123: BUGFIX: Fix support for ES6 environments.
.js extensions in all local import statements.
ES6' module resolution algorithm does not currently support automatic resolution of file extensions and does not have the hability to import directories that have an index file. The extension and the name of the file being import need to
always be specified. See: https://nodejs.org/api/esm.html#esm_customizing_esm_specifier_resolution_algorithm Add a
type: module declaration to the main
Without this statement, ES6 support is disabled. See: https://nodejs.org/docs/latest-v13.x/api/esm.html#esm_enabling.:
To keep support for CommonJS, in our CommonJS build we include a
package.json that overrides the
type: module of the main
package.json with a
#96: Provide a ping encryption plugin.
This plugin listens to the
afterPingCollection event. It receives the collected payload of a ping and returns an encrypted version of it using a JWK provided upon instantiation.
#95: Add a
plugins property to the configuration options and create an event abstraction for triggering internal Glean events.
The only internal event triggered at this point is the
afterPingCollection event, which is triggered after ping collection and logging, and before ping storing.
Plugins are built to listen to a specific Glean event. Each plugin must define an
action, which is executed everytime the event they are listening to is triggered.
#101: BUGFIX: Only validate Debug View Tag and Source Tags when they are present.
#102: BUGFIX: Include a Glean User-Agent header in all pings.
#97: Add support for labeled metric types (string, boolean and counter).
#105: Introduce and publish the
glean command for using the
glean-parser in a virtual environment.
#98: Add external APIs for setting the Debug View Tag and Source Tags.
#99: BUGFIX: Add a default ping value in the testing APIs.
#90: Provide exports for CommonJS and browser environemnts.
#90: BUGIFX: Accept lifetimes as strings when instantiating metric types.
#90: BUGFIX: Fix type declaration paths.
#90: BUGFIX: Make web-ext-types a peer dependency.
#85: Include type declarations in
@mozilla/glean webext package bundle.
#77: Include README.md file in
@mozilla/glean package bundle.
#73: Add this changelog file.
#42: Implement the
#41: Implement the
logPings debug tool.
logPings is enabled, pings are logged upon collection.
#40: Use the dispatcher in all Glean external API functions. Namely:
Metric recording functions;
#36: Implement the event metric type.
#31: Implement a task Dispatcher to help in executing Promises in a deterministic order.
#26: Implement the setUploadEnable API.
#25: Implement an adapter that leverages browser APIs to upload pings.
#24: Implement a ping upload manager.
#23: Implement the initialize API and glean internal metrics.
#22: Implement the PingType structure and a ping maker.
#20: Implement the datetime metric type.
#17: Implement the UUID metric type.
#14: Implement the counter metric type.
#13: Implement the string metric type.
#11: Implement the boolean metric type.
#9: Implement a metrics database module.
#8: Implement a web extension version of the underlying storage module.
#6: Implement an abstract underlying storage module.