type/usage-typing rejects a connection usage typed by an allocation def
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 58/100
Research direction
Start by running the supplied alloc.sysml reproduction and inspect the implementation of the type/usage-typing diagnostic. Compare its accepted type categories with the AllocationDefinition specialization described in Systems Library/Allocations.sysml. Done means the allocation-typed connection validates without the reported error and later-tier diagnostics are no longer suppressed.
Written by the indexing model from the issue text.
Description
Version: sysml v0.9.0 (commit ee54ea0), darwin-arm64 release binary
A connection usage typed by an allocation def is rejected with type/usage-typing, but an allocation definition is a connection definition.
Repro
package P {
part def A;
part def B;
allocation def Al { end a : A; end b : B; }
connection c : Al[*];
}
$ sysml -validate -debug alloc.sysml
alloc.sysml:5:5: error: A connection must be typed by connection definitions. [type/usage-typing]
connection c : Al[*];
^~~~~~~~~~~~~~~~~~~~~
sysml: alloc.sysml did not analyse cleanly; no check was made
The same thing happens when the allocation def also specializes Allocations::Allocation, or a user connection def.
Expected
No error. In the SysML v2 abstract syntax, AllocationDefinition specializes ConnectionDefinition, and the normative library says the same: Systems Library/Allocations.sysml, allocation def Allocation :> BinaryConnection. An allocation def therefore satisfies the typing requirement of a ConnectionUsage.
Because the error is in the type tier, it also hides every later-tier diagnostic for the whole model.
- Dominant language
- Go
- Stars
- 24
- Forks
- 5
- Avg merge
- 10h 11m
- Merged PRs (30d)
- 572
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Open-MBEE/OpenSysML
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 48/100
Open-MBEE/OpenSysML#720 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 52/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
Maintainers usually reply within 1 day
-
enhancement
Difficulty 3/5 1-2 days Newbie friendliness 68/100
Open-MBEE/OpenSysML#608 · 2 comments ·
Maintainers usually reply within 1 day
All issues in Open-MBEE/OpenSysML
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
gruntwork-io/boilerplate#329 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
prime-radiant-inc/evener#3291 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Netcracker/qubership-apihub-backend#582 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Maintainers usually reply within 1 day