Date: Wed, 18 Sep 2024 06:18:39 GMT From: Po-Chuan Hsieh <sunpoet@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 4ac1770aa334 - main - databases/rubygem-solid_queue: Add rubygem-solid_queue 0.9.0 Message-ID: <202409180618.48I6IdwB031771@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=4ac1770aa334a64ae5adfaad632a639a62ba4d5f commit 4ac1770aa334a64ae5adfaad632a639a62ba4d5f Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org> AuthorDate: 2024-09-18 05:51:30 +0000 Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org> CommitDate: 2024-09-18 06:13:04 +0000 databases/rubygem-solid_queue: Add rubygem-solid_queue 0.9.0 Solid Queue is a DB-based queuing backend for Active Job, designed with simplicity and performance in mind. Besides regular job enqueuing and processing, Solid Queue supports delayed jobs, concurrency controls, recurring jobs, pausing queues, numeric priorities per job, priorities by queue order, and bulk enqueuing (enqueue_all for Active Job's perform_all_later). Solid Queue can be used with SQL databases such as MySQL, PostgreSQL or SQLite, and it leverages the FOR UPDATE SKIP LOCKED clause, if available, to avoid blocking and waiting on locks when polling jobs. It relies on Active Job for retries, discarding, error handling, serialization, or delays, and it's compatible with Ruby on Rails's multi-threading. --- databases/Makefile | 1 + databases/rubygem-solid_queue/Makefile | 24 ++++++++++++++++++++++++ databases/rubygem-solid_queue/distinfo | 3 +++ databases/rubygem-solid_queue/pkg-descr | 13 +++++++++++++ 4 files changed, 41 insertions(+) diff --git a/databases/Makefile b/databases/Makefile index db3604c81a1a..f85ff7989d25 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -1044,6 +1044,7 @@ SUBDIR += rubygem-seed-fu SUBDIR += rubygem-solid_cable SUBDIR += rubygem-solid_cache + SUBDIR += rubygem-solid_queue SUBDIR += rubygem-sqlite3 SUBDIR += rubygem-sqlite3-ruby SUBDIR += rubygem-sqlite31 diff --git a/databases/rubygem-solid_queue/Makefile b/databases/rubygem-solid_queue/Makefile new file mode 100644 index 000000000000..607ad68b36a0 --- /dev/null +++ b/databases/rubygem-solid_queue/Makefile @@ -0,0 +1,24 @@ +PORTNAME= solid_queue +PORTVERSION= 0.9.0 +CATEGORIES= databases rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Database-backed Active Job backend +WWW= https://github.com/rails/solid_queue + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +RUN_DEPENDS= rubygem-activejob72>=7.1:devel/rubygem-activejob72 \ + rubygem-activerecord72>=7.1:databases/rubygem-activerecord72 \ + rubygem-concurrent-ruby>=1.3.1:devel/rubygem-concurrent-ruby \ + rubygem-fugit>=1.11.0<1.12:devel/rubygem-fugit \ + rubygem-railties72>=7.1:www/rubygem-railties72 \ + rubygem-thor>=1.3.1<1.4:devel/rubygem-thor + +USES= gem + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/databases/rubygem-solid_queue/distinfo b/databases/rubygem-solid_queue/distinfo new file mode 100644 index 000000000000..6bafcd582fc8 --- /dev/null +++ b/databases/rubygem-solid_queue/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1726487310 +SHA256 (rubygem/solid_queue-0.9.0.gem) = 9825588764d068773dfc7d3d047207908ac381d3a5a79ff41b40358d26014e0f +SIZE (rubygem/solid_queue-0.9.0.gem) = 37888 diff --git a/databases/rubygem-solid_queue/pkg-descr b/databases/rubygem-solid_queue/pkg-descr new file mode 100644 index 000000000000..6082f17ba5ce --- /dev/null +++ b/databases/rubygem-solid_queue/pkg-descr @@ -0,0 +1,13 @@ +Solid Queue is a DB-based queuing backend for Active Job, designed with +simplicity and performance in mind. + +Besides regular job enqueuing and processing, Solid Queue supports delayed jobs, +concurrency controls, recurring jobs, pausing queues, numeric priorities per +job, priorities by queue order, and bulk enqueuing (enqueue_all for Active Job's +perform_all_later). + +Solid Queue can be used with SQL databases such as MySQL, PostgreSQL or SQLite, +and it leverages the FOR UPDATE SKIP LOCKED clause, if available, to avoid +blocking and waiting on locks when polling jobs. It relies on Active Job for +retries, discarding, error handling, serialization, or delays, and it's +compatible with Ruby on Rails's multi-threading.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202409180618.48I6IdwB031771>