Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/beta-releases' into ga-releases
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] committed May 1, 2024
2 parents 9d6f71e + 728ca28 commit 0b72cdb
Show file tree
Hide file tree
Showing 658 changed files with 18,037 additions and 10,607 deletions.
4 changes: 2 additions & 2 deletions .evergreen/buildvariants.yml
Original file line number Diff line number Diff line change
Expand Up @@ -150,8 +150,8 @@ buildvariants:
depends_on: package-compass

- name: rhel
display_name: RHEL 7.6 (Test and Package)
run_on: rhel76-large
display_name: RHEL 8.0 (Test and Package)
run_on: rhel80-large
tasks:
- name: check

Expand Down
12 changes: 6 additions & 6 deletions .evergreen/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"run_on": [
"ubuntu2004-large",
"windows-vsCurrent-large",
"rhel76-large",
"rhel80-large",
["macos-1100", { "gui": "macos-1100-gui" }],
["macos-1100-arm64", { "gui": "macos-1100-arm64-gui" }]
],
Expand Down Expand Up @@ -136,7 +136,7 @@
"vars": {
"mongodb_version": "latest-alpha-enterprise"
},
"skip_on": ["macos-1100", "macos-1100-arm64", "rhel76-large"]
"skip_on": ["macos-1100", "macos-1100-arm64", "rhel80-large"]
}
],
"test-web-sandbox": [
Expand All @@ -146,15 +146,15 @@
"mongodb_version": "latest-alpha-enterprise",
"browser_name": "chrome"
},
"skip_on": ["macos-1100", "macos-1100-arm64", "rhel76-large", "windows-vsCurrent-large"]
"skip_on": ["macos-1100", "macos-1100-arm64", "rhel80-large", "windows-vsCurrent-large"]
},
{
"name": "firefox",
"vars": {
"mongodb_version": "latest-alpha-enterprise",
"browser_name": "firefox"
},
"skip_on": ["macos-1100", "macos-1100-arm64", "rhel76-large", "windows-vsCurrent-large"]
"skip_on": ["macos-1100", "macos-1100-arm64", "rhel80-large", "windows-vsCurrent-large"]
}
]
}
Expand All @@ -163,7 +163,7 @@
"short": {
"ubuntu2004-large": "ubuntu",
"windows-vsCurrent-large": "windows",
"rhel76-large": "rhel",
"rhel80-large": "rhel",
"macos-1100": "macos",
"macos-1100-arm64": "macos-arm",
"macos-1100-gui": "macos-gui",
Expand All @@ -172,7 +172,7 @@
"long": {
"ubuntu2004-large": "Ubuntu 20.04",
"windows-vsCurrent-large": "Windows 10",
"rhel76-large": "RHEL 7.6",
"rhel80-large": "RHEL 8.0",
"macos-1100": "MacOS x64 11.00",
"macos-1100-arm64": "MacOS arm64 11.00",
"macos-1100-gui": "MacOS x64 11.00 w/ GUI Session",
Expand Down
16 changes: 7 additions & 9 deletions .evergreen/verify-artifacts.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ ARTIFACTS_DIR="packages/compass/dist"
echo "Verifying artifacts at $ARTIFACTS_DIR"
ls -l $ARTIFACTS_DIR

# Use tmp directory for all gpg operations
# Use tmp directory for all gpg operations/the rpm database
GPG_HOME=$(mktemp -d)
TMP_FILE=$(mktemp)
COMPASS_KEY="https://pgp.mongodb.com/compass.asc"
Expand Down Expand Up @@ -45,16 +45,14 @@ verify_using_rpm() {
# RPM packages are signed using gpg and the signature is embedded in the package.
# Here, we need to import the key in `rpm` and then verify the signature.
echo "Importing key into rpm"
rpm --import $COMPASS_KEY > "$TMP_FILE" 2>&1
# Even if the file is not signed, the command below will exit with 0 and output something like: sha1 md5 OK
rpm --dbpath "$GPG_HOME" --import $COMPASS_KEY > "$TMP_FILE" 2>&1
# Even if the file is not signed, the command below will exit with 0 and output something like: digests OK
# So we need to check the output of the command to see if the file is signed successfully.
echo "Verifying $1 using rpm"
output=$(rpm -K $ARTIFACTS_DIR/$1)
# Remove the imported key from rpm
rpm -e $(rpm -q gpg-pubkey --qf '%{name}-%{version}-%{release}:%{summary}\n' | grep compass | awk -F: '{print $1}')

output=$(rpm --dbpath "$GPG_HOME" -K $ARTIFACTS_DIR/$1)

# Check if the output contains the string "pgp md5 OK"
if [[ $output != *"pgp md5 OK"* ]]; then
if [[ $output != *"digests signatures OK"* ]]; then
echo "File $1 is not signed"
exit 1
fi
Expand Down Expand Up @@ -84,4 +82,4 @@ elif [ "$IS_OSX" = true ]; then
else
echo "Unknown OS, failed to verify file signing"
exit 1
fi
fi
2 changes: 1 addition & 1 deletion .evergreen/xvfb-service.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
set -e

XVFB=/usr/bin/Xvfb
XVFBARGS=":1 -screen 0 1024x768x24 -ac +extension GLX +render -noreset"
XVFBARGS=":1 -screen 0 1432x840x24 -ac +extension GLX +render -noreset"
PIDFILE=/var/run/xvfb.pid
case "$1" in
start)
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ name: "CodeQL"
on:
push:
branches: [ "main", '*-releases' ]
tags: [ 'v*' ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "main" ]
Expand Down Expand Up @@ -53,7 +54,7 @@ jobs:
# Prefix the list here with "+" to use these queries and those in the config file.

# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
queries: security-extended
config: |
paths-ignore:
- '**/*.test.js'
Expand Down
2 changes: 2 additions & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -82,3 +82,5 @@ Bailey Pearson <[email protected]>
Hao <[email protected]>
Paula Stachova <[email protected]>
Basit <[email protected]>
Luca <[email protected]>
Alena Khineika <[email protected]>
8 changes: 6 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,13 @@ This repository includes a few recommended plugins for your convenience:

### Working on Plugins

Most of the plugins have their own development environment so you can work on them in isolation. If you want to work on a plugin without running the whole Compass application, you can run `npm run start` in the plugin directory (such as at the top of the `compass/packages/compass-aggregations` directory), either with the help of `lerna` or `npm workspaces`. For example, to start `compass-aggregations` plugin locally, you can either run `npm run start --workspace @mongodb-js/compass-aggregations` from the top of `compass` directory, run `npx lerna run start --scope @mongodb-js/compass-aggregations --stream` from anywhere in the `compass` directory, or run `npm run start` from the top of the `compass/packages/compass-aggregations` directory. Same approaches will work for any other workspace-specific script. If you want to run commands like `test` or `check` only for one specific workspace in the repository, you can use any of the methods described above. As an example, to run all tests in one plugin that you are working on such as the `compass-aggregations` plugin, you can run `npm run test` from the top of the `compass/packages/compass-aggregations` directory.
> [!NOTE]
> For documentation regarding how to write plugin packages, check out the
> [hadron-app-registry](./packages/hadron-app-registry/README.md) documentation.
If you want to see your changes applied in Compass, you might need to rebuild plugins that you changed with the `compile` command. Instead of manually writing out the `scope` you might want to use `lerna --since` filter to rebuild everything since your local or origin `HEAD` of the git history: `npx lerna run compile --stream --since origin/HEAD`. Restarting or hard-reloading (Shift+CMD+R) Compass after compilation is finished should apply your changes.
To run npm scripts inside specific workspaces in the monorepo you can use either `lerna --scope` or `npm --workspace` command line arguments. As an example, to run all tests in one plugin that you are working on such as the `compass-aggregations` plugin, you can run `npm run test --workspace packages/compass-aggregation` or `lerna run test --scope @mongodb-js/compass-aggregations` commands

When running the application locally and changing any code in the monorepo, webpack will take care of automatically rebuilding the modules. In some cases, like changing styles or React component code, webpack might be able to hot-reload the code, but in most cases a page refresh is required to see the changes.

In addition to running lerna commands directly, there are a few convenient npm scripts for working with packages:

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Is there anything else you’d like to see in Compass? Let us know by submitting
- [**@mongodb-js/compass-components**](packages/compass-components): React Components used in Compass
- [**@mongodb-js/compass-connection-import-export**](packages/compass-connection-import-export): UI for Compass connection import/export
- [**@mongodb-js/compass-connections**](packages/compass-connections): Manage your MongoDB connections and connect in Compass
- [**@mongodb-js/compass-databases-navigation**](packages/compass-databases-navigation): Databases and collections sidebar navigation tree
- [**@mongodb-js/compass-connections-navigation**](packages/compass-connections-navigation): Databases and collections sidebar navigation tree
- [**@mongodb-js/compass-editor**](packages/compass-editor): Reusable Compass editor component based on ace-editor with MongoDB-specific ace modes, themes, and autocompleters
- [**@mongodb-js/compass-generative-ai**](packages/compass-generative-ai): Shared components and helpers for the generative ai aspects of Compass
- [**@mongodb-js/compass-logging**](packages/compass-logging): Shared helpers for logging in Compass packages
Expand Down
35 changes: 7 additions & 28 deletions THIRD-PARTY-NOTICES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
The following third-party software is used by and included in **Mongodb Compass**.
This document was automatically generated on Thu Apr 04 2024.
This document was automatically generated on Tue Apr 30 2024.

## List of dependencies

Expand Down Expand Up @@ -249,7 +249,7 @@ This document was automatically generated on Thu Apr 04 2024.
| **[ejson-shell-parser](#88e1a447c02d9ef3274034c023a5ebcec8188381b1bd951de7c57c140f7f3d4b)** | 2.0.1 | MIT |
| **[electron-dl](#e97e034c7b93c63e7a433d75f6f1de3e0668764225ebbd61dbde8d1b55d6f3b7)** | 3.5.0 | MIT |
| **[electron-squirrel-startup](#dcda22e402581a033ec2a017d6d05c094bf3173c1b03ae0471b2ce9078d3f601)** | 1.0.0 | Apache-2.0 |
| **[electron](#ad35eed0d5dc019b2a1b78fbd7a5cc660fa2de2ca7810045df9fdc1866366e7a)** | 28.2.10 | MIT |
| **[electron](#4e183d4b327e0da0de21843054b6fb7903970cc998c3b84a5ef79d7692e563c7)** | 29.3.1 | MIT |
| **[encodeurl](#b89152db475e86531e570f87b45d8a51aa5e5d87d4cc3b960cee7b8febf1d26a)** | 1.0.2 | MIT |
| **[end-of-stream](#fadc10994f5fa767d06fb25cfff35fb17a895daf3bc3477c782907668ed16563)** | 1.4.4 | MIT |
| **[ensure-error](#3b1eba5276d89414cef21a1007e85c4f1d6749bf57b300e082ab23975a41dbc9)** | 3.0.1 | MIT |
Expand Down Expand Up @@ -449,7 +449,7 @@ This document was automatically generated on Thu Apr 04 2024.
| **[ms](#2083576c5af8054927640b4788059806d07e250a26066c9ccb2d928394fb9226)** | 2.1.3 | MIT |
| **[napi-build-utils](#26912b5ff7632f262d64273f99cd1a869376c5c378960e24501585e35b31054a)** | 1.0.2 | MIT |
| **[negotiator](#e3856213d8f0a7d28cd4166e53ec7e2c019cb7becf4a8535097bac28d21e8579)** | 0.6.3 | MIT |
| **[node-abi](#20fad7d445931097574f4af1495e728fb65673f1571f4d81ae4f01e6ede407c4)** | 3.57.0 | MIT |
| **[node-abi](#6decee1d1b9007201af4806e0ecb5bf1e8bc345d58c7bdf99c4c2a07f88e2f6e)** | 3.59.0 | MIT |
| **[node-addon-api](#af9f7588524ca4e68f4efe7b24aea46d9c8004263b1d7cf3b558f86d87a163e8)** | 4.3.0 | MIT |
| **[node-fetch](#364527ef1b51cc6ac34872b931049c9e25b5014f9b40e3898c84e1a830e21720)** | 2.6.7 | MIT |
| **[node-fetch](#23d7d5a419e9a25e6384dee4aa24f7162544418f0cdc2d92e94e2cf924507b8c)** | 2.7.0 | MIT |
Expand Down Expand Up @@ -582,7 +582,6 @@ This document was automatically generated on Thu Apr 04 2024.
| **[use-sync-external-store](#f7d4a0ea4ee9d814fb264db8103d6ad3a831aa79bf7f3ea70bfa182f8a930f0a)** | 1.2.0 | MIT |
| **[util-deprecate](#a1bd80d6a50b36e34032c402c5204d6276747d8212b68b164a9e3f895b90c2d6)** | 1.0.2 | MIT |
| **[utils-merge](#daf17cb7acc6dd4694e84d0920d7b32dba2be0fcf114309bfce8538812e7c458)** | 1.0.1 | MIT |
| **[uuid](#a34e7819c122fe308fef4f0c9e534d305065097a743da82251b903f2761b2d26)** | 8.3.2 | MIT |
| **[uuid](#8e5d6b0bb24ea0188cd3a88b1f790f104e774bb8ed04c0dac0db7cfe2911227e)** | 9.0.1 | MIT |
| **[vary](#d308bd3935a6f29310b20de016cdb7b3de3aa40a7d4c3365b96e35d2c248d74a)** | 1.1.2 | MIT |
| **[w3c-keyname](#160316b2bf7a19e2cc0418d5ef94b5a999f9092fee3023ac9b2c7d76d2934f5b)** | 2.2.6 | MIT |
Expand Down Expand Up @@ -20880,9 +20879,9 @@ License files:
See the License for the specific language governing permissions and
limitations under the License.

<a id="ad35eed0d5dc019b2a1b78fbd7a5cc660fa2de2ca7810045df9fdc1866366e7a"></a>
<a id="4e183d4b327e0da0de21843054b6fb7903970cc998c3b84a5ef79d7692e563c7"></a>

### [electron](https://www.npmjs.com/package/electron) (version 28.2.10)
### [electron](https://www.npmjs.com/package/electron) (version 29.3.1)

License tags: MIT

Expand Down Expand Up @@ -29884,9 +29883,9 @@ License files:
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

<a id="20fad7d445931097574f4af1495e728fb65673f1571f4d81ae4f01e6ede407c4"></a>
<a id="6decee1d1b9007201af4806e0ecb5bf1e8bc345d58c7bdf99c4c2a07f88e2f6e"></a>

### [node-abi](https://www.npmjs.com/package/node-abi) (version 3.57.0)
### [node-abi](https://www.npmjs.com/package/node-abi) (version 3.59.0)

License tags: MIT

Expand Down Expand Up @@ -40659,26 +40658,6 @@ License files:
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

<a id="a34e7819c122fe308fef4f0c9e534d305065097a743da82251b903f2761b2d26"></a>

### [uuid](https://www.npmjs.com/package/uuid) (version 8.3.2)

License tags: MIT

License files:

- LICENSE.md:

The MIT License (MIT)

Copyright (c) 2010-2020 Robert Kieffer and other contributors

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

<a id="8e5d6b0bb24ea0188cd3a88b1f790f104e774bb8ed04c0dac0db7cfe2911227e"></a>

### [uuid](https://www.npmjs.com/package/uuid) (version 9.0.1)
Expand Down
4 changes: 2 additions & 2 deletions configs/eslint-config-compass/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@mongodb-js/eslint-config-compass",
"version": "1.0.17",
"version": "1.1.1",
"description": "Shared Compass eslint configuration",
"license": "SSPL",
"main": "index.js",
Expand All @@ -16,7 +16,7 @@
"@babel/core": "^7.21.4",
"@babel/eslint-parser": "^7.14.3",
"@mongodb-js/eslint-config-devtools": "^0.9.9",
"@mongodb-js/eslint-plugin-compass": "^1.0.15",
"@mongodb-js/eslint-plugin-compass": "^1.0.17",
"@typescript-eslint/eslint-plugin": "^5.59.0",
"@typescript-eslint/parser": "^5.59.0",
"eslint-config-prettier": "^8.3.0",
Expand Down
1 change: 1 addition & 0 deletions configs/eslint-plugin-compass/.eslintrc.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
module.exports = {
root: true,
extends: ['@mongodb-js/eslint-config-compass'],
Expand Down
1 change: 1 addition & 0 deletions configs/eslint-plugin-compass/.mocharc.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
module.exports = {
...require('@mongodb-js/mocha-config-compass'),
spec: ['rules/**/*.test.js'],
Expand Down
1 change: 1 addition & 0 deletions configs/eslint-plugin-compass/index.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
module.exports = {
rules: {
'no-leafygreen-outside-compass-components': require('./rules/no-leafygreen-outside-compass-components'),
Expand Down
6 changes: 3 additions & 3 deletions configs/eslint-plugin-compass/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"email": "[email protected]"
},
"homepage": "https://github.com/mongodb-js/compass",
"version": "1.0.15",
"version": "1.0.17",
"repository": {
"type": "git",
"url": "https://github.com/mongodb-js/compass.git"
Expand All @@ -37,8 +37,8 @@
"reformat": "npm run eslint . -- --fix && npm run prettier -- --write ."
},
"devDependencies": {
"@mongodb-js/mocha-config-compass": "^1.3.7",
"@mongodb-js/prettier-config-compass": "^1.0.1",
"@mongodb-js/mocha-config-compass": "^1.3.9",
"@mongodb-js/prettier-config-compass": "^1.0.2",
"depcheck": "^1.4.1",
"eslint": "^7.25.0",
"mocha": "^10.2.0",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
const path = require('path');

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
const { RuleTester } = require('eslint');
const path = require('path');
const rule = require('./no-leafygreen-outside-compass-components');
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
const path = require('path');
const { spawnSync } = require('child_process');

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
const { RuleTester } = require('eslint');
const path = require('path');
const rule = require('./unique-mongodb-log-id');
Expand Down
1 change: 1 addition & 0 deletions configs/eslint-plugin-compass/test/__fixtures__/index.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
/* eslint-disable @mongodb-js/compass/unique-mongodb-log-id */
/* global mongoLogId */
mongoLogId(1);
Expand Down
4 changes: 2 additions & 2 deletions configs/mocha-config-compass/package.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
{
"name": "@mongodb-js/mocha-config-compass",
"version": "1.3.7",
"version": "1.3.9",
"description": "Shared mocha mocha configuration for Compass packages",
"license": "SSPL",
"main": "index.js",
"devDependencies": {
"@mongodb-js/prettier-config-compass": "^1.0.1",
"@mongodb-js/prettier-config-compass": "^1.0.2",
"prettier": "^2.7.1"
},
"scripts": {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
let setupPreferencesPromise;

module.exports = {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
// Not implemented in jsdom
if (!window.matchMedia) {
window.matchMedia = globalThis.matchMedia = (media) => {
Expand Down
1 change: 1 addition & 0 deletions configs/mocha-config-compass/register/leaflet-register.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
// Proxy window.L between window and globalThis for leaflet/leaflet-draw compatibility
if (typeof window !== undefined && window !== globalThis) {
Object.defineProperty(window, 'L', {
Expand Down
1 change: 1 addition & 0 deletions configs/mocha-config-compass/register/node-env-register.js
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
'use strict';
process.env.NODE_ENV = 'test';
1 change: 1 addition & 0 deletions configs/mocha-config-compass/reporter.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
const Mocha = require('mocha');
const fs = require('fs');
const path = require('path');
Expand Down
1 change: 1 addition & 0 deletions configs/prettier-config-compass/index.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
'use strict';
module.exports = {
...require('@mongodb-js/prettier-config-devtools'),
};
2 changes: 1 addition & 1 deletion configs/prettier-config-compass/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@mongodb-js/prettier-config-compass",
"version": "1.0.1",
"version": "1.0.2",
"description": "Shared Compass prettier configuration",
"license": "SSPL",
"main": "index.js",
Expand Down
Loading

0 comments on commit 0b72cdb

Please sign in to comment.