Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MCP-0015: Language Version #1726

Open
modelica-trac-importer opened this issue Nov 4, 2018 · 33 comments
Open

MCP-0015: Language Version #1726

modelica-trac-importer opened this issue Nov 4, 2018 · 33 comments
Assignees
Labels
enhancement New feature or request MCP Generic MCP label (prefer specific MCP label for grouping of issues belonging to the same MCP)

Comments

@modelica-trac-importer
Copy link
Collaborator

modelica-trac-importer commented Nov 4, 2018

Modified by dietmarw on 9 Jun 2015 14:50 UTC
This is the ticket for "MPC-0015: Language Version":

During a recent design meeting, the topic of semantic version numbers was discussed. A proposal was discussed to leverage the notions of compatibility from the semantic version specification. However, it was recognized that if we did this, it would then be important for tools to know that these notions of compatibility were in effect. Initially, there was a discussion of adding a special annotation to indicate that semantic versions were being used. But it was recognized that if the tool knew what version of the language applied to the library, then this would be a more general solution since it could address other questions about language syntax and semantics.

Much of this was discussed in Ticket #643. This MCP is an attempt to generate a concrete proposal around the ideas discussed in that ticket.

Document location


Modified by dietmarw on 9 Jun 2015 13:45 UTC
This is the ticket for "MPC-0015: Language Version":

During a recent design meeting, the topic of semantic version numbers was discussed. A proposal was discussed to leverage the notions of compatibility from the semantic version specification. However, it was recognized that if we did this, it would then be important for tools to know that these notions of compatibility were in effect. Initially, there was a discussion of adding a special annotation to indicate that semantic versions were being used. But it was recognized that if the tool knew what version of the language applied to the library, then this would be a more general solution since it could address other questions about language syntax and semantics.

Much of this was discussed in Ticket #643. This MCPI is an attempt to generate a concrete proposal around the ideas discussed in that ticket.

Document location


Reported by mtiller on 9 Jun 2015 08:14 UTC
This is the ticket for "MPC-0015: Language Version":

During a recent design meeting, the topic of semantic version numbers was discussed. A proposal was discussed to leverage the notions of compatibility from the semantic version specification. However, it was recognized that if we did this, it would then be important for tools to know that these notions of compatibility were in effect. Initially, there was a discussion of adding a special annotation to indicate that semantic versions were being used. But it was recognized that if the tool knew what version of the language applied to the library, then this would be a more general solution since it could address other questions about language syntax and semantics.

Much of this was discussed in Ticket #643. This MCPI is an attempt to generate a concrete proposal around the ideas discussed in that ticket.


Migrated-From: https://trac.modelica.org/Modelica/ticket/1726

@modelica-trac-importer modelica-trac-importer added enhancement New feature or request MCP Generic MCP label (prefer specific MCP label for grouping of issues belonging to the same MCP) labels Nov 4, 2018
@modelica-trac-importer
Copy link
Collaborator Author

Comment by otter on 9 Jun 2015 08:22 UTC
There are libraries that use tool extensions, such as Modelica_StateGraph2, or Modelica_LinearSystems2. So, it is known beforehand, that these libraries can be processed only in certain tools. It seems to be useful to add this information additionally to the Modelica language version number. Proposal for first line of library Modelica_StateGraph2:

//! Modelica-Language: 3.2.0 with non-standardized elements from: Dymola

If several tools support these language elements, this could be marked by a comma separated list:

//! Modelica-Language: 3.2.0 with non-standardized elements from: Dymola, OpenModelica

@modelica-trac-importer
Copy link
Collaborator Author

Comment by mtiller on 9 Jun 2015 13:40 UTC
Replying to [comment:1 otter]:

There are libraries that use tool extensions, such as Modelica_StateGraph2, or Modelica_LinearSystems2. So, it is known beforehand, that these libraries can be processed only in certain tools. It seems to be useful to add this information additionally to the Modelica language version number. Proposal for first line of library Modelica_StateGraph2:

