Skip to content

refactor: migrate to linkml-copier#27

Open
clevinson wants to merge 9 commits into
mainfrom
migrate-to-copier
Open

refactor: migrate to linkml-copier#27
clevinson wants to merge 9 commits into
mainfrom
migrate-to-copier

Conversation

@clevinson
Copy link
Copy Markdown
Collaborator

No description provided.

- Replace Poetry with uv, hatchling build backend
- Replace Makefile with justfile (+ project.justfile for customizations)
- Port gen-validation-schema (include_range_class_descendants=True) to project.justfile
- Port dynamic enum pipeline (NERC C16/L06, QUDT) as fetch-* recipes
- Port inject-version hook and gen-all wrapper
- Pin linkml==1.8.7 / linkml-runtime==1.8.3 to preserve current generator output
- Restore original config.yaml (includes: [jsonschema, python])
- Keep runtime deps: oaklib (+ schemasheets in dev)
- Copy src/docs/files/* into docs/ (nav rewiring still TODO)
- Delete old Makefile and project.Makefile
- Update mkdocs.yml nav to reference elements/ for generated class pages
- Restore extra_css / extra_javascript assets
- Rewrite ../ClassName.md links in custom docs to ../elements/ClassName.md
- Rewrite top-level ClassName.md links in metadata-format.md and vocabularies.md
- Fix ../model.md → ../elements/Model.md in projects-experiments/index.md
- Pin .python-version and .mise.toml to Python 3.12
- Justfile: lint the entrypoint schema file, not the directory
- Hand-written pages live in src/docs/files/ (tracked in git)
- docs/ is entirely gitignored, rebuilt on every `just gen-doc`
- gen-doc writes flat into docs/, index.md renamed to OAEDataSchema.md,
  then src/docs/files/* is copied over (preserves hand-written home + CNAME)
- Post-gen-doc sed rewrites section.md → section/index.md for custom explainers
- Preserves existing URLs: schema.oaedata.org/Project/, /OAEDataSchema/, etc.
- README: replace make/poetry commands with just/uv equivalents, reference linkml-project-copier
- CI: limit Python test matrix to 3.9-3.12 (matches requires-python <3.13)
- .copier-answers.yml: fix placeholder project_description
- Exclude mkdocs.yml from check-yaml (!!python/name tag)
- Exclude generated datamodel from ruff/ruff-format
- Exclude downloaded ontologies/ from typos and codespell
- Exclude mkdocs.yml, dynamic_enums_expanded.yaml, examples/ from yamllint
- Disable yamllint line-length rule (schema descriptions naturally long)
- Fix extra blank lines in calibration.yaml and variable.yaml
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