From nobody Tue Jan 11 18:52:14 2022 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 122A5194BEBC; Tue, 11 Jan 2022 18:52:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4JYKYp53rmz4dn8; Tue, 11 Jan 2022 18:52:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 453971E983; Tue, 11 Jan 2022 18:52:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 20BIqEfh058267; Tue, 11 Jan 2022 18:52:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 20BIqEhj058266; Tue, 11 Jan 2022 18:52:14 GMT (envelope-from git) Date: Tue, 11 Jan 2022 18:52:14 GMT Message-Id: <202201111852.20BIqEhj058266@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Po-Chuan Hsieh Subject: git: d1f3de679dba - main - devel/rubygem-que: Add rubygem-que 0.14.3 List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sunpoet X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d1f3de679dba6fa987312ed4a036b8ed0f0547df Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1641927134; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CiCIL//R7mEq+dBMulvvjKse0q6qJcZlUpjgsp124J8=; b=ohLZjLqmYH4bZX5Ng0sK6mElqNk+OsoWDozoKBba9N/6yQ6kvJ8Qxxzn//t68/Gix2j8On ev/YsNUVXqz1tnG2y2mgfmCJE4RjHC9mxrdb/JgTKhBAOPyf0SkJR1Fr/Ia1wbUvFWOepZ BOaxRWoPrWEulJKe9FbwPwN/+0sXR9CwGAUfsRUpMm+mlmL296PaEALmHnqXF8kYBSK/at XNeZvqU+qbDiN48P5+Sdma/XMMGVFwHXEX27qJVIsou2z9gnoSegiJoBYqrQoAmcAHlXAL KUtkPVpZxqhAI24JYcmbUiTZl6WdVy9Yq6rNVKnHTbJFLugGOlAfDqyGBg7eJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1641927134; a=rsa-sha256; cv=none; b=cnMp0ncIuGX7Bz2xleC/otB1nnV94Zd4o4K8Fum61SW+ekyOJ6uPgNWkPsze4wkci9J409 SCHnhXrUfI29dWy5r43exrzKmpe9IwpA4ZvUEKBkFJ0c1g+vBkhttyuFhei7Yhg9ouuscP l5QqYhXEMOD/6STdxDFdnEjQUgmxu/yLdaGrD6cr3Nw4B2bzZdxHhG3wRNT8mW557DpGEi s7MCdL8998ilMxG77PwzftVa9OPIRNXaggW09fgsdiWbQIFCC8JxzCb8PAmMZQrhz4tr6H EcsM9Nqog1KzjkQXmjfaQLoQg46DpCo4KJYRDFUgW7vUkYRkdPqB0iBtYdn9aw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=d1f3de679dba6fa987312ed4a036b8ed0f0547df commit d1f3de679dba6fa987312ed4a036b8ed0f0547df Author: Po-Chuan Hsieh AuthorDate: 2022-01-11 16:42:48 +0000 Commit: Po-Chuan Hsieh CommitDate: 2022-01-11 18:43:43 +0000 devel/rubygem-que: Add rubygem-que 0.14.3 Que is a high-performance job queue that improves the reliability of your application by protecting your jobs with the same ACID guarantees as the rest of your data. Que is a queue for Ruby and PostgreSQL that manages jobs using advisory locks, which gives it several advantages over other RDBMS-backed queues: - Concurrency - Workers don't block each other when trying to lock jobs, as often occurs with "SELECT FOR UPDATE"-style locking. This allows for very high throughput with a large number of workers. - Efficiency - Locks are held in memory, so locking a job doesn't incur a disk write. These first two points are what limit performance with other queues. Under heavy load, Que's bottleneck is CPU, not I/O. - Safety - If a Ruby process dies, the jobs it's working won't be lost, or left in a locked or ambiguous state - they immediately become available for any other worker to pick up. WWW: https://github.com/que-rb/que --- devel/Makefile | 1 + devel/rubygem-que/Makefile | 21 +++++++++++++++++++++ devel/rubygem-que/distinfo | 3 +++ devel/rubygem-que/pkg-descr | 17 +++++++++++++++++ 4 files changed, 42 insertions(+) diff --git a/devel/Makefile b/devel/Makefile index 5754016b8822..0a82d885de8d 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -6652,6 +6652,7 @@ SUBDIR += rubygem-ptreloaded SUBDIR += rubygem-puppet-resource_api SUBDIR += rubygem-pygments.rb + SUBDIR += rubygem-que SUBDIR += rubygem-r18n-core SUBDIR += rubygem-r18n-desktop SUBDIR += rubygem-r18n-rails diff --git a/devel/rubygem-que/Makefile b/devel/rubygem-que/Makefile new file mode 100644 index 000000000000..ecccdce08300 --- /dev/null +++ b/devel/rubygem-que/Makefile @@ -0,0 +1,21 @@ +# Created by: Po-Chuan Hsieh + +PORTNAME= que +PORTVERSION= 0.14.3 +CATEGORIES= devel rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Job queue that uses PostgreSQL advisory locks for speed and reliability + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +USES= gem +USE_RUBY= yes + +NO_ARCH= yes + +PLIST_FILES= bin/que + +.include diff --git a/devel/rubygem-que/distinfo b/devel/rubygem-que/distinfo new file mode 100644 index 000000000000..10cd8639a8a3 --- /dev/null +++ b/devel/rubygem-que/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1641045722 +SHA256 (rubygem/que-0.14.3.gem) = e2b021a77cdd635577ea43e5b88de57f79a6ce62f318a4527fd4dc26f8f34819 +SIZE (rubygem/que-0.14.3.gem) = 58368 diff --git a/devel/rubygem-que/pkg-descr b/devel/rubygem-que/pkg-descr new file mode 100644 index 000000000000..b19b7129317d --- /dev/null +++ b/devel/rubygem-que/pkg-descr @@ -0,0 +1,17 @@ +Que is a high-performance job queue that improves the reliability of your +application by protecting your jobs with the same ACID guarantees as the rest of +your data. + +Que is a queue for Ruby and PostgreSQL that manages jobs using advisory locks, +which gives it several advantages over other RDBMS-backed queues: +- Concurrency - Workers don't block each other when trying to lock jobs, as + often occurs with "SELECT FOR UPDATE"-style locking. This allows for very high + throughput with a large number of workers. +- Efficiency - Locks are held in memory, so locking a job doesn't incur a disk + write. These first two points are what limit performance with other queues. + Under heavy load, Que's bottleneck is CPU, not I/O. +- Safety - If a Ruby process dies, the jobs it's working won't be lost, or left + in a locked or ambiguous state - they immediately become available for any + other worker to pick up. + +WWW: https://github.com/que-rb/que