//! Modelica-Language: 3.2.0 with non-standardized elements from: Dymola

If several tools support these language elements, this could be marked by a comma separated list:

//! Modelica-Language: 3.2.0 with non-standardized elements from: Dymola, OpenModelica

I don't like this approach. This comment line is not meant to be an alternative annotation mechanism.

It seems very strange to me that we should standardize a way to indicate that the language used is non-standard.

@modelica-trac-importer
Copy link
Collaborator Author

Modified by dietmarw on 9 Jun 2015 13:45 UTC

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 9 Jun 2015 13:46 UTC
In #643 we already concluded that a new file containing the version information would be backward compatible - and avoid all of the issues.

@modelica-trac-importer
Copy link
Collaborator Author

Modified by dietmarw on 9 Jun 2015 14:50 UTC

1 similar comment
@modelica-trac-importer
Copy link
Collaborator Author

Modified by dietmarw on 9 Jun 2015 14:50 UTC

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 24 Sep 2015 09:08 UTC
Language group:
Key issue is whether to use a separate file or have it as a comment on the first line in the file.

Reasons for separate file:

  • Could contain other meta-data
  • In file-system storage already have "package.order" (precedence)
  • Similar functionality might be included in Java 9 (for source-meta data), and Makefiles in other versions

Reasons for having it as a comment:

  • Synchronization
  • Can send some libraries as one file
  • Done for many files (e.g. shell-scripts, but normally language, not version)

Some other issues:

  • Can the tool automatically keep this in synch?
  • What is the information used for: grammar - other differences?
    (Recent incompatible changes are: added keywords, removed long redeclare-modifier, removed array-modifiers.)
  • If used for semantics: we need to consider combining libraries using different Modelica versions (possibly just diagnostics).

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 24 Sep 2015 09:33 UTC
Possibilities:
Quick poll (13 present, multiple variants allowed):

  • Language version not specified: 0
  • Language version specified using comment at beginning of file: 7
  • Language version specified using separate file: 7
  • Language version specified using comment at beginning of file, but other meta-data in a separate file: 1

Seems unclear how to do it - but people want the functionality.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 15 Dec 2015 09:12 UTC
One coming proposal is to create a file with meta-data (including package version and uses) to speed up the handling of packages on MODELICAPATH and ease distribution of libraries. (Modelon and Wolfram are working on it.)

One discussion is whether it is a cache of meta-data, or the actual meta-data. (The cache is used for NOT reading the package, once you read the package you can verify it.)

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 15 Dec 2015 09:22 UTC
A bit unclear how to handle byte-order-mark, simplest to change regex to optionally start with this bom(byte-order-mark):
(bom)?rest-of-reg-ex

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 15 Dec 2015 09:50 UTC
Discussion about 3.3r1:
The version is called: 3.3 Revision 1
File is called: 33Revision1.pdf
One option is "3.3" (without revisions - the idea would be that "they are the same").
Another is to follow semantic versioning idea and use "3.3.1".

To allow "3.3 Revision 1" (with spaces) we need to change the regex in one of the following ways:

  • Quoted names
  • Nothing else allowed at the end of the line
  • Some specific terminator

Possibilities:
3.3Revision1
3.3r1
3.3
3.3.1
---
What about experimental versions? For semantic versioning idea we could use "3.3+MCP0015" (post-release information).
Would be good to allow multiple ones (3.3+MCP0015.MCP0016).

We will not spend too much on that - just want to ensure that it can be recognized by tools.

Another option would be just "MCP0015", but not allowed by regex - and seems better to specify base version "3.3".
--

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 15 Dec 2015 09:57 UTC

  • Language version specified using comment at beginning of each mo-file: 5
  • Language version specified using comment at beginning of top-level mo-file: 3
  • Language version specified using separate file: 1
  • Language version specified using separate file and optionally comment at beginning of each mo-file: 1
  • Language version specified using separate file and optionally comment at beginning of top-level mo-file: 1
    --
    So, comment is winner, and preference for each mo-file.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 15 Dec 2015 10:01 UTC
