Skip to content

Releases: janbjorge/pgqueuer

v0.19.3

06 Feb 23:17
fa4a889
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.19.2...v0.19.3

v0.19.2

05 Feb 20:13
7c1f800
Compare
Choose a tag to compare

What's Changed

  • Set default log level to INFO and simplify logger setup by @janbjorge in #309

Full Changelog: v0.19.1...v0.19.2

v0.19.1

05 Feb 12:01
Compare
Choose a tag to compare

Release Summary

Enhanced Logging Control

  • --log-level Option Added: You can now set the log level dynamically via the CLI using the new --log-level flag.

  • Avoided basicConfig on Import: Removed automatic logging configuration on import to prevent unintended side effects. Logging is now explicitly set using setup_fancy_logger.

Full Changelog: v0.19.0...v0.19.1

v0.19.0

05 Feb 07:38
18e2355
Compare
Choose a tag to compare

PGQueuer v0.19.0 Release Notes

Overview

PGQueuer v0.19.0 introduces significant changes aimed at enhancing performance and improving logging. This release includes breaking changes, so please review the notes carefully to ensure a smooth upgrade.

Breaking Changes

  1. Unified Status Enum
    The queue_status_type and statistics_table_status_type enums have been consolidated into a single unified enum. This simplifies status management across the system.
    [PR #294](#294)

  2. Enhanced Job Logging with queue_table_log
    A new queue_table_log has been introduced to improve job logging and performance. This change affects how job statuses are recorded and reported. The new logging mechanism delivers an approximate 2.5x performance boost.
    [PR #287](#287)

  3. Durability Policy Introduction
    A new durability policy mechanism has been added, allowing explicit configuration of table logging modes. This feature provides greater control over performance and data durability.
    [PR #301](#301)

New Features

  1. Durability Policy Configuration
    Introduced explicit logging modes through a new durability policy, enabling users to choose between volatile, balanced, and durable configurations for table logging.

    • Volatile: All tables are unlogged, offering maximum performance at the cost of durability. Suitable for temporary or ephemeral data where data loss is acceptable.
    • Balanced: The main queue and schedules tables are logged for durability, while auxiliary tables like logs and statistics are unlogged for better performance.
    • Durable: All tables are fully logged to ensure maximum data integrity and durability, ideal for production environments where data loss is unacceptable.
      [PR #301](#301)
  2. Updated CLI with New Commands
    The CLI has been enhanced with new commands and improved documentation. The queue command now has better support and clearer documentation.
    [PR #302](#302)

Migration Guide

To upgrade to v0.19.0, follow these steps:

  1. Update Enums:

    • Replace references to queue_status_type and statistics_table_status_type with the new unified status enum.
  2. Apply Schema Changes:

    • Run the pgq upgrade command to apply the new schema changes, including the creation of queue_table_log.
  3. Configure Durability Policy:

    • Review and set the appropriate durability policy using the new CLI options to balance performance and data durability according to your needs.

Full Changelog

For a detailed list of all changes, refer to the [full changelog](v0.18.10...v0.19.0).


Its recommend thorough testing before deploying v0.19.0 to production environments due to the breaking changes included in this release. For any issues, please report them on [GitHub Issues](https://github.com/janbjorge/pgqueuer/issues).

Full Changelog: v0.18.10...v0.19.0

v0.18.10

22 Jan 20:15
Compare
Choose a tag to compare

What's Changed

  • Add queue cli option by @janbjorge in #295
  • Remove build of prometheus docker image by @janbjorge in #297
  • Resolve Infinite Retry Loop on Database Outage and Enhance Buffer Shutdown Behavior by @janbjorge in #296

Full Changelog: v0.18.9...v0.18.10

v0.18.9

19 Jan 18:43
Compare
Choose a tag to compare
v0.18.9 Pre-release
Pre-release

Full Changelog: v0.18.8...v0.18.9

v0.18.8

17 Jan 21:12
37bb72d
Compare
Choose a tag to compare

What's Changed

  • Refactor benchmark script by @janbjorge in #286
  • Use async_timeout in RetryWithBackoffEntrypointExecutor by @janbjorge in #291
  • Update docs to explain asyncpg's default autocommit mode, unlike psycopg by @janbjorge in #290
  • Update RetryWithBackoffEntrypointExecutor docs by @janbjorge in #292

Full Changelog: v0.18.7...v0.18.8

v0.18.7

12 Jan 21:43
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.18.6...v0.18.7

v0.18.6

09 Jan 17:39
e29682e
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.18.5...v0.18.6

v0.18.5

09 Jan 13:25
82ef556
Compare
Choose a tag to compare

Release Notes for v0.18.5

Enhancements and Features

  • CLI Improvements: Added support for the --factory option in the dashboard CLI command for custom factory configurations. (#260)
  • Performance: Switched to using uvloop for improved event loop performance across the application. (#263)
  • Annotation Updates: Updated run_factory annotations to include AbstractContextManager for better type coverage. (#261)
  • Supervisor Enhancements: Added lifespan hooks in the supervisor for cleaner setup and teardown processes. (#265)

Maintenance and Bug Fixes

  • CI Update: Updated the CI workflows to explicitly use ubuntu-22.04 for consistency and reproducibility. (#270)
  • Dependency Updates: Bumped various dependencies, including pytest-asyncio, ruff, and pydantic-settings, ensuring compatibility with the latest versions. (#264)
  • Annotation Cleanup: Minor improvements to annotation types for better code clarity. (#267)
  • Optimizations: Skipped updates to RPS (Rate Per Second) statistics when no data is available, reducing unnecessary operations. (#268)

New Contributors

  • Thanks to @mnbbrown for the first contribution on CLI enhancements. (#260)

Full Changelog

For the complete list of changes, refer to: v0.18.4...v0.18.5