Repository navigation
fix: represent absent and empty creator and suffix explicitly - #1009
marcpaterno wants to merge 2 commits into
Conversation
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
f3fdc9b to
588cd43
Compare
Codecov Report❌ Patch coverage is
@@ Coverage Diff @@
## stack/concept-registry/05-translator-integration #1009 +/- ##
===================================================================================
Coverage ? 89.94%
===================================================================================
Files ? 183
Lines ? 6203
Branches ? 1027
===================================================================================
Hits ? 5579
Misses ? 391
Partials ? 233
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
Clang-Tidy Check ResultsClang-tidy found the following issue(s) on lines changed by this pull request: |
30b106b to
5063d91
Compare
- Model an unqualified creator's plugin and an empty suffix as explicit empty values instead of invalid empty identifiers. - Make a product specification's creator optional; provider construction now requires a present creator. - Reject empty algorithm names, empty plugin components, and an empty configured module_label instead of accepting them silently. - Rename the default source creator from "[Source]" to "phlex_source", which is a valid name under the new parser. - Return borrowed string views from handle creator() and suffix() accessors. - Add tests for parsing, equality/hashing, exact product lookup, provider construction, and handle views.
Represent product suffixes as suffix_t so explicit empty, named, and
omitted selectors are distinct in matching, ordering, and diagnostics.
An omitted suffix matches any product, an empty suffix matches only the
empty product, and a named suffix matches only that name.
- Route the producer catalog, Python wrappers, and FORM labels through
suffix_t text; the persisted FORM layout is unchanged.
- Treat an omitted creator as unrestricted, and require a present creator
when a selector names one.
- Require a type for typed product store lookups, so an untyped "hits"
specification is no longer a wildcard.
- Add tests for selector states, catalog lookup, graph selection, and FORM
suffix persistence, and update existing tests to use empty_string{}.
5063d91 to
74241c2
Compare
explicit empty values instead of invalid empty identifiers.
construction now requires a present creator.
configured module_label instead of accepting them silently.
which is a valid name under the new parser.
accessors.
provider construction, and handle views.
Stack created with GitHub Stacks CLI • Give Feedback 💬