How should "3.3 Revision 1" be stored as a comment?

3.3Revision1 Favor: 2
3.3r1 Favor: 6
3.3 Favor: 4
3.3.1 Favor: 7

Unclear what polled on (regex syntax vs. how to store the specific specification version "3.3 Revision 1"), but 3.3.1 and 3.3r1 were most favored

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 13 Sep 2016 09:05 UTC
Seems fairly complete - but some minor unclear issues.
Discussion about mismatches - conclusion seems to be that 3.3.1 is favorite and a tool should anyway be able to handle reasonable version-differences (so it can parse 3.3 - will assume that 3.3.1 and 3.4 are similar enough).

Require 3.3.0 or allow 3.3?
It is clear that 3.3.0 looks like a semantic version number, but isn't (for Modelica specification) whereas 3.3 doesn't look like one.
Could also allow 3.3r1.

Possible regular expression: (Digit)+ "." (Digit)+ ("r" | ".") (Digit)+
Poll:
Allow 3.3 in regular expression?
Favor: 2 Against: 3 - so keep above.
Allow both "r" and "." before last?
Favor: 4 Against: 4 - but "the against" are split into various options; so keep above

Who to update MCP? Ask original authors - otherwise we might find a volunteer.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 3 Nov 2016 13:22 UTC
Summary of decisions:

Language version specified using comment at the beginning of each mo-file.
The optional byte-order mark is (obviously) before this comment.
We can have 3.3r1 as version-string (for Modelica 3.3 revision 1), and 3.1.0 (for Modelica 3.1).
The following regular expression matches existing and planned Modelica-versions:
(Digit)+ "." (Digit)+ ("r" | ".") (Digit)+

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 5 Dec 2016 14:41 UTC
I realized one new issue.

For using libraries we have #1023 proposing multiple uses-annotation to say that a library is compatible with e.g. both MSL 3.2 and 3.3. If the tool only has one of them this is useful to avoid problems for version-mismatch.
We are introducing a similar issue here - if you want to distribute a library that is correct according to both Modelica 3.3r1 and Modelica 3.4.0. If the tool only supports one of them that would be useful to avoid problems for version-mismatch.

We don't have to solve it now, but there seems to be a risk that a future solution would be incompatible.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by cbuerger on 5 Dec 2016 16:43 UTC
I am not sure about this versioning thing. I do not see its practical use-case. In my opinion, Michael Tiller summarized it well:

It seems very strange to me that we should standardize a way to indicate that the language used is non-standard.

I would go a bit further and say:

"It seems strange to me to tell a tool what I expect, although I do not know what I am exactly going to use until the tool starts working with me."

The question are, (1) what should that very tool do if it does not support that version and (2) the other way around, which new information did the tool gather by knowing that its supposed to work with a Modelica model (as discussed later this is a non-trivial question on its own)?

  1. Just assume the more useful case (1), the version is not supported. What should the tool do? Just stop working and saying "bad luck, try something else". Or is it more likely that its developers decide to just throw a warning and try anyway as best as possible. But where is the difference then? Either it works or you get an error. Or are we considering that Modelica runtime semantics changed, i.e., the Model can be simulated but the simulation is different. Do we really want to introduce such backwards compatibility problems in the future (changing the actual runtime semantics of existing Modelica features)? Or are these not more likely just unintended design bugs of some future Modelica standard? Another possibility is that a tool supports several Modelica versions. Which vendor is going to do that in terms of strict standard versioning? Will tools have to support the mixing of libraries requiring different Modelica versions!? Etc.

  2. Assume case (2), the tool's versions and the libraries version fit. Ok, just do your business with the model. Assume the libraries' version is greater than the tools; well, that's case (1). Assume the tool's version is greater than the libraries'. This does not imply, that the tool must be capable to handle the library. We have backwards compatibility breaking Modelica standard changes (like introducing new keywords, e.g., 'operator') that even break old standard library versions (the Modelica Standard Library 2.2.2 uses 'operator' as identifier in several places).

