git: dbfd334cc978 - main - devel/rubygem-redlock: Add rubygem-redlock 1.3.2

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Mon, 30 Jan 2023 13:05:17 UTC
The branch main has been updated by sunpoet:

URL: https://cgit.FreeBSD.org/ports/commit/?id=dbfd334cc978374df051117e8d7f9c3f23cfa699

commit dbfd334cc978374df051117e8d7f9c3f23cfa699
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2023-01-30 12:21:46 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2023-01-30 12:58:55 +0000

    devel/rubygem-redlock: Add rubygem-redlock 1.3.2
    
    Redlock provides a ruby distributed lock using redis.
    
    Distributed locks are a very useful primitive in many environments where
    different processes require to operate with shared resources in a mutually
    exclusive way.
    
    There are a number of libraries and blog posts describing how to implement a DLM
    (Distributed Lock Manager) with Redis, but every library uses a different
    approach, and many use a simple approach with lower guarantees compared to what
    can be achieved with slightly more complex designs.
    
    This is an implementation of a proposed distributed lock algorithm with Redis.
    It started as a fork from antirez implementation.
---
 devel/Makefile                  |  1 +
 devel/rubygem-redlock/Makefile  | 19 +++++++++++++++++++
 devel/rubygem-redlock/distinfo  |  3 +++
 devel/rubygem-redlock/pkg-descr | 13 +++++++++++++
 4 files changed, 36 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index c1d0cd7c03b9..993646f36657 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -6991,6 +6991,7 @@
     SUBDIR += rubygem-redis-activesupport-rails60
     SUBDIR += rubygem-redis-activesupport-rails61
     SUBDIR += rubygem-redis-store
+    SUBDIR += rubygem-redlock
     SUBDIR += rubygem-redmine_plugin_support
     SUBDIR += rubygem-reentrant_flock
     SUBDIR += rubygem-ref
diff --git a/devel/rubygem-redlock/Makefile b/devel/rubygem-redlock/Makefile
new file mode 100644
index 000000000000..bb0b412db981
--- /dev/null
+++ b/devel/rubygem-redlock/Makefile
@@ -0,0 +1,19 @@
+PORTNAME=	redlock
+PORTVERSION=	1.3.2
+CATEGORIES=	devel rubygems
+MASTER_SITES=	RG
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Distributed lock using Redis written in Ruby
+WWW=		https://github.com/leandromoreira/redlock-rb
+
+LICENSE=	BSD2CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+RUN_DEPENDS=	rubygem-redis>=3.0.0<6.0:databases/rubygem-redis
+
+USES=		gem
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-redlock/distinfo b/devel/rubygem-redlock/distinfo
new file mode 100644
index 000000000000..51daedd2220e
--- /dev/null
+++ b/devel/rubygem-redlock/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1674588100
+SHA256 (rubygem/redlock-1.3.2.gem) = 6c7cea3d62c6e31e8df6b1924fdf89e35e5576e52dce10c62412e783bfe37277
+SIZE (rubygem/redlock-1.3.2.gem) = 18432
diff --git a/devel/rubygem-redlock/pkg-descr b/devel/rubygem-redlock/pkg-descr
new file mode 100644
index 000000000000..ef8420053e2d
--- /dev/null
+++ b/devel/rubygem-redlock/pkg-descr
@@ -0,0 +1,13 @@
+Redlock provides a ruby distributed lock using redis.
+
+Distributed locks are a very useful primitive in many environments where
+different processes require to operate with shared resources in a mutually
+exclusive way.
+
+There are a number of libraries and blog posts describing how to implement a DLM
+(Distributed Lock Manager) with Redis, but every library uses a different
+approach, and many use a simple approach with lower guarantees compared to what
+can be achieved with slightly more complex designs.
+
+This is an implementation of a proposed distributed lock algorithm with Redis.
+It started as a fork from antirez implementation.