Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
119 commits
Select commit Hold shift + click to select a range
9379fcf
Auto-publish Python packages to PyPI on main branch version change
vcschapp Jan 30, 2026
f395107
Fix typo in building feature docs (very minor)
vcschapp Feb 12, 2026
08d012f
Widen transportation types to match data
sethfitz Feb 17, 2026
a921cb5
Widen cartography and score types
sethfitz Feb 17, 2026
2887482
Document linear referencing concept for transportation (#424)
brad-richardson Feb 18, 2026
269f623
Fix mypy errors in test subdirectories, check recursively
sethfitz Feb 11, 2026
8d8ebe6
fix(core): switch to relative import
sethfitz Jan 28, 2026
31a726f
fix(core): fix __name__ reference
sethfitz Jan 28, 2026
961ec7a
chore: add install make target
sethfitz Jan 28, 2026
54f9376
Add cli tests to workspace pythonpath
sethfitz Feb 19, 2026
70de652
Declare overture-schema-system dependency
sethfitz Feb 19, 2026
89c4904
[CHORE] Add maintainers, keywords, and URLs to pyproject
lowlydba Feb 27, 2026
0488831
Delete .github/workflows/copy-pr-docs-to-staging.yaml (#453)
jenningsanderson Feb 27, 2026
f7593b5
Delete .github/workflows/publish-docs-gh-pages.yaml (#455)
jenningsanderson Feb 27, 2026
163b463
fix: remove keywords, change maintainers per feedback
lowlydba Mar 2, 2026
94ec1b7
Update pyproject.toml
lowlydba Mar 2, 2026
eaa80f1
Merge pull request #454 from OvertureMaps/lowlydba-258-add-pypi-meta
lowlydba Mar 3, 2026
4c6a9ee
Create dco.yml
lowlydba Mar 3, 2026
d903525
Remove pytest-subtests, upgrade lockfile
sethfitz Feb 11, 2026
b1d60c3
Update divisions constraints to match data and fix bug
Rachmanin0xFF Mar 4, 2026
c4c0ebe
Speed up make check ~5x (#459)
sethfitz Mar 9, 2026
c357a50
Treat None as absent in model constraint validation (#457)
sethfitz Mar 9, 2026
0ca959b
Reparent 8 string constraints under PatternConstraint
sethfitz Mar 4, 2026
957b5e1
fix: StrippedConstraint JSON schema pattern accepts empty string
sethfitz Mar 4, 2026
6f6340b
Strengthen weak assertions in string constraint tests
sethfitz Mar 4, 2026
75e15ad
Parametrize PatternConstraint subclass tests
sethfitz Mar 4, 2026
709b6c2
Fix missing return in BBox dict validator
sethfitz Mar 10, 2026
7935320
Attach docstrings to NewTypes at runtime
sethfitz Feb 11, 2026
84253e3
Quiet pytest output for dev workflow
sethfitz Feb 10, 2026
d16ed63
fix(core): add missing f-prefix to string continuation lines
sethfitz Feb 25, 2026
ad6c7c7
fix(system): use dict instead of Mapping in test util type hints
sethfitz Feb 25, 2026
343c425
fix(cli): discover discriminator fields at runtime
sethfitz Feb 25, 2026
8aaca8f
refactor(cli): tighten type analysis contracts
sethfitz Feb 25, 2026
b4262bb
refactor(core,cli): rename ModelKey.class_name to entry_point
sethfitz Feb 25, 2026
895e104
feat(codegen): add overture-schema-codegen package
sethfitz Feb 25, 2026
3c77ded
feat(codegen): add type analysis, specs, and type registry
sethfitz Feb 25, 2026
2ed37b4
feat(codegen): add extraction modules
sethfitz Feb 25, 2026
e152759
feat(codegen): add constraint description modules
sethfitz Feb 25, 2026
07c30d9
feat(codegen): add output layout modules
sethfitz Feb 25, 2026
cc00e3d
feat(codegen): add example data to theme pyproject.toml files
sethfitz Feb 25, 2026
950a4f1
feat(codegen): add markdown renderers
sethfitz Feb 25, 2026
6313ee9
feat(codegen): add CLI and integration tests
sethfitz Feb 25, 2026
ad0458b
docs(codegen): add design doc, walkthrough, and README
sethfitz Feb 25, 2026
d7f7f73
fix(codegen): store all Literal args in TypeInfo
sethfitz Feb 28, 2026
a12ee6f
fix(codegen): track nested list depth in TypeInfo
sethfitz Mar 2, 2026
32481e6
fix(codegen): resolve type name collisions across themes
sethfitz Mar 3, 2026
d38688b
fix: improve constraint description rendering
sethfitz Mar 3, 2026
30d2885
feat(codegen): generate pages and links for Pydantic built-in types
sethfitz Mar 3, 2026
714c5d2
fix(codegen): include bbox in examples
sethfitz Mar 4, 2026
2b2ad15
fix(codegen): stabilize Used By sort order
sethfitz Mar 4, 2026
3615d50
fix(codegen): add visual break before constraints
sethfitz Mar 4, 2026
795e531
fix(codegen): render list[NewType] as list<NewType>
sethfitz Mar 4, 2026
8cb9c16
fix(codegen): include ellipsis in truncation limit
sethfitz Mar 4, 2026
7c14fea
fix(codegen): use repr() for list items in examples
sethfitz Mar 4, 2026
3a2a087
fix(codegen): expand union member trees before collecting types
sethfitz Mar 4, 2026
ffa420b
fix(codegen): treat dict-typed fields as leaf values in examples
sethfitz Mar 5, 2026
52a9a95
refactor(codegen): reorganize flat layout into sub-packages
sethfitz Mar 5, 2026
f2aea81
feat(codegen): rewrite example pipeline with model instances
sethfitz Mar 10, 2026
a8cfb2f
style: single backticks in docstrings
sethfitz Mar 10, 2026
4daa0e8
refactor: rename primitive → numeric in extraction layer
sethfitz Mar 10, 2026
0cbf205
refactor: replace runtime asserts with proper checks
sethfitz Mar 10, 2026
c19b6b1
Add codegen package to package version level calculation
vcschapp Mar 11, 2026
7162a0d
Convert StrippedConstraint to PatternConstraint subclass
sethfitz Mar 11, 2026
c42df68
fix: remediate security issues in workflows
lowlydba Mar 11, 2026
d2ec79d
chore: stub CODEOWNERS
lowlydba Mar 11, 2026
523774b
chore: update GHA versions
lowlydba Mar 11, 2026
73e6fce
chore: enable dependabot for GHA
lowlydba Mar 11, 2026
f5fc07f
Update test-schema.yaml
lowlydba Mar 11, 2026
39a24f2
Set up Python after checkout; minor YAML formatting
lowlydba Mar 11, 2026
5f8baee
test touch - whitespace
lowlydba Mar 12, 2026
b8664f2
Fix typos and missing values in base theme's `__init__.py` 🐝
vcschapp Mar 11, 2026
ac45fe7
Organize divisions pkg, add missing relationships, tidy and add docs
vcschapp Mar 11, 2026
e71c186
initial commit
lowlydba Mar 12, 2026
ee7ab97
Revert "initial commit"
lowlydba Mar 13, 2026
ac43e07
initial commit
lowlydba Mar 12, 2026
1e333c4
Parameterize schema docs action & preview
lowlydba Mar 13, 2026
d117b0b
Run 'uv sync' for all packages; add preview ref
lowlydba Mar 13, 2026
3f61bc1
Update action.yml
lowlydba Mar 13, 2026
d81f699
Update action.yml
lowlydba Mar 13, 2026
8d9daf8
Update action.yml
lowlydba Mar 13, 2026
08307bb
Update action.yml
lowlydba Mar 13, 2026
ef5ce78
Update action.yml
lowlydba Mar 13, 2026
637ec66
Add skip-checkout and rename schema path input
lowlydba Mar 13, 2026
0f49862
Rename action input to schema-path
lowlydba Mar 13, 2026
fe74e97
Update schema-pr-preview.yml
lowlydba Mar 13, 2026
c049363
Update schema-pr-preview.yml
lowlydba Mar 13, 2026
e370a39
Update schema-pr-preview.yml
lowlydba Mar 13, 2026
c3f2d44
Update schema-pr-preview.yml
lowlydba Mar 13, 2026
5025169
fix: yml typo
lowlydba Mar 13, 2026
a5cab35
Update schema-pr-preview.yml
lowlydba Mar 13, 2026
cbcd20c
Update schema-pr-preview.yml
lowlydba Mar 16, 2026
0a2be63
feat: warn if fork PR before building
lowlydba Mar 16, 2026
55478b6
Update schema-pr-preview.yml
lowlydba Mar 16, 2026
d009a1e
Update schema-pr-preview.yml
lowlydba Mar 16, 2026
1096de4
Delete action.yml
lowlydba Mar 16, 2026
b7d946d
fix: copilot suggestions
lowlydba Mar 16, 2026
4d89e35
Merge branch 'dev' into 467-devops-remediate-github-workflow-security…
lowlydba Mar 17, 2026
5f146e1
Merge pull request #468 from OvertureMaps/467-devops-remediate-github…
lowlydba Mar 21, 2026
f1d8bab
Merge branch 'dev' into jmccall-schema-docs-publish
lowlydba Mar 21, 2026
b6a5ad2
[CHORE](deps)(deps): Bump astral-sh/setup-uv from 4 to 7
dependabot[bot] Mar 21, 2026
a77f124
[CHORE](deps)(deps): Bump actions/checkout from 4 to 6
dependabot[bot] Mar 21, 2026
73e7d15
[CHORE](deps)(deps): Bump actions/setup-python from 5 to 6
dependabot[bot] Mar 21, 2026
37020b4
[CHORE](deps)(deps): Bump aws-actions/configure-aws-credentials
dependabot[bot] Mar 21, 2026
cd37b6e
Merge pull request #475 from OvertureMaps/dependabot/github_actions/a…
lowlydba Mar 23, 2026
bb500d5
Merge pull request #476 from OvertureMaps/dependabot/github_actions/a…
lowlydba Mar 23, 2026
9d0afac
Merge pull request #477 from OvertureMaps/dependabot/github_actions/a…
lowlydba Mar 23, 2026
7ad2e38
chore: use sha's for sec
lowlydba Mar 23, 2026
0771274
Merge pull request #474 from OvertureMaps/dependabot/github_actions/a…
lowlydba Mar 23, 2026
5d6e8d9
Merge branch 'dev' into jmccall-schema-docs-publish
lowlydba Mar 23, 2026
97e6f87
Update schema-pr-preview.yml
lowlydba Mar 23, 2026
839b9b2
chore: harden
lowlydba Mar 23, 2026
8fe999b
add concurrency
lowlydba Mar 23, 2026
ed9c416
fix(cli): PLC0415 (import-outside-top-level) violations
sethfitz Mar 22, 2026
55b4e0e
Merge pull request #473 from OvertureMaps/jmccall-schema-docs-publish
lowlydba Mar 25, 2026
286147f
[CHORE](deps)(deps): Bump actions/download-artifact from 7 to 8
dependabot[bot] Mar 25, 2026
861bb7f
[CHORE](deps)(deps): Bump actions/github-script from 6 to 8
dependabot[bot] Mar 25, 2026
42b7f78
Merge pull request #484 from OvertureMaps/dependabot/github_actions/a…
lowlydba Mar 26, 2026
cacbc06
Merge pull request #483 from OvertureMaps/dependabot/github_actions/a…
lowlydba Mar 26, 2026
ce6584f
chore: configure dependency cooldown
sethfitz Mar 31, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/dco.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
require:
members: false
15 changes: 15 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
version: 2
updates:

# Maintain GitHub Actions dependencies
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 5
labels:
- "bot"
commit-message:
prefix: "[CHORE](deps)"
include: "scope"
11 changes: 4 additions & 7 deletions .github/workflows/check-python-code.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: Check Python package code

on:
pull_request_target:
pull_request:
paths:
- 'packages/**'
- 'pyproject.toml'
Expand All @@ -16,20 +16,17 @@ on:
jobs:
check:
runs-on: ubuntu-latest
if: github.event.pull_request.head.repo.full_name == github.repository

steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
- uses: actions/checkout@v6

- name: Install uv
uses: astral-sh/setup-uv@v4
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7.6.0
with:
version: "latest"

- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: "3.10"

Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/check-python-package-versions.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: Check Python package version numbers

on:
pull_request_target:
pull_request:
paths:
- '**/pyproject.toml'
- 'packages/**/__about__.py'
Expand All @@ -12,7 +12,6 @@ permissions:

jobs:
check:
if: github.event.pull_request.head.repo.full_name == github.repository
uses: ./.github/workflows/reusable-check-python-package-versions.yaml
with:
before_commit: ${{ github.event.pull_request.base.sha }}
Expand Down
66 changes: 0 additions & 66 deletions .github/workflows/copy-latest-docs-to-staging.yaml

This file was deleted.

65 changes: 0 additions & 65 deletions .github/workflows/copy-pr-docs-to-staging.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/enforce-change-type-label.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Require exactly one change type label
uses: actions/github-script@v6
uses: actions/github-script@v8
with:
script: |
const allChangeTypeLabels = new Set([
Expand Down
25 changes: 0 additions & 25 deletions .github/workflows/publish-docs-gh-pages.yaml

This file was deleted.

98 changes: 98 additions & 0 deletions .github/workflows/publish-python-packages.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
name: Publish Python packages to PyPI

on:
push:
branches: [main]
paths:
- '**/pyproject.toml'
- 'packages/**/__about__.py'
workflow_dispatch:
inputs:
aws_iam_role_name:
description: The name of the IAM role to assume for accessing CodeArtifact
type: string
required: false
default: GithubActions_Schema_CodeArtifact_Publish
domain:
description: The CodeArtifact domain name
type: string
required: false
default: overture-pypi
repository:
description: The CodeArtifact repository name
type: string
required: false
default: overture

permissions:
id-token: write
contents: read

jobs:
check:
if: github.event.repository.full_name == github.repository
uses: ./.github/workflows/reusable-check-python-package-versions.yaml
with:
before_commit: ${{ github.event.before }}
after_commit: ${{ github.event.after }}

publish:
needs: [check]
if: github.event.repository.full_name == github.repository && needs.check.outputs.num_changed_packages > 0
runs-on: ubuntu-latest
strategy:
matrix:
include: ${{ fromJson(needs.check.outputs.changed_packages) }}
steps:
- name: Install uv
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7.6.0
with:
version: latest

- name: Check out code
uses: actions/checkout@v6

- name: Sync code to make packages visible to Python
run: uv sync --all-packages

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v6
with:
aws-region: us-west-2
role-to-assume: arn:aws:iam::505071440022:role/GithubActions_Schema_CodeArtifact_Publish
role-session-name: GitHubActions_${{github.job}}_${{github.run_id}}

- name: Get CodeArtifact publish URL
id: get-code-artifact-params
run: |
token=$(./.github/workflows/scripts/code-artifact.sh token \
505071440022 us-west-2 overture-pypi)
echo "::add-mask::${token}"
echo "token=${token}" >> $GITHUB_OUTPUT
publish_url=$(./.github/workflows/scripts/code-artifact.sh publish-url \
505071440022 us-west-2 overture-pypi overture)
echo "publish_url=${publish_url}" >> $GITHUB_OUTPUT

- name: Publish package ${{ matrix.package }} version ${{ matrix.after }} to PyPI
env:
CA_TOKEN: ${{ steps.get-code-artifact-params.outputs.token }}
CA_PUBLISH_URL: ${{ steps.get-code-artifact-params.outputs.publish_url }}
run: |
package="${{ matrix.package }}"
before="${{ matrix.before }}"
after="${{ matrix.after }}"
printf 'Publishing package %s version %s to PyPI (previous version %s)...\n' "$package" "$after" "$before"
uv build --package "$package"
wheel="dist/${package//-/_}-${after}-py3-none-any.whl"
if [ ! -f "$wheel" ]; then
echo " Wheel file [$wheel] not found. Aborting!"
exit 1
fi
tarball="dist/${package//-/_}-${after}.tar.gz"
if [ ! -f "$tarball" ]; then
echo " Source tarball file [$tarball] not found. Aborting!"
exit 1
fi
uv publish "$wheel" "$tarball" \
-t "${CA_TOKEN}" \
--publish-url "${CA_PUBLISH_URL}"
Loading
Loading