So what is the version number supposed to help with?

@modelica-trac-importer
Copy link
Collaborator Author

Comment by pharman on 5 Dec 2016 17:01 UTC
Replying to [comment:16 hansolsson]:

We are introducing a similar issue here - if you want to distribute a library that is correct according to both Modelica 3.3r1 and Modelica 3.4.0. If the tool only supports one of them that would be useful to avoid problems for version-mismatch.

This is true, but #1023 also has to deal with changes in libraries involving conversion scripts. With the language version our initial assumption was that we were specifying the minimum language version required to be supported by the tool.

Replying to [comment:14 hansolsson]:

Who to update MCP? Ask original authors - otherwise we might find a volunteer.

I shall update this if it hasn't already been done.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by pharman on 5 Dec 2016 17:11 UTC
Replying to [comment:17 cbuerger]:

So what is the version number supposed to help with?

So that a tool can give correct diagnostics on encountering a model written for a newer version of the language than it supports. It doesn't change the fact that a model may or may not be supported, but gives information that is currently missing.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by sjoelund.se on 6 Dec 2016 06:38 UTC
Replying to [comment:19 pharman]:

Replying to [comment:17 cbuerger]:

So what is the version number supposed to help with?

So that a tool can give correct diagnostics on encountering a model written for a newer version of the language than it supports. It doesn't change the fact that a model may or may not be supported, but gives information that is currently missing.

Parsing is what usually causes the most severe incompatibilities for the tool, and it is something shown by the language version. For example, Boolean impure; is OK in MLS 3.2 but not in 3.3... It would be a very good diagnostic to be able to say that:

We were unable to parse this library; perhaps it is because it is following Modelica 3.4, but we only know of Modelica 3.3.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 6 Dec 2016 09:29 UTC
Replying to [comment:18 pharman]:

This is true, but #1023 also has to deal with changes in libraries involving conversion scripts. With the language version our initial assumption was that we were specifying the minimum language version required to be supported by the tool.

I can understand that - but after analysis I don't believe the assumption is correct.
See the example below:

Replying to [comment:20 sjoelund.se]:

Parsing is what usually causes the most severe incompatibilities for the tool, and it is something shown by the language version. For example, Boolean impure; is OK in MLS 3.2 but not in 3.3... It would be a very good diagnostic to be able to say that:

And if it had been "impure function foo" it would be legal 3.3, but not 3.2.

We were unable to parse this library; perhaps it is because it is following Modelica 3.4, but we only know of Modelica 3.3.

This example indicates both that

  • We need to document how tools should support "unsupported" versions, and that we need to ensure that those rules are good. That is missing from this proposal.
  • It would be good to state that a file supports both Modelica 3.2 and 3.3 - i.e. neither using "impure" as prefix for functions nor as a component-name (there might be a few more rules...). That is missing from the proposal.

However, I am not convinced that parsing is the most severe incompatibility.

It's clearly a very visible incompatibility - whereas the different rules for optimizing pure function (see other topic) - or different starting-conditions for when-clauses (in Modelica 1.4 and earlier) are much harder to detect - and I would argue that such issues are far worse.

Consider the similar case for models: if the parameter "R" for a resistor was renamed to "C" it would be a highly visible incompatibility (modifier for something missing) - but if the resistor-model switched equations to capacitance - while keeping the parameter "R" it would not as visible - but in my book, more severe.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by cbuerger on 6 Dec 2016 10:12 UTC
Intuitively I see the point to warn for a version mismatch. It sounds useful. But it is not!

