From nobody Mon Jul 31 16:45:25 2023 X-Original-To: dev-commits-ports-all@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 4RF3zn2QLXz4qFl9; Mon, 31 Jul 2023 16:46:16 +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 4RF3yG29W6z3GQ9; Mon, 31 Jul 2023 16:45:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1690821926; 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=tk/J2WpFdSH9FzxDc08vU1Gs8EYWHZdj6/C73EVm20o=; b=a9fHF1yeUkcB0BnmSlwthoD3aL+zd64000ztRXqVr41DRnle5+abU4G/5qTryGRH0VCWt/ CJxb2xzMX0JarvQnn8lWthk2rQMWNPQW391rAOozN7DlSLpc3krGfIhmZV6IWdrwbHxq9y 7wfQ5c7XsyF03b0nW0KpDUHYWDZp26k2ApwoGg5yu7Uyoz6n+I5vTt3g/46hYD1W+IQaoj MpdyA1P+q4JuhJ5T3YJh2Nf3v0I3KTaDL425SgkOO77HeDtjg+1ownMJ4AWj4GlyqQEDBR CbHwEVRh3PzHNIhTnSjjvzwm51isIuiWnZ/52O82P9sul4ve8fZQoTP107X31w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1690821926; 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=tk/J2WpFdSH9FzxDc08vU1Gs8EYWHZdj6/C73EVm20o=; b=nNu+uYZKygJK4xaMvU7TmMe1nstR/5F8oynh0kV9fBvwnYD66jUJi+jmwUG9mrUpzDs9cD zmO7M2ZENB1icg2IV5gJswkVhVdn/bpGwpPdAN3PqwwEX4Qt9I8Gv0L6MQMDuR3bDLtwUt g00EchomCaZN0ihUa/dHzB24lmGyvboVD86gPbe9HVgVdYISWpzRSEruYo6zrA1ftfNeRl e04vFSzBHv0Ggl3BnixOKdbIkDtAniHlng9C391RVRxVM3eqSrI/VoZYcc0g20aS9xzOLV c8pZNcw6VM6hCecXak/BCfvAJ7GD+RQqYz/ptGwhRYaIYGIOWSsyXMKHrTdQ1w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1690821926; a=rsa-sha256; cv=none; b=s+0KSVbJQ7XqmV6uCpxh5nzEgsR4XXom1rl/KUSA3dvxhenjZhNdBfdMXxre9tJOoLf/NY HFIME6EDmlU+2+WtHU82xyCllvr5C9OuGR5WjQsn6T9tQgMmaZy8l3nZgbJmc8IBkkvq9p j5R9FWZZie/JkENmjA3FfP+dKtpxNzu4DQD9e7RLwzT0tNs+DPlT2+mXwFl3zdmX/FPjMo +Fmaa55Gwp2zQoIjh4EXdljIo3ZNgzNXZU2pRrUpwh7zpdLyes+pdpih5Z3gjebZOxjzv3 1EZxhB/PtJ/GI3PvYs3mZq6TdgS7QLHl1QuRIWMuaSawoVmlU3eYdj92+APJnw== 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 4RF3yG0Nbpz13Rc; Mon, 31 Jul 2023 16:45:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 36VGjP5B078878; Mon, 31 Jul 2023 16:45:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 36VGjPSd078877; Mon, 31 Jul 2023 16:45:25 GMT (envelope-from git) Date: Mon, 31 Jul 2023 16:45:25 GMT Message-Id: <202307311645.36VGjPSd078877@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: d7397758c755 - main - databases/rubygem-attr_json: Add rubygem-attr_json 2.1.0 List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@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: d7397758c755b0ce762f72514ab357f200e00af6 Auto-Submitted: auto-generated The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=d7397758c755b0ce762f72514ab357f200e00af6 commit d7397758c755b0ce762f72514ab357f200e00af6 Author: Po-Chuan Hsieh AuthorDate: 2023-07-31 16:27:31 +0000 Commit: Po-Chuan Hsieh CommitDate: 2023-07-31 16:39:46 +0000 databases/rubygem-attr_json: Add rubygem-attr_json 2.1.0 ActiveRecord attributes stored serialized in a json column, super smooth. Typed and cast like Active Record. Supporting nested models, dirty tracking, some querying (with postgres jsonb contains), and working smoothy with form builders. Use your database as a typed object store via ActiveRecord, in the same models right next to ordinary ActiveRecord column-backed attributes and associations. Your json-serialized attr_json attributes use as much of the existing ActiveRecord architecture as we can. --- databases/Makefile | 1 + databases/rubygem-attr_json/Makefile | 19 +++++++++++++++++++ databases/rubygem-attr_json/distinfo | 3 +++ databases/rubygem-attr_json/pkg-descr | 10 ++++++++++ 4 files changed, 33 insertions(+) diff --git a/databases/Makefile b/databases/Makefile index b3cf3b7b7c56..9e305315ad34 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -906,6 +906,7 @@ SUBDIR += rubygem-arel6 SUBDIR += rubygem-arel7 SUBDIR += rubygem-arel8 + SUBDIR += rubygem-attr_json SUBDIR += rubygem-awesome_nested_set SUBDIR += rubygem-bdb1 SUBDIR += rubygem-bigrecord diff --git a/databases/rubygem-attr_json/Makefile b/databases/rubygem-attr_json/Makefile new file mode 100644 index 000000000000..b4d354a3ea7d --- /dev/null +++ b/databases/rubygem-attr_json/Makefile @@ -0,0 +1,19 @@ +PORTNAME= attr_json +PORTVERSION= 2.1.0 +CATEGORIES= databases rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Serialized json-hash-backed ActiveRecord attributes +WWW= https://rubygems.org/gems/attr_json + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +USES= gem + +RUN_DEPENDS= rubygem-activerecord70>=6.0.0<7.1:databases/rubygem-activerecord70 + +NO_ARCH= yes + +.include diff --git a/databases/rubygem-attr_json/distinfo b/databases/rubygem-attr_json/distinfo new file mode 100644 index 000000000000..db733521e916 --- /dev/null +++ b/databases/rubygem-attr_json/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1689398767 +SHA256 (rubygem/attr_json-2.1.0.gem) = 2219109fb4d99f16ed320feb08a95f708a42ce618ea1eb0374a1339c56e16a37 +SIZE (rubygem/attr_json-2.1.0.gem) = 48128 diff --git a/databases/rubygem-attr_json/pkg-descr b/databases/rubygem-attr_json/pkg-descr new file mode 100644 index 000000000000..e8013e957921 --- /dev/null +++ b/databases/rubygem-attr_json/pkg-descr @@ -0,0 +1,10 @@ +ActiveRecord attributes stored serialized in a json column, super smooth. + +Typed and cast like Active Record. Supporting nested models, dirty tracking, +some querying (with postgres jsonb contains), and working smoothy with form +builders. + +Use your database as a typed object store via ActiveRecord, in the same models +right next to ordinary ActiveRecord column-backed attributes and associations. +Your json-serialized attr_json attributes use as much of the existing +ActiveRecord architecture as we can.