Some checks failed
nigig-map / test (push) Has been cancelled
- Increased MAX_ELEMENTS_PER_TILE from 100,000 to 250,000 to handle Kenya MBTiles that contain 101k-140k elements per tile - Updated security limit test to use valid JSON with 260k elements - Added .forgejo/workflows/nigig-map.yml CI workflow to catch map-related regressions in tile parsing, style compilation, and tessellation Fixes runtime errors: - 'failed to triangulate local mbtile: too many elements (N > 100000)' - Tiles with 101k-140k elements now process successfully
65 lines
1.8 KiB
YAML
65 lines
1.8 KiB
YAML
name: nigig-map
|
|
|
|
# CI workflow for the map rendering crate.
|
|
#
|
|
# Enforces:
|
|
# 1. The map crate compiles (lib + tests).
|
|
# 2. The test suite is green.
|
|
# 3. No regressions in tile parsing, style compilation, or tessellation.
|
|
#
|
|
# This workflow was added to catch runtime errors like:
|
|
# - 'too many elements (N > 100000)' from overpass_parser
|
|
# - 'type mismatch for property style_light: expected MapThemeStyle'
|
|
# - triangulation failures in tile_disk
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- 'crates/apps/map/**'
|
|
- 'Cargo.lock'
|
|
- 'Cargo.toml'
|
|
- 'rust-toolchain.toml'
|
|
- '.forgejo/workflows/nigig-map.yml'
|
|
pull_request:
|
|
paths:
|
|
- 'crates/apps/map/**'
|
|
- 'Cargo.lock'
|
|
- 'Cargo.toml'
|
|
- 'rust-toolchain.toml'
|
|
- '.forgejo/workflows/nigig-map.yml'
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install Rust toolchain
|
|
uses: actions/setup-rust@v1
|
|
with:
|
|
toolchain: stable
|
|
components: rustfmt, clippy
|
|
|
|
- name: Cache cargo registry
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: |
|
|
~/.cargo/registry
|
|
~/.cargo/git
|
|
target
|
|
key: ${{ runner.os }}-cargo-map-${{ hashFiles('**/Cargo.lock') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-cargo-map-
|
|
|
|
- name: Check formatting
|
|
run: cargo fmt --manifest-path crates/apps/map/Cargo.toml -- --check
|
|
|
|
- name: Build map crate
|
|
run: cargo build --manifest-path crates/apps/map/Cargo.toml
|
|
|
|
- name: Run map tests
|
|
run: cargo test --manifest-path crates/apps/map/Cargo.toml
|
|
|
|
- name: Clippy map crate
|
|
run: cargo clippy --manifest-path crates/apps/map/Cargo.toml -- -D warnings
|