git: 0114d4527361 - main - devel/rubygem-zeitwerk-gitlab: Add rubygem-zeitwerk-gitlab 2.6.18 (copied from rubygem-zeitwerk)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 29 Sep 2026 19:27:36 UTC
The branch main has been updated by sunpoet:
URL: https://cgit.FreeBSD.org/ports/commit/?id=0114d4527361e91ed783b592d80ee68433996d0d
commit 0114d4527361e91ed783b592d80ee68433996d0d
Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2026-09-29 18:55:09 +0000
Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2026-09-29 19:24:07 +0000
devel/rubygem-zeitwerk-gitlab: Add rubygem-zeitwerk-gitlab 2.6.18 (copied from rubygem-zeitwerk)
---
devel/Makefile | 1 +
devel/rubygem-zeitwerk-gitlab/Makefile | 17 +++++++++++++++++
devel/rubygem-zeitwerk-gitlab/distinfo | 3 +++
devel/rubygem-zeitwerk-gitlab/pkg-descr | 23 +++++++++++++++++++++++
4 files changed, 44 insertions(+)
diff --git a/devel/Makefile b/devel/Makefile
index 346fb5a4d311..084e96607932 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -8639,6 +8639,7 @@
SUBDIR += rubygem-yard-sorbet
SUBDIR += rubygem-yui-compressor
SUBDIR += rubygem-zeitwerk
+ SUBDIR += rubygem-zeitwerk-gitlab
SUBDIR += rubygem-zentest
SUBDIR += rubygem-zhexdump
SUBDIR += rubygem-zlib
diff --git a/devel/rubygem-zeitwerk-gitlab/Makefile b/devel/rubygem-zeitwerk-gitlab/Makefile
new file mode 100644
index 000000000000..670f6a1f6804
--- /dev/null
+++ b/devel/rubygem-zeitwerk-gitlab/Makefile
@@ -0,0 +1,17 @@
+PORTNAME= zeitwerk
+PORTVERSION= 2.6.18
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Efficient and thread-safe code loader
+WWW= https://github.com/fxn/zeitwerk
+
+LICENSE= MIT
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-zeitwerk-gitlab/distinfo b/devel/rubygem-zeitwerk-gitlab/distinfo
new file mode 100644
index 000000000000..f320d9daf02b
--- /dev/null
+++ b/devel/rubygem-zeitwerk-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1725560785
+SHA256 (rubygem/zeitwerk-2.6.18.gem) = bd2d213996ff7b3b364cd342a585fbee9797dbc1c0c6d868dc4150cc75739781
+SIZE (rubygem/zeitwerk-2.6.18.gem) = 40448
diff --git a/devel/rubygem-zeitwerk-gitlab/pkg-descr b/devel/rubygem-zeitwerk-gitlab/pkg-descr
new file mode 100644
index 000000000000..daaa08c0a159
--- /dev/null
+++ b/devel/rubygem-zeitwerk-gitlab/pkg-descr
@@ -0,0 +1,23 @@
+Zeitwerk is an efficient and thread-safe code loader for Ruby.
+
+Given a conventional file structure, Zeitwerk is able to load your project's
+classes and modules on demand (autoloading), or upfront (eager loading). You
+don't need to write require calls for your own files, rather, you can streamline
+your programming knowing that your classes and modules are available everywhere.
+This feature is efficient, thread-safe, and matches Ruby's semantics for
+constants.
+
+Zeitwerk is also able to reload code, which may be handy while developing web
+applications. Coordination is needed to reload in a thread-safe manner. The
+documentation below explains how to do this.
+
+The gem is designed so that any project, gem dependency, application, etc. can
+have their own independent loader, coexisting in the same process, managing
+their own project trees, and independent of each other. Each loader has its own
+configuration, inflector, and optional logger.
+
+Internally, Zeitwerk issues require calls exclusively using absolute file names,
+so there are no costly file system lookups in $LOAD_PATH. Technically, the
+directories managed by Zeitwerk do not even need to be in $LOAD_PATH.
+Furthermore, Zeitwerk does only one single scan of the project tree, and it
+descends into subdirectories lazily, only if their namespaces are used.