fincubator / tellerbot

Telegram Bot for over-the-counter trading
https://t.me/TellerBot
GNU Affero General Public License v3.0
23 stars 10 forks source link

Bump motor from 2.1.0 to 2.2.0 #112

Closed dependabot-preview[bot] closed 4 years ago

dependabot-preview[bot] commented 4 years ago

Bumps motor from 2.1.0 to 2.2.0.

Release notes

Sourced from motor's releases.

2.2.0

Motor 2.2 adds support for MongoDB 4.4 features. It depends on PyMongo 3.11 or later. Motor continues to support MongoDB 3.0 and later. Motor 2.2 also drops support for Python 2.7 and Python 3.4.

For more info see the changelog: https://motor.readthedocs.io/en/2.2.0/changelog.html

Changelog

Sourced from motor's changelog.

Changelog

Motor 2.2

Motor 2.2 adds support for MongoDB 4.4 features. It depends on PyMongo 3.11 or later. Motor continues to support MongoDB 3.0 and later. Motor 2.2 also drops support for Python 2.7 and Python 3.4.

New features:

  • Added the AsyncIOMotorCursor method ~motor.motor_asyncio.AsyncIOMotorCursor.next that advances the cursor one document at a time, similar to to the AsyncIOMotorChangeStream method ~motor.motor_asyncio.AsyncIOMotorChangeStream.next.
  • Added index-hinting support to the ~motor.motor_asyncio.AsyncIOMotorCollection.replace_one, ~motor.motor_asyncio.AsyncIOMotorCollection.update_one, ~motor.motor_asyncio.AsyncIOMotorCollection.update_many, ~motor.motor_asyncio.AsyncIOMotorCollection.delete_one, ~motor.motor_asyncio.AsyncIOMotorCollection.delete_many, ~motor.motor_asyncio.AsyncIOMotorCollection.find_one_and_replace, ~motor.motor_asyncio.AsyncIOMotorCollection.find_one_and_update, and ~motor.motor_asyncio.AsyncIOMotorCollection.find_one_and_delete methods.
  • Added support for the allow_disk_use parameter to ~motor.motor_asyncio.AsyncIOMotorCollection.find.
  • Modified the ~motor.motor_asyncio.AsyncIOMotorChangeStream class' async context manager such that the change stream cursor is now created during the call to async with. Previously, the cursor was only created when the application iterated the ~motor.motor_asyncio.AsyncIOMotorChangeStream object which could result in the application missing some changes.
  • Motor now advertises the framework used by the application to the MongoDB server as asyncio or Tornado. Previously, no framework information was reported if the application used asyncio.

Bug-fixes:

  • Fixed a bug that caused calls to the ~motor.motor_asyncio.AsyncIOMotorGridOut.open() method to raise AttributeError.
  • Fixed a bug that sometimes caused ~asyncio.Future.set_result to be called on a cancelled ~asyncio.Future when iterating a ~motor.motor_asyncio.AsyncIOMotorCommandCursor.

Deprecations:

  • Deprecated AsyncIOMotorCursor method ~motor.motor_asyncio.AsyncIOMotorCursor.next_object and property ~motor.motor_asyncio.AsyncIOMotorCursor.fetch_next. Applications should use async for to iterate over cursors instead.
  • Deprecated the ~motor.motor_asyncio.AsyncIOMotorClient.fsync method. Applications should run the fsync command directly with ~motor.motor_asyncio.AsyncIOMotorDatabase.command instead.

Issues Resolved

See the Motor 2.2 release notes in JIRA for the complete list of resolved issues in this release.

Motor 2.1

Motor 2.1 adds support for MongoDB 4.2 features. It depends on PyMongo 3.10 or later. Motor continues to support MongoDB 3.0 and later. Motor 2.1 also adds support for Python 3.8.

Motor now offers experimental support for Windows when it is using the asyncio event loop. This means it supports Windows exclusively with Python 3, either integrating with asyncio directly or with Tornado 5 or later: starting in version 5, Tornado uses the asyncio event loop on Python 3 by default.

Additional changes:

  • Support for MongoDB 4.2 sharded transactions. Sharded transactions have the same API as replica set transactions.
  • New method ~motor.motor_asyncio.AsyncIOMotorClientSession.with_transaction to support conveniently running a transaction in a session with automatic retries and at-most-once semantics.
  • Added the max_commit_time_ms parameter to ~motor.motor_asyncio.AsyncIOMotorClientSession.start_transaction.
  • The retryWrites URI option now defaults to True. Supported write operations that fail with a retryable error will automatically be retried one time, with at-most-once semantics.
  • Support for retryable reads and the retryReads URI option which is enabled by default. See the ~pymongo.mongo_client.MongoClient documentation for details. Now that supported operations are retried automatically and transparently, users should consider adjusting any custom retry logic to prevent an application from inadvertently retrying for too long.
  • Support zstandard for wire protocol compression.
  • Support for periodically polling DNS SRV records to update the mongos proxy list without having to change client configuration.
  • New method motor.motor_asyncio.AsyncIOMotorDatabase.aggregate to support running database level aggregations.
  • Change stream enhancements for MongoDB 4.2:
    • Resume tokens can now be accessed from a AsyncIOMotorChangeStream cursor using the ~motor.motor_asyncio.AsyncIOMotorChangeStream.resume_token attribute.
    • New AsyncIOMotorChangeStream method ~motor.motor_asyncio.AsyncIOMotorChangeStream.try_next and attribute ~motor.motor_asyncio.AsyncIOMotorChangeStream.alive.
Commits
  • 5e4da00 BUMP 2.2.0
  • 84f8a05 MOTOR-420 Remove legacy APIs/patterns from documentation (#85)
  • 70185d1 MOTOR-596 Deprecate fsync helper (#84)
  • d72b4f5 MOTOR-582 Deprecate Cursor.fetch_next and Cursor.next_object (#80)
  • 5589020 MOTOR-598 Fix doctest failures
  • ae9595e MOTOR-600 Fix AsyncIOMotorGridOut.open (#82)
  • 938ff4e MOTOR-597 Stop using deprecated loop arguments and other improvements (#78)
  • 11df507 MOTOR-505 MOTOR-455 MOTOR-433 Add index hinting to commands (#70)
  • f89b3ca MOTOR-496 Use windows-64-vsMulti-small and test asyncio on Windows (#79)
  • 42b48d8 MOTOR-595 Add Python 3 back to the list of trove classifiers (#77)
  • Additional commits viewable in compare view


Dependabot compatibility score

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) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)