Skip to content

Add GitHub Actions CI pipeline#3

Merged
cscully-allison merged 1 commit into
mainfrom
ci/github-actions-pipeline
Jun 25, 2026
Merged

Add GitHub Actions CI pipeline#3
cscully-allison merged 1 commit into
mainfrom
ci/github-actions-pipeline

Conversation

@cscully-allison

Copy link
Copy Markdown
Owner

Run build + tests on every push to main and every PR across Ubuntu/macOS/Windows x Python 3.10-3.12:

  • npm ci, build esbuild bundles, run mocha
  • pip install + pytest
  • build the wheel, install it into a clean venv, and assert the compiled JS bundle physically shipped (catches packaging regressions)

Supporting fixes surfaced while wiring this up:

  • setup.py: package_data only declared 'guidepost.js', so the wheel shipped without the static/.js bundles the widget loads at runtime. Include static/.js and *.js.map (+ MANIFEST.in for the sdist).
  • .mocharc.js: was empty/untracked, so bare npx mocha discovered no tests; point it at tests/**/*.test.js.
  • tests/data/polaris_sample.csv.gz: committed ~1MB sample (header + first 20k rows of the real POLARIS export) so the LOCATION-parsing regression runs in CI instead of skipping. Large real datasets are gitignored.

Run build + tests on every push to main and every PR across
Ubuntu/macOS/Windows x Python 3.10-3.12:
  - npm ci, build esbuild bundles, run mocha
  - pip install + pytest
  - build the wheel, install it into a clean venv, and assert the
    compiled JS bundle physically shipped (catches packaging regressions)

Supporting fixes surfaced while wiring this up:
  - setup.py: package_data only declared 'guidepost.js', so the wheel
    shipped without the static/*.js bundles the widget loads at runtime.
    Include static/*.js and *.js.map (+ MANIFEST.in for the sdist).
  - .mocharc.js: was empty/untracked, so bare `npx mocha` discovered no
    tests; point it at tests/**/*.test.js.
  - tests/data/polaris_sample.csv.gz: committed ~1MB sample (header +
    first 20k rows of the real POLARIS export) so the LOCATION-parsing
    regression runs in CI instead of skipping. Large real datasets are
    gitignored.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@cscully-allison
cscully-allison merged commit b877777 into main Jun 25, 2026
0 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant