diff --git a/.travis.yml b/.travis.yml index d435957b..1e19a196 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,19 +3,20 @@ sudo: false language: python python: - - '2.7' - - '3.4' - - '3.5' - - '3.6' - - '3.7' + - "2.7" + - "3.4" + - "3.5" + - "3.6" + - "3.7" + - "3.8-dev" # TODO (dargueta): Enable these once we figure out FTP timing issues in PyPy tests # - 'pypy' # - 'pypy3.5-7.0' matrix: include: - - name: 'Type checking' - python: '3.7' + - name: "Type checking" + python: "3.7" env: TOXENV=typecheck before_install: diff --git a/CHANGELOG.md b/CHANGELOG.md index f5e2c72d..6967df4f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - Added geturl for TarFS and ZipFS for 'fs' purpose. NoURL for 'download' purpose. - Added helpful root path in CreateFailed exception [#340](https://github.com/PyFilesystem/pyfilesystem2/issues/340) +- Added Python 3.8 support ### Fixed diff --git a/README.md b/README.md index 8616bc3b..fbd6b200 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,13 @@ Python's Filesystem abstraction layer. [![PyPI version](https://badge.fury.io/py/fs.svg)](https://badge.fury.io/py/fs) [![PyPI](https://img.shields.io/pypi/pyversions/fs.svg)](https://pypi.org/project/fs/) +[![Downloads](https://pepy.tech/badge/fs/month)](https://pepy.tech/project/fs/month) + + [![Build Status](https://travis-ci.org/PyFilesystem/pyfilesystem2.svg?branch=master)](https://travis-ci.org/PyFilesystem/pyfilesystem2) [![Windows Build Status](https://ci.appveyor.com/api/projects/status/github/pyfilesystem/pyfilesystem2?branch=master&svg=true)](https://ci.appveyor.com/project/willmcgugan/pyfilesystem2) [![Coverage Status](https://coveralls.io/repos/github/PyFilesystem/pyfilesystem2/badge.svg)](https://coveralls.io/github/PyFilesystem/pyfilesystem2) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/30ad6445427349218425d93886ade9ee)](https://www.codacy.com/app/will-mcgugan/pyfilesystem2?utm_source=github.com&utm_medium=referral&utm_content=PyFilesystem/pyfilesystem2&utm_campaign=Badge_Grade) -[![Code Health](https://landscape.io/github/PyFilesystem/pyfilesystem2/master/landscape.svg?style=flat)](https://landscape.io/github/PyFilesystem/pyfilesystem2/master) ## Documentation diff --git a/fs/osfs.py b/fs/osfs.py index ce6159ad..2a711bd7 100644 --- a/fs/osfs.py +++ b/fs/osfs.py @@ -419,7 +419,7 @@ def _check_copy(self, src_path, dst_path, overwrite=False): raise errors.DirectoryExpected(dirname(dst_path)) return _src_path, _dst_path - if sys.version_info[:2] < (3, 8) and sendfile is not None: + if sys.version_info[:2] <= (3, 8) and sendfile is not None: _sendfile_error_codes = { errno.EIO, diff --git a/requirements-readthedocs.txt b/requirements-readthedocs.txt new file mode 100644 index 00000000..3e63add2 --- /dev/null +++ b/requirements-readthedocs.txt @@ -0,0 +1,2 @@ +# requirements for readthedocs.io +-e . diff --git a/setup.py b/setup.py index d758fca4..a6ce6f43 100644 --- a/setup.py +++ b/setup.py @@ -16,6 +16,7 @@ "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: System :: Filesystems",