Skip to content

Commit

Permalink
Add GitHub workflow to build distribution artifacts and run automated…
Browse files Browse the repository at this point in the history
… tests
  • Loading branch information
malthe committed Apr 18, 2024
1 parent 7bd5a33 commit 3854205
Show file tree
Hide file tree
Showing 5 changed files with 88 additions and 19 deletions.
55 changes: 55 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
on:
push:
pull_request:
# Allow to run this workflow manually from the Actions tab
workflow_dispatch:

jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- run: python -m pip install setuptools wheel
- run: python setup.py sdist
- run: python setup.py bdist_wheel
- uses: actions/upload-artifact@v4
with:
name: MacFSEvents
path: ./dist/
test:
strategy:
# We want to see all failures:
fail-fast: false
matrix:
config:
- ["3.8", "py38 lint", "macos-12"]
- ["3.9", "py39", "macos-12"]
- ["3.10", "py310", "macos-12"]
- ["3.11", "py311", "macos-12"]
- ["3.12", "py312", "macos-12"]
- ["3.12", "py312", "macos-13"]
- ["3.12", "py312", "macos-14"]
runs-on: ${{ matrix.config[2] }}
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
name: ${{ matrix.config[0] }}-${{ matrix.config[1] }}
steps:
- run: git config --global core.autocrlf false
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.config[0] }}
- name: Pip cache
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.config[0] }}-${{ hashFiles('setup.*', 'tox.ini') }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.config[0] }}-
${{ runner.os }}-pip-
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install tox
- name: Test
run: tox -- ${{ matrix.config[1] }}
18 changes: 0 additions & 18 deletions .travis.yml

This file was deleted.

2 changes: 2 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
include *.py
include tox.ini
30 changes: 30 additions & 0 deletions fsevents.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import unicodedata

from _fsevents import (
FS_CFLAGFILEEVENTS,
FS_CFLAGNONE,
FS_EVENTIDSINCENOW,
FS_FLAGEVENTIDSWRAPPED,
Expand Down Expand Up @@ -320,3 +321,32 @@ def snapshot(self, path):
entry[obj] = os.lstat(os.path.join(root, obj))
except OSError:
continue


__all__ = (
FS_CFLAGFILEEVENTS,
FS_CFLAGNONE,
FS_EVENTIDSINCENOW,
FS_FLAGEVENTIDSWRAPPED,
FS_FLAGHISTORYDONE,
FS_FLAGKERNELDROPPED,
FS_FLAGMOUNT,
FS_FLAGMUSTSCANSUBDIRS,
FS_FLAGROOTCHANGED,
FS_FLAGUNMOUNT,
FS_FLAGUSERDROPPED,
FS_ITEMCHANGEOWNER,
FS_ITEMCREATED,
FS_ITEMFINDERINFOMOD,
FS_ITEMINODEMETAMOD,
FS_ITEMISDIR,
FS_ITEMISFILE,
FS_ITEMISSYMLINK,
FS_ITEMMODIFIED,
FS_ITEMREMOVED,
FS_ITEMRENAMED,
FS_ITEMXATTRMOD,
FileEvent,
Stream,
Observer,
)
2 changes: 1 addition & 1 deletion tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ basepython = python3
skip_install = true
commands =
isort --check-only --diff .
flake8 *.py
flake8 -v tests.py fsevents.py
check-manifest
check-python-versions
deps =
Expand Down

0 comments on commit 3854205

Please sign in to comment.