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. |
f3fdc9b to
588cd43
Compare
Codecov Report❌ Patch coverage is
@@ Coverage Diff @@
## stack/concept-registry/05-translator-integration #1009 +/- ##
====================================================================================
+ Coverage 89.10% 89.30% +0.20%
====================================================================================
Files 195 195
Lines 7940 7960 +20
Branches 1018 1029 +11
====================================================================================
+ Hits 7075 7109 +34
+ Misses 635 622 -13
+ Partials 230 229 -1
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 3 files with indirect coverage changes 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
74241c2 to
6d978a5
Compare
6d978a5 to
8a99bab
Compare
297c4e4 to
4357201
Compare
4357201 to
95eb9d8
Compare
e39ff08 to
3689f8c
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{}.
3689f8c to
b7f6e50
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 💬