Skip to content

Commit

Permalink
Merge pull request #56 from ThomasWaldmann/rel322
Browse files Browse the repository at this point in the history
Release 3.2.2
  • Loading branch information
ThomasWaldmann authored Sep 27, 2022
2 parents 377726d + a6bcb39 commit 1014a6e
Show file tree
Hide file tree
Showing 10 changed files with 89 additions and 48 deletions.
41 changes: 41 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Test

on: [push, pull_request]

env:
FORCE_COLOR: 1

jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
python-version: ["3.6", "3.7", "3.8", "3.9", "3.10", "3.11-dev"]
os: [ubuntu-20.04]

steps:
- uses: actions/checkout@v2

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}

- name: Install Linux dependencies
run: |
sudo apt-get install -y libattr1-dev
sudo apt-get install -y pkg-config
sudo apt-get install -y gcc
sudo apt-get install -y libfuse3-dev fuse3
sudo apt-get install -y ninja-build
sudo apt-get install -y meson
sudo apt-get install -y python3-sphinx
- name: Install Python dependencies
run: |
test/ci-install.sh
- name: Test
run: |
test/ci-test.sh
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
MANIFEST
build/
dist/
doc/html/
Expand All @@ -7,3 +8,5 @@ src/pyfuse3*.so
test/.cache/
__pycache__
test/.pytest_cache/
*.egg-info
*.pyc
26 changes: 0 additions & 26 deletions .travis.yml

This file was deleted.

17 changes: 17 additions & 0 deletions Changes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,23 @@

.. currentmodule:: pyfuse3

Release 3.2.2 (2022-09-28)
==========================

* remove support for python 3.5 (broken, out of support by python devs)

* cythonize with latest Cython 0.29.x (brings Python 3.11 support)

* use github actions for CI, remove travis-ci

* update README: minimal maintenance, not developed

* update setup.py with tested python versions

* examples/tmpfs.py: work around strange kernel behaviour (calling SETATTR after
UNLINK of a (not open) file): respond with ENOENT instead of crashing.


Release 3.2.1 (2021-09-17)
==========================

Expand Down
13 changes: 4 additions & 9 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,11 @@
by PyPi and/or BitBucket.

This Project is Orphaned
========================
Warning - no longer developed!
==============================

This project is no longer maintained or developed. Github issue tracking and pull requests have
therefore been disabled. The mailing list (see below) is still available for use.

If you would like to take over this project, you are welcome to do so. Please fork it and
develop the fork for a while. Once there has been 6 months of reasonable activity, please
contact [email protected] and I'll be happy to give you ownership of this repository or
replace with a pointer to the fork.
pyfuse3 is no longer actively developed and just receiving community-contributed
maintenance to keep it alive for some time.


The pyfuse3 Module
Expand Down
13 changes: 8 additions & 5 deletions examples/tmpfs.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,10 @@ async def lookup(self, inode_p, name, ctx=None):


async def getattr(self, inode, ctx=None):
row = self.get_row('SELECT * FROM inodes WHERE id=?', (inode,))
try:
row = self.get_row("SELECT * FROM inodes WHERE id=?", (inode,))
except NoSuchRowError:
raise(pyfuse3.FUSEError(errno.ENOENT))

entry = pyfuse3.EntryAttributes()
entry.st_ino = inode
Expand Down Expand Up @@ -264,8 +267,8 @@ def _replace(self, inode_p_old, name_old, inode_p_new, name_new,
async def link(self, inode, new_inode_p, new_name, ctx):
entry_p = await self.getattr(new_inode_p)
if entry_p.st_nlink == 0:
log.warn('Attempted to create entry %s with unlinked parent %d',
new_name, new_inode_p)
log.warning('Attempted to create entry %s with unlinked parent %d',
new_name, new_inode_p)
raise FUSEError(errno.EINVAL)

self.cursor.execute("INSERT INTO contents (name, inode, parent_inode) VALUES(?,?,?)",
Expand Down Expand Up @@ -359,8 +362,8 @@ async def create(self, inode_parent, name, mode, flags, ctx):

async def _create(self, inode_p, name, mode, ctx, rdev=0, target=None):
if (await self.getattr(inode_p)).st_nlink == 0:
log.warn('Attempted to create entry %s with unlinked parent %d',
name, inode_p)
log.warning('Attempted to create entry %s with unlinked parent %d',
name, inode_p)
raise FUSEError(errno.EINVAL)

now_ns = int(time() * 1e9)
Expand Down
13 changes: 10 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
# to work properly
sys.path.insert(0, os.path.join(basedir, 'src'))

PYFUSE3_VERSION = '3.2.1'
PYFUSE3_VERSION = '3.2.2'

def main():

Expand Down Expand Up @@ -127,18 +127,25 @@ def main():
classifiers=['Development Status :: 4 - Beta',
'Intended Audience :: Developers',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: System :: Filesystems',
'License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)',
'Operating System :: POSIX :: Linux',
'Operating System :: MacOS :: MacOS X',
'Operating System :: POSIX :: BSD :: FreeBSD',
'Typing :: Typed'],
platforms=[ 'Linux' ],
platforms=[ 'Linux', 'FreeBSD', 'OS X' ],
keywords=['FUSE', 'python' ],
install_requires=['trio >= 0.15'],
tests_require=['pytest >= 3.4.0', 'pytest-trio'],
python_requires='>=3.5',
python_requires='>=3.6',
package_dir={'': 'src'},
py_modules=['_pyfuse3', 'pyfuse3_asyncio'],
provides=['pyfuse3'],
Expand Down
9 changes: 5 additions & 4 deletions test/travis-install.sh → test/ci-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ set -e
# testing eg merge requests because some of those packages have started emitting
# depreciation warnings or made backwards incompatible changes.
pip install \
"trio == 0.15" \
"pytest >= 4.6.5, < 5.0.0" \
"pytest_trio == 0.6.0" \
sphinxcontrib-asyncio
trio \
pytest \
pytest_trio \
sphinxcontrib-asyncio \
Cython
File renamed without changes.
2 changes: 1 addition & 1 deletion test/test_fs.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ def get_mp():
return mp


@pytest.yield_fixture()
@pytest.fixture()
def testfs(tmpdir):
mnt_dir = str(tmpdir)
mp = get_mp()
Expand Down

0 comments on commit 1014a6e

Please sign in to comment.