Skip to content

feat: add opt-in live Overpass tests, LiveTests workflow, query fixes - #8

Merged
joshday merged 4 commits into
mainfrom
template-sync-2026-09-03
Sep 8, 2026
Merged

joshday merged 4 commits into
mainfrom
template-sync-2026-09-03

Conversation

@joshday

@joshday joshday commented Sep 8, 2026

Copy link
Copy Markdown
Member

Summary

  • query merges [out:json] and the bbox keyword into an existing settings statement instead of prepending a second one, sends a URL-encoded form body (Overpass rejects multipart with HTTP 400), and identifies the client with a User-Agent header as the public instance's usage policy asks.
  • test/test_service.jl runs live queries against the public Overpass API: inline bbox, bbox keyword with and without an existing settings block, OQL statements, ways and relations with out geom, and the HTTP 400 path for an invalid query. It retries HTTP 429/504 after 30 s and 60 s. OVERPASS_ENDPOINT selects a mirror.
  • Live tests are opt-in via OVERPASS_LIVE_TESTS=true. The main CI matrix stays offline; the new LiveTests workflow runs them on a single ubuntu-latest job with a per-ref concurrency group.
  • The query(::QLStatement) docstring no longer lists out=:count, which the parser does not handle.
  • TagBot.yml drops its workflow-level permissions block to match JuliaPackageTemplate.
  • Locally the live suite passed only against the VK Maps mirror; overpass-api.de was refusing connections from the development IP after an earlier request burst. The LiveTests run on this PR covers the default endpoint.
  • The branch also carries the template-sync and docs-migration commits already merged to main in template-sync: apply JuliaPackageTemplate updates (TEMPLATE_SHA=9ec6e46) #7. They appear in the PR diff against the merge base but add nothing on merge, and git merge-tree reports no conflicts.

https://claude.ai/code/session_01CfmYePXVFLWqxJisNJq39A

…ws with template

- _quarto.yml: point at docs/assets/* and docs/pages/*, adopt template theme
  (flatly + theme.scss, navbar logo), project-level engines: ['julia']
- Remove superseded docs/api.qmd, coverage.qmd, styles.css, _version-selector.html
- docs/.gitignore: ignore _site/, pages/coverage/, pages/lcov.info
- Docs.yml: template version (tag-push trigger, version/base-path injection,
  versions.json-based stable placeholder) with local precompile and render-retry kept
- DocsBackfill.yml: template version (pages/coverage.qmd placeholder, version injection)
- CLAUDE.md: drop stale open-cards note; API page now uses collapsible cards
- query: merge [out:json] and bbox into an existing settings statement,
  send a URL-encoded form body, and identify the client via User-Agent
- test/test_service.jl: live queries against the public service, enabled
  by OVERPASS_LIVE_TESTS=true, 30 s retry on HTTP 429/504, mirror via
  OVERPASS_ENDPOINT
- LiveTests workflow runs the live tests on a single ubuntu job; the main
  CI matrix stays offline
- Drop :count from the query docstring; the parser has no case for count
  elements

Claude-Session: https://claude.ai/code/session_01CfmYePXVFLWqxJisNJq39A
JuliaPackageTemplate's TagBot.yml declares no workflow-level permissions;
TagBot relies on the repository default token permissions instead.

Claude-Session: https://claude.ai/code/session_01CfmYePXVFLWqxJisNJq39A
@joshday joshday changed the title Add opt-in live Overpass API tests and a separate LiveTests workflow feat: add opt-in live Overpass tests, LiveTests workflow, query fixes Sep 8, 2026
@joshday
joshday merged commit cda7334 into main Sep 8, 2026
4 of 5 checks passed
@joshday
joshday deleted the template-sync-2026-09-03 branch September 8, 2026 15:18
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