[tahoe-lafs-trac-stream] [Tahoe-LAFS] #3399: Evaluate adding mypy checks to code checks

Tahoe-LAFS trac at tahoe-lafs.org
Sun Nov 29 18:35:44 UTC 2020


#3399: Evaluate adding mypy checks to code checks
-----------------------------+------------------------------
     Reporter:  jaraco       |      Owner:
         Type:  enhancement  |     Status:  new
     Priority:  normal       |  Milestone:  Support Python 3
    Component:  unknown      |    Version:  n/a
   Resolution:               |   Keywords:
Launchpad Bug:               |
-----------------------------+------------------------------

Comment (by jaraco):

 Looks like it's straightforward to avoid typechecks on types failing due
 to Referenceable. I'll be checking all of these errors to see if the
 workaround applies:

 {{{
 tahoe-lafs 3399.mypy $ tox -e typechecks | grep 'interface members'
 src/allmydata/storage/immutable.py:205: error: 'BucketWriter' is missing
 following 'RIBucketWriter' interface members: abort, close, write.
 src/allmydata/storage/immutable.py:304: error: 'BucketReader' is missing
 following 'RIBucketReader' interface members: advise_corrupt_share, read.
 src/allmydata/uri.py:493: error: '_DirectoryBaseURI' is missing following
 'IURI' interface members: get_readonly, is_readonly.
 src/allmydata/immutable/literal.py:23: error: '_ImmutableFileNodeBase' is
 missing following 'allmydata.interfaces.IReadable' interface members:
 download_to_data, read.
 src/allmydata/immutable/literal.py:23: error: '_ImmutableFileNodeBase' is
 missing following 'allmydata.interfaces.IFilesystemNode' interface
 members: get_size, get_storage_index, get_cap, get_current_size,
 get_readcap, get_repair_cap, get_uri, get_verify_cap.
 src/allmydata/immutable/literal.py:23: error: '_ImmutableFileNodeBase' is
 missing following 'allmydata.interfaces.IFileNode' interface members:
 download_best_version, get_best_readable_version,
 get_size_of_best_version.
 src/allmydata/immutable/literal.py:23: error: '_ImmutableFileNodeBase' is
 missing following 'ICheckable' interface members: check, check_and_repair.
 src/allmydata/immutable/encode.py:91: error: 'Encoder' is missing
 following 'IEncoder' interface members: set_size.
 src/allmydata/immutable/upload.py:333: error: 'PeerSelector' is missing
 following 'IPeerSelector' interface members: add_peers,
 confirm_share_allocation.
 src/allmydata/immutable/upload.py:1426: error: 'RemoteEncryptedUploadable'
 is missing following 'RIEncryptedUploadable' interface members:
 __remote_name__, close, get_all_encoding_parameters, read_encrypted.
 src/allmydata/mutable/filenode.py:715: error: 'MutableFileVersion' is
 missing following 'IMutableFileVersion' interface members: get_servermap.
 src/allmydata/immutable/offloaded.py:144: error: 'CHKUploadHelper' is
 missing following 'RICHKUploadHelper' interface members: __remote_name__,
 get_version, upload.
 src/allmydata/immutable/offloaded.py:468: error: 'LocalCiphertextReader'
 is missing following 'IEncryptedUploadable' interface members:
 set_upload_status.
 src/allmydata/immutable/offloaded.py:505: error: 'Helper' is missing
 following 'RIHelper' interface members: __remote_name__, get_version,
 upload_chk.
 src/allmydata/test/storage_plugin.py:110: error: 'DummyStorageServer' is
 missing following 'RIDummy' interface members: __remote_name__,
 just_some_method.
 src/allmydata/test/storage_plugin.py:119: error: 'DummyStorageClient' is
 missing following 'IStorageServer' interface members: add_lease,
 advise_corrupt_share, allocate_buckets, get_buckets, get_version,
 renew_lease, slot_readv, slot_testv_and_readv_and_writev.
 src/allmydata/test/common.py:395: error: 'FakeCHKFileNode' is missing
 following 'allmydata.interfaces.IFilesystemNode' interface members:
 get_readcap.
 src/allmydata/test/common.py:533: error: 'FakeMutableFileNode' is missing
 following 'IMutableFileNode' interface members: download_version, upload.
 src/allmydata/test/no_network.py:179: error: 'NoNetworkServer' is missing
 following 'IServer' interface members: start_connecting.
 src/allmydata/test/no_network.py:217: error: 'NoNetworkStorageBroker' is
 missing following 'IStorageBroker' interface members: get_all_connections,
 get_all_connections_for, get_all_connectors, get_all_peerids,
 get_permuted_peers.
 src/allmydata/test/test_dirnode.py:1529: error: 'FakeMutableFile' is
 missing following 'allmydata.interfaces.IFilesystemNode' interface
 members: get_current_size, get_readcap, get_readonly_uri, get_repair_cap,
 get_size, get_storage_index, get_verify_cap.
 src/allmydata/test/test_dirnode.py:1529: error: 'FakeMutableFile' is
 missing following 'allmydata.interfaces.IFileNode' interface members:
 get_best_readable_version, get_size_of_best_version.
 src/allmydata/test/test_dirnode.py:1529: error: 'FakeMutableFile' is
 missing following 'IMutableFileNode' interface members: download_version,
 get_best_mutable_version, get_servermap, get_version, overwrite, upload.
 src/allmydata/test/test_checker.py:65: error: 'FakeServer' is missing
 following 'IServer' interface members: get_rref, get_storage_server,
 start_connecting.
 src/allmydata/test/test_checker.py:78: error: 'FakeCheckResults' is
 missing following 'ICheckResults' interface members:
 get_encoding_expected, get_encoding_needed, get_happiness,
 get_host_counter_good_shares, get_incompatible_shares, get_report,
 get_servers_responding, get_share_counter_good, get_share_counter_wrong,
 get_sharemap, get_uri, get_version_counter_recoverable,
 get_version_counter_unrecoverable.
 src/allmydata/test/test_checker.py:109: error: 'FakeCheckAndRepairResults'
 is missing following 'ICheckAndRepairResults' interface members:
 get_storage_index_string.
 }}}

--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3399#comment:23>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list