Consider all use-cases we are facing. We have a model m for some standard version, a standard s and a tool t implementing s (just assume the implementation of t is standard conform so we can just think about all versioning cases of m and t). Let's go through the cases (m < t means m is for an older standard than t implements):

  • m = s: Trivial, it works.
  • m < t: Maybe it doesn't work. The cases are:
    • m was not a valid model and it's still not working: Great! A warning would be a false positive.
    • m was not a valid model, but its working now: Strange! Why should model developers insist on a broken model that it is standard conform? It would make sense if they anticipate some new feature of a further standard and just wait for the next tool version to implement it; but why should they then version it with the old standard?
    • m was a valid model: Should we give a warning? I would say no, because we do not have to warn about something that may happen in the future when we will immediately know if it happens. We can check immediately if the model works. Either t accepts m or not. Why warn that it may not work when we know if it works or not? Its just cluttering and a lot of false positives. If it works or not is a discussion about semantics:
    • translation error (static semantic error): Obviously it does not work.
    • it simulates: Either simulation succeeds or fails with some runtime error. The only case where a warning would make sense, is when the older and newer version disagree on the simulation. This should never be the case however! I classify such a behavior as a serve Modelica standard bug or tooling bug. My rational is, that this problem means that the semantics of valid models changed from one tool version / standard version to another. This would be ridiculous.
  • m > t: Maybe it does not work. Do we stop here? I would keep going on and try to translate m and if translation passes simulate. If it works: great, the warning was a false positive. If translation fails, why warn about something we actually show proper errors for?

Also note, that only an exact version match will not pop-up a warning; the assumption that a higher version tool must support lower version models is not correct! Modelica 3.4 does not support MSL 2.x. This pushes the burden on library developers to add with every new standard another version tag to their library. To test models with a new tooling should anyway always be done.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by pharman on 6 Dec 2016 11:18 UTC
Nobody is suggesting that whether a tool supports the required language version is the only test to be performed. I don't believe we have actually specified how a tool should respond to a version number, which Hans has rightly raised.

What is not acceptable is that a model fails with a runtime error and the tool gives no possible reason or even worse gives a reason that isn't actually related to the cause. This is especially true when a simple reason exists that the tool could have diagnosed.

The original motivation for this idea was that the tool I was responsible for did not support the synchronous elements added in version 3.3 of the language specification. On translating a model containing such elements, the result the user would see would be that it could not find a type called Clock, or that the number of inputs to the sample() function were incorrect.

Had we had information in the model on the required language version (3.3), we could choose to either reject the model immediately, or on the model failing we would have the information to give to the user that a possible cause of failure was that it required language features we didn't support.

I shall enhance the proposal with some recent use-cases and possible workflows for usage by tools.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by cbuerger on 6 Dec 2016 12:49 UTC

What is not acceptable is that a model fails with a runtime error

You mean simulation previously worked and with a new tooling simulation doesn't? This should never happen; any change of the standard should satisfy this (and does so far).

The original motivation for this idea was that the tool I was responsible for did not support the synchronous elements added in version 3.3 of the language specification. On translating a model containing such elements, the result the user would see would be that it could not find a type called Clock, or that the number of inputs to the sample() function were incorrect.

In my opinion, this are pretty good error messages. They point out what is broken/missing.

After switching tooling, is it really necessary to warn things may be broken now? In particular at the price of many, many false positive warnings.

The only use case I see is, when you try a model for the first time with some tool and it doesn't work. It might not work for many reasons though. To know, that it is not working because the model was intended for another standard version than your tooling is nice, but this warning has to outweigh its false positives.

It is not obvious to me that the useful cases outweigh the false positives or that it is easy for tool vendors to filter the cases such a warning makes sense. To filter false positives requires to catch the differences between standards and that is actually half the way to just support them in the first place.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by pharman on 6 Dec 2016 13:29 UTC
Replying to [comment:24 cbuerger]:

What is not acceptable is that a model fails with a runtime error

You mean simulation previously worked and with a new tooling simulation doesn't? This should never happen; any change of the standard should satisfy this (and does so far).

I don't mean that with the same tool it stops working, but that if you transfer a model from a tool which supports 3.3 to one that supports 3.2 (or 3.4 to 3.3) it might not work. This isn't obvious, we promote Modelica as an open-standard and yet models aren't always exchangeable.

