Skip to content

Commit

Permalink
Merge branch 'release-v0.16.0' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
brizental committed Jul 6, 2021
2 parents 693a45c + 9ff1adf commit 1cfdb5a
Show file tree
Hide file tree
Showing 71 changed files with 9,406 additions and 2,287 deletions.
78 changes: 42 additions & 36 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
exit 1
fi
- run:
name: Install Javascript dependencies
name: Install JavaScript dependencies
command: npm --prefix ./glean install
- run:
name: Run linter
Expand All @@ -47,7 +47,7 @@ jobs:
sudo apt update
sudo apt install firefox-trunk
- run:
name: Install Javascript dependencies
name: Install JavaScript dependencies
command: npm --prefix ./glean install
- run:
name: Run unit tests
Expand All @@ -62,20 +62,14 @@ jobs:
steps:
- checkout
- run:
name: Install Javascript dependencies for Glean
name: Install JavaScript dependencies for Glean
command: npm --prefix ./glean install
- run:
name: Build & link Glean.js to use it in the samples
command: |
npm --prefix ./glean run build:webext
npm --prefix ./glean run build:cli
npm --prefix ./glean link
# JS sample related jobs
- run:
name: Install Javascript dependencies for the JS sample
name: Install JavaScript dependencies for the JS sample
command: |
npm --prefix ./samples/web-extension/javascript install
npm --prefix ./samples/web-extension/javascript link @mozilla/glean
npm --prefix ./samples/web-extension/javascript install
npm --prefix ./samples/web-extension/javascript run link:glean
- run:
name: Build the JS sample
command: |
Expand All @@ -88,8 +82,8 @@ jobs:
- run:
name: Install Typescript dependencies for the TS sample
command: |
npm --prefix ./samples/web-extension/typescript install
npm --prefix ./samples/web-extension/typescript link @mozilla/glean
npm --prefix ./samples/web-extension/typescript install
npm --prefix ./samples/web-extension/typescript run link:glean
- run:
name: Build the TS sample
command: |
Expand All @@ -106,15 +100,17 @@ jobs:
- checkout
- run:
name: Get and post build sizes to GitHub PR
command: bin/build-size-check.sh
command: |
npm --prefix ./benchmarks install
npm --prefix ./benchmarks run size:report
check-qt-js:
docker:
- image: cimg/python:3.9.4-node
steps:
- checkout
- run:
name: Install Javascript dependencies and build Glean.js for Qt
name: Install JavaScript dependencies and build Glean.js for Qt
command: |
npm --prefix ./glean install
npm --prefix ./glean run build:qt
Expand All @@ -136,7 +132,7 @@ jobs:
source venv/bin/activate
pip install -r requirements.txt
glean_parser translate metrics.yaml pings.yaml -f javascript -o generated \
--option platform=qt --option version="0.15";
--option platform=qt --option version="0.16"
sudo apt-get install xvfb
xvfb-run python main.py &> qml.log &
Expand All @@ -155,7 +151,7 @@ jobs:
steps:
- checkout
- run:
name: Install Javascript dependencies
name: Install JavaScript dependencies
command: npm --prefix ./glean install
- run:
name: Build documentation
Expand All @@ -166,27 +162,24 @@ jobs:
- run:
name: Show contents
command: ls -R glean/dist/docs
# Needed for write access to the GitHub repository;
# see https://circleci.com/docs/2.0/gh-bb-integration/#deployment-keys-and-user-keys
- add_ssh_keys:
fingerprints:
- "0c:0b:f8:f0:45:60:92:79:60:34:b2:12:9c:55:1d:fa"
# The gh-pages npm package can be used to push a directory to a git branch;
# see https://www.npmjs.com/package/gh-pages
- run:
name: Deploy docs to gh-pages branch
- run:
name: Setup SSH key and deploy docs to gh-pages branch
command: |
git config user.email "[email protected]"
git config user.name "brizental"
eval "$(ssh-agent -s)"
DECODED_SSH_DEPLOY_KEY=$(echo $SSH_DEPLOY_KEY | base64 -d)
ssh-add - \<<< "${DECODED_SSH_DEPLOY_KEY}"
git config user.email "[email protected]"
git config user.name "moz-glean"
npm --prefix ./glean run publish:docs
publish:
docker:
- image: cimg/node:16.1.0
steps:
- checkout
- run:
name: Install Javascript dependencies
name: Install JavaScript dependencies
command: npm --prefix ./glean install
- run:
name: NPM Authentication
Expand All @@ -213,27 +206,40 @@ jobs:
./ghr -u mozilla -replace ${CIRCLE_TAG} glean/dist/glean_js-${CIRCLE_TAG}-qt.tar.gz
workflows:
version: 2
ci:
jobs:
- lint
- test
- check-qt-js
- samples-tests
- hold:
type: approval
requires:
- lint
- test
- check-qt-js
- samples-tests
filters:
branches:
ignore:
- main
- release
- /^release-*/
- check-size:
context: data-eng-gleanjs-gh
requires:
- hold
- docs-deploy:
context: data-eng-gleanjs-gh
filters:
branches:
ignore: /.*/
tags:
only: /^v.*/
- publish:
context: data-eng-gleanjs-gh
filters:
branches:
ignore: /.*/
tags:
only: /^v.*/
# Comment this job away until Bug 1681899 is resolved.
# - check-size:
# filters:
# branches:
# ignore: main
12 changes: 12 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
### Pull Request checklist ###
<!-- Before submitting the PR, please address each item -->
- [ ] **Quality**: Make sure this PR builds and runs cleanly.
- Inside the `glean/` folder, run:
- `npm run test` Runs _all_ tests
- `npm run lint && npm run lint:circular-deps` Runs _all_ linters
- [ ] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [ ] **Changelog**: This PR includes a changelog entry to `CHANGELOG.md` or an explanation of why it does not need one
- [ ] **Documentation**: This PR includes documentation changes, an explanation of why it does not need that or a follow-up bug has been filed to do that work
- Documentation should be added to [The Glean Book](https://mozilla.github.io/glean/book/index.html) when making changes to Glean's user facing API
- When changes to the Glean Book are necessary, link to the corresponding PR on the [`mozilla/glean`](https://github.com/mozilla/glean) repository
- Documentation should be added to [the Glean.js developer documentation](https://github.com/mozilla/glean.js/tree/main/docs) when making internal code changes
17 changes: 16 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,21 @@
# Unreleased changes

[Full changelog](https://github.com/mozilla/glean.js/compare/v0.15.0...main)
[Full changelog](https://github.com/mozilla/glean.js/compare/v0.16.0...main)

# v0.16.0 (2021-07-06)

[Full changelog](https://github.com/mozilla/glean.js/compare/v0.15.0...v0.16.0)

* [#346](https://github.com/mozilla/glean.js/pull/346): Provide default HTTP client for Qt/QML platform.
* [#399](https://github.com/mozilla/glean.js/pull/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.
* [#411](https://github.com/mozilla/glean.js/pull/411): Tag all messages logged by Glean with the component they are coming from.
* [#415](https://github.com/mozilla/glean.js/pull/415), [#430](https://github.com/mozilla/glean.js/pull/430): Gzip ping paylod before upload
* This changes the signature of `Uploader.post` to accept `string | Uint8Array` for the `body` parameter, instead of only `string`.
* [#431](https://github.com/mozilla/glean.js/pull/431): BUGFIX: Record the timestamp for events before dispatching to the internal task queue.
* [#462](https://github.com/mozilla/glean.js/pull/462): Implement persistent storage for Qt/QML platform.
* [#466](https://github.com/mozilla/glean.js/pull/466): Expose `ErrorType` enum, for using with the `testGetNumRecordedErrors` API.
* [#497](https://github.com/mozilla/glean.js/pull/497): Implement limit of 1MB for ping request payload. Limit is calculated after gzip compression.

# v0.15.0 (2021-06-03)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

![Glean logo](https://mozilla.github.io/glean/book/glean.jpeg)

`Glean.js` is a modern approach for a Telemetry library aimed at Javascript environments. It is part of the [Glean project](https://docs.telemetry.mozilla.org/concepts/glean/glean.html).
`Glean.js` is a modern approach for a Telemetry library aimed at JavaScript environments. It is part of the [Glean project](https://docs.telemetry.mozilla.org/concepts/glean/glean.html).

## Documentation

Expand Down
Loading

0 comments on commit 1cfdb5a

Please sign in to comment.