diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml new file mode 100644 index 0000000..f0c09bf --- /dev/null +++ b/.github/workflows/main.yaml @@ -0,0 +1,73 @@ +name: Main CI + +on: [push] + +jobs: + lint: + runs-on: ubuntu-latest + timeout-minutes: 10 + strategy: + matrix: + python-version: + - '3.12' + steps: + - uses: actions/checkout@v4 + - name: Use Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + cache: 'pip' + - name: Install testing dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements-test.txt + - name: Lint + # FIXME + continue-on-error: true + run: | + flake8 lib/pyld tests --count --show-source --statistics + env: + LOADER: ${{ matrix.loader }} + test: + runs-on: ubuntu-latest + needs: [lint] + timeout-minutes: 10 + strategy: + matrix: + python-version: + - '3.8' + - '3.9' + - '3.10' + - '3.11' + - '3.12' + - 'pypy3.10' + loader: [requests, aiohttp] + steps: + - uses: actions/checkout@v4 + - name: Use Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + cache: 'pip' + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + - name: Install testing dependencies + run: | + pip install -r requirements-test.txt + - name: Fetch test suites + run: | + git clone --depth 1 https://github.com/w3c/json-ld-api.git _json-ld-api + git clone --depth 1 https://github.com/w3c/json-ld-framing.git _json-ld-framing + git clone --depth 1 https://github.com/json-ld/normalization.git _normalization + - name: Test with Python=${{ matrix.python-version }} Loader=${{ matrix.loader }} + run: | + python tests/runtests.py ./_json-ld-api/tests -l ${{ matrix.loader }} + python tests/runtests.py ./_json-ld-framing/tests -l ${{ matrix.loader }} + python tests/runtests.py ./_normalization/tests -l ${{ matrix.loader }} + env: + LOADER: ${{ matrix.loader }} + #coverage: + # needs: [test] + # FIXME diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 9e92aa1..0000000 --- a/.travis.yml +++ /dev/null @@ -1,42 +0,0 @@ -dist: xenial -language: python -cache: pip -python: - - "3.4" - - "3.5" - - "3.6" - - "3.7" - - "3.8" - - "pypy3" -sudo: false - -# Define document loaders -env: - - LOADER=requests - - LOADER=aiohttp - -matrix: - exclude: - - python: "3.4" - env: LOADER=aiohttp - allow_failures: - - python: "3.4" - - python: "3.5" - -install: - - pip install -r requirements.txt - - git clone --depth 1 https://github.com/w3c/json-ld-api.git _json-ld-api - - git clone --depth 1 https://github.com/w3c/json-ld-framing.git _json-ld-framing - - git clone --depth 1 https://github.com/json-ld/normalization.git _normalization - -# Download test suite and run tests... submodule? meta testing project with -# all of the reference implementations? -script: - - python tests/runtests.py ./_json-ld-api/tests -l $LOADER - - python tests/runtests.py ./_json-ld-framing/tests -l $LOADER - - python tests/runtests.py ./_normalization/tests -l $LOADER - -notifications: - email: - on_success: change - on_failure: change diff --git a/CHANGELOG.md b/CHANGELOG.md index 02113ea..251dc9f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # pyld ChangeLog +## 3.0.0 - 2023-xx-xx + +### Changed +- **BREAKING**: Require supported Python version >= 3.8. + ## 2.0.3 - 2020-08-06 ### Fixed diff --git a/README.rst b/README.rst index f1b1a50..978d977 100644 --- a/README.rst +++ b/README.rst @@ -59,7 +59,7 @@ yet supported. Requirements ------------ -- Python_ (3.6 or later) +- Python_ (3.8 or later) - Requests_ (optional) - aiohttp_ (optional, Python 3.5 or later) diff --git a/requirements-test.txt b/requirements-test.txt new file mode 100644 index 0000000..3930480 --- /dev/null +++ b/requirements-test.txt @@ -0,0 +1 @@ +flake8