aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2022-11-20 04:40:48 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2022-11-20 06:22:39 +0000
commitd1f0b3a88a0f3c9c770a88db196c0833172f0b7f (patch)
treeba682b6570fc2b72b485859a69ef2f84852166f7
parentf323e9d40f68b893618ede109a9c7dab892eeddd (diff)
devel/py-objsize: New port: Calculate the total size of the object subtree in bytes (deep size)
-rw-r--r--devel/Makefile1
-rw-r--r--devel/py-objsize/Makefile19
-rw-r--r--devel/py-objsize/distinfo3
-rw-r--r--devel/py-objsize/pkg-descr7
4 files changed, 30 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 6a11e471dc56..b048e7bbdb81 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4872,6 +4872,7 @@
SUBDIR += py-num2words
SUBDIR += py-numba
SUBDIR += py-objgraph
+ SUBDIR += py-objsize
SUBDIR += py-oci
SUBDIR += py-odfpy
SUBDIR += py-offtrac
diff --git a/devel/py-objsize/Makefile b/devel/py-objsize/Makefile
new file mode 100644
index 000000000000..aa2c44c54bb3
--- /dev/null
+++ b/devel/py-objsize/Makefile
@@ -0,0 +1,19 @@
+PORTNAME= objsize
+DISTVERSION= 0.6.1
+CATEGORIES= devel
+MASTER_SITES= CHEESESHOP
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Calculate the total size of the object subtree in bytes (deep size)
+WWW= https://github.com/liran-funaro/objsize
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= python
+USE_PYTHON= distutils autoplist
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-objsize/distinfo b/devel/py-objsize/distinfo
new file mode 100644
index 000000000000..0cda7534ae61
--- /dev/null
+++ b/devel/py-objsize/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1668908152
+SHA256 (objsize-0.6.1.tar.gz) = 56482d468acdc445c7da05a56e5b05ad38e5c0a27a761b5d8c538df494e19d2a
+SIZE (objsize-0.6.1.tar.gz) = 8225
diff --git a/devel/py-objsize/pkg-descr b/devel/py-objsize/pkg-descr
new file mode 100644
index 000000000000..31c26c76ac4c
--- /dev/null
+++ b/devel/py-objsize/pkg-descr
@@ -0,0 +1,7 @@
+Traversal over Python's objects subtree and calculate the total size of the
+subtree in bytes (deep size).
+
+This module traverses all child objects using Python's internal GC
+implementation. It attempts to ignore shared objects (i.e., None, types,
+modules, classes, functions, lambdas), as they are common among all objects.
+It is implemented without recursive calls for high performance.