Updated changelog for Bump 5.23.0 #2
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ci | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [macos-latest, ubuntu-latest, windows-latest] | |
python-version: ['3.9'] | |
PYTEST_QT_API: [pyqt5, pyside2] | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- uses: conda-incubator/setup-miniconda@v2 | |
with: | |
auto-update-conda: true | |
python-version: ${{ matrix.python-version }} | |
- name: Install system dependencies | |
shell: bash -l {0} | |
run: | | |
if [ "${{ matrix.os }}" = "ubuntu-latest" ]; then | |
sudo apt-get install -y coreutils | |
sudo apt-get install -y xvfb herbstluftwm | |
elif [ "${{ matrix.os }}" = "macos-latest" ]; then | |
brew install coreutils | |
brew install --cask xquartz | |
fi | |
- name: Set up Python | |
shell: bash -l {0} | |
run: | | |
conda install -q -y python=${{ matrix.python-version }} | |
which python | |
python --version | |
pip --version | |
- name: Install dependencies | |
shell: bash -l {0} | |
run: | | |
if [ "${{ matrix.PYTEST_QT_API }}" = "pyside2" ]; then | |
conda install -q -y pyside2 -c conda-forge | |
else | |
conda install -q -y pyqt=5 | |
fi | |
pip install pytest 'pytest-qt<4' | |
- name: Install main | |
shell: bash -l {0} | |
run: | | |
pip install . | |
- name: Lint with flake8 | |
shell: bash -l {0} | |
if: matrix.os != 'windows-latest' | |
run: | | |
pip install hacking==4.1.0 | |
flake8 . | |
- name: Black | |
shell: bash -l {0} | |
if: matrix.os != 'windows-latest' | |
run: | | |
pip install black==22.1.0 | |
black --line-length 79 --check --diff labelme/ | |
- name: Test with pytest | |
shell: bash -l {0} | |
if: matrix.os != 'windows-latest' && !(matrix.os == 'macos-latest' && matrix.PYTEST_QT_API == 'pyside2') | |
env: | |
PYTEST_QT_API: ${{ matrix.PYTEST_QT_API }} | |
run: | | |
# open virtual display | |
if [ "${{ matrix.os }}" = "ubuntu-latest" ]; then | |
export DISPLAY=:99.0 | |
/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1920x1200x24 -ac +extension GLX +render -noreset | |
(herbstluftwm )& | |
else | |
(sudo Xvfb :99 -ac -screen 0 1024x768x8 )& | |
fi | |
# run test | |
MPLBACKEND='agg' pytest tests/ | |
- name: Run examples | |
shell: bash -l {0} | |
if: matrix.os != 'windows-latest' | |
env: | |
MPLBACKEND: agg | |
run: | | |
labelme --help | |
labelme --version | |
(cd examples/primitives && labelme_json_to_dataset primitives.json && rm -rf primitives_json) | |
(cd examples/tutorial && rm -rf apc2016_obj3_json && labelme_json_to_dataset apc2016_obj3.json && python load_label_png.py && git checkout -- .) | |
(cd examples/semantic_segmentation && rm -rf data_dataset_voc && ./labelme2voc.py data_annotated data_dataset_voc --labels labels.txt && git checkout -- .) | |
(cd examples/instance_segmentation && rm -rf data_dataset_voc && ./labelme2voc.py data_annotated data_dataset_voc --labels labels.txt && git checkout -- .) | |
(cd examples/video_annotation && rm -rf data_dataset_voc && ./labelme2voc.py data_annotated data_dataset_voc --labels labels.txt && git checkout -- .) | |
pip install lxml # for bbox_detection/labelme2voc.py | |
(cd examples/bbox_detection && rm -rf data_dataset_voc && ./labelme2voc.py data_annotated data_dataset_voc --labels labels.txt && git checkout -- .) | |
pip install cython && pip install pycocotools # for instance_segmentation/labelme2coco.py | |
(cd examples/instance_segmentation && rm -rf data_dataset_coco && ./labelme2coco.py data_annotated data_dataset_coco --labels labels.txt && git checkout -- .) | |
- name: Run pyinstaller | |
shell: bash -l {0} | |
if: matrix.PYTEST_QT_API == 'pyqt5' | |
run: | | |
# Build the standalone executable | |
pip install PyQt5 -I --use-feature=2020-resolver # https://stackoverflow.com/a/68784578 | |
pip install pyinstaller | |
pyinstaller labelme.spec | |
dist/labelme --version |