From 8aa77e119516abb7cef5d10ff433d607a4cda500 Mon Sep 17 00:00:00 2001 From: Itamar Turner-Trauring Date: Wed, 11 Nov 2020 14:01:16 -0500 Subject: [PATCH 1/5] News fragment. --- newsfragments/3501.minor | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 newsfragments/3501.minor diff --git a/newsfragments/3501.minor b/newsfragments/3501.minor new file mode 100644 index 000000000..e69de29bb From b4803fbc3ba8af9ca7ed8d1f1601347709b7cf90 Mon Sep 17 00:00:00 2001 From: Itamar Turner-Trauring Date: Wed, 11 Nov 2020 14:05:22 -0500 Subject: [PATCH 2/5] Port to Python 3. --- src/allmydata/mutable/checker.py | 11 +++++++++++ src/allmydata/util/_python3.py | 1 + 2 files changed, 12 insertions(+) diff --git a/src/allmydata/mutable/checker.py b/src/allmydata/mutable/checker.py index 56b8fb2cc..e3e5951f0 100644 --- a/src/allmydata/mutable/checker.py +++ b/src/allmydata/mutable/checker.py @@ -1,3 +1,14 @@ +""" +Ported to Python 3. +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function +from __future__ import unicode_literals + +from future.utils import PY2 +if PY2: + from future.builtins import filter, map, zip, ascii, chr, hex, input, next, oct, open, pow, round, super, bytes, dict, list, object, range, str, max, min # noqa: F401 from allmydata.uri import from_string from allmydata.util import base32, log, dictutil diff --git a/src/allmydata/util/_python3.py b/src/allmydata/util/_python3.py index fe43692fb..acde42011 100644 --- a/src/allmydata/util/_python3.py +++ b/src/allmydata/util/_python3.py @@ -53,6 +53,7 @@ PORTED_MODULES = [ "allmydata.interfaces", "allmydata.introducer.interfaces", "allmydata.monitor", + "allmydata.mutable.checker", "allmydata.node", "allmydata.storage_client", "allmydata.storage.common", From d238242d73a7cc90398d7e93aad5d0e76b9b0aa4 Mon Sep 17 00:00:00 2001 From: Itamar Turner-Trauring Date: Wed, 11 Nov 2020 14:09:49 -0500 Subject: [PATCH 3/5] Port to Python 3. --- src/allmydata/mutable/common.py | 11 +++++++++++ src/allmydata/util/_python3.py | 1 + 2 files changed, 12 insertions(+) diff --git a/src/allmydata/mutable/common.py b/src/allmydata/mutable/common.py index 16f39b302..802681ae7 100644 --- a/src/allmydata/mutable/common.py +++ b/src/allmydata/mutable/common.py @@ -1,3 +1,14 @@ +""" +Ported to Python 3. +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function +from __future__ import unicode_literals + +from future.utils import PY2 +if PY2: + from future.builtins import filter, map, zip, ascii, chr, hex, input, next, oct, open, pow, round, super, bytes, dict, list, object, range, str, max, min # noqa: F401 MODE_CHECK = "MODE_CHECK" # query all peers MODE_ANYTHING = "MODE_ANYTHING" # one recoverable version diff --git a/src/allmydata/util/_python3.py b/src/allmydata/util/_python3.py index acde42011..2797764b9 100644 --- a/src/allmydata/util/_python3.py +++ b/src/allmydata/util/_python3.py @@ -54,6 +54,7 @@ PORTED_MODULES = [ "allmydata.introducer.interfaces", "allmydata.monitor", "allmydata.mutable.checker", + "allmydata.mutable.common", "allmydata.node", "allmydata.storage_client", "allmydata.storage.common", From d0d7a82734416969c1953dde72fd507c5c42bf51 Mon Sep 17 00:00:00 2001 From: Itamar Turner-Trauring Date: Wed, 11 Nov 2020 14:25:58 -0500 Subject: [PATCH 4/5] Port to Python 3. --- src/allmydata/mutable/filenode.py | 14 +++++++++++++- src/allmydata/util/_python3.py | 1 + 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/allmydata/mutable/filenode.py b/src/allmydata/mutable/filenode.py index cebc0ded0..5afc84dec 100644 --- a/src/allmydata/mutable/filenode.py +++ b/src/allmydata/mutable/filenode.py @@ -1,3 +1,15 @@ +""" +Ported to Python 3. +""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function +from __future__ import unicode_literals + +from future.utils import PY2 +if PY2: + from future.builtins import filter, map, zip, ascii, chr, hex, input, next, oct, open, pow, round, super, bytes, dict, list, object, range, str, max, min # noqa: F401 + import random from zope.interface import implementer @@ -1141,7 +1153,7 @@ class MutableFileVersion(object): start_segments = {} # shnum -> start segment end_segments = {} # shnum -> end segment blockhashes = {} # shnum -> blockhash tree - for (shnum, original_data) in update_data.items(): + for (shnum, original_data) in list(update_data.items()): data = [d[1] for d in original_data if d[0] == self._version] # data is [(blockhashes,start,end)..] diff --git a/src/allmydata/util/_python3.py b/src/allmydata/util/_python3.py index 2797764b9..83a410d96 100644 --- a/src/allmydata/util/_python3.py +++ b/src/allmydata/util/_python3.py @@ -55,6 +55,7 @@ PORTED_MODULES = [ "allmydata.monitor", "allmydata.mutable.checker", "allmydata.mutable.common", + "allmydata.mutable.filenode", "allmydata.node", "allmydata.storage_client", "allmydata.storage.common", From 9e2a79ee23c1e89f688f7427a939a5ed92773610 Mon Sep 17 00:00:00 2001 From: Itamar Turner-Trauring Date: Wed, 11 Nov 2020 14:45:20 -0500 Subject: [PATCH 5/5] Ported to Python 3. --- src/allmydata/mutable/publish.py | 16 ++++++++++++++-- src/allmydata/util/_python3.py | 1 + 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/allmydata/mutable/publish.py b/src/allmydata/mutable/publish.py index 7ff784528..17b73685e 100644 --- a/src/allmydata/mutable/publish.py +++ b/src/allmydata/mutable/publish.py @@ -1,3 +1,15 @@ +""" +Ported to Python 3. +""" +from __future__ import division +from __future__ import absolute_import +from __future__ import print_function +from __future__ import unicode_literals + +from future.utils import PY2 +if PY2: + from future.builtins import filter, map, zip, ascii, chr, hex, input, next, oct, open, pow, round, super, bytes, dict, list, object, range, str, max, min # noqa: F401 + import os, time from io import BytesIO from itertools import count @@ -446,7 +458,7 @@ class Publish(object): # then we add in all the shares that were bad (corrupted, bad # signatures, etc). We want to replace these. - for key, old_checkstring in self._servermap.get_bad_shares().items(): + for key, old_checkstring in list(self._servermap.get_bad_shares().items()): (server, shnum) = key self.goal.add( (server,shnum) ) self.bad_share_checkstrings[(server,shnum)] = old_checkstring @@ -1105,7 +1117,7 @@ class Publish(object): self.bad_servers.add(server) # don't ask them again # use the checkstring to add information to the log message unknown_format = False - for (shnum,readv) in read_data.items(): + for (shnum,readv) in list(read_data.items()): checkstring = readv[0] version = get_version_from_checkstring(checkstring) if version == MDMF_VERSION: diff --git a/src/allmydata/util/_python3.py b/src/allmydata/util/_python3.py index 83a410d96..7afefceed 100644 --- a/src/allmydata/util/_python3.py +++ b/src/allmydata/util/_python3.py @@ -56,6 +56,7 @@ PORTED_MODULES = [ "allmydata.mutable.checker", "allmydata.mutable.common", "allmydata.mutable.filenode", + "allmydata.mutable.publish", "allmydata.node", "allmydata.storage_client", "allmydata.storage.common",