Skip to content

Fail if zero contours found when contours expected #229

Fail if zero contours found when contours expected

Fail if zero contours found when contours expected #229

Workflow file for this run

# Workflow for testing installing, running, and uninstalling FontBakery
name: ⚙️ Install & Run
on:
push:
branches:
- '**'
paths-ignore:
- 'docs/**'
- '**.md'
- '**.txt'
- '!requirements*.txt'
tags-ignore:
- '**'
pull_request:
paths-ignore:
- 'docs/**'
- '**.md'
- '**.txt'
- '!requirements*.txt'
jobs:
install-run:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0 # unshallow fetch for setuptools-scm (otherwise the version is always 0.1.dev1)
- name: Set up Python 3.10
uses: actions/setup-python@v4
with:
python-version: "3.10"
cache: 'pip' # caching pip dependencies
- name: Install FontBakery (no extras)
run: |
python -m pip install --upgrade pip
python -m pip install .
fontbakery -h
fontbakery --version
- name: Run Universal checks
run: >-
fontbakery check-universal
-x win_ascent_and_descent
-x os2_metrics_match_hhea
-x soft_dotted
data/test/source-sans-pro/OTF/SourceSansPro-Regular.otf
data/test/source-sans-pro/OTF/SourceSansPro-Italic.otf;
fontbakery check-universal
-x win_ascent_and_descent
-x os2_metrics_match_hhea
-x fsselection
-x valid_default_instance_nameids
-x soft_dotted
data/test/source-sans-pro/VAR/SourceSansVariable-Roman.ttf
- name: Run Universal check using 'check-profile'
run: >-
fontbakery check-profile fontbakery.profiles.universal
data/test/mada/Mada-Regular.ttf
--verbose
-c required_tables
- name: Run Font Bureau checks
run: >-
fontbakery check-fontbureau
-c ots
-c ytlc_sanity
data/test/fontbureau/ytlcSample.ttf
- name: Run Adobe Fonts checks
run: >-
fontbakery check-adobefonts
data/test/source-sans-pro/OTF/SourceSansPro-Regular.otf
data/test/source-sans-pro/OTF/SourceSansPro-Italic.otf;
fontbakery check-adobefonts
data/test/source-sans-pro/VAR/SourceSansVariable-Roman.ttf
- name: Try running UFO Sources checks
run: >-
fontbakery check-ufo-sources --verbose data/test/test.ufo
|| exit 0
shell: bash
- name: Install `ufo-sources` extra
run: |
python -m pip install '.[ufo-sources]'
- name: Run UFO Sources checks
run: >-
fontbakery check-ufo-sources --verbose data/test/test.ufo;
fontbakery check-ufo-sources -x designspace_has_consistent
"data/test/stupidfont/Stupid Font.designspace"
- name: Install `shaping` extra
run: |
python -m pip install '.[shaping]'
- name: Run Shaping checks
run: >-
fontbakery check-shaping data/test/mada/Mada-Regular.ttf
- name: Install `googlefonts` extra
run: |
python -m pip install '.[googlefonts]'
- name: Run Google Fonts checks
run: >-
fontbakery check-googlefonts
-c canonical_filename
-c vendor_id
-c glyph_coverage
-c name/license
-c hinting_impact
-c unreachable_glyphs
-c contour_count
-c outline_colinear_vectors
data/test/cabin/Cabin-*.ttf
- name: Install `fontwerk` extra
run: |
python -m pip install '.[fontwerk]'
- name: Run Fontwerk checks
run: >-
fontbakery check-fontwerk
-c weight_class_fvar
-c inconsistencies_between_fvar_stat
-c style_linking
-c consistent_axes
-c metadata/parses
-c usweightclass
data/test/source-sans-pro/VAR/SourceSansVariable-Roman.ttf
- name: Install `notofonts` extra
run: |
python -m pip install '.[notofonts]'
- name: Run Noto Fonts checks
run: >-
fontbakery check-notofonts
-c unicode_range_bits
-c noto_trademark
-c noto_vendor
-c alien_codepoints
-c tnum_horizontal_metrics
-c control_chars
-c canonical_filename
data/test/notosanskhudawadi/NotoSansKhudawadi-Regular.ttf
- name: Uninstall FontBakery
run: |
python -m pip uninstall fontbakery -y