summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net/py-foolscap/DESCR15
-rw-r--r--net/py-foolscap/Makefile40
-rw-r--r--net/py-foolscap/PLIST283
-rw-r--r--net/py-foolscap/distinfo5
4 files changed, 343 insertions, 0 deletions
diff --git a/net/py-foolscap/DESCR b/net/py-foolscap/DESCR
new file mode 100644
index 00000000000..823d7248f48
--- /dev/null
+++ b/net/py-foolscap/DESCR
@@ -0,0 +1,15 @@
+This is a ground-up rewrite of Perspective Broker, which itself is Twisted's
+native RPC/RMI protocol (Remote Procedure Call / Remote Method Invocation).
+If you have control of both ends of the wire, and are thus not constrained to
+use some other protocol like HTTP/XMLRPC/CORBA/etc, you might consider using
+Foolscap.
+
+Fundamentally, Foolscap allows you to make a python object in one process
+available to code in other processes, which means you can invoke its methods
+remotely. This includes a data serialization layer to convey the object
+graphs for the arguments and the eventual response, and an object reference
+system to keep track of which objects you are connecting to. It uses a
+capability-based security model, such that once you create a non-public
+object, it is only accessible to clients to whom you've given the
+(unguessable) FURL. You can of course publish world-visible objects that
+have well-known FURLs.
diff --git a/net/py-foolscap/Makefile b/net/py-foolscap/Makefile
new file mode 100644
index 00000000000..37adce58034
--- /dev/null
+++ b/net/py-foolscap/Makefile
@@ -0,0 +1,40 @@
+# $NetBSD: Makefile,v 1.1.1.1 2010/07/23 21:45:52 gdt Exp $
+#
+
+DISTNAME= foolscap-0.5.1.tar
+EGG_NAME= foolscap-0.5.1
+PKGNAME= ${PYPKGPREFIX}-${DISTNAME:S/.tar//}
+CATEGORIES= net python
+MASTER_SITES= http://pypi.python.org/packages/source/f/foolscap/
+EXTRACT_SUFX= .gz
+
+MAINTAINER= kamel.derouiche@gmail.com
+HOMEPAGE= http://foolscap.lothar.com/trac
+COMMENT= Foolscap contains an RPC protocol for Twisted
+LICENSE= mit
+
+DEPENDS+= ${PYPKGPREFIX}-ZopeInterface>=3.6.1:../../devel/py-ZopeInterface
+DEPENDS+= ${PYPKGPREFIX}-twisted-[0-9]*:../../net/py-twisted
+DEPENDS+= ${PYPKGPREFIX}-OpenSSL>=0.6:../../security/py-OpenSSL
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+WRKSRC= ${WRKDIR}/foolscap-0.5.1
+USE_LANGUAGES= # none
+
+PYTHON_VERSIONS_ACCEPTED= 26
+
+INSTALLATION_DIRS+= share/doc/py-foolscap
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/doc/*.txt \
+ ${DESTDIR}${PREFIX}/share/doc/py-foolscap
+ ${INSTALL_DATA} ${WRKSRC}/doc/*.xhtml \
+ ${DESTDIR}${PREFIX}/share/doc/py-foolscap
+ ${INSTALL_DATA} ${WRKSRC}/doc/*.css \
+ ${DESTDIR}${PREFIX}/share/doc/py-foolscap
+ ${INSTALL_DATA} ${WRKSRC}/doc/*.tpl \
+ ${DESTDIR}${PREFIX}/share/doc/py-foolscap
+
+.include "../../lang/python/egg.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/net/py-foolscap/PLIST b/net/py-foolscap/PLIST
new file mode 100644
index 00000000000..047f75f6feb
--- /dev/null
+++ b/net/py-foolscap/PLIST
@@ -0,0 +1,283 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2010/07/23 21:45:52 gdt Exp $
+bin/flappclient
+bin/flappserver
+bin/flogtool
+${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
+${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
+${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
+${PYSITELIB}/${EGG_INFODIR}/requires.txt
+${PYSITELIB}/${EGG_INFODIR}/top_level.txt
+${PYSITELIB}/foolscap/__init__.py
+${PYSITELIB}/foolscap/__init__.pyc
+${PYSITELIB}/foolscap/__init__.pyo
+${PYSITELIB}/foolscap/_version.py
+${PYSITELIB}/foolscap/_version.pyc
+${PYSITELIB}/foolscap/_version.pyo
+${PYSITELIB}/foolscap/api.py
+${PYSITELIB}/foolscap/api.pyc
+${PYSITELIB}/foolscap/api.pyo
+${PYSITELIB}/foolscap/appserver/__init__.py
+${PYSITELIB}/foolscap/appserver/__init__.pyc
+${PYSITELIB}/foolscap/appserver/__init__.pyo
+${PYSITELIB}/foolscap/appserver/cli.py
+${PYSITELIB}/foolscap/appserver/cli.pyc
+${PYSITELIB}/foolscap/appserver/cli.pyo
+${PYSITELIB}/foolscap/appserver/client.py
+${PYSITELIB}/foolscap/appserver/client.pyc
+${PYSITELIB}/foolscap/appserver/client.pyo
+${PYSITELIB}/foolscap/appserver/server.py
+${PYSITELIB}/foolscap/appserver/server.pyc
+${PYSITELIB}/foolscap/appserver/server.pyo
+${PYSITELIB}/foolscap/appserver/services.py
+${PYSITELIB}/foolscap/appserver/services.pyc
+${PYSITELIB}/foolscap/appserver/services.pyo
+${PYSITELIB}/foolscap/banana.py
+${PYSITELIB}/foolscap/banana.pyc
+${PYSITELIB}/foolscap/banana.pyo
+${PYSITELIB}/foolscap/base32.py
+${PYSITELIB}/foolscap/base32.pyc
+${PYSITELIB}/foolscap/base32.pyo
+${PYSITELIB}/foolscap/broker.py
+${PYSITELIB}/foolscap/broker.pyc
+${PYSITELIB}/foolscap/broker.pyo
+${PYSITELIB}/foolscap/call.py
+${PYSITELIB}/foolscap/call.pyc
+${PYSITELIB}/foolscap/call.pyo
+${PYSITELIB}/foolscap/constraint.py
+${PYSITELIB}/foolscap/constraint.pyc
+${PYSITELIB}/foolscap/constraint.pyo
+${PYSITELIB}/foolscap/copyable.py
+${PYSITELIB}/foolscap/copyable.pyc
+${PYSITELIB}/foolscap/copyable.pyo
+${PYSITELIB}/foolscap/crypto.py
+${PYSITELIB}/foolscap/crypto.pyc
+${PYSITELIB}/foolscap/crypto.pyo
+${PYSITELIB}/foolscap/deprecated.py
+${PYSITELIB}/foolscap/deprecated.pyc
+${PYSITELIB}/foolscap/deprecated.pyo
+${PYSITELIB}/foolscap/eventual.py
+${PYSITELIB}/foolscap/eventual.pyc
+${PYSITELIB}/foolscap/eventual.pyo
+${PYSITELIB}/foolscap/hashutil.py
+${PYSITELIB}/foolscap/hashutil.pyc
+${PYSITELIB}/foolscap/hashutil.pyo
+${PYSITELIB}/foolscap/ipb.py
+${PYSITELIB}/foolscap/ipb.pyc
+${PYSITELIB}/foolscap/ipb.pyo
+${PYSITELIB}/foolscap/logging/__init__.py
+${PYSITELIB}/foolscap/logging/__init__.pyc
+${PYSITELIB}/foolscap/logging/__init__.pyo
+${PYSITELIB}/foolscap/logging/app_versions.py
+${PYSITELIB}/foolscap/logging/app_versions.pyc
+${PYSITELIB}/foolscap/logging/app_versions.pyo
+${PYSITELIB}/foolscap/logging/cli.py
+${PYSITELIB}/foolscap/logging/cli.pyc
+${PYSITELIB}/foolscap/logging/cli.pyo
+${PYSITELIB}/foolscap/logging/dumper.py
+${PYSITELIB}/foolscap/logging/dumper.pyc
+${PYSITELIB}/foolscap/logging/dumper.pyo
+${PYSITELIB}/foolscap/logging/filter.py
+${PYSITELIB}/foolscap/logging/filter.pyc
+${PYSITELIB}/foolscap/logging/filter.pyo
+${PYSITELIB}/foolscap/logging/gatherer.py
+${PYSITELIB}/foolscap/logging/gatherer.pyc
+${PYSITELIB}/foolscap/logging/gatherer.pyo
+${PYSITELIB}/foolscap/logging/incident.py
+${PYSITELIB}/foolscap/logging/incident.pyc
+${PYSITELIB}/foolscap/logging/incident.pyo
+${PYSITELIB}/foolscap/logging/interfaces.py
+${PYSITELIB}/foolscap/logging/interfaces.pyc
+${PYSITELIB}/foolscap/logging/interfaces.pyo
+${PYSITELIB}/foolscap/logging/levels.py
+${PYSITELIB}/foolscap/logging/levels.pyc
+${PYSITELIB}/foolscap/logging/levels.pyo
+${PYSITELIB}/foolscap/logging/log.py
+${PYSITELIB}/foolscap/logging/log.pyc
+${PYSITELIB}/foolscap/logging/log.pyo
+${PYSITELIB}/foolscap/logging/publish.py
+${PYSITELIB}/foolscap/logging/publish.pyc
+${PYSITELIB}/foolscap/logging/publish.pyo
+${PYSITELIB}/foolscap/logging/tail.py
+${PYSITELIB}/foolscap/logging/tail.pyc
+${PYSITELIB}/foolscap/logging/tail.pyo
+${PYSITELIB}/foolscap/logging/web.py
+${PYSITELIB}/foolscap/logging/web.pyc
+${PYSITELIB}/foolscap/logging/web.pyo
+${PYSITELIB}/foolscap/negotiate.py
+${PYSITELIB}/foolscap/negotiate.pyc
+${PYSITELIB}/foolscap/negotiate.pyo
+${PYSITELIB}/foolscap/observer.py
+${PYSITELIB}/foolscap/observer.pyc
+${PYSITELIB}/foolscap/observer.pyo
+${PYSITELIB}/foolscap/pb.py
+${PYSITELIB}/foolscap/pb.pyc
+${PYSITELIB}/foolscap/pb.pyo
+${PYSITELIB}/foolscap/promise.py
+${PYSITELIB}/foolscap/promise.pyc
+${PYSITELIB}/foolscap/promise.pyo
+${PYSITELIB}/foolscap/reconnector.py
+${PYSITELIB}/foolscap/reconnector.pyc
+${PYSITELIB}/foolscap/reconnector.pyo
+${PYSITELIB}/foolscap/referenceable.py
+${PYSITELIB}/foolscap/referenceable.pyc
+${PYSITELIB}/foolscap/referenceable.pyo
+${PYSITELIB}/foolscap/remoteinterface.py
+${PYSITELIB}/foolscap/remoteinterface.pyc
+${PYSITELIB}/foolscap/remoteinterface.pyo
+${PYSITELIB}/foolscap/schema.py
+${PYSITELIB}/foolscap/schema.pyc
+${PYSITELIB}/foolscap/schema.pyo
+${PYSITELIB}/foolscap/slicer.py
+${PYSITELIB}/foolscap/slicer.pyc
+${PYSITELIB}/foolscap/slicer.pyo
+${PYSITELIB}/foolscap/slicers/__init__.py
+${PYSITELIB}/foolscap/slicers/__init__.pyc
+${PYSITELIB}/foolscap/slicers/__init__.pyo
+${PYSITELIB}/foolscap/slicers/allslicers.py
+${PYSITELIB}/foolscap/slicers/allslicers.pyc
+${PYSITELIB}/foolscap/slicers/allslicers.pyo
+${PYSITELIB}/foolscap/slicers/bool.py
+${PYSITELIB}/foolscap/slicers/bool.pyc
+${PYSITELIB}/foolscap/slicers/bool.pyo
+${PYSITELIB}/foolscap/slicers/decimal_slicer.py
+${PYSITELIB}/foolscap/slicers/decimal_slicer.pyc
+${PYSITELIB}/foolscap/slicers/decimal_slicer.pyo
+${PYSITELIB}/foolscap/slicers/dict.py
+${PYSITELIB}/foolscap/slicers/dict.pyc
+${PYSITELIB}/foolscap/slicers/dict.pyo
+${PYSITELIB}/foolscap/slicers/list.py
+${PYSITELIB}/foolscap/slicers/list.pyc
+${PYSITELIB}/foolscap/slicers/list.pyo
+${PYSITELIB}/foolscap/slicers/none.py
+${PYSITELIB}/foolscap/slicers/none.pyc
+${PYSITELIB}/foolscap/slicers/none.pyo
+${PYSITELIB}/foolscap/slicers/root.py
+${PYSITELIB}/foolscap/slicers/root.pyc
+${PYSITELIB}/foolscap/slicers/root.pyo
+${PYSITELIB}/foolscap/slicers/set.py
+${PYSITELIB}/foolscap/slicers/set.pyc
+${PYSITELIB}/foolscap/slicers/set.pyo
+${PYSITELIB}/foolscap/slicers/tuple.py
+${PYSITELIB}/foolscap/slicers/tuple.pyc
+${PYSITELIB}/foolscap/slicers/tuple.pyo
+${PYSITELIB}/foolscap/slicers/unicode.py
+${PYSITELIB}/foolscap/slicers/unicode.pyc
+${PYSITELIB}/foolscap/slicers/unicode.pyo
+${PYSITELIB}/foolscap/slicers/vocab.py
+${PYSITELIB}/foolscap/slicers/vocab.pyc
+${PYSITELIB}/foolscap/slicers/vocab.pyo
+${PYSITELIB}/foolscap/sslverify.py
+${PYSITELIB}/foolscap/sslverify.pyc
+${PYSITELIB}/foolscap/sslverify.pyo
+${PYSITELIB}/foolscap/storage.py
+${PYSITELIB}/foolscap/storage.pyc
+${PYSITELIB}/foolscap/storage.pyo
+${PYSITELIB}/foolscap/stringchain.py
+${PYSITELIB}/foolscap/stringchain.pyc
+${PYSITELIB}/foolscap/stringchain.pyo
+${PYSITELIB}/foolscap/test/__init__.py
+${PYSITELIB}/foolscap/test/__init__.pyc
+${PYSITELIB}/foolscap/test/__init__.pyo
+${PYSITELIB}/foolscap/test/bench_banana.py
+${PYSITELIB}/foolscap/test/bench_banana.pyc
+${PYSITELIB}/foolscap/test/bench_banana.pyo
+${PYSITELIB}/foolscap/test/common.py
+${PYSITELIB}/foolscap/test/common.pyc
+${PYSITELIB}/foolscap/test/common.pyo
+${PYSITELIB}/foolscap/test/test__versions.py
+${PYSITELIB}/foolscap/test/test__versions.pyc
+${PYSITELIB}/foolscap/test/test__versions.pyo
+${PYSITELIB}/foolscap/test/test_appserver.py
+${PYSITELIB}/foolscap/test/test_appserver.pyc
+${PYSITELIB}/foolscap/test/test_appserver.pyo
+${PYSITELIB}/foolscap/test/test_banana.py
+${PYSITELIB}/foolscap/test/test_banana.pyc
+${PYSITELIB}/foolscap/test/test_banana.pyo
+${PYSITELIB}/foolscap/test/test_call.py
+${PYSITELIB}/foolscap/test/test_call.pyc
+${PYSITELIB}/foolscap/test/test_call.pyo
+${PYSITELIB}/foolscap/test/test_copyable.py
+${PYSITELIB}/foolscap/test/test_copyable.pyc
+${PYSITELIB}/foolscap/test/test_copyable.pyo
+${PYSITELIB}/foolscap/test/test_crypto.py
+${PYSITELIB}/foolscap/test/test_crypto.pyc
+${PYSITELIB}/foolscap/test/test_crypto.pyo
+${PYSITELIB}/foolscap/test/test_eventual.py
+${PYSITELIB}/foolscap/test/test_eventual.pyc
+${PYSITELIB}/foolscap/test/test_eventual.pyo
+${PYSITELIB}/foolscap/test/test_gifts.py
+${PYSITELIB}/foolscap/test/test_gifts.pyc
+${PYSITELIB}/foolscap/test/test_gifts.pyo
+${PYSITELIB}/foolscap/test/test_interfaces.py
+${PYSITELIB}/foolscap/test/test_interfaces.pyc
+${PYSITELIB}/foolscap/test/test_interfaces.pyo
+${PYSITELIB}/foolscap/test/test_keepalive.py
+${PYSITELIB}/foolscap/test/test_keepalive.pyc
+${PYSITELIB}/foolscap/test/test_keepalive.pyo
+${PYSITELIB}/foolscap/test/test_logging.py
+${PYSITELIB}/foolscap/test/test_logging.pyc
+${PYSITELIB}/foolscap/test/test_logging.pyo
+${PYSITELIB}/foolscap/test/test_loopback.py
+${PYSITELIB}/foolscap/test/test_loopback.pyc
+${PYSITELIB}/foolscap/test/test_loopback.pyo
+${PYSITELIB}/foolscap/test/test_negotiate.py
+${PYSITELIB}/foolscap/test/test_negotiate.pyc
+${PYSITELIB}/foolscap/test/test_negotiate.pyo
+${PYSITELIB}/foolscap/test/test_observer.py
+${PYSITELIB}/foolscap/test/test_observer.pyc
+${PYSITELIB}/foolscap/test/test_observer.pyo
+${PYSITELIB}/foolscap/test/test_pb.py
+${PYSITELIB}/foolscap/test/test_pb.pyc
+${PYSITELIB}/foolscap/test/test_pb.pyo
+${PYSITELIB}/foolscap/test/test_promise.py
+${PYSITELIB}/foolscap/test/test_promise.pyc
+${PYSITELIB}/foolscap/test/test_promise.pyo
+${PYSITELIB}/foolscap/test/test_reconnector.py
+${PYSITELIB}/foolscap/test/test_reconnector.pyc
+${PYSITELIB}/foolscap/test/test_reconnector.pyo
+${PYSITELIB}/foolscap/test/test_reference.py
+${PYSITELIB}/foolscap/test/test_reference.pyc
+${PYSITELIB}/foolscap/test/test_reference.pyo
+${PYSITELIB}/foolscap/test/test_registration.py
+${PYSITELIB}/foolscap/test/test_registration.pyc
+${PYSITELIB}/foolscap/test/test_registration.pyo
+${PYSITELIB}/foolscap/test/test_schema.py
+${PYSITELIB}/foolscap/test/test_schema.pyc
+${PYSITELIB}/foolscap/test/test_schema.pyo
+${PYSITELIB}/foolscap/test/test_serialize.py
+${PYSITELIB}/foolscap/test/test_serialize.pyc
+${PYSITELIB}/foolscap/test/test_serialize.pyo
+${PYSITELIB}/foolscap/test/test_stringchain.py
+${PYSITELIB}/foolscap/test/test_stringchain.pyc
+${PYSITELIB}/foolscap/test/test_stringchain.pyo
+${PYSITELIB}/foolscap/test/test_sturdyref.py
+${PYSITELIB}/foolscap/test/test_sturdyref.pyc
+${PYSITELIB}/foolscap/test/test_sturdyref.pyo
+${PYSITELIB}/foolscap/test/test_tub.py
+${PYSITELIB}/foolscap/test/test_tub.pyc
+${PYSITELIB}/foolscap/test/test_tub.pyo
+${PYSITELIB}/foolscap/test/test_util.py
+${PYSITELIB}/foolscap/test/test_util.pyc
+${PYSITELIB}/foolscap/test/test_util.pyo
+${PYSITELIB}/foolscap/tokens.py
+${PYSITELIB}/foolscap/tokens.pyc
+${PYSITELIB}/foolscap/tokens.pyo
+${PYSITELIB}/foolscap/util.py
+${PYSITELIB}/foolscap/util.pyc
+${PYSITELIB}/foolscap/util.pyo
+${PYSITELIB}/foolscap/vocab.py
+${PYSITELIB}/foolscap/vocab.pyc
+${PYSITELIB}/foolscap/vocab.pyo
+share/doc/py-foolscap/copyable.xhtml
+share/doc/py-foolscap/failures.xhtml
+share/doc/py-foolscap/flappserver.xhtml
+share/doc/py-foolscap/jobs.txt
+share/doc/py-foolscap/logging.xhtml
+share/doc/py-foolscap/schema.xhtml
+share/doc/py-foolscap/serializing.xhtml
+share/doc/py-foolscap/stylesheet-unprocessed.css
+share/doc/py-foolscap/stylesheet.css
+share/doc/py-foolscap/template.tpl
+share/doc/py-foolscap/todo.txt
+share/doc/py-foolscap/use-cases.txt
+share/doc/py-foolscap/using-foolscap.xhtml
diff --git a/net/py-foolscap/distinfo b/net/py-foolscap/distinfo
new file mode 100644
index 00000000000..987ee747826
--- /dev/null
+++ b/net/py-foolscap/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1.1.1 2010/07/23 21:45:52 gdt Exp $
+
+SHA1 (foolscap-0.5.1.tar.gz) = 8e715426e5b65952867d14aabf75ffb982cf71ce
+RMD160 (foolscap-0.5.1.tar.gz) = 917cb0579046213147d7ad524dcf0d1e1af10e10
+Size (foolscap-0.5.1.tar.gz) = 485067 bytes