Skip to content

Commit

Permalink
Merge pull request #12 from fcollonval/small-things
Browse files Browse the repository at this point in the history
A list of small improvements
  • Loading branch information
HaudinFlorence authored Sep 8, 2023
2 parents 22f9f70 + 1a9d565 commit e345cd7
Show file tree
Hide file tree
Showing 76 changed files with 23,980 additions and 23,767 deletions.
154 changes: 97 additions & 57 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: 3.8
- uses: actions/cache@v1
- uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}-${{hashFiles('**/requirements.txt')}}
Expand All @@ -30,63 +30,17 @@ jobs:
cd docs
make html
ui-test:
runs-on: ${{ matrix.os }}
timeout-minutes: 40
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-22.04]
python: ["3.8", "3.9", "3.10", "3.11"]
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install node
uses: actions/setup-node@v3
with:
node-version: '18.x'
- name: Install Python ${{ matrix.python }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python }}
- name: Install Playwright
run: |
npm install -D @playwright/test
npx playwright install
- name: Install jupyterlab and dependencies
run: |
python -m pip install --upgrade pip wheel setuptools
python -m pip install jupyterlab~=4.0
- name: Install and build nbdime
run: |
pip install -e .[test]
npm run build
- name: Run playwright tests
run: |
cd ui-tests
npx playwright test
- name: Upload Playwright Test report
if: always()
uses: actions/upload-artifact@v2
with:
name: ui-tests-${{ matrix.os }}-python${{ matrix.python }}
path: |
ui-tests/playwright-report
js:
name: JavaScript
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: 3.8
- uses: actions/cache@v2
- uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}-${{hashFiles('**/requirements.txt')}}
Expand All @@ -95,18 +49,17 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install jupyterlab~=3.0
npm install -g codecov
- name: Use Node.js 18.x
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: 18.x
- name: Get npm cache directory
id: npm-cache-dir
run: |
echo "::set-output name=dir::$(npm config get cache)"
- uses: actions/cache@v2
- uses: actions/cache@v3
id: npm-cache
with:
path: ${{ steps.npm-cache-dir.outputs.dir }}
Expand All @@ -119,8 +72,7 @@ jobs:
python -m pip install --upgrade --upgrade-strategy=eager -e ".[test]"
npm test
codecov
env:
CI: true
python:
name: Python
runs-on: ${{ matrix.os }}
Expand All @@ -139,13 +91,16 @@ jobs:
- python-version: '3.11'
os: windows-latest

outputs:
wheel: ${{ steps.packaging.outputs.wheel }}

steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- uses: actions/cache@v1
- uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}-${{hashFiles('**/requirements.txt')}}
Expand Down Expand Up @@ -180,3 +135,88 @@ jobs:
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
directory: ${{ env.TEST_TMPDIR }}

- name: Build package
if: startsWith(matrix.os, 'ubuntu') && matrix.python-version == '3.10'
id: packaging
run: |
set -uex
pip install build
python -m build
WHEEL_NAME=$(ls dist/nbdime*.whl | cut -d '/' -f2)
echo "wheel=${WHEEL_NAME}" >> "$GITHUB_OUTPUT"
- name: Upload nbdime package
if: startsWith(matrix.os, 'ubuntu') && matrix.python-version == '3.10'
uses: actions/upload-artifact@v3
with:
name: nbdime-package
path: dist/nbdime*
if-no-files-found: error

ui-test:
needs: python
runs-on: ${{ matrix.os }}
timeout-minutes: 40
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-22.04]

env:
PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/pw-browsers

steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install node
uses: actions/setup-node@v3
with:
node-version: '18.x'
- name: Install Python '3.11'
uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Download nbdime package
uses: actions/download-artifact@v3
with:
name: nbdime-package

- name: Install nbdime from wheel
run: |
python -m pip install "${{ needs.python.outputs.wheel }}"
- name: Install Playwright
working-directory: ui-tests
env:
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
run:
npm install

- name: Set up browser cache
uses: actions/cache@v3
with:
path: |
${{ github.workspace }}/pw-browsers
key: ${{ runner.os }}-${{ hashFiles('ui-tests/package-lock.json') }}

- name: Install browser
working-directory: ui-tests
run: npx playwright install chromium

- name: Run playwright tests
working-directory: ui-tests
run: |
npx playwright test
- name: Upload Playwright Test report
if: always()
uses: actions/upload-artifact@v3
with:
name: ui-tests-${{ matrix.os }}
path: |
ui-tests/playwright-report
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ MANIFEST
.cache
.pytest_cache
.idea
.yarn


.spyderproject
Expand All @@ -30,3 +29,4 @@ nbdime/webapp/static/**
packages/webapp/webpack-stats.json
nbdime/labextension/
ui-tests/playwright-report/
ui-tests/test-results/
1 change: 1 addition & 0 deletions examples/example1
38 changes: 0 additions & 38 deletions examples/example1/center.ipynb

This file was deleted.

39 changes: 0 additions & 39 deletions examples/example1/left.ipynb

This file was deleted.

41 changes: 0 additions & 41 deletions examples/example1/right.ipynb

This file was deleted.

1 change: 1 addition & 0 deletions examples/example2
39 changes: 0 additions & 39 deletions examples/example2/center.ipynb

This file was deleted.

Loading

0 comments on commit e345cd7

Please sign in to comment.