Releases: pgmq/pgmq
Releases · pgmq/pgmq
v1.7.0 - NOTIFY and Pop Many
New features 🚀
- 🍿 pop many : -pop() now accepts an optional parameter
qty
which allows users to pop multiple messages at once - by @legion49f in #433 - 🔔 notifications: server side functions which use
NOTIFY
to inform consumers when messages are available to be consumed. Usage requires client side implementation. Refer to these python tests for example usage. by @chrisprobst in #432
Changelog
- fix rust crate ci by @ChuckHend in #419
- Fix
make dist
by @theory in #420 - install pgmq SQL from cli and lib by @ChuckHend in #409
- Update CODEOWNERS by @ChuckHend in #424
- python/optional extension init by @ChuckHend in #423
- Add new queue notification feature by @chrisprobst in #432
- Fix failing upgrade test by @ChuckHend in #436
- added pop many and added migration by @legion49f in #433
- Client-side notification tests by @ChuckHend in #434
New Contributors
- @chrisprobst made their first contribution in #432
- @legion49f made their first contribution in #433
Full Changelog: v1.6.1...v1.7.0
v1.6.1
Bug fix
- bug fix: patch 1.6.0 migration sql by @ChuckHend in #416
- bug fix: patch extension config dump in main SQL file by @ChuckHend in #418
Full Changelog: v1.6.0...v1.6.1
v1.6.0
Bug fixes
- pgmq.drop_queue return false when queue does not exist by @ChuckHend in #385
- fix queue name length check by @ChuckHend in #386
- resolve race condition on pgmq.create by @ChuckHend in #393
- Make extension data pg_dumpable by @ChuckHend in #413
Other changes
- Add Python extension implementation for send with timestamp by @Neptune650 in #333
- fix extension release by @ChuckHend in #389
- doc fix for functions.md by @chirpyli in #390
- Fix README Link to pgmq-js by @eichenroth in #391
- Add README-Link to REST-API client by @eichenroth in #392
- add installation guide by @ChuckHend in #395
- move image build to ghcr by @ChuckHend in #396
- update org reference on readme by @ChuckHend in #397
- add demo gif to readme by @ChuckHend in #398
- Add pgflow.dev to "Who uses pgmq?" section by @jumski in #400
- Problem: Link to INSTALLATION.md does not work by @c-rack in #402
- fix: Override types of timestamp columns to avoid
time
conflict by @spencewenski in #401 - update org in cargo publish by @ChuckHend in #403
- change paths and pointers to pgmq org, remove trunk by @ChuckHend in #405
- add prisma-pgmq to community by @dvlkv in #410
- tune pg settings in container image build by @ChuckHend in #411
New Contributors
- @chirpyli made their first contribution in #390
- @eichenroth made their first contribution in #391
- @c-rack made their first contribution in #402
- @spencewenski made their first contribution in #401
- @dvlkv made their first contribution in #410
Full Changelog: v1.5.1...v1.6.0
v1.5.1
What's Changed
- Add note about conditional read being experimental by @v0idpwn in #370
- Enable PGMQ to run without installing an extension by @axelfontaine in #379
- Change pop() and set_vt() to use clock_timestamp() instead of now() by @brianpursley in #383
New Contributors
- @axelfontaine made their first contribution in #381
Full Changelog: v1.5.0...v1.5.1
v1.5.0
Potentially breaking change
- The
delay
parameter onpgmq.send()
andpgmq.send_batch()
now accepts eithertimestamptz
orinteger
type, and will be a breaking change for any user using implicit type casting for the previous integer type, for both prepared statements and dynamic SQL. For example,pgmq.send('myq', '{"hello": "world"}', '10')
would previously function correctly as Postgres could implicitly cast'10'
string to an integer. The following are correct examples:
select pgmq.send('x', '{"hello": "world"}'); -- default value for `delay`
select pgmq.send('x', '{"hello": "world"}', 10); -- integer value
select pgmq.send('x', '{"hello": "world"}', '2024-12-01 02:29:20.889403+00'::timestamptz); -- explicit timestamptz
New Features
- Experimental filter messages on
pgmq.read()
by using theconditional
parameter. This feature is experimental and subject to change. #322 - send and send_batch's
delay
parameter now accepts a timestamp in addition to integer #320 - message headers now accepted on all messages #338
What's Changed
- docs: Community
PGMQ
TypeScript Client Support forDeno
by @tmountain in #311 - docs: Community PGMQ TypeScript Client Support for NodeJs and Midway.js, supports transaction by @waitingsong in #312
- pgmq-python: adding support for Transaction by @tavallaie in #268
- release tembo-pgmq-python v0.9.0 by @ChuckHend in #314
- add pg17 support by @ChuckHend in #313
- added truncate instead of delete by @Abiji-2020 in #321
- update
pgmq.control
reference by @emmanuel-ferdman in #327 - add migration sql for purge queue upgrade by @ChuckHend in #325
- Make drop queue infer queue type by @Neptune650 in #319
- Add new conditional parameter for read by @Neptune650 in #322
- add test for reading null message by @ChuckHend in #329
- Fix gitignore for SQL extension files by @fabriziomello in #331
- Add queue_visible_length to pgmq.metrics by @v0idpwn in #332
- Add timestamp support in send and send_batch by @Neptune650 in #320
- Makefile: use pg_config path from environment variable instead of hardcoded binary by @palash25 in #336
- Fix error when PG_CONFIG not explicitly defined, plus support development pg versions by @v0idpwn in #337
- Add Installation Guide for PGMQ by @Saturn225 in #323
- Add devcontainer for Python environment by @jason810496 in #339
- Update the pgmq extension README to utilize the Scarf Gateway by @arjundevarajan in #330
- style: simplify statements for readability by @hamirmahal in #341
- Fix regression: not respecting interval in read_with_poll by @v0idpwn in #343
- [chore] don't publish from forks by @rotty3000 in #346
- bitnami compatible image by @rotty3000 in #348
- Add Supabase to "Who uses pgmq?" by @jumski in #351
- Implement message headers by @v0idpwn in #338
- Rename pgmq--1.4.4--1.5.0.sql to pgmq--1.4.5--1.5.0.sql by @za-arthur in #355
- drop pg12 support and publish pg17 to pgt.dev by @ChuckHend in #356
- docs to clarify read_with_poll param qty by @elvizlai in #358
- fix: python logging by @elvizlai in #360
- Add created sequence object to the extension by @za-arthur in #352
- prep v1.5.0 by @ChuckHend in #361
New Contributors
- @tmountain made their first contribution in #311
- @waitingsong made their first contribution in #312
- @Abiji-2020 made their first contribution in #321
- @emmanuel-ferdman made their first contribution in #327
- @Neptune650 made their first contribution in #319
- @fabriziomello made their first contribution in #331
- @palash25 made their first contribution in #336
- @Saturn225 made their first contribution in #323
- @arjundevarajan made their first contribution in #330
- @rotty3000 made their first contribution in #346
- @jumski made their first contribution in #351
- @za-arthur made their first contribution in #355
- @elvizlai made their first contribution in #358
Full Changelog: v1.4.5...v1.5.0
v1.4.5
Bug fix:
Resolves a bug with pgmq.read_with_poll() that would result in high CPU utilization
Full Changelog: v1.4.4...v1.4.5
v1.4.4
v1.4.3
What's Changed
- Security Issue with SQLx 0.7.2 by @joelawm in #303
- tembo_pgmq_python: Add python async interface by @szobov in #305
- Support for pg_partman 5.x.x by @olirice in #307
- pg_partman 5 and pg17 tests for extension ci by @ChuckHend in #308
- install partman via pgxn by @ChuckHend in #309
New Contributors
- @joelawm made their first contribution in #303
- @szobov made their first contribution in #305
- @olirice made their first contribution in #307
Full Changelog: v1.4.2...v1.4.3
v1.4.2
Breaking change:
The following characters are no longer allowed in queue names $
, '
, ;
, --
. It is recommended to create a new queue (without these characters), migrate client applications onto the new queue before running alter extension pgmq update to '1.4.2'
.
What's Changed
- Handle special characters in queue names by @ChuckHend in #299
- reject escape characters in queue names by @ChuckHend in #300
Full Changelog: v1.4.1...v1.4.2
v1.4.1
Security Patch - addresses SQL injection as described in #295
What's Changed
- Update dir in pgxn-release by @ChuckHend in #285
- Update release pgxn by @ChuckHend in #287
- doc updates: rust transaction example, readme updates by @ChuckHend in #289
- Update contrib guide by @ChuckHend in #292
- use Identifier format instead of string format by @ChuckHend in #296
- fix typo in part config assignment by @ChuckHend in #297
Full Changelog: v1.4.0...v1.4.1