TeamPGM / PagerMaid-Pyro

Advanced Multi-Featured Telegram UserBot by pyrogram.
GNU Affero General Public License v3.0
620 stars 73 forks source link

⬆️ Update apscheduler requirement from ~=3.9.1.post1 to ~=4.0.0a2 #45

Closed dependabot[bot] closed 1 year ago

dependabot[bot] commented 1 year ago

Updates the requirements on apscheduler to permit the latest version.

Changelog

Sourced from apscheduler's changelog.

Version history

To find out how to migrate your application from a previous version of APScheduler, see the :doc:migration section <migration>.

UNRELEASED

  • BREAKING Workers were merged into schedulers. As the Worker and AsyncWorker classes have been removed, you now need to pass role=SchedulerRole.scheduler to the scheduler to prevent it from processing due jobs. The worker event classes (WorkerEvent, WorkerStarted, WorkerStopped) have also been removed.
  • BREAKING The synchronous interfaces for event brokers and data stores have been removed. Synchronous libraries can still be used to implement these services through the use of anyio.to_thread.run_sync().
  • BREAKING The current_worker context variable has been removed
  • BREAKING The current_scheduler context variable is now specified to only contain the currently running instance of a synchronous scheduler (apscheduler.schedulers.sync.Scheduler). The asynchronous scheduler instance can be fetched from the new current_async_scheduler context variable, and will always be available when a scheduler is running in the current context, while current_scheduler is only available when the synchronous wrapper is being run.
  • BREAKING Changed the initialization of data stores and event brokers to use a single start() method that accepts an AsyncExitStack (and, depending on the interface, other arguments too)
  • BREAKING Added a concept of "job executors". This determines how the task function is executed once picked up by a worker. Several data structures and scheduler methods have a new field/parameter for this, job_executor. This addition requires database schema changes too.
  • Added the ability to run jobs in worker processes, courtesy of the processpool executor
  • The synchronous scheduler now runs an asyncio event loop in a thread, acting as a façade for ``AsyncScheduler`
  • Fixed the schema parameter in SQLAlchemyDataStore not being applied
  • Fixed SQLalchemy 2.0 compatibility

4.0.0a2

  • BREAKING Changed the scheduler API to always require a call to either run_until_stopped() or start_in_background() to start the scheduler (using it as a context manager is no longer enough)
  • BREAKING Replaced from_asyncpg_pool() with from_dsn() in the asyncpg event broker
  • Added an async Redis event broker
  • Added automatic reconnection to the Redis event brokers (sync and async)
  • Added automatic reconnection to the asyncpg event broker
  • Changed from_async_sqla_engine() in asyncpg event broker to only copy the connection options instead of directly using the engine
  • Simplified the MQTT event broker by providing a default client instance if omitted

... (truncated)

Commits
  • 034586a Added the release version
  • 54d7534 Marked removal of from_asyncpg_pool() as a breaking change
  • 724c21e Removed setup.cfg entirely
  • 6c57dca Added section to user guide on how to run the scheduler
  • e47af44 Fixed resource warnings in the asyncpg event broker when the listener task is...
  • 2a0eac6 Fixed asyncpg/redis start() while cancelled resulting in an inconsistent canc...
  • 5f0627b Changed the scheduler API to require an explicit start call
  • 90a9675 Fixed docstring on stop_check_interval
  • f41a7e5 Added mention of the JobReleased event serialization fix to the changelog
  • efc7b92 Don't report cancellations as crashes on Python 3.7
  • 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)
dependabot[bot] commented 1 year ago

Looks like apscheduler is up-to-date now, so this is no longer needed.