git: e284b8513f81 - main - devel/rubygem-pstore: Add rubygem-pstore 0.1.1

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Tue, 21 Dec 2021 19:41:13 UTC
The branch main has been updated by sunpoet:

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

commit e284b8513f813ff032046ccc6d5ac09b75e76e90
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2021-12-21 18:38:54 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2021-12-21 18:38:54 +0000

    devel/rubygem-pstore: Add rubygem-pstore 0.1.1
    
    PStore implements a file based persistence mechanism based on a Hash. User code
    can store hierarchies of Ruby objects (values) into the data store file by name
    (keys). An object hierarchy may be just a single object. User code may later
    read values back from the data store or even update data, as needed.
    
    The transactional behavior ensures that any changes succeed or fail together.
    This can be used to ensure that the data store is not left in a transitory
    state, where some values were updated but others were not.
    
    Behind the scenes, Ruby objects are stored to the data store file with Marshal.
    That carries the usual limitations. Proc objects cannot be marshalled, for
    example.
    
    WWW: https://github.com/ruby/pstore
---
 devel/Makefile                 |  1 +
 devel/rubygem-pstore/Makefile  | 20 ++++++++++++++++++++
 devel/rubygem-pstore/distinfo  |  3 +++
 devel/rubygem-pstore/pkg-descr | 14 ++++++++++++++
 4 files changed, 38 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 52a0ec105cea..aa4f7f6e9ac3 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -6648,6 +6648,7 @@
     SUBDIR += rubygem-pry-rails
     SUBDIR += rubygem-pry-remote
     SUBDIR += rubygem-pry-remote-em
+    SUBDIR += rubygem-pstore
     SUBDIR += rubygem-ptreloaded
     SUBDIR += rubygem-puppet-resource_api
     SUBDIR += rubygem-pygments.rb
diff --git a/devel/rubygem-pstore/Makefile b/devel/rubygem-pstore/Makefile
new file mode 100644
index 000000000000..97ea5bd2df67
--- /dev/null
+++ b/devel/rubygem-pstore/Makefile
@@ -0,0 +1,20 @@
+# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
+
+PORTNAME=	pstore
+PORTVERSION=	0.1.1
+CATEGORIES=	devel rubygems
+MASTER_SITES=	RG
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Transactional File Storage for Ruby Objects
+
+LICENSE=	BSD2CLAUSE RUBY
+LICENSE_COMB=	dual
+LICENSE_FILE_BSD2CLAUSE=${WRKSRC}/LICENSE.txt
+
+USES=		gem
+USE_RUBY=	yes
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-pstore/distinfo b/devel/rubygem-pstore/distinfo
new file mode 100644
index 000000000000..86d79706c173
--- /dev/null
+++ b/devel/rubygem-pstore/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1638556454
+SHA256 (rubygem/pstore-0.1.1.gem) = 7ffe99b5fb4546d08fca8dff8f23662650bb14ad4cea236c7828d63a66269546
+SIZE (rubygem/pstore-0.1.1.gem) = 11776
diff --git a/devel/rubygem-pstore/pkg-descr b/devel/rubygem-pstore/pkg-descr
new file mode 100644
index 000000000000..2d6296007d02
--- /dev/null
+++ b/devel/rubygem-pstore/pkg-descr
@@ -0,0 +1,14 @@
+PStore implements a file based persistence mechanism based on a Hash. User code
+can store hierarchies of Ruby objects (values) into the data store file by name
+(keys). An object hierarchy may be just a single object. User code may later
+read values back from the data store or even update data, as needed.
+
+The transactional behavior ensures that any changes succeed or fail together.
+This can be used to ensure that the data store is not left in a transitory
+state, where some values were updated but others were not.
+
+Behind the scenes, Ruby objects are stored to the data store file with Marshal.
+That carries the usual limitations. Proc objects cannot be marshalled, for
+example.
+
+WWW: https://github.com/ruby/pstore