Prior to 3.3, the version number of the MSL was sufficient to know this, but the Modelica_Synchronous library uses language version 3.3 and MSL 3.2.2, hence the problem.

The original motivation for this idea was that the tool I was responsible for did not support the synchronous elements added in version 3.3 of the language specification. On translating a model containing such elements, the result the user would see would be that it could not find a type called Clock, or that the number of inputs to the sample() function were incorrect.

In my opinion, this are pretty good error messages. They point out what is broken/missing.

Should I contact the users that raised them and tell them that they should have figured it out for themselves rather than raising a support request?

It is not obvious to me that the useful cases outweigh the false positives or that it is easy for tool vendors to filter the cases such a warning makes sense. To filter false positives requires to catch the differences between standards and that is actually half the way to just support them in the first place.

It isn't obvious to you because they aren't causing you a problem, and equally the fact that we implemented this in an existing tool would suggest we have tested the feasibility of the idea.

Have you actually read the MCP? Perhaps you should attend the relevant design meeting and give some constructive viewpoints?

@modelica-trac-importer
Copy link
Collaborator Author

Modified by dietmarw on 6 Dec 2016 13:40 UTC

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 14 Dec 2016 15:01 UTC
Clarify that goal is to:

  • Specify which parser to use.
  • Specify semantics of constructs that have changed semantics between different language versions (unless it was a bug-fix and just specified incorrectly before).
  • Only one version (tool needs have compatibility-table).
  • And what to do when a tool encounters with a future version.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 21 Mar 2018 11:11 UTC
Language group:
Was somewhat clear what to do, but has been no work on it.
Henrik seems willing to work on it.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by henrikt on 22 Mar 2018 11:47 UTC
I've just committed version 1.1.0 of the MCP. I've also added the _SpecChanges.doc part, trying to show that the needed changes to the specification are few, while several of the questions being asked in this ticked are answered in the main MCP document.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by hansolsson on 22 Mar 2018 14:30 UTC
Language group:
The language-version should only be mandatory at the top, and inherited for files in hierarchical packages (so that only one "package.mo" needs it).

A bit long for every user-written file; especially if just writing with a text-editor - and don't want to end up with the old version that was before this feature was introduced.

Note the specification text does not specify what happens if this is missing - that can be a benefit allowing the tool to interpret this in a good way (i.e. assume it is the latest version and the user just forgot it, and warn the user about missing comment).

For the length there are three reasonable possibilities:

  • Skip the colon (make the space non-optional).
  • Have a shorter alternative for "Modelica-Language"
  • Just skip "Modelica-Language:" completely: //! 3.3r1

Poll for colon:

  • Have it: 4
  • Remove it (and require white-space instead): 4

Poll for shorter:

  • Current proposal with "Modelica-Language": 2
  • Also have an abbreviation as option: 2
  • Make "Modelica-Language" optional (including colon if present): 2
  • Only version number without "Modelica-Language": 4
  • Only allow one and only one space after the "bang": 3

(Updated to show that this was done after colon-poll, and since the conclusion was to drop "Modelica-Language" the colon also automatically disappeared.)

Should tools modify it to latest version, or keep previous setting? Conclusion is to not specify this, since it depends on the complexity of the tool.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by henrikt on 23 Mar 2018 07:18 UTC
The conclusions of discussions at the 96th design meeting, see comment:30, have been incorporated in version 1.2.0 of the MCP documents. Unless concerns are raised in this ticket within the next few weeks, I plan to move the MCP to Under Evaluation.

@modelica-trac-importer
Copy link
Collaborator Author

Comment by henrikt on 27 Apr 2018 05:55 UTC
Entering MCP state Under Evaluation at version 1.2.1.

Related comments:

@modelica-trac-importer
Copy link
Collaborator Author

Modified by henrikt on 27 Apr 2018 05:56 UTC

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request MCP Generic MCP label (prefer specific MCP label for grouping of issues belonging to the same MCP)
Projects
None yet
Development

No branches or pull requests

3 participants