-
Notifications
You must be signed in to change notification settings - Fork 42
Use metaclass for constructing RemoteInterface #76
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report
@@ Coverage Diff @@
## master #76 +/- ##
==========================================
- Coverage 84.41% 84.38% -0.04%
==========================================
Files 58 58
Lines 8817 8819 +2
Branches 1383 1383
==========================================
- Hits 7443 7442 -1
- Misses 991 993 +2
- Partials 383 384 +1
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## master #76 +/- ##
==========================================
- Coverage 84.41% 84.35% -0.07%
==========================================
Files 58 58
Lines 8817 8807 -10
Branches 1383 1383
==========================================
- Hits 7443 7429 -14
- Misses 991 994 +3
- Partials 383 384 +1
Continue to review full report at Codecov.
|
|
Note this PR is based on #71. |
Even though it's not fully type-annotated, many of the types derive from zope.interface and are typed, so declare the status to allow mypy to perform checks where possible. Without this change, Tahoe-LAFS continues to report failures on RemoteInterface, and with it, those errors are satisfied.
|
This implementation has proven successful in enabling typechecks in tahoe-lafs/tahoe-lafs#915 and blocking that PR, so I propose to merge. @itamarst or @exarkun Are you able to merge? |
exarkun
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. Some comments inline.
| setup_args.update( | ||
| include_package_data=True, | ||
| ) | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The motivation for this change, the change to MANIFEST.in, and the addition of the empty py.typed file is not clear from the ticket or the PR description.
Maybe these changes belong with some other issue?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The motivation is indicated in d70d8ec. The core of the change is adding a py.typed file to the package, which is what communicates to mypy that this package is typed and thus it (and its dependencies) may be used for static type checking. To see the failures on Tahoe, make this change:
diff --git a/tox.ini b/tox.ini
index 706899ebe..a48165da4 100644
--- a/tox.ini
+++ b/tox.ini
@@ -118,7 +118,7 @@ skip_install = True
deps =
mypy
git+https://github.com/Shoobx/mypy-zope
- git+https://github.com/jaraco/foolscap@bugfix/75-use-metaclass
+ git+https://github.com/jaraco/foolscap@ff3b9e8c1e4fa13701273a2143ba80b1e58f47cf
commands = mypy src
And then run the typechecks. Here are the errors:
typechecks installed: attrs==20.3.0,Automat==20.2.0,cffi==1.14.4,constantly==15.1.0,cryptography==3.3.1,foolscap @ git+https://github.com/jaraco/foolscap@ff3b9e8c1e4fa13701273a2143ba80b1e58f47cf,hyperlink==20.0.1,idna==2.10,incremental==17.5.0,mypy==0.790,mypy-extensions==0.4.3,mypy-zope @ git+https://github.com/Shoobx/mypy-zope@1fa03a7eccfebaa74f57e9288203c6e9adbb465a,pyasn1==0.4.8,pyasn1-modules==0.2.8,pycparser==2.20,PyHamcrest==2.0.2,pyOpenSSL==20.0.1,service-identity==18.1.0,six==1.15.0,Twisted==20.3.0,typed-ast==1.4.1,typing-extensions==3.7.4.3,zope.event==4.5.0,zope.interface==5.2.0,zope.schema==6.0.0
typechecks run-test-pre: PYTHONHASHSEED='4199503661'
typechecks run-test: commands[0] | mypy src
src/allmydata/interfaces.py:61: error: Method must have at least one argument
src/allmydata/interfaces.py:69: error: Method must have at least one argument
src/allmydata/interfaces.py:112: error: Method must have at least one argument
src/allmydata/interfaces.py:2835: error: Method must have at least one argument
src/allmydata/interfaces.py:2853: error: Method must have at least one argument
src/allmydata/interfaces.py:2870: error: Method must have at least one argument
src/allmydata/interfaces.py:2873: error: Method must have at least one argument
src/allmydata/interfaces.py:2879: error: Method must have at least one argument
src/allmydata/interfaces.py:2886: error: Method must have at least one argument
src/allmydata/interfaces.py:2899: error: Method must have at least one argument
src/allmydata/introducer/interfaces.py:58: error: Method must have at least one argument
src/allmydata/storage/immutable.py:204: error: zope.interface.implementer accepts interface, not allmydata.interfaces.RIBucketWriter.
src/allmydata/storage/immutable.py:204: error: Make sure you have stubs for all packages that provide interfaces for allmydata.interfaces.RIBucketWriter class hierarchy.
src/allmydata/storage/immutable.py:303: error: zope.interface.implementer accepts interface, not allmydata.interfaces.RIBucketReader.
src/allmydata/storage/immutable.py:303: error: Make sure you have stubs for all packages that provide interfaces for allmydata.interfaces.RIBucketReader class hierarchy.
src/allmydata/introducer/client.py:35: error: zope.interface.implementer accepts interface, not allmydata.introducer.interfaces.RIIntroducerSubscriberClient_v2.
src/allmydata/introducer/client.py:35: error: Make sure you have stubs for all packages that provide interfaces for allmydata.introducer.interfaces.RIIntroducerSubscriberClient_v2 class hierarchy.
src/allmydata/storage/server.py:53: error: zope.interface.implementer accepts interface, not allmydata.interfaces.RIStorageServer.
src/allmydata/storage/server.py:53: error: Make sure you have stubs for all packages that provide interfaces for allmydata.interfaces.RIStorageServer class hierarchy.
src/allmydata/immutable/upload.py:1429: error: zope.interface.implementer accepts interface, not allmydata.interfaces.RIEncryptedUploadable.
src/allmydata/immutable/upload.py:1429: error: Make sure you have stubs for all packages that provide interfaces for allmydata.interfaces.RIEncryptedUploadable class hierarchy.
src/allmydata/control.py:58: error: zope.interface.implementer accepts interface, not allmydata.interfaces.RIControlClient.
src/allmydata/control.py:58: error: Make sure you have stubs for all packages that provide interfaces for allmydata.interfaces.RIControlClient class hierarchy.
src/allmydata/immutable/offloaded.py:143: error: zope.interface.implementer accepts interface, not allmydata.interfaces.RICHKUploadHelper.
src/allmydata/immutable/offloaded.py:143: error: Make sure you have stubs for all packages that provide interfaces for allmydata.interfaces.RICHKUploadHelper class hierarchy.
src/allmydata/immutable/offloaded.py:507: error: zope.interface.implementer accepts interface, not allmydata.interfaces.RIHelper.
src/allmydata/immutable/offloaded.py:507: error: Make sure you have stubs for all packages that provide interfaces for allmydata.interfaces.RIHelper class hierarchy.
src/allmydata/introducer/server.py:151: error: zope.interface.implementer accepts interface, not allmydata.introducer.interfaces.RIIntroducerPublisherAndSubscriberService_v2.
src/allmydata/introducer/server.py:151: error: Make sure you have stubs for all packages that provide interfaces for allmydata.introducer.interfaces.RIIntroducerPublisherAndSubscriberService_v2 class hierarchy.
src/allmydata/test/storage_plugin.py:43: error: Method must have at least one argument
src/allmydata/test/storage_plugin.py:109: error: zope.interface.implementer accepts interface, not allmydata.test.storage_plugin.RIDummy.
src/allmydata/test/storage_plugin.py:109: error: Make sure you have stubs for all packages that provide interfaces for allmydata.test.storage_plugin.RIDummy class hierarchy.
Found 32 errors in 10 files (checked 287 source files)
ERROR: InvocationError for command /Users/jaraco/code/public/tahoe-lafs/.tox/typechecks/bin/mypy src (exited with code 1)
___________________________________ summary ____________________________________
ERROR: typechecks: commands failed
src/foolscap/remoteinterface.py
Outdated
| interface.InterfaceClass.__init__(self, iname, bases, attrs) | ||
| return | ||
|
|
||
| attrs.pop('__metaclass__', None) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I couldn't figure out why this is necessary or desirable. I couldn't even find the case where __metaclass__ is present in attrs. If there's some case where this matters, I suppose a new test demonstrating it would be valuable.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to this comment and the one before it, I had to remove it from attrs to allow tests to pass on Python 2.
On further review, it seems that the subsequent commit obviated the need for this workaround and I've removed it in a57be96.
|
|
||
|
|
||
| class RemoteInterface(six.with_metaclass(RemoteInterfaceClass, interface.Interface)): | ||
| pass |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me, as far as I understand it. I don't really understand the difference between six.with_metaclass and six.add_metaclass except it looks like add_metaclass might involve an intermediate class object on the way to the desired class object, which seems bad (therefore with_metaclass is preferable). However, the add_metaclass documentation is more explicit about what it does and what it does sounds pretty good (cross python 2/3 metaclass declaration). I'm not sure why with_metaclass doesn't have similar docs.
If you have some insight into why one or the other of these methods is preferable, putting it in a comment here might be useful in the long run.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I honestly don't fully understand the nuances, and I was the seminal author for add_metaclass.
I attempted to use six.add_metaclass first, but doing so resulted in errors.
diff --git a/src/foolscap/remoteinterface.py b/src/foolscap/remoteinterface.py
index 04ffd06..d8ef365 100644
--- a/src/foolscap/remoteinterface.py
+++ b/src/foolscap/remoteinterface.py
@@ -409,5 +409,6 @@ def _makeConstraint(t):
addToConstraintTypeMap(interface.InterfaceClass, _makeConstraint)
-class RemoteInterface(six.with_metaclass(RemoteInterfaceClass, interface.Interface)):
+@six.add_metaclass(RemoteInterfaceClass)
+class RemoteInterface(interface.Interface):
passDetails
python develop-inst-noop: /Users/jaraco/code/public/foolscap
python installed: attrs==20.3.0,Automat==20.2.0,cffi==1.14.4,constantly==15.1.0,cryptography==3.3.1,-e git+gh://warner/foolscap@a57be96e8245b41975982100a4661e231e8a8834#egg=foolscap,hyperlink==20.0.1,idna==2.10,incremental==17.5.0,mock==4.0.3,pyasn1==0.4.8,pyasn1-modules==0.2.8,pycparser==2.20,pyflakes==2.2.0,PyHamcrest==2.0.2,pyOpenSSL==20.0.1,service-identity==18.1.0,six==1.15.0,Twisted==20.3.0,txtorcon==20.0.0,zope.interface==5.2.0
python run-test-pre: PYTHONHASHSEED='2533493863'
python run-test: commands[0] | pyflakes setup.py src
python run-test: commands[1] | trial foolscap
foolscap
test
test__versions ... [ERROR]
test_appserver ... [ERROR]
foolscap.test.test_banana
ByteStream
test_list ... [OK]
test_ref6 ... [OK]
DecodeFailureTest
testCheckToken1 ... [OK]
testCheckToken2 ... [OK]
testCheckToken3 ... [OK]
testCheckToken4 ... [OK]
testCheckToken5 ... [OK]
testDoOpen1 ... [OK]
testDoOpen2 ... [OK]
testFinish1 ... [OK]
testFinish2 ... [OK]
testLongHeader ... [OK]
testLongHeader2 ... [OK]
testReceiveChild1 ... [OK]
testReceiveChild2 ... [OK]
testReceiveChild3 ... [OK]
testReceiveClose1 ... [OK]
testReceiveClose2 ... [OK]
testStart1 ... [OK]
testStart2 ... [OK]
testSuccess1 ... [OK]
DecodeTest
test_aborted_list ... [OK]
test_aborted_list2 ... [OK]
test_aborted_list3 ... [OK]
test_dict ... [OK]
test_dict_with_duplicate_keys ... [OK]
test_dict_with_list ... [OK]
test_dict_with_mutable_key ... [OK]
test_dict_with_tuple_as_key ... [OK]
test_failed_dict1 ... [OK]
test_failed_dict2 ... [OK]
test_failed_dict3 ... [OK]
test_failed_dict4 ... [OK]
test_failed_dict5 ... [OK]
test_list_with_tuple ... [OK]
test_nested_list ... [OK]
test_ref1 ... [OK]
test_ref2 ... [OK]
test_ref3 ... [OK]
test_ref4 ... [OK]
test_ref5 ... [OK]
test_ref6 ... [OK]
test_simple_list ... [OK]
EncodeFailureTest
test1 ... [OK]
test2 ... [OK]
test3 ... [OK]
test4 ... [OK]
test5 ... [OK]
testSuccess1 ... [OK]
testSuccessStreaming ... [OK]
EncodeTest
testDict ... [OK]
testList ... [OK]
testNestedList ... [OK]
testNestedList2 ... [OK]
testTuple ... [OK]
test_ref1 ... [OK]
test_ref2 ... [OK]
test_ref3 ... [OK]
test_ref4 ... [OK]
test_ref6 ... [OK]
test_refdict1 ... [OK]
InboundByteStream
testBool ... [OK]
testDict ... [OK]
testInt ... [OK]
testList ... [OK]
testLong ... [OK]
testString ... [OK]
testTuple ... [OK]
InboundByteStream2
testConstrainedBool ... [OK]
testConstrainedDict ... [OK]
testConstrainedInt ... [OK]
testConstrainedList ... [OK]
testConstrainedString ... [OK]
testConstrainedTuple ... [OK]
Sliceable
testAdapter ... [OK]
testDirect ... [OK]
ThereAndBackAgain
testIdentity ... [OK]
testStressReferences ... [OK]
testUnicode ... [OK]
test_bigint ... [OK]
test_bool ... [OK]
test_cycles_1 ... [OK]
test_cycles_2 ... [OK]
test_decimal ... [OK]
test_dict ... [OK]
test_float ... [OK]
test_int ... [OK]
test_list ... [OK]
test_none ... [OK]
test_set ... [OK]
test_string ... [OK]
test_tuple ... [OK]
test_unicode ... [OK]
VocabTest1
test_incoming1 ... [OK]
test_outgoing ... [OK]
test_table_hashes ... [OK]
VocabTest2
test_loop ... [OK]
foolscap
test
test_call ... [ERROR]
test_connection ... [ERROR]
test_copyable ... [ERROR]
test_crypto ... [ERROR]
foolscap.test.test_eventual
TestEventual
testFire ... [OK]
testFlush ... [OK]
testSend ... [OK]
foolscap
test
test_gifts ... [ERROR]
test_info ... [ERROR]
test_interfaces ... [ERROR]
test_keepalive ... [ERROR]
test_listener ... [ERROR]
test_logging ... [ERROR]
test_loopback ... [ERROR]
test_negotiate ... [ERROR]
foolscap.test.test_observer
Observer
test_oneshot ... [OK]
foolscap
test
test_pb ... [ERROR]
foolscap.test.test_promise
Call
testResolveAfter ... [OK]
testResolveBefore ... [OK]
testResolveFailure ... [OK]
Chained
testChained1 ... [OK]
testChained2 ... [OK]
testResolveToABrokenPromise ... [OK]
testResolveToAPromise ... [OK]
Send
testBadName ... [OK]
testBasic ... [OK]
testBasicFailure ... [OK]
testDisableDataflowStyle ... [OK]
testFailure ... [OK]
testNoMultipleResolution ... [OK]
testOrdering ... [OK]
testResolveAfter ... [OK]
testResolveBefore ... [OK]
testResolveFailure ... [OK]
testSend ... [OK]
SendOnly
testNear ... [OK]
testResolveAfter ... [OK]
testResolveBefore ... [OK]
foolscap
test
test_reconnector ... [ERROR]
test_reference ... [ERROR]
test_registration ... [ERROR]
test_schema ... [ERROR]
test_serialize ... [ERROR]
foolscap.test.test_stringchain
T
test_al ... [OK]
test_appendleft ... [OK]
test_clear ... [OK]
test_popleft ... [OK]
test_popleft_new_stringchain ... [OK]
test_str ... [OK]
test_tailignored ... [OK]
test_trim ... [OK]
foolscap
test
test_sturdyref ... [ERROR]
test_tub ... [ERROR]
test_unreachable ... [ERROR]
foolscap.test.test_util
AllocatePort
test_allocate ... [OK]
AsyncAND
test_empty ... [OK]
test_one_failure_1 ... [OK]
test_one_failure_2 ... [OK]
test_simple ... [OK]
test_two ... [OK]
test_two_failure ... [OK]
Base32
test_digest32 ... [OK]
test_is_base32 ... [OK]
Time
test_format ... [OK]
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test__versions.py", line 9, in <module>
from foolscap.api import __version__
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test__versions
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_appserver.py", line 8, in <module>
from foolscap.api import Tub, eventually
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_appserver
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_call.py", line 18, in <module>
from foolscap.test.common import HelperTarget, TargetMixin, ShouldFailMixin
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/common.py", line 11, in <module>
from foolscap import broker, eventual, negotiate
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_call
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_connection.py", line 11, in <module>
from foolscap.api import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_connection
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_copyable.py", line 5, in <module>
from foolscap.test.common import TargetMixin, HelperTarget
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/common.py", line 11, in <module>
from foolscap import broker, eventual, negotiate
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_copyable
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_crypto.py", line 7, in <module>
from foolscap import pb
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_crypto
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_gifts.py", line 6, in <module>
from foolscap.api import RemoteInterface, Referenceable, flushEventualQueue, \
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_gifts
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_info.py", line 6, in <module>
from foolscap.api import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_info
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_interfaces.py", line 7, in <module>
from foolscap import schema, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_interfaces
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_keepalive.py", line 7, in <module>
from foolscap.api import DeadReferenceError, flushEventualQueue
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_keepalive
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_listener.py", line 5, in <module>
from foolscap.api import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_listener
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_logging.py", line 19, in <module>
from foolscap.logging import gatherer, log, tail, incident, cli, web, \
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/gatherer.py", line 12, in <module>
from foolscap.api import Tub, Referenceable
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_logging
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_loopback.py", line 4, in <module>
from foolscap.test.common import HelperTarget, MakeTubsMixin
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/common.py", line 11, in <module>
from foolscap import broker, eventual, negotiate
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_loopback
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_negotiate.py", line 8, in <module>
from foolscap import negotiate, tokens
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_negotiate
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_pb.py", line 16, in <module>
from foolscap import referenceable
File "/Users/jaraco/code/public/foolscap/src/foolscap/referenceable.py", line 18, in <module>
from foolscap import ipb, slicer, tokens, call
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_pb
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_reconnector.py", line 5, in <module>
from foolscap.api import Tub, eventually, flushEventualQueue
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_reconnector
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_reference.py", line 5, in <module>
from foolscap.test.common import HelperTarget, Target, ShouldFailMixin
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/common.py", line 11, in <module>
from foolscap import broker, eventual, negotiate
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_reference
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_registration.py", line 6, in <module>
from foolscap.api import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_registration
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_schema.py", line 4, in <module>
from foolscap import schema, copyable, broker
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_schema
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_serialize.py", line 8, in <module>
from foolscap.api import Referenceable, Copyable, RemoteCopy, \
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_serialize
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_sturdyref.py", line 3, in <module>
from foolscap.referenceable import SturdyRef
File "/Users/jaraco/code/public/foolscap/src/foolscap/referenceable.py", line 18, in <module>
from foolscap import ipb, slicer, tokens, call
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_sturdyref
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_tub.py", line 11, in <module>
from foolscap.api import Tub, SturdyRef, Referenceable
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_tub
===============================================================================
[ERROR]
Traceback (most recent call last):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/trial/runner.py", line 531, in loadPackage
module = modinfo.load()
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/modules.py", line 392, in load
return self.pathEntry.pythonPath.moduleLoader(self.name)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 308, in namedAny
topLevelPackage = _importAndCheckStack(trialname)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/twisted/python/reflect.py", line 247, in _importAndCheckStack
return __import__(importName)
File "/Users/jaraco/code/public/foolscap/src/foolscap/test/test_unreachable.py", line 4, in <module>
from foolscap.api import Tub, Referenceable
File "/Users/jaraco/code/public/foolscap/src/foolscap/api.py", line 16, in <module>
from foolscap.pb import Tub
File "/Users/jaraco/code/public/foolscap/src/foolscap/pb.py", line 14, in <module>
from foolscap import ipb, base32, negotiate, broker, eventual, storage
File "/Users/jaraco/code/public/foolscap/src/foolscap/negotiate.py", line 10, in <module>
from foolscap import broker, referenceable, vocab
File "/Users/jaraco/code/public/foolscap/src/foolscap/broker.py", line 17, in <module>
from foolscap import call, slicer, referenceable, copyable, remoteinterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/call.py", line 11, in <module>
from foolscap.logging import log
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/log.py", line 9, in <module>
from foolscap.logging.interfaces import IIncidentReporter
File "/Users/jaraco/code/public/foolscap/src/foolscap/logging/interfaces.py", line 3, in <module>
from foolscap.remoteinterface import RemoteInterface
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 413, in <module>
class RemoteInterface(interface.Interface):
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/six.py", line 878, in wrapper
return metaclass(cls.__name__, cls.__bases__, orig_vars)
File "/Users/jaraco/code/public/foolscap/src/foolscap/remoteinterface.py", line 44, in __init__
interface.InterfaceClass.__init__(self, iname, bases, attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 787, in __init__
self.__attrs = self.__compute_attrs(attrs)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 805, in __compute_attrs
return {
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 806, in <dictcomp>
aname: update_value(aname, aval)
File "/Users/jaraco/code/public/foolscap/.tox/python/lib/python3.9/site-packages/zope/interface/interface.py", line 802, in update_value
raise InvalidInterface("Concrete attribute, " + aname)
zope.interface.exceptions.InvalidInterface: Concrete attribute, _Element__tagged_values
foolscap.test.test_unreachable
-------------------------------------------------------------------------------
Ran 163 tests in 0.120s
FAILED (errors=23, successes=140)
ERROR: InvocationError for command /Users/jaraco/code/public/foolscap/.tox/python/bin/trial foolscap (exited with code 1)
___________________________________ summary ____________________________________
ERROR: python: commands failed
The way I read that error message, the Interface class already was instrumented in such a way that the intermediate class that gets created when using add_metaclass is invalid. It's similar, though subtly different from the limitation with draft documentation in benjaminp/six#168.
Unfortunately, the history behind the addition of add_metaclass over with_metaclass seems to have been lost in the retirement of Bitbucket.
My instinct here is that this code works well enough and attempting the alternate approach causes the tests to fail, so there's not a whole lot more to say. I'll add a comment linking to this discussion for those interested in more background.
(682def4)
exarkun
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. This looks good now. I can confirm that it fixes the remaining mypy errors on the Tahoe branch that introduces mypy usage and I can also confirm that Tahoe nodes can still interact via Foolscap using this branch.
Fixes #75
I'm unsure about this implementation, so am very interested in feedback.