Skip site navigation (1)Skip section navigation (2)
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>