ioBroker / ioBroker.node-red

Instantiate the server with node-red
Apache License 2.0
52 stars 27 forks source link

Update mongodb requirement from ^4.9.1 to ^4.11.0 #341

Closed dependabot[bot] closed 1 year ago

dependabot[bot] commented 1 year ago

Updates the requirements on mongodb to permit the latest version.

Release notes

Sourced from mongodb's releases.

4.11.0

The MongoDB Node.js team is pleased to announce version 4.11.0 of the mongodb package!

Release Highlights

Recursive Schema Support

Version 4.3.0 of the Node driver added Typescript support for dot notation into our Filter type but in the process it broke support for recursive schemas. In 4.11.0, we now support recursive schemas and provide type safety on dot notation queries up to a depth of 9. Beyond a depth of 9, code still compiles but is no longer type checked (it falls back to a type of any).

interface CircularSchema {
    name: string;
    nestedSchema: CircularSchema;
}

// we have a collection of type Collection<CircularSchema>

// below a depth of 9, type checking is enforced collection.findOne({ 'nestedSchema.nestedSchema.nestedSchema.name': 25 }) // compilation error - name must be a string

// at a depth greater than 9, code compiles but is not type checked (11 deep) collection.findOne({ 'nestedSchema.nestedSchema.nestedSchema.nestedSchema.nestedSchema.nestedSchema.nestedSchema.nestedSchema.nestedSchema.nestedSchema.name': 25 }) // NO compilation error

Note that our depth limit is a product of Typescript's recursive type limitations.

External Contributions

Many thanks to those who contributed to this release!

  • @​ermik provided an extremely large schema to test compilation with, which made testing our new recursive schema support possible with large schemas straightforward.
  • @​noahsilas for documentation improvements in change streams and fixing our Typescript types for read preferences.
  • @​zendagin for adding Typescript support for hashed indexes.
  • @​biniona-mongodb for fixing our parsing of TLS options.
  • @​LinusU for removing support for server versions lower than our minimum supported server version and improving error messages for unacknowledged writes with hints.

Features

  • NODE-3651: add hashed index type (#3432) (f6b56a1)
  • NODE-3875: support recursive schema types (#3433) (26bce4a)
  • NODE-4503: throw original error when server attaches NoWritesPerformed label (#3441) (a7dab96)
  • NODE-4650: handle handshake errors with SDAM (#3426) (cbe7533)
  • NODE-4721: add aws-sdk as optional dependency (#3446) (b879cb5)

... (truncated)

Changelog

Sourced from mongodb's changelog.

4.11.0 (2022-10-19)

Features

  • NODE-3255: add minPoolSizeCheckIntervalMS option to connection pool (#3429) (5f34ad0)
  • NODE-3651: add hashed index type (#3432) (f6b56a1)
  • NODE-3875: support recursive schema types (#3433) (26bce4a)
  • NODE-4503: throw original error when server attaches NoWritesPerformed label (#3441) (a7dab96)
  • NODE-4650: handle handshake errors with SDAM (#3426) (cbe7533)
  • NODE-4721: add aws-sdk as optional dependency (#3446) (b879cb5)

Bug Fixes

  • NODE-3712,NODE-4546: electionId should be ordered before setVersion (#3174) (ca51fec)
  • NODE-3921: error on invalid TLS option combinations (#3405) (1a550df)
  • NODE-4186: accept ReadPreferenceLike in TransactionOptions type (#3425) (dc62bcb)
  • NODE-4475: make interrupted message more specific (#3437) (5f37cb6)
  • NODE-4608: prevent parallel monitor checks (#3404) (78bcfe4)
  • NODE-4647: improve error message (#3409) (0d3c02e)
  • NODE-4649: use SDAM handling for errors from min pool size population (#3424) (ef3b55d)

4.10.0 (2022-09-19)

Features

  • NODE-4385: add cmap pool pausing functionality (#3321) (335ee55)
  • NODE-4484: add experimental support for disambiguatedPaths in change stream documents (#3365) (846365a)
  • NODE-4519: deprecate promiseLibrary and PromiseProvider (#3403) (5c322b6)
  • NODE-4547: mark all callback APIs as deprecated (#3388) (a983f14)
  • NODE-4607: add exports needed by legacy client (#3396) (972f760)
  • NODE-4634: add support for bulk FindOperators.hint() (#3408) (8758890)

Bug Fixes

  • NODE-3144: pool clear event ordering and retryability tests (#3407) (bdc0d67)
  • NODE-3986: unskip MONGODB-AWS test (#3397) (5676f81)
  • NODE-4557: randomize servers when there are only 2 eligible servers (#3390) (ddcfa49)
  • NODE-4583: revert nested union type support (#3383) (7f94f0a)
  • NODE-4591: only set loadBalanced on handshake when explicitly set (#3386) (57e9f2d)
  • NODE-4621: ipv6 address handling in HostAddress (#3410) (5eb3978)
  • NODE-4639: allow PromiseProvider to be null (#3412) (d29b3d9)

4.9.0 (2022-08-18)

Features

... (truncated)

Commits
  • 6fb87e4 chore(release): 4.11.0
  • 631455d docs(NODE-4724): update fle docs to use "in use encryption" terminology (#3448)
  • 7a8b186 docs(NODE-4554): remove experimental tag from disambiguatedPaths (#3450)
  • 8f06a55 chore(NODE-4700): update dependencies (#3439)
  • b879cb5 feat(NODE-4721): add aws-sdk as optional dependency (#3446)
  • 5f37cb6 fix(NODE-4475): make interrupted message more specific (#3437)
  • 26bce4a feat(NODE-3875): support recursive schema types (#3433)
  • a7dab96 feat(NODE-4503): throw original error when server attaches NoWritesPerformed ...
  • dbfb7d5 docs: Note special case in AbstractCursor.forEach() iterator (#3445)
  • bf000ae refactor(NODE-4689): track checked out connections (#3440)
  • Additional commits viewable in compare view


Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)