summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fs/base.py6
-rw-r--r--fs/ftpfs.py2
-rw-r--r--fs/memoryfs.py5
-rw-r--r--fs/remotefs.py9
-rw-r--r--fs/watch.py4
5 files changed, 16 insertions, 10 deletions
diff --git a/fs/base.py b/fs/base.py
index 041729e..1cd7e92 100644
--- a/fs/base.py
+++ b/fs/base.py
@@ -39,7 +39,7 @@ from fs.local_functools import wraps
import compatibility
import six
-from six import PY3
+from six import PY3, b
class DummyLock(object):
"""A dummy lock object that doesn't do anything.
@@ -112,13 +112,13 @@ class NullFile(object):
raise StopIteration
def readline(self, *args, **kwargs):
- return ""
+ return b("")
def close(self):
self.closed = True
def read(self, size=None):
- return ""
+ return b("")
def seek(self, *args, **kwargs):
pass
diff --git a/fs/ftpfs.py b/fs/ftpfs.py
index 99c7b46..50891af 100644
--- a/fs/ftpfs.py
+++ b/fs/ftpfs.py
@@ -667,7 +667,7 @@ class _FTPFile(object):
break
chunks.append(data)
self.read_pos += len(data)
- return ''.join(chunks)
+ return b('').join(chunks)
remaining_bytes = size
while remaining_bytes:
diff --git a/fs/memoryfs.py b/fs/memoryfs.py
index 5e12a95..91aa4c3 100644
--- a/fs/memoryfs.py
+++ b/fs/memoryfs.py
@@ -21,6 +21,7 @@ from os import SEEK_END
import threading
import six
+from six import b
def _check_mode(mode, mode_chars):
@@ -574,7 +575,7 @@ class MemoryFS(FS):
if dir_entry.isdir():
info['st_mode'] = 0755 | stat.S_IFDIR
else:
- info['size'] = len(dir_entry.data or '')
+ info['size'] = len(dir_entry.data or b(''))
info['st_mode'] = 0666 | stat.S_IFREG
return info
@@ -630,7 +631,7 @@ class MemoryFS(FS):
raise ResourceNotFoundError(path)
if not dir_entry.isfile():
raise ResourceInvalidError(path, msg="not a file: %(path)s")
- return dir_entry.data or ''
+ return dir_entry.data or b('')
@synchronize
def setcontents(self, path, data, chunk_size=1024*64):
diff --git a/fs/remotefs.py b/fs/remotefs.py
index c44179b..77fdfc2 100644
--- a/fs/remotefs.py
+++ b/fs/remotefs.py
@@ -10,6 +10,9 @@ from json import dumps
import Queue as queue
import socket
+from six import b
+
+
class PacketHandler(threading.Thread):
def __init__(self, transport, prelude_callback=None):
@@ -99,7 +102,7 @@ class _SocketFile(object):
try:
return self.socket.recv(size)
except:
- return ''
+ return b('')
def write(self, data):
self.socket.sendall(data)
@@ -145,7 +148,7 @@ class RemoteFS(FS):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((self.addr, self.port))
socket_file = _SocketFile(sock)
- socket_file.write('pyfs/0.1\n')
+ socket_file.write(b('pyfs/0.1\n'))
return socket_file
def _make_call(self, method_name, *args, **kwargs):
@@ -185,4 +188,4 @@ if __name__ == "__main__":
rfs = RemoteFS()
rfs.close()
- \ No newline at end of file
+
diff --git a/fs/watch.py b/fs/watch.py
index 815cf3e..56ff1de 100644
--- a/fs/watch.py
+++ b/fs/watch.py
@@ -41,6 +41,8 @@ from fs.wrapfs import WrapFS
from fs.base import FS
from fs.filelike import FileWrapper
+from six import b
+
class EVENT(object):
"""Base class for change notification events."""
@@ -304,7 +306,7 @@ class WatchableFS(WatchableFSMixin,WrapFS):
self.notify_watchers(ACCESSED,path)
return WatchedFile(f,self,path,mode)
- def setcontents(self, path, data='', chunk_size=64*1024):
+ def setcontents(self, path, data=b(''), chunk_size=64*1024):
existed = self.wrapped_fs.isfile(path)
ret = super(WatchableFS, self).setcontents(path, data, chunk_size=chunk_size)
if not existed: