Skip to content

Fail CI when the FIXP schema enters the published crate (#203) - #204

Merged
joaquinbejar merged 1 commit into
mainfrom
issue-203-fixp-spec-guard
Oct 22, 2026
Merged

joaquinbejar merged 1 commit into
mainfrom
issue-203-fixp-spec-guard

Conversation

@joaquinbejar

Copy link
Copy Markdown
Owner

Summary

ironfix-fixp/spec/SBEschemaForFIXP.xml is CC BY-ND 4.0 and must never ship in the MIT ironfix-fixp crate. It is already excluded from the package; this PR makes CI enforce that, and writes down the rule for the schema.

Changes

  • New make check-package-fixp target:

    • runs cargo package -p ironfix-fixp --list;
    • fails if any path under spec/, an SBEschema file or LICENSE-FIXP would be published.
  • lint.yml runs the new target.

  • ironfix-fixp/spec/README.md (new "Rules for this directory" section) and the crate docs state the rule:

    • the schema is never edited;
    • it is never used to generate shipped code;
    • it is only read by tests;
    • it is never published.

    The codec stays hand-written.

  • The local agent rules (CLAUDE.md, which is not committed) carry the same rule, so the committed crate docs and spec/README.md are the repository record.

Testing

  • make check-package-fixp passes on this branch.
  • With "spec" removed from exclude in ironfix-fixp/Cargo.toml (not committed), the target fails and lists spec/LICENSE-FIXP, spec/README.md and spec/SBEschemaForFIXP.xml.
  • cargo clippy -p ironfix-fixp --all-targets -D warnings, RUSTDOCFLAGS=-D warnings cargo doc -p ironfix-fixp, make check-spanish and cargo test -p ironfix-fixp (176 + 2 + 11) all clean.

No API change.

Closes #203

@joaquinbejar joaquinbejar added documentation Improvements or additions to documentation ci Actions, Makefile, toolchain, coverage, semver, publishing labels Oct 22, 2026
@joaquinbejar joaquinbejar self-assigned this Oct 22, 2026
@joaquinbejar
joaquinbejar merged commit 169e2d0 into main Oct 22, 2026
35 checks passed
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci Actions, Makefile, toolchain, coverage, semver, publishing documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Keep the CC BY-ND FIXP schema out of published crates (fixp)